Консоль запросов для управляемых форм 8.3














Универсальная внешняя обработка (СДРКонсольЗапросовХ) для создания, редактирования и отладки запросов, с возможностью обработки таблицы результатов произвольными алгоритмами на языке 1С. Выгрузка результатов запроса в таблицу или дерево значений, включая временные таблицы и запросы пакета. Формирование запроса для консоли в отладчике, включая временные таблицы и параметры. Версия 1.1.0.41 от 26.11.2024

СДРКонсольЗапросовХ – инструмент для программиста, позволяющий создавать и отлаживать запросы для баз 1С 8.3, а также обрабатывать результаты запросов (тонкий, толстый, web клиент). Не зависит от конкретной конфигурации, никаких БСП.

Продолжаю публикацию своих инструментов для разработки и отладки СДР (средства для разработчика, первая публикация: Навигатор по конфигурации базы 1С 8.3 ).

В плане интерфейса использована классическая схема: дерево запросов, запрос и результаты запроса.

Особенности

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

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

  • Запросы хранятся в виде дерева (как обычно)
  • Можно сохранить или загрузить все дерево запросов (в файл или из файла)
  • Можно сохранить отдельную веточку запросов в файл
  • Можно подгрузить в отдельную ветку запросов запросы из файла
  • Можно копировать запросы (вместе с параметрами) или перетаскивать их в другие ветки дерева

Работа с текстом запроса

  • Поддержка пакета запросов
  • Можно выполнить весь пакет, либо только выделенную часть пакета
  • В поля выборки можно вставить специальное поле, чтобы вместо ссылки выводился GUID
  • В пакет запроса можно вставить специальный разделитель, чтобы выполнение пакета остановилось на этом месте
  • Выделенную часть запроса можно закомментировать, раскомментировать или преобразовать в строку для вставки в код скрипта 1С

Параметры запроса

  • В параметрах запроса кроме стандартных, может быть таблица значений, граница, момент времени, уникальный идентификатор
  • В параметре можно указать битую ссылку (ссылку не несуществующий объект)
  • В качестве параметру можно указать выражение на языке 1С, которое будет вычисляться перед выполнением запроса
  • Можно скопировать выбранные параметры из одного запроса в другой
  • Можно редактировать таблицу значений, являющуюся параметром запроса

Результаты запроса

  • Результаты запроса оформляются в виде таблицы значений
  • Временные таблицы пакета запроса также оформляются в виде таблицы значений (по желанию)
  • Кликнув мышкой по ячейки результирующей таблицы значений можно открыть значение в стандартной форме (если там находится ссылка на объект)
  • Можно открыть значение ячейки таблицы в специальной форме, предоставляющей доступ ко всем реквизитам объекта (Редактор объектов информационной базы 8.3 – встроен в консоль запросов). Как самостоятельно встроить более новую версию "Редактора объектов" описано здесь.
  • В специальной форме можно открыть не только ссылочный объект, но и хранилище значения (поддерживаются массив, список значений, структура, соответствие, таблица значений, табличный и текстовый документ)
  • Можно загрузить таблицу результатов запроса в параметр запроса либо сохранить в файл
  • Можно выгрузить ссылочные объекты из произвольной колонки результатов запроса в файл в формате XML (для последующей загрузки в базу)

Сохранение запросов из отладчика

  • Есть возможность остановиться в отладчике и сохранить запрос с параметрами и временными таблицами в файл, который затем можно подгрузить в консоль для отладки.
  • Есть возможность остановиться в отладчике и сформировать XML-представление запроса с параметрами и временными таблицами, из которго в консоли можно сформировать запрос для отладки (передается через буфер обмена без использования промежуточных файлов)
  • Функция общего модуля для сохранения запроса из отладчика прилагается, пример вызова: омОтладка.СохранитьЗапросДляСДРКонсолиХ(Запрос, "D:1Cv8Запросы00") или омОтладка.СохранитьЗапросДляСДРКонсолиХ(Запрос) — формирует XML-представление запроса
  • В функцию сохранения запроса в качестве первого параметра можно передать Запрос или МакетКомпоновкиДанных
 

 Функция для перехвата запроса из отладчика (актуальный текст функции приведен на закладке "Настройки" обработки)

 

Для обработки результатов запроса есть закладка «Алгоритмы»

  • в Web клиенте выполнить алгоритм можно только на стороне сервера
  • Алгоритм – это код на языке 1С
  • Алгоритмы хранятся в виде дерева, функционал аналогичен дереву запросов
  • Алгоритмы могут выполнятся как на стороне сервера, так и на стороне клиента; имеют доступ к результатам запроса, можно указать дополнительные параметры (число, дата, ссылка и т.д.)
  • В консоль встроены примеры реализации алгоритмов на стороне сервера и клиента. В примере для клиента обратите внимание на строки «//— Сервер:старт» и «//— Сервер:финиш» — код между этими строками будет выполняться на сервере.

 

Некоторые примеры скриншотов

 

 Основное окно консоли запросов

 

 Закладка "Настройки"

 

 Закладка "Параметры запроса"

 

 Вывод уникального идентификатора объекта в результатах запроса

 

 Иллюстрация команды "Открыть объект…" в результатах запроса

 

 Выгрузка ссылочных объектов из колонки результатов запроса в XML

 

 Просмотр временных таблиц и запросов пакета

 

 Выгрузка результатов в дерево значений

 

 Перехват запроса в отладчике

 

 Обработка результатов запроса произвольным алгоритмом

 

Тестирование

  • Платформа (8.3.11.2867, 8.3.13.1513, 8.3.15.1489), на платформах ниже 8.3.8 работать не будет
  • Управление холдингом, редакция 3.0 (3.0.4.4)
  • 1С:ERP Управление предприятием 2 (2.4.10.56)

Это инструмент для программистов и продвинутых пользователей (я использую постоянно).

 

 Версия 1.1.0.29 от 04.03.2024

 

 Версия 1.1.0.31 от 31.03.2024

 

 Версия 1.1.0.33 от 21.04.2024

 

 Версия 1.1.0.35 от 15.08.2024

 

 Версия 1.1.0.37 от 27.08.2024

 

 Версия 1.1.0.39 от 14.10.2024

 

 Версия 1.1.0.41 от 26.11.2024

  • обновлена специальная форма объекта (Редактор объектов информационной базы 8.3), предоставляющей доступ ко всем реквизитам объектов и движениям документов
  • доработан функционал для работы с параметрами запроса
  • добавлен новый тип параметра "Выражение" (с помощью него можно задать любое значение параметра)
  • добавлена возможность использования битой ссылки (ссылка на удаленный объект) в качестве параметра запроса
  • добавлен новый способ вывода результатов пакета — "Таблица значений + размеры временных таблиц"
  • добавлена возможность задать ограничение на максимальное число строк при выводе временных таблиц
  • доработана функция для сохранения запроса из отладчика: СохранитьЗапросДляСДРКонсолиХ

7 Comments

  1. Perk0n

    Спасибо.

    В 1С:Документооборот и БП 3.0 работает.

    В ЗУПе 3.1 не работает.

    Платформа: 1С:Предприятие 8.3 (8.3.13.1513)

    Конфигурация: Зарплата и управление персоналом, редакция 3.1 (3.1.7.144) (http://v8.1c.ru/hrm/)

    Copyright © ООО «1C-Софт», 2007-2018. Все права защищены

    (http://www.1c.ru)

    Режим: Серверный (сжатие: усиленное)

    Приложение: Тонкий клиент

    Локализация: Информационная база: русский (Россия), Сеанс: русский

    Вариант интерфейса: Такси

    Ошибки:

    ———————————————————————————

    08.11.2018 14:44:53

    {(1, 1)}: Ожидается выражение «ВЫБРАТЬ»

    При начале работы с интерактивам конструктором запросов ЗУПе. Например при раскрытии справочников.

    Штука классная. Надеюсь поправите для ЗУПа.

    Reply
  2. Evg-Lylyk

    Посмотрите другой подобный инструмент https://infostart.ru/public/835718/

    Reply
  3. ROL32

    Спасибо.

    По поводу ЗУПа — для открытия конструктора используется платформенный вызов, поэтому поправить что либо проблематично.

    Думаю, что ошибка вызвана или ошибкой платформы (наблюдал для ERP под 8.3.12.1685), или подпорченной струтурой хранения самой базы (проверить можно на новой пустой или демонстрационной базе ЗУП)

    Reply
  4. ROL32

    Обязательно

    Reply
  5. ROL32

    Странно, что так мало комментариев.

    Похоже, что у тех, кто скачал все работает и их все устраивает.

    А может наоборот посмотрели и сразу удалили.

    Reply
  6. vova-1c

    Не подключается

    Конфигурация

    Reply
  7. vova-1c

    ошибка

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *