helpf.pro
Регистрация

v8.3: Программное создание папок в справочниках

Sabuhi
23.02.2021 06:25Прочитано: 2220

Здравствуйте, я новичок в 1с, нужна помощь, у меня есть два справочника (Сотрудники и ПапкаСотрудников)  при создании нового сотрудника в справочнике Сотрудники создается его папка в ПапкаСотрудников, но нужно чтобы они были разбиты по отделам, в справочнике Сотрудники есть информация по отделениям, то есть каждый сотрудник работает в каком-то отделе, и нужно чтобы он создавал в справочнике ПапкаСотрудников папку с отделом и добавлял в эту подпапку сотрудника.

Код программы:

Код 1C v 8.3
 

&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
	
	Если НЕ Справочники.Сотрудники.НайтиПоНаименованию(Объект.Наименование) = Null Тогда 
		НоваяПапка = Справочники.ПапкиСотрудников.СоздатьГруппу();
        НоваяПапка.Наименование = Объект.Наименование;
        НоваяПапка.Записать();
		
	КонецЕсли;

КонецПроцедуры


   
Yandex
Возможно, вас также заинтересует
Реклама на портале
Sabuhi
24.02.2021 05:41Ответ № 1
Steering
17.03.2021 10:38Ответ № 2

Папку отдела надо писать в родителя папки сотрудника. Примерно так:

Код 1C v 8.3
 
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
	
	Отдел = Объект.Отдел;
	ЕстьОтдел = Справочники.ПапкиСотрудников.НайтиПоНаименованию(Отдел);
	Если ЕстьОтдел.ПустаяСсылка() ИЛИ ЕстьОтдел = Неопределено Тогда 
		НоваяПапкаОтдела = Справочники.ПапкиСотрудников.СоздатьГруппу();
		НоваяПапкаОтдела.Наименование = Отдел;
        НоваяПапкаОтдела.Записать();
		Отдел = НоваяПапкаОтдела;
	Иначе
		Отдел = ЕстьОтдел;
	КонецЕсли;
	
	НоваяПапкаСотрудника = Справочники.Сотрудники.СоздатьГруппу();
	НоваяПапкаСотрудника.Наименование = Объект.Наименование;
	НоваяПапкаСотрудника.Родитель = Отдел;
	НоваяПапкаСотрудника.Записать();
	Отдел = НоваяПапкаОтдела;
	
КонецПроцедуры
   
Подсказка:Вы можете добавить любую страничку в Социальные закладки щелкнув по значку соцсетей (в вверху)
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.
Загрузка... Дождитесь завершения!