Добрый день, коллеги. Хочу рассказать про опыт использования типовой обработки свертки ерп. А именно про ряд ошибок, которые могут встречаться в типовой обработке свертки ЕРП. У меня обработка заработала после их исправления. Ошибки актуальны для версии ерп 2.4.12.83.
Вот пример ошибок.
1. Использование несуществующего метода табличной части документа - УдалитьСтроку();
Пример
Для Каждого СтрокаГрафик Из СтрокиГрафик Цикл
ДокОст.ТрудозатратыГрафик.УдалитьСтроку(СтрокаГрафик);
КонецЦикла;
// Заменил его таким образом
Для Каждого СтрокаГрафик Из СтрокиГрафик Цикл
ДокОст.ТрудозатратыГрафик.Удалить(СтрокаГрафик);
КонецЦикла;
//Аналогичное надо сделать для всех таких случаев
2. Не всегда в метода НайтиСледующий() в параметр передается структура.
Для Каждого СтрокаТЧ Из МассивСтрокВыходныеИзделияКУдалению Цикл
СтрокиГрафик = ДокОст.ВыходныеИзделияГрафик.НайтиСтроки("КлючСвязиВыходныеИзделия", СтрокаТЧ.КлючСвязи);
Для Каждого СтрокаГрафик Из СтрокиГрафик Цикл
ДокОст.ВыходныеИзделияГрафик.Удалить(СтрокаГрафик);
КонецЦикла;
ДокОст.ВыходныеИзделия.Удалить(СтрокаТЧ);
КонецЦикла;
// Заменил его таким образом
Для Каждого СтрокаТЧ Из МассивСтрокВыходныеИзделияКУдалению Цикл
СтрокиГрафик = ДокОст.ВыходныеИзделияГрафик.НайтиСтроки(Новый Структура("КлючСвязиВыходныеИзделия", СтрокаТЧ.КлючСвязи));
Для Каждого СтрокаГрафик Из СтрокиГрафик Цикл
ДокОст.ВыходныеИзделияГрафик.Удалить(СтрокаГрафик);
КонецЦикла;
ДокОст.ВыходныеИзделия.Удалить(СтрокаТЧ);
КонецЦикла;
//Аналогичное надо сделать для всех таких случаев
3. После выполнения запросов для ввода остатков выбираются неверные элементы пакета.
Для базы, которую я сворачивал - обработка отработала без ошибок. Для другой базы возможно вылетят новые. Большую часть исправленного кода я пометил комментариями, но часть однотипных ошибок вроде - Новый Структура() я оставил без изменения.
В более актуальных релизах, например 2.4.13.103 я увидел, что часть ошибок уже поправили, поэтому, возможно, типовая свертка отработает без проблем на новых релизах.