Advertisement
Guest User

Untitled

a guest
Dec 13th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.33 KB | None | 0 0
  1. Процедура ПерерассчитатьНачисления(ТребуемыйВидРасчета) Экспорт
  2. // Здесь следует выбрать из набора записей перерасчета записи в следующей последовательности: // записи документа1 для сотрудников из списка, // записи документа2 для сотрудников из списка и т. д. Запрос = Новый Запрос( "ВЫБРАТЬ | НачисленияПерерасчет.ОбъектПерерасчета, | НачисленияПерерасчет.Сотрудник |ИЗ | РегистрРасчета.Начисления.Перерасчет КАК НачисленияПерерасчет |ГДЕ | НачисленияПерерасчет.ВидРасчета = &ТребуемыйВидРасчета |ИТОГИ ПО | НачисленияПерерасчет.ОбъектПерерасчета");
  3. Запрос.УстановитьПараметр("ТребуемыйВидРасчета", ТребуемыйВидРасчета); СписокСотрудников = Новый СписокЗначений;
  4.  
  5. // Перебрать группировку по регистратору. ВыборкаПоРегистратору = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаПоРегистратору.Следующий() Цикл Регистратор = ВыборкаПоРегистратору.ОбъектПерерасчета;
  6.  
  7. // Перебрать группировку по сотрудникам для выбранного регистратора // и создать список сотрудников. ВыборкаПоСотрудникам = ВыборкаПоРегистратору.Выбрать(); СписокСотрудников.Очистить(); Пока ВыборкаПоСотрудникам.Следующий() Цикл СписокСотрудников.Добавить(ВыборкаПоСотрудникам.Сотрудник); КонецЦикла;
  8. // Получить набор записей регистра расчета для выбранного регистратора. НаборЗаписей = РегистрыРасчета.Начисления.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Регистратор.Значение = Регистратор; НаборЗаписей.Прочитать();
  9. РассчитатьНачисления(НаборЗаписей, ТребуемыйВидРасчета, СписокСотрудников); НаборЗаписей.Записать( , Истина);
  10. // Очистить перерассчитанные записи в перерасчете. НаборЗаписейПерерасчета = РегистрыРасчета.Начисления.Перерасчеты.Перерасчет.СоздатьНаборЗаписей(); НаборЗаписейПерерасчета.Отбор.ОбъектПерерасчета.Значение = Регистратор; НаборЗаписейПерерасчета.Записать(); КонецЦикла;
  11. КонецПроцедуры
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement