РегистрРасчетаНаборЗаписей.<Имя регистра расчета>.ПолучитьДополнение (CalculationRegisterRecordSet.<Имя регистра расчета>.GetAddition)
Синтаксис:
Возвращаемое значение:
Описание:
Дополнение - это данные, которые система "предлагает" добавить в текущий набор записей для того, чтобы текущие записи набора в результате сохранения имели максимальный фактический период действия за счет сторнирования (если это необходимо) записей прошлых периодов регистрации. Предлагаемые дополнительные сторно-записи формируются на основании периодов действия записей регистра расчета и правил конкуренции за период действия, задаваемых списками вытесняемых видов расчета в плане видов расчета регистра.
Необходимость получить дополнение возникает при попытке ввести учетную запись с периодом действия, который уже "занят" введенной ранее учетной записью, период регистрации которой меньше, чем период регистрации вводимой учетной записи.
В полученной таблице значений поля заполнены данными сторнируемых записей (уже существующих в регистре расчета) и, кроме того, дополнительными данными: период регистрации сторно - период регистрации, в котором система рекомендует зарегистрировать сторно-запись, дата начала и дата окончания периода сторнирования - период, который система рекомендует ввести в качестве периода действия сторно-записи.
Доступность:
Пример:
// код располагается в модуле документа РегистрНачисления = "ОсновныеНачисленияСотрудниковОрганизаций"; Запрос = Новый Запрос; // Установим параметры запроса Запрос.УстановитьПараметр("ДокументСсылка" , Ссылка); Запрос.Текст = " |ВЫБРАТЬ | Дата, | ПериодРегистрации, | Организация, | Ссылка |ИЗ | Документ." + Метаданные().Имя + " |ГДЕ | Ссылка = &ДокументСсылка |"; ВыборкаПоШапкеДокумента = Запрос.Выполнить().Выбрать(); Выборка = СформироватьЗапросПоНалогам().Выбрать(); Пока Выборка.Следующий() Цикл // проверим очередную строку табличной части ПроверкаЗаполнения(ВыборкаПоШапкеДокумента, Выборка, Отказ); Если НЕ Отказ Тогда // зарегистрируем в регистре сведений Движение = Движения.НДФЛИсчисленный13.Добавить(); // формирование свойств // ... // формирование измерений // ... КонецЕсли; КонецЦикла; Если НЕ Отказ Тогда // Получим дополнительные записи, имеющие признак сторно, // которые необходимо добавить в текущий набор для того, // чтобы в результате сохранения получился максимальный // фактический период действия СторноЗаписи = Движения[РегистрНачисления].ПолучитьДополнение(); Для каждого Строка Из СторноЗаписи Цикл Движение = Движения[ИмяРегистра].Добавить(); // формирование свойств Движение.Регистратор = ВыборкаПоШапкеДокумента.Ссылка; // ... // формирование измерений // ... // формирование ресурсов // ... // формирование реквизитов Движение.График = Строка.График; Движение.Размер = Строка.Размер; // ... КонецЦикла; КонецЕсли; // записать сформированные движения НаборДвиженийРегистра = Движения[РегистрНачисления]; НаборДвиженийРегистра.Записать(); |
См. также: