1С-Предприятие 8.0. Практическое пособие разработчика



              

Выполнение перерасчета записей регистра расчета - часть 2


       |ГДЕ

       |    НачисленияПерерасчет.ВидРасчета = &ТребуемыйВидРасчета

       |ИТОГИ ПО

       |    ОбъектПерерасчета");

   Запрос.УстановитьПараметр("ТребуемыйВидРасчета", ТребуемыйВидРасчета);

   СписокСотрудников = Новый СписокЗначений;

   //перебрать группировку по регистратору

   ВыборкаПоРегистратору = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

   Пока ВыборкаПоРегистратору.Следующий() Цикл

       Регистратор = ВыборкаПоРегистратору.ОбъектПерерасчета;

       //перебрать группировку по сотрудникам

       //для выбранного регистратора

       //и создать список сотрудников

       ВыборкаПоСотрудникам = ВыборкаПоРегистратору.Выбрать();

       СписокСотрудников.Очистить();

       Пока ВыборкаПоСотрудникам.Следующий() Цикл

           СписокСотрудников.Добавить(ВыборкаПоСотрудникам.Сотрудник);

       КонецЦикла;

       //получить набор записей регистра расчета

       //для выбранного регистратора

       НаборЗаписей = РегистрыРасчета.Начисления.СоздатьНаборЗаписей();

       НаборЗаписей.Отбор.Регистратор.Значение = Регистратор;

       НаборЗаписей.Прочитать();

       РасчитатьНачисления(НаборЗаписей, ТребуемыйВидРасчета, СписокСотрудников);

       НаборЗаписей.Записать(,Истина);

       //очистить перерасчитанные записи в перерасчете




Содержание  Назад  Вперед