Добрый день.

Множаться записи в документе ОперацияБух.

Имеется код:

```1c
    ОперацияБухСсылка = ОперацияБух.Ссылка;
    ПредыдущаяОперацияБух = ОперацияБухСсылка.ПолучитьОбъект();
    ПредыдущийНаборПроводок = ПредыдущаяОперацияБух.Движения.Хозрасчетный;
    ПредыдущийНаборПроводок.Прочитать();

    Для Каждого ТекущаяСтрока Из РеализацииСНоменклатурой Цикл
    НоваяПроводка = ПредыдущийНаборПроводок.Добавить();
    НоваяПроводка.Активность = Истина;
    НоваяПроводка.Период = ОперацияБП.Дата;

    НоваяПроводка.СчетДт = ПланыСчетов.Хозрасчетный.ДоходыПолученныеВСчетБудущихПериодов; // 98.01
    НоваяПроводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты] = ТекущаяСтрока.Контрагент;
    НоваяПроводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры] = ТекущаяСтрока.Договор;
    НоваяПроводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.ДоходыБудущихПериодов] = ТекущаяСтрока.ДБП;

    НоваяПроводка.СчетКт = ПланыСчетов.Хозрасчетный.ВыручкаНеЕНВД; // 90.01.1
    НоваяПроводка.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура] = ТекущаяСтрока.Номенклатура;
    НоваяПроводка.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НоменклатурныеГруппы] = ТекущаяСтрока.НоменклатурнаяГруппа;
    НоваяПроводка.КоличествоКт = ТекущаяСтрока.Количество;
    НоваяПроводка.Сумма = ТекущаяСтрока.Сумма;

    СуммаОперации = СуммаОперации + ТекущаяСтрока.Сумма;
    КонецЦикла;
```

где, РеализацииСНоменклатурой - таблица значений с новыми записями.

При новом проведении документа, количество записей увеличивается на количество записей в таблице значений РеализацииСНоменклатурой.

Как новым сформированным набором записей заменить старый, чтобы не множились? Т.е. требуется перезаполнить ОперацияБух.
---
Данный код должен вызываться единоразово для документа, чтобы не обрабатывать повторно те документы, которые уже обработаны ранее.
---
Удалить эту строку
 ПредыдущийНаборПроводок.Прочитать();
---
ПредыдущийНаборПроводок.Прочитать();

Тогда не добавляет новые записи, которые должны заноситься циклом.
---
Как связано?
---
Что Вы имели ввиду под "как связано?"?
---
Что в твоей терминологии означает "требуется перезаполнить ОперацияБух."?
---
Строка кода

```1c
    ПредыдущийНаборПроводок.Прочитать();
```

читает из базы ранее сформированные движения этого документа.
Как связано то, что вы не будете читать ранее сформирвоанные движения документа с тем, что не добавляются новые записи?
---
(8) читает из базы ранее сформированные движения этого документа
Вот к этим, ранее сформированным движениям, мне необходимо добавить те, записи которые находятся, в таблице значений РеализацииСНоменклатурой.
И они добавляются.

Но, при очередном проведении ОперацииБух, к уже существующим добавляются новые записи.
И таким образом записи начинают множиться.

Важно (не захватил в этот код строчку после цикла)

```1c
    ПредыдущийНаборПроводок.Записать(Истина);
```

Эта строка должна, перед записью, существующие записи удалить.
Но этого не происходит.
---
А вы где этот код разместили?
По логике работы данного кода, это должна быть какая-то обработка, при выполнении команды в которой происходит дополнение проводок.

Если вы это сделали в модуле объекта документа ОперацияБух, то напрасно.

"Проведение" документа ОперацияБух как связано с данным кодом?
---
Нет, конечно же это не в модуле объекта ОперацияБух.

Эта задача не решаема, т.к. этот код делает накопительные движения.
---
Данный код должен вызываться единоразово для документа, чтобы не обрабатывать повторно те документы, которые уже обработаны ранее.
---
Да, верно. При повторном запуске - информация будет накапливаться.
---
Чуви, что для тебя значит "перезаполнить"?

Ты понимаешь, что ты всегда читаешь все существующие записи из базы, добавляешь к ним свои новые и записываешь все обратно - и прочитанные существующие и новые добавленные? Естественно, при следующем чтении ты получишь эти "старые" записи, ты же их туда сам и пишешь.
---
Что для тебя значит "перезаполнить"?