Заполнение РС ЗаработанныеПраваНаОтпуск

1. buksol 15.10.20 16:40 Сейчас в теме
Народ, подскажите пожалуйста или задайте направление в каком двигаться дальше. Пока вот застрял на данном коде. При проведении документа Приём на работу выполняется данный код

	
       Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
	|	ПриемНаРаботу.Сотрудник КАК Сотрудник,
	|	ПриемНаРаботу.ДатаПриема КАК ДатаПриема,
	|   ДобавитьКДате(ДатаПриема, Год, 1) КАК ДатаУвольнения,
	|	ПриемНаРаботуЕжегодныеОтпуска.ВидЕжегодногоОтпуска КАК ВидЕжегодногоОтпуска,
	|	ПриемНаРаботуЕжегодныеОтпуска.КоличествоДнейВГод КАК КоличествоДнейВГод
	|ИЗ
	|	Документ.ПриемНаРаботу.ЕжегодныеОтпуска КАК ПриемНаРаботуЕжегодныеОтпуска
	|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриемНаРаботу КАК ПриемНаРаботу
	|		ПО ПриемНаРаботуЕжегодныеОтпуска.Ссылка.Сотрудник = ПриемНаРаботу.Сотрудник
	|ГДЕ
	|	ПриемНаРаботу.Сотрудник.Наименование ПОДОБНО ""%Рыжаков%""";
	Результат = Запрос.Выполнить();
	
	Выборка = Результат.Выбрать();
	
	
	
	НаборЗаписей = РегистрыСведений.it_Logika_Рыжаков_ЗаработанныеПраваНаОтпуска_Дубль.СоздатьНаборЗаписей();
	
	Пока Выборка.Следующий() Цикл
		
		
		НоваяЗапись = НаборЗаписей.Добавить();
		
		НоваяЗапись.Период = Выборка.ДатаПриема + (86400*15);
		
		НоваяЗапись.Сотрудник = Выборка.Сотрудник;
		
		НоваяЗапись.ВидЕжегодногоОтпуска = Выборка.ВидЕжегодногоОтпуска;
		
		НоваяЗапись.КоличествоДней = Выборка.КоличествоДнейВГод/12;
		
		НоваяЗапись.ДатаНачала = Выборка.ДатаПриема;
		
		НоваяЗапись.ДатаОкончания = Выборка.ДатаУвольнения - 86400;
		
		НоваяЗапись.КоличествоДнейЗаПериод = Выборка.КоличествоДнейВГод/12;
		
	КонецЦикла;
	
		НаборЗаписей.Записать();
		
		
	
Показать


И происходит запись в независимый периодический регистр сведений. Появляется первая запись , которая показывает право на отпуск, количество дней с момента приём. Нужно доработать код таким образом, чтобы при проведении документа в регистре формировались записи по каждому месяцу на год вперёд с нарастающим итогом по столбцу Количество Дней.
Принимаю любую критику по прикреплённому коду, так как опыта совсем ещё мало. Буду благодарен за любой совет
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
5. GSokolov 320 16.10.20 08:26 Сейчас в теме
(3) Лучше посмотри как формируются остатки отпусков в одноимённом отчёте. В частности, заполнение регистра Заработанные права на отпуска. Там как раз такие записи и формируются.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. FatPanzer 15.10.20 16:44 Сейчас в теме
(1)
так как опыта совсем ещё мало.
Не стоит накапливать опыт, начиная со слома типовых механизмов. Ты в курсе, как в дальнейшем используется данный регистр? Для каких отчетов, для каких расчетов и выплат? Есть уверенность, что не сломаются расчеты отпускных и суммы компенсаций за неиспользованный отпуск при увольнении?
3. buksol 16.10.20 00:34 Сейчас в теме
(2)Да, в курсе. Мне просто нужно написать свою доработку и этот регистр использую в качестве примера. В дальнейшем его вообще не буду трогать.
5. GSokolov 320 16.10.20 08:26 Сейчас в теме
(3) Лучше посмотри как формируются остатки отпусков в одноимённом отчёте. В частности, заполнение регистра Заработанные права на отпуска. Там как раз такие записи и формируются.
6. buksol 16.10.20 08:52 Сейчас в теме
(5)Спасибо. Уже начал в этом направлении "копать". Картина проясняется.
4. FatPanzer 16.10.20 01:03 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот