ВыполнитьЗапрос
Выборка итогов в различных разрезах.
Синтаксис:
ВыполнитьЗапрос(<НачалоПериода>, <КонецПериода>, <ФильтрПоСчетам>,
<ФильтрПоКоррСчет>, <Валюта>, <ТипИтогов>, <Периодичность>, <ТипСуммы>)
Англоязычный синоним:
DoQuery
Параметры:
<НачалоПериода> | Необязательный параметр. Выражение типа дата, документ или позиция документа начала периода запроса. Если этот параметр не указан, будут вычисляться начальные сальдо на момент, указанный в параметре <КонецПериода>
| ||
<КонецПериода> | Необязательный параметр. Выражение типа дата, документ или позиция документа конца периода запроса. Если этот параметр не указан, будут вычисляться начальные сальдо на момент, указанный в параметре <НачалоПериода>. | ||
<ФильтрПоСчетам> | Необязательный параметр. Счета, для которых будут отбираться итоги в запросе. Задается значением типа «Счет» или объектом типа «Список-Значений», содержащим значения типа «Счет», либо строкой содержащей список кодов счетов, разделенных символом ", " или ";". Если параметр не указан, отбор будет выполняться по всем счетам. | ||
<ФильтрПоКоррСчет> | Необязательный параметр. Значение типа «Счет» — корреспондирующий счет, в корреспонденции с которым будут отбираться итоги счета, указанного в параметре <ФильтрПоСчетам>. Задается значением типа «Счет» или объектом типа «СписокЗначений», содержащим значения типа «Счет», либо строкой содержащей список кодов счетов, разделенных символом "," или ";". Если параметр не указан, будут отбираться итоги в корреспонденции со всеми счетами. | ||
<Валюта> | Необязательный параметр. Значение типа «Справочник.Валюты». Если параметр не указан итоги выдаются без учета валюты. | ||
<ТипИтогов> | Необязательный параметр. Число — тип отбираемых итогов. Может принимать следующие значения:
1 — остатки и обороты по счету в целом; 2 — обороты между счетами; Первое и второе вместе. По умолчанию — 1. | ||
<Периодичность> | Необязательный параметр. Позволяет получить дополнительный разрез итогов по периодам. Число или символьная строка (См. ниже). По умолчанию периодичность не задана. | ||
<ТипСуммы> | Необязательный параметр. Число или строка — тип рассчитываемых итогов. Может принимать следующие значения (в скобках указаны строковые синонимы):
1 («С», «S») рассчитывать суммы; 2 («В», «С») рассчитывать валютные суммы; 4 («К», «А») рассчитывать количество. Если требуется одновременно рассчитывать разные суммы, значение параметра получается путем сложения допустимых значений, например: 5 (1+4) — рассчитывать суммы и количество. При указании параметра строкой в ней указываются все символы, которые обозначают типы сумм, которые нужно рассчитывать. По умолчанию рассчитываются все типы сумм. |
Параметр <Периодичность> может принимать следующие значения (в скобках указаны строковые синонимы):
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);