Реализовано в версии 8.3.5.1068.
Мы доработали конструктор запроса таким образом, что теперь он может работать в управляемом режиме в тонком клиенте, толстом клиенте и веб-клиенте. Раньше конструктор запроса не был доступен в режиме управляемого приложения.
Большинство действий в управляемом режиме выполняется так же, как и в «старом» конструкторе. Но есть и целый ряд доработок. Например:
Но самые большие изменения претерпела вкладка Связи. Теперь формирование связей происходит перетаскиванием таблиц одной на другую.
Работу конструктора запроса мы реализовали в немодальном режиме. Для этого мы добавили ему новый метод Показать(), который открывает немодальное блокирующее окно. А результат «конструирования» (текст запроса) платформа передаёт в процедуру, вызываемую после закрытия конструктора.
Объектная модель схемы запроса
Периодически во встроенном языке возникает необходимость изменения текста запроса в зависимости от разных алгоритмических условий. Раньше подобная задача решалась путём непосредственного формирования нужного текста запроса в виде строки. А это не всегда удобно и зачастую очень громоздко.
Теперь во встроенном языке мы реализовали объектную модель схемы запроса. Вы можете создать пустую схему запроса конструктором и загрузить в неё имеющийся текст запроса. После этого отдельные элементы текста запроса будут доступны вам как свойства объектной модели.
На рисунке ниже стрелки показывают, в каких объектах встроенного языка будут доступны те или иные элементы простого запроса, загруженного в схему:
Редактирование текста запроса с помощью объектной модели позволяет вам проще и понятнее модифицировать имеющиеся запросы. Или даже создавать их во встроенном языке «с нуля». А затем просто получать готовый текст запроса из схемы методом ПолучитьТекстЗапроса().