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