Шаг 142 - Изучаем бухгалтерские итоги – запрос

В прошлом шаге мы посмотрели, как получать временные итоги. Но есть второй метод, который позволяет запросить итоги.

ВыполнитьЗапрос
Выборка итогов в различных разрезах.

Синтаксис:

ВыполнитьЗапрос(<НачалоПериода>, <КонецПериода>, <ФильтрПоСчетам>,<ФильтрПоКоррСчет>, <Валюта>, <ТипИтогов>, <Периодичность>, <ТипСуммы>)

Англоязычный синоним:

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);
	Т.Показать();

КонецПроцедуры

Я пока затрудняюсь ответить какой метод более правильный и чем они отличаются, но обязательно разберусь со временем.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 14.08.2002