При работе в конфигурации 1С:Управление торговлей 11 (УТ 11.3 / 11.4 / 11.5) часто возникает необходимость массово перепровести документы по конкретной организации — например, после исправления первичных данных, при восстановлении последовательности или подготовке к закрытию месяца. Рассмотрим подробнее, какие стандартные механизмы и альтернативные варианты существуют для решения этой задачи, а также разберем их особенности и ограничения.
В современных конфигурациях на платформе 1С:Предприятие 8.3 предусмотрен встроенный инструмент «Групповое изменение реквизитов» (доступный в разделе Администриование — Обслуживание — Корректировка данных). Разберем по шагам, как настроить фильтрацию по организации и выполнить проведение документов различных типов.
Оприходование излишков товаров, Реализация товаров и услуг, Поступление товаров и услуг и др.).Организация, вид сравнения Равно и выберем нужную организацию из справочника.Важное ограничение метода: Проведение документов через инструмент Групповое изменение реквизитов выполняет обработку не строго по моменту времени, а по типам объектов. Из-за этого может нарушаться хронологическая последовательность (например, документ реализации попытается проведено раньше документа оприходования), что приведет к ошибкам проведения из-за нехватки остатков.
Проанализируем другой встроенный инструмент платформы — обработку «Проведение документов». Она доступна через меню Функции для технического специалиста (или Все функции в более ранних версиях платформы).
Особенность: Данная обработка гарантирует строгое соблюдение хронологической последовательности документов, однако в ней отсутствует встроенный отбор по конкретной организации. Перепроведение выполняется по всей базе за указанный период.
Выясним причину, почему в 1С:Управление торговлей 11 проведение часто рекомендуется выполнять через регламентные процедуры. Если цель перепроведения — исправление партионного учета, корректировка себестоимости или расчет взаиморасчетов, наилучшим решением будет штатный механизм «Закрытие месяца».
Механизм расположен в разделе Финансовый результат и контроллинг — Закрытие месяца. Программа сама определяет организацию, строит границу последовательности и восстанавливает учетные данные в правильном хронологическом порядке без необходимости вручную выбирать виды документов.
Рассмотрев ограничения стандартных средств, увидим, что для строго хронологического проведения по конкретной организации наилучшим решением является небольшая внешняя обработка. Она программно выбирает все проведенные документы с реквизитом Организация за период и проводит их строго по моменту времени.
Рассмотрим пример алгоритма проведения выборки документов на языке 1С:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Ссылка КАК ДокументСсылка,
| Дата КАК Дата
|ИЗ
| Документ.РеализацияТоваровУслуг
|ГДЕ
| Проведен = ИСТИНА
| И Организация = &Организация
| И Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
|УПОРЯДОЧИТЬ ПО
| Дата ВОЗРАСТАНИЕ";
Запрос.УстановитьПараметр("Организация", ВыбраннаяОрганизация);
Запрос.УстановитьПараметр("ДатаНачала", НачалоДня(ДатаНачала));
Запрос.УстановитьПараметр("ДатаОкончания", КонецДня(ДатаОкончания));
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
ДокОбъект = Результат.ДокументСсылка.ПолучитьОбъект();
Попытка
ДокОбъект.Записать(РежимЗаписиДокумента.Проведение);
Исключение
Сообщить("Ошибка проведения документа: " + Строка(Результат.ДокументСсылка));
КонецПопытки;
КонецЦикла;
Посмотрим на ключевые нюансы, которые необходимо учитывать перед массовым перепроведением: