Работа в режиме запроса
Параметр <Периодичность> может принимать следующие значения (в скобках указаны строковые синонимы):
1 ("Период", "Period") | Промежуточные итоги не рассчитываются; |
2 ("Операция", "Entry") | Промежуточные итоги рассчитываются по операциям; |
3 ("Проводка", "Operation") | По проводкам; |
4 ("День", "Day") | По дням; |
5 ("Неделя", "Week") | По неделям; |
6 ("Декада", "Decade") | По декадам; |
7 ("Месяц", "Month") | По месяцам; |
8 ("Квартал", "Quorter") | По кварталам |
9 ("Год", "Year") | По годам. |
Возвращаемое значение:
Число: 1 – запрос выполнен; 0 – запрос не выполнен.
Описание:
Метод ВыполнитьЗапрос выполняет отбор и расчет итогов за период, задаваемый параметрами <НачалоПериода> и <КонецПериода>.
В зависимости от переданных параметров итоги могут быть подготовлены методом ВыполнитьЗапрос в различных разрезах. Кроме того, на результат запроса влияют дополнительные установки, которые выполняются вызовами специальных методов объекта "Бухгалтерские Итоги".
Параметр <Периодичность> позволяет получить итоги запроса в разрезе периодов.
Метод ВключатьСубсчета позволяет получить итоги в разрезе субсчетов.
Применение метода ИспользоватьСубконто (перед вызовом ВыполнитьЗапрос) позволяет сформировать запрос в разрезе субконто.
После выполнения запроса обход запросов в различных разрезах выполняется соответствующими методами объекта.
Для доступа к итогам в разрезе периодов используются методы ВыбратьПериоды и ПолучитьПериод.
При использовании методов ВыполнитьЗапрос и Рассчитать возможно указание только одной границы интервала. В этом случае будут рассчитываться только остатки на эту границу.
Данный метод может использовать предварительно выполненный временный расчет. Для этого у временного расчета должен быть взведен флаг актуальности, система должна находиться в монопольном режиме, или расчет производится в модуле документа и в данном модуле выполняется запрос.
Пример:
В монопольном режиме:
// модуль обработки ИтРасчет.Актуальность(1); ... Док.ВыбратьДокументы(); Пока Док.ПолучитьДокумент() = 1 Цикл ИтРасчет.Рассчитать(, Док.ТекущийДокумент()); ... Док.Провести(); КонецЦикла; ... // модуль документа ... ИтЗапрос.ВыполнитьЗапрос(, Док.ТекущийДокумент(), СчетПоКоду("41")); ...
…в данном случае ИтЗапрос.ВыполнитьЗапрос(…) воспользуется результатами временного расчета ИтРасчет. Данная возможность может использоваться при групповом перепроведении документов.
Пример:
БухИтоги.ВыполнитьЗапрос(ДатаНач, ДатаКон, "60", , 3);