Инженерная консоль запросов для 1С — где потерялось значение, план выполнения, запрос из отладчика и другой базы, сохранение комментариев
Разработка - Инструментарий разработчика
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Запрос почти всегда пишется не с нуля. Его нужно собрать, посмотреть на данные, понять, почему он тормозит, а иногда — сначала выяснить, откуда он вообще взялся. Обычная консоль умеет первое и молчит про остальное.
Инженерная консоль запросов сделана так, чтобы вся эта работа шла в одном окне. Внешняя обработка, управляемые формы, в конфигурацию ничего ставить не нужно.
В версии 2.0 автодополнение доведено до рабочего состояния, все окна переделаны и получили светлую и темную тему. Ниже — что нового, полный список возможностей и разбор по блокам.
Что нового в версии 2.0
- Автодополнение работает. Ctrl+Space открывает список под словом: таблицы конфигурации, после точки — поля таблицы за псевдонимом, включая табличные части и виртуальные таблицы. Выбор стрелками, подстановка по Enter.
- Все окна консоли переделаны на HTML. Единый вид и светлая/темная тема у окна результата, просмотра текста, выбора типа, момента времени, списка значений, таблицы-параметра, сравнений, выбора объекта, шаблонов и мастера, обработки результата, перехвата запросов, подключений и конструктора.
- Табличный параметр — отдельное окно. Колонки и их типы, добавление и правка строк, смена типа колонки с приведением значений, загрузка из файла.
- Сравнение результатов и текстов — на странице. Сводка «совпало / отличается / только слева / только справа», подсветка различий, обмен сторон.
- «Где потерялось значение». Цепочка шагов, вторая сторона соединения и причина словами: на каком шаге и почему пропало значение.
- Подсказка полного типа поля в конструкторе запроса к внешней базе.
- Мелочи: значки SVG без лесенки, горячие клавиши в меню, окна без пустоты внизу, единая строка статуса.
Возможности
Коротко — все, что есть. Подробности — в разделах ниже.
| Блок | Что делает |
|---|---|
| Редактор | Подсветка запроса и XML, автодополнение по Ctrl+Space, парные скобки, отмена и повтор, поиск и замена, переход к строке, закладки, комментарий строки, форматирование, дерево метаданных с поиском, вставка предопределенных, код для модуля. |
| Параметры | Считываются из текста с типами; значения вручную, из базы, списком, таблицей, из файла; редакторы типа, момента времени и границы; таблица-параметр с колонками и типами; значение из внешней базы. |
| Выполнение и анализ | F5, выполнение в фоне с «Прервать», пакет запросов и вкладки временных таблиц, ограничение чтения и вывода, проверка запроса, план выполнения с разбором, замер времени, технологический журнал, перехват из отладчика. |
| Результат | Таблица с фильтрами, сортировкой, итогами по выделению, копированием, предпросмотром значения и открытием объекта; эталон и сравнение результатов, сравнение текстов, «Где потерялось значение», групповая обработка объектов, обработка результата своим кодом, экспорт xlsx/csv/json/mxl/PDF, отдельное окно. |
| Базы | Текущая и внешние по COM, подключения с проверкой, конструктор запроса к внешней базе, значения из внешней базы, пометка базы в результате и истории. |
| Библиотека и файлы | История, библиотека по категориям и ее выгрузка в файл, больше двадцати шаблонов и мастер, сохранение запроса с параметрами в файл и открытие, импорт .q1c/.dcr, автосохранение черновика, второе окно, светлая и темная тема. |
Все в одном окне
Редактор, параметры и результат живут на одной форме. Слева — текст запроса, справа — параметры и дерево объектов, снизу — результат. Панели можно переставлять и скрывать, редактор разворачивается на всю форму.

Подсказка появляется под курсором
Ctrl+Space — и прямо под словом открывается список. В нем таблицы конфигурации, а после точки — поля той таблицы, что стоит за псевдонимом. Работает с табличными частями документов и с виртуальными таблицами регистров. Выбор стрелками, подстановка по Enter.

Проверка до выполнения
Кнопка «Проверить запрос» разбирает текст и показывает слабые места: выборка всех полей звездочкой, соединение с вложенным запросом, ПОДОБНО с процентом в начале шаблона, поля без псевдонима. К каждому замечанию — короткое объяснение, чем это грозит, и двойной клик, который ведет на строку. Если запрос все же не выполнился, строка с ошибкой подсвечивается сама.

План выполнения и разбор
Консоль включает запись плана в технологический журнал сама. После выполнения «План выполнения» показывает три вещи: вывод о том, что не так, сам план СУБД и запрос, который на самом деле ушел в базу. Имена таблиц в плане переводятся в термины конфигурации: вместо _Document1092_VT10607 видно нормальное имя. Вывод пишется человеческим языком — например, что таблица читается целиком, потому что подходящего индекса нет.
Замер времени
Один прогон ничего не значит: первое выполнение всегда медленнее. «Замерить время» гоняет запрос нужное число раз и показывает минимум, медиану, среднее, максимум и все замеры по порядку. Ориентироваться стоит на медиану — об этом там же и написано.
Откуда пришел запрос
Знакомая ситуация: база тормозит, в журнале видно тяжелый запрос, а какой код его выполнил — непонятно. Конфигуратор для этого не нужен. В меню «Запрос» есть «Взять запрос из» с пунктом технологического журнала: кнопка записи кладет настройку в личный каталог, дальше перезапуск программы, нужное действие и чтение. В колонке «Откуда» видно модуль, номер строки и саму строку кода. Имя процедуры можно вписать в отбор.

Запрос из отладчика — целиком
Когда запрос собирается кодом, переписывать его в консоль руками долго и легко ошибиться. Проще забрать. В отладчике, в окне «Вычислить выражение», выполняется одна строка:
ЗначениеВФайл("D:\Обмен\запрос.xml", Новый Структура("Текст, Параметры", Запрос.Текст, Запрос.Параметры))
Дальше в консоли — «Взять запрос из» → «файла из отладчика», и текст с параметрами встают на свои места. Подключать консоль к конфигурации не нужно, предупреждение безопасности не появляется. Если запросов много, точка останова внутри цикла сохранит их пачкой, а «Все перехваченные…» заберет весь каталог сразу и разложит по библиотеке.
Запрос в другой базе
Иногда данные нужно посмотреть не в текущей базе, а в соседней: сравнить справочники, проверить обмен, посмотреть, что у клиента. Консоль подключается к другой базе по COM — файловой или серверной. Кнопка базы над текстом показывает, где выполнится запрос, и открывает список подключений. В заголовке результата и в истории база тоже подписана.

Список подключений хранится в самой обработке, есть кнопка проверки. К внешней базе работает отдельный конструктор запроса: метаданные читаются через соединение, подсказки и дерево объектов доступны и там.

Параметры заполняются сами
Параметры вычитываются из текста перед выполнением, нажимать «Считать параметры» не нужно. Типы определяются по тому, с чем параметр сравнивается: дата останется датой в обеих границах МЕЖДУ, ссылка получит свой тип справочника, период виртуальной таблицы распознается как дата.
Значение можно ввести руками, выбрать из базы, собрать списком или таблицей, загрузить из файла. Для таблицы-параметра открывается отдельное окно: колонки и их типы, добавление строк, смена типа колонки с приведением значений.


Дерево объектов базы
Рядом с текстом запроса — вся конфигурация деревом: справочники, документы, регистры и их поля. В поиске достаточно набрать часть имени, и дерево раскроется на найденном. Двойной клик по объекту или полю дописывает путь прямо в запрос.

Работа с результатом
Результат — не просто таблица на экране. Выделили числа мышью — под таблицей появилась строка с количеством, суммой и средним. Двойной клик по ячейке со ссылкой открывает сам объект. Отдельно есть структура записи, поиск помеченных на удаление и поиск объекта по идентификатору (GUID). Колонку с идентификаторами можно вывести рядом с данными, а временные таблицы — показать вместе с результатом. Даты и числа показываются по формату колонки; ширину колонок и высоту строк можно менять.
Результат можно запомнить как эталон и потом сверять с ним после правок запроса — покажет, что именно изменилось. Два результата сравниваются между собой, два текста запроса — тоже.

Если значение пропало на соединении, «Где потерялось значение» строит цепочку шагов, показывает вторую сторону соединения и объясняет причину словами.

Если результат нужно не просто посмотреть, а обработать, есть «Обработать результат…»: небольшой редактор, где над выборкой выполняется свой код. Примеры вставляются кнопкой. Для отмеченных объектов есть групповая обработка: перепровести, изменить реквизит — только в текущей базе.

Результат открывается в отдельном окне — удобно, когда нужно смотреть данные и править запрос одновременно.

Окна и темы
Все окна консоли сделаны заново на HTML и выглядят одинаково: окно результата, просмотр текста, выбор типа, момент времени, список значений, таблица-параметр, оба сравнения, выбор объекта, шаблоны и мастер, обработка результата, перехват запросов, подключения, конструктор. У каждого светлая и темная тема, значки нарисованы векторно и не мылятся на любом масштабе.


Мелочи, которые экономят время
Два ограничения вместо одного: «читать не более» подставляется в сам запрос и режет выборку из базы, «выводить не более» ограничивает только вывод — запрос при этом отрабатывает целиком.
Результат можно открыть в отдельном окне или развернуть редактор на всю форму, спрятав панели. Длинные строки переносятся, если включить перенос. Второе окно консоли — когда нужно держать перед глазами два запроса сразу. Предопределенные значения вставляются из списка, а не пишутся по памяти. Момент времени и граница задаются отдельной формой, а не подбором даты руками. Запрос с параметрами сохраняется в файл и переносится на другую машину.
Привычное тоже на месте
Конструктор запроса и конструктор с СКД, сборка схемы компоновки из запроса и просмотр ее текста. Запрос из готового отчета на СКД вытаскивается вместе с настройками набора данных. Комментарии переживают конструктор — возвращаются к своим строкам.
Форматирование, комментирование, удаление строки, замена по всему тексту, отмена и возврат. Библиотека запросов по категориям и ее выгрузка в файл, история, больше двадцати шаблонов и мастер их сборки. Взятие запроса из модуля с очисткой кавычек и вертикальных черточек. Импорт из типовой консоли и из консоли отчетов (.q1c, .dcr). Экспорт результата в xlsx, csv, json, mxl и PDF. Код для конфигуратора: готовый фрагмент с текстом запроса и параметрами. Выполнение в фоне с кнопкой «Прервать». Черновик сохраняется сам и возвращается при следующем открытии.
Что нужно для работы
Управляемые формы, любая конфигурация, БСП не требуется, конфигурация не меняется. В комплекте два архива — под 8.3 и под 8.5; в каждом новая версия 2.0 и предыдущая 1.2 без новых окон, если новая почему-то не подойдет.
Проверено на 1С:Предприятие 8.3.27.2214 и 8.5.1.1343.
Честно про ограничения
- Фоновое выполнение работает там, где в конфигурации есть библиотека стандартных подсистем. Без нее запросы выполняются обычным способом, остальное не меняется.
- План выполнения снимается с запроса, выполненного в текущем сеансе, поэтому на время работы с планом фоновое выполнение отключается — переключатель рядом. Если план не появился, перезапустите сеанс: настройка записи подхватывается при старте.
- COM-соединение работает под Windows и требует зарегистрированной компоненты comcntr той же разрядности, что и платформа.
- Пароли к внешним базам живут только до закрытия консоли и никуда не сохраняются.
- Для
ПОМЕСТИТЬ ИЗ &Таблицатипы колонок не определяются по тексту: их задают в таблице-параметре. - Запросы хранятся в файлах, в базе консоль ничего не сохраняет.
- Веб-клиент не заявляем: проверен тонкий клиент.
Как начать
Открыть файл через «Файл — Открыть», написать запрос и нажать F5. Все остальное — по мере надобности: в меню «Сервис» есть «Как работать с консолью», короткая памятка с горячими клавишами и неочевидными приемами.
История версий
- 2.0 — 13.11.2026. Автодополнение, все окна и темы, таблица-параметр, сравнения на странице, «Где потерялось значение», подсказка типа поля во внешней базе.
- 1.2 — 18.09.2026. Новый редактор, выполнение в другой базе, история, переработанные окна.
- 1.0 — первая публикация.
Вступайте в нашу телеграмм-группу Инфостарт