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



         

Создание процедуры расчета записей регистра Начисления - часть 4


       |        Регистратор = &Регистратор

       |            И ВидРасчета = &ВидРасчета

       |            И Сотрудник В (&СписокСотрудников)) КАК НачисленияДанныеГрафика";

       Запрос.УстановитьПараметр("Регистратор", НаборЗаписейРегистра.Отбор.Регистратор.Значение);[351]

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

       Запрос.УстановитьПараметр("СписокСотрудников",СписокСотрудников);

       ВыборкаРезультата = Запрос.Выполнить().Выбрать();

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

   ИначеЕсли ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Премия Тогда

   КонецЕсли;

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

В этом запросе мы выбираем из виртуальной таблицы данных графика регистра расчета значение графика для периода действия и для фактического периода действия. При задании параметров виртуальной таблицы мы ограничиваем выборку регистратором, нужным нам видом расчета и списком сотрудников, по которым нужно получить значения графика.

Теперь добавим обход переданного в процедуру набора записей и расчет записей, для которых получены значения графика:

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

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

   Если ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Оклад Тогда

      Запрос = Новый Запрос;

      Запрос.Текст =

      "ВЫБРАТЬ

      |    НачисленияДанныеГрафика.ЗначениеПериодДействия КАК Норма,




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