В ходе изучения занятия 14 по книге "1С:Предприятие 8.2. Практического пособия разработчика" возник вопрос по листингу 14.33а.
В модуле документа ОказаниеУслуги в обработке проведения для того, чтобы при перепроведении документа читать остатки по регистрам без учета движений, которые ранее были сделаны самим этим документам в регистры записываются пустые наборы записей:
Движения.СтоимостьМатериалов.Записать();
Движения.ОстаткиМатериалов.Записать();
Открыл для себя, что существует метод Очистить(), и если вместо приведенного фрагмента написать следующие две строчки:
Движения.СтоимостьМатериалов.Очистить();
Движения.ОстаткиМатериалов.Очистить();
то результат проведения ничем не отличается. С другой стороны, если в этом же документе создать обработчик события удаления проведения (в книге этого не было), то в нем 1-й вариант работает, а 2-й нет.
Вопрос: какой из методов лучше применять для очистки движений в различных модулях и обработчиках событий, какие плюсы и минусы, особенно в реальных приложениях (а может вообще какой-то третий).