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