Иллюстрированный самоучитель по языку системы 1С:Предприятие

Работа в режиме запроса

Параметр <Периодичность> может принимать следующие значения (в скобках указаны строковые синонимы):

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);
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.