Как обнулить расчет себестоимости при проведении документа в УТ11/КА24?

На данный момент единственный вариант - это отмена проведения и повторное проведение документа, что крайне неудобно. Возможно кто-то уже решал эту задачу?

В каком модуле произвести хирургическое вмешательство, чтобы при перепроведении документа рассчитанная себестоимость очищалась?

Возможно можно программно как-то запустить перепроведение с каким-то дополнительным параметром (каким?).

P.S. Вознаграждение за пример рабочего кода.
---
Ну на самом деле при закрытии месяца в проводки документа по РН Выручка и себестоимость продаж дописываются строки с расчетом себестоимости. Видимо расчет себестоимости их не пересчитывает. Следовательно перед проведением надо очищать движения. Накидал в расширении в модуле реализации.

```1c
    &Перед("ПередЗаписью")
    Процедура Расш1_ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)

    Если РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда
    Движения.ВыручкаИСебестоимостьПродаж.Записать();
    КонецЕсли;

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

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

Все это заставляет полностью погружаться в этот процесс.

В идеале необходимо при закрытии - запустить перепроведение стандартное (либо при помощи отдельной обработки), и по окончании запустить закрытие месяца, которое как с чистого листа рассчитает себестоимость.
---
а при проведении разве не возникают ситуации что документ не проводится (договор не тот, на остатке товаров нет, еще что нибудь?)
---
нет, комплекс проверок при проведении и перепроведении - различается.
---
поставить платформу посвежее
---
не улавливаю взаимосвязь от слова совсем. Платформа последняя.
---
Попробуй в подписке на событие ОбработкаПроведения очистить свой регистр или более правильно обнулить нужные тебе ресурсы.

Код думаю несложный.
---
А себестоимость где? В регистре или в самом документе?
---
Указанием к пересчету себестоимости является запись в РС Задания к расчету себестоимости.
И потом перезакрывать месяц.
---
все вроде бы верно, но почему при наличии ошибок в себестоимости если мы просто перепроведем документы и запустим закрытие месяца, то ошибки остаются, а если отменить проведение и провести заново документы, то ошибки чудесным образом уходят. Получается задание к расчету себестоимости опирается на существующие проводки в документе. Это конечно не точно.
---
Ну на самом деле при закрытии месяца в проводки документа по РН Выручка и себестоимость продаж дописываются строки с расчетом себестоимости. Видимо расчет себестоимости их не пересчитывает. Следовательно перед проведением надо очищать движения. Накидал в расширении в модуле реализации.

```1c
    &Перед("ПередЗаписью")
    Процедура Расш1_ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)

    Если РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда
    Движения.ВыручкаИСебестоимостьПродаж.Записать();
    КонецЕсли;

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

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