Основное назначение данной консоли:
1. визуальная отладка запросов;
2. замена обработки УниверсальныйПодборИОбработкаОбъектов.
1. Визуальная отладка запросов
При разработке запроса немаловажно, особенно при освоении языка запросов,
видеть результат запроса. А именно - важно видеть результат действия различных
видов соединений, условий соединений, результат действия и взаимодействия
подзапросов, скорость выполнения запроса (в файловой базе и в серверной,
с пустым кэшем и с кэшированными данными) и проч.
Эта важность усиливается при создании "многоэтажных" и многоуровневых
запросов (с глубиной вложенности подзапросов большей или равной 3)!
Данная консоль поможет в решении таких задач.
Для этого необходимо только разбить запрос на подзапросы, создать пакет
(фактически пакетный запрос), произвести отладку запроса (для получения
приемлемых результата и времени выполнения) и собрать итоговый запрос.
2. Замена обработки УниверсальныйПодборИОбработкаОбъектов.
На мой (сугубо субъективный) взгляд, обработка
УниверсальныйПодборИОбработкаОбъектов хотя и называется универсальной,
таковой универсальностью обладает не в полной мере.
Поясню:
1. можно произвести обработку только документов или справочников или
бизнес-процессов (причем именно ИЛИ);
2. выбор необходимых объектов производится только по значению
реквизитов этих объектов по условию И; т.е. отобрать объекты по
более сложным условиям (хотя бы по условию ИЛИ) можно только
программно, что достаточно сильно увеличивает время обработки
выбранных объектов;
3. при программном определении различных дополнительных значений
приходится пользоваться не всегда надежными методами,
такими как НайтиПоНомеру() или НайтиПоКоду();
4. при обработке каждого объекта выборки производится получение
объекта (методом ПолучитьОбъект()). Получение объекта производится
даже в том случае, когда обработка объекта не требуется!
А это в значительной степени увеличивает время обработки объектов.
Данная разработка позволяет обойти все указанные (и многие другие) недостатки:
для отбора объектов можно использовать самый универсальный инструмент - запрос!
Поясню:
1. с помощью запроса можно получить весьма неординарную выборку из
объектов различного типа;
2. выбор объектов можно производить по условиям различной степени
сложности; но даже если условия отбора объектов не могут быть
описаны на языке запросов - есть возможность вывести необходимые
реквизиты в результат запроса и обработать выборку программно!
Время обработки выборки без вызова метода ПолучитьОбъект() будет
зависеть только от оптимальности алгоритма программной обработки;
3. различные дополнительные значения можно определить как параметры
пакета или элемента и использовать их без вызова таких методов,
как НайтиПоНомеру() или НайтиПоКоду();
4. получение объекта обработки производится (явно) только при
необходимости, что сокращает время обработки объектов.
Помимо названных преимуществ, консоль кода обладает многими другими
возможностями, о которых можно узнать, изучив описание обработки и
предлагаемые примеры.
Уточнение: примеры не полные и показывают только часть возможностей консоли.
По мере готовности примеров они будут выложены для всеобщего скачивания.