Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 22:33

Неполное перепроведение документа

Автор st0nx, 12 дек 2010, 14:28

0 Пользователей и 1 гость просматривают эту тему.

st0nx

Имеется некий документ оплата, в который вносятся оплаты по лицевым счетам на определенную дату. При перерасчете лицевого счета, необходимо перепровести часть записей в документе(полностью документ перепроводить долго, при проведении происходит перераспределение оплаты по статьям в ЛС). Документ делает движения по регистру накопления.
Делал так:

Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ЛицСчет",ЛицСчет);
Запрос.Текст = "ВЫБРАТЬ
               | Оплаты.Регистратор,
               | Оплаты.ЛицевойСчет,
               | Оплаты.Сумма,
               | Оплаты.Период
               |ИЗ
               | РегистрСведений.Оплаты КАК Оплаты
               |ГДЕ
               | Оплаты.ЛицевойСчет = &ЛицСчет";
ТабОпл = Запрос.Выполнить().Выгрузить();
Для Каждого СтрОпл Из ТабОпл Цикл
Движения = СтрОпл.Регистратор.ПолучитьОбъект().Движения;

Таблица = ОбщийМодульЛицевогоСчета.ПолучитьЗадолжностиПоЛицевомуСчету(СтрОпл.ЛицевойСчет,СтрОпл.Сумма,СтрОпл.Период,СтрОпл.Регистратор.Контрагент,
СтрОпл.Регистратор.Услуга);// тут происходить перераспределение

Для Каждого Строка Из Таблица Цикл
Движение = Движения.Результаты.Добавить();
Распределено = Истина;
Движение.Период      = СтрОпл.Период;
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.ГодМесяц = Год(СтрОпл.Период)*100 + Месяц(СтрОпл.Период);
Движение.ТочкаПоставки = Строка.ТочкаПоставки;
Движение.ЛицевойСчет = СтрОпл.ЛицевойСчет;
Движение.Сумма = Строка.СуммаНачисления;
Движение.Поставщик = Строка.Поставщик;
Движение.ТипОперации = Перечисления.ТипОперации.Оплата;
КонецЦикла;     
Движения.Результаты.Записать(Истина);
КонецЦикла;

Ну так не катит ибо другие записи удаляются.

progmikon

Ну здесь вариантов не особо много:
1. Полностью перезаписать движения. Этот вариант вас не устраивает.
2. Получить движения, прочитать и по определенным условиям заменить то, что вам нужно.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск