0
letovd
18.07.19
✎
08:39
|
Есть некий код, выбираются записи выборки, далее в цикле обход по всем дням и проверка на кратность.
Но когда выбирается следующая запись выборки, то мой день1(накопился xD и) = день2 и соответственно не идет обход по дням)
Помогите выбраться из этой ямы))
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
День1 = Дата('20190718');
День2 = Дата('20190725');
Пока День1 <= День2 Цикл
Пока Выборка.Следующий() Цикл
ДатаПриема = Выборка.ДатаПриема;
Пока День1 <= День2 Цикл
НомерДня = (КонецДня(День1) - КонецДня(ДатаПриема)
НаборЗаписей = РегистрыСведений.График.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Период.Установить(День1);
НаборЗаписей.Прочитать();
НоваяЗапись = НаборЗаписей.Добавить();
НоваяЗапись.Период = День1;
НоваяЗапись.НомерСотрудника= Выборка.НомерСотрудника;
НоваяЗапись.ФИО= Выборка.ФИО;
Если НомерДня % Выборка.ПериодичностьРаботы = 0 Тогда // если порядковый номер дня кратен дате приема > запись
НоваяЗапись.ОбъемРаботы = Выборка.ОбъемРаботы;
КонецЕсли;
Если НомерДня % Выборка.ПериодичностьСмен = 0 Тогда // если порядковый номер дня кратен дате приема > запись
НоваяЗапись.ОбъемДней = Выборка.ОбъемДней;
КонецЕсли;
НаборЗаписей.Записать(Истина);
НаборЗаписей.Очистить();
День1 = КонецДня(День1) + 1;
КонецЦикла;
КонецЦикла;
|
|