Часто возникает ситуация, когда программно нужно внести какие либо корректировки в регистры накопления и чтобы потом эти корректировки можно было легко поменять!
В типовых конфигурациях присутсвует документ "Корректировка Записей Регистров Накопления", который предназначен для ручной корректировки записей регистров накопления и для ввода остатков.
С помощью ниже следующего кода можно программно создать и заполнить движениями этот документ:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
// ТЗрез - это Таблица значений содержащая столбец "FizL" - ФизЛицо и "RUB" Сумма корректировки НовДок = Документы.КорректировкаЗаписейРегистровНакопления.ПолучитьФормуНовогоДокумента(); НовДок.Дата=ТекущаяДата(); НовДок.Комментарий="Корректировка регистра ВзаиморасчетыСРаботникамиОрганизаций"; // Создадим табличную часть движений регистра НоваяСтрока = НовДок.ТаблицаРегистровНакопления.Добавить(); НоваяСтрока.Имя = Метаданные.регистрынакопления.ВзаиморасчетыСРаботникамиОрганизаций.имя; НоваяСтрока.Представление = Метаданные.регистрынакопления.ВзаиморасчетыСРаботникамиОрганизаций.синоним; // Создадим движения Для Каждого СтрДвиж из ТЗрез Цикл НовДвиж = НовДок.Движения.ВзаиморасчетыСРаботникамиОрганизаций.ДобавитьПриход(); НовДвиж.ФизЛицо=СтрДвиж.FizL; НовДвиж.Организация=Организация; НовДвиж.ПериодВзаиморасчетов=ВыбДокНачисл.ПериодРегистрации; НовДвиж.СуммаВзаиморасчетов = СтрДвиж.RUB; КонецЦикла; //НовДок.Записать(); //Пока не записываем НовДок.Открыть(); //Покажем документ пользователю |