Консоль запросов 1с как пользоваться
Универсальная внешняя обработка для создания, редактирования и отладки запросов, с возможностью обработки таблицы результатов произвольными алгоритмами на языке 1С. Выгрузка результатов запроса в таблицу или дерево значений, включая временные таблицы и запросы пакета. Формирование запроса для консоли в отладчике, включая временные таблицы и параметры. Версия 1.1.0.77 от 02.12.2021
СДРКонсольЗапросовХ – инструмент для программиста, позволяющий создавать и отлаживать запросы для баз 1С 8.3, а также обрабатывать результаты запросов (тонкий, толстый, web клиент). Не зависит от конкретной конфигурации, никаких БСП.
Работает с современными конфигурациями 1С с запретом на использование модальности и синхронных вызовов. Для конфигураций, использующих БСП, есть возможность подключения обработки к справочнику "ДополнительныеОтчетыИОбработки".
Видео инструкции по работе с консолью можно посмотреть здесь
Если Вас заинтересовала эта обработка, то рекомендую обратить внимание на Навигатор по базе данных 1С 8.3
В плане интерфейса использована классическая схема: дерево запросов, запрос и результаты запроса.
Особенности
- Работает с современными конфигурациями 1С (с запретом на использование модальности и синхронных вызовов)
- Заточена на интерфейс «Такси» - мало место для работы по сравнению с неуправляемыми формами (поэтому экономим место: можно погасить дерево запросов, результаты запроса и вообще ничего лишнего стараемся не показывать)
- Оптимизирован обмен данными между клиентом и сервером
- Не содержит избыточного функционала, редко используемого в практической работе
- Для всех форм обработки установлен вариант масштаба "Компактный". Если кому то это не нравится и хочется использовать платформенную кнопку "Изменить масштаб", то надо в конфигураторе для всех форм обработки установить вариант масштаба "Авто".
Работа с деревом запросов
- Запросы хранятся в виде дерева (как обычно)
- Можно сохранить или загрузить все дерево запросов (в файл или из файла)
- Можно сохранить отдельную веточку запросов в файл
- Можно подгрузить в отдельную ветку запросов запросы из файла
- Можно копировать запросы (вместе с параметрами и таблицами МВТ) или перетаскивать их в другие ветки дерева
- ВАЖНО: корень дерева не предназначен для работы с запросом
Работа с текстом запроса
- Поддержка пакета запросов
- Можно выполнить весь пакет, либо только выделенную часть пакета
- В поля выборки можно вставить специальное поле, чтобы вместо ссылки выводился GUID
- В пакет запроса можно вставить специальный разделитель, чтобы выполнение пакета остановилось на этом месте
- Выделенную часть запроса можно закомментировать, раскомментировать или преобразовать в строку для вставки в код скрипта 1С
Параметры запроса
- В параметрах запроса кроме стандартных, может быть таблица значений, граница, момент времени, уникальный идентификатор
- В параметре можно указать битую ссылку (ссылку не несуществующий объект)
- В качестве параметру можно указать выражение на языке 1С, которое будет вычисляться перед выполнением запроса
- Можно скопировать выбранные параметры из одного запроса в другой
- Можно редактировать таблицу значений, являющуюся параметром запроса
Таблицы МВТ
- Здесь располагаются таблицы значений, которые перед выполнением запроса помещаются в менеджер временных таблиц
- В основном используется при перехвате сложных запросв из отладчика
- Можно скопировать выбранные таблицы из одного запроса в другой
- Т аблицы значений можно редактировать
Результаты запроса
- Результаты запроса оформляются в виде таблицы значений или дерева значений
- Временные таблицы пакета запроса также оформляются в виде таблицы значений (по желанию)
- Есть возможность показывать итоги по числовым колонкам таблицы результатов или временных таблиц
- Есть возможность показывать итоги для выделенных строк по числовым колонкам таблицы результатов или временных таблиц
- Кликнув мышкой по ячейки результирующей таблицы значений можно открыть значение в стандартной форме (если там находится ссылка на объект)
- Можно открыть значение ячейки таблицы в специальной форме, предоставляющей доступ ко всем реквизитам объекта (Редактор объектов информационной базы 8.3 – встроен в консоль запросов). Как самостоятельно встроить более новую версию "Редактора объектов" описано здесь.
- В специальной форме можно открыть не только ссылочный объект, но и хранилище значения (поддерживаются массив, список значений, структура, соответствие, таблица значений, табличный и текстовый документ)
- Можно загрузить таблицу результатов запроса в параметр запроса либо сохранить в файл
- Можно загрузить таблицу результатов запроса в менеджер временных таблиц запроса
- Можно выгрузить ссылочные объекты из произвольной колонки результатов запроса в формате XML (для последующей загрузки в базу). Для обмена данными можно использовать файлы или строку, передаваемую через буфер обмена.
Сохранение запросов из отладчика
- Есть возможность остановиться в отладчике и сохранить запрос с параметрами и временными таблицами в файл, который затем можно подгрузить в консоль для отладки.
- Есть возможность остановиться в отладчике и сформировать XML-представление запроса с параметрами и временными таблицами, из которго в консоли можно сформировать запрос для отладки (передается через буфер обмена без использования промежуточных файлов)
- Функция общего модуля для сохранения запроса из отладчика прилагается, пример вызова: омОтладка.СохранитьЗапросДляСДРКонсолиХ(Запрос, "D:\1Cv8\Запросы\000") или омОтладка.СохранитьЗапросДляСДРКонсолиХ(Запрос) - формирует XML-представление запроса
- В функцию сохранения запроса в качестве первого параметра можно передать Запрос или МакетКомпоновкиДанных
Функция для перехвата запроса из отладчика (актуальный текст функции приведен на закладке "Настройки" обработки)
Для обработки результатов запроса есть закладка «Алгоритмы»
- в Web клиенте выполнить алгоритм можно только на стороне сервера
- Алгоритм – это код на языке 1С
- Алгоритмы хранятся в виде дерева, функционал аналогичен дереву запросов
- ВАЖНО: корень дерева не предназначен для работы с алгоритмом
- Алгоритмы могут выполнятся как на стороне сервера, так и на стороне клиента; имеют доступ к результатам запроса, можно указать дополнительные параметры (число, дата, ссылка и т.д.)
- В консоль встроены примеры реализации алгоритмов на стороне сервера и клиента. В примере для клиента обратите внимание на строки «//--- Сервер:старт» и «//--- Сервер:финиш» - код между этими строками будет выполняться на сервере.
Видео инструкции по работе с консолью можно посмотреть здесь
Некоторые примеры скриншотов
Здесь в том числе приведен текст функции общего модуля для перехвата запроса в отладчике
Просмотр и редактирование параметра типа "ТаблицаЗначений"
Если использовать нестандартную форму для выбора типа параметра, то выбор организован более интелектуально - типы объектов не сваливаются в одну кучу, а разбиты по категориям
Просто в псевдониме поля надо добавить строку "__GUID__" (во временных таблицах и при выгрузке в дерево значений игнорируется)
Консоль запросов 1С 8.3 — простой и удобный способ для отладки сложных запросов 1С и быстрого получения информации. В этой статье я постараюсь описать, как пользоваться консолью запросов, и дам ссылку для скачивания консоли запросов.
Рассмотрим этот инструмент подробнее.
Первым делом, чтобы начать работу с консолью запросов, её нужно откуда-то скачать. Обработки обычно делятся на два вида — на управляемых формах и обычных (или иногда их называют на 8.1 и на 8.2/8.3).
Я постарался объединить эти два вида в одной обработке — в нужном режиме работы открывается нужная форма ( в управляемом режиме консоль работает только в толстом режиме ).
Авторство обработок не моё, я лишь объединил 2 наиболее удачные, на мой взгляд, консоли.
Описание консоли запросов 1С
Если Вас интересует, как пишутся запросы в системе 1С, рекомендую ознакомиться со статьей Описание языка запросов 1С и Описание конструктора запросов 1С.
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Начнем рассмотрение консоли запросов с описания главной панели обработки:
В шапке консоли запросов можно увидеть время выполнения последнего запроса с точностью до миллисекунды, это позволяет сравнивать разные конструкции по производительности.
Первая группа кнопок в командной панели отвечает за сохранение текущих запросов во внешнем файле. Это очень удобно, Вы всегда сможете вернуться к написанию сложного запроса. Или же, например, хранить список типичных примеров тех или иных конструкций.
Слева, в поле «Запрос», можно создавать новые запросы и сохранять их в древовидной структуре. Вторая группа кнопок как раз отвечает за управление списком запросов. С помощью неё можно создать, скопировать, удалить, переместить запрос.
Далее идут кнопки, отвечающие за инициализацию запроса:
- Выполнить запрос — простое выполнение и получение результата;
- Выполнить пакет — позволяет просмотреть все промежуточные запросы в пакете запросов;
- Просмотр временных таблиц — позволяет увидеть результат, которые возвращают временные запросы в таблице.
Позволяют установить текущие параметры для запроса.
В окне параметров запроса интересно следующее:
- Кнопка Получить из запроса автоматически находит все параметры в запросе, для удобства разработчика.
- Флаг Единые параметры для всех запросов — при установке его обработка не очищает параметры при переходе от запроса к запросу в общем списке запросов.
Задать параметр списком значений очень просто, достаточно при выборе значения параметра нажать на кнопку очистки значения (крестик), система предложит выбрать тип данных, где надо выбрать «Список значения»:
Также в верхней панели очень есть кнопка вызова настроек консоли запросов:
Где можно указать параметры автосохранения запросов и параметры выполнения запроса.
В поле запроса консоли заносится текст запроса. Сделать это можно простым набором теста запроса или же вызовом специального инструмента — конструктора запросов.
Конструктор запроса 1С 8.3 вызывается из контекстного меню (правая кнопка мыши) при нажатии на поле ввода:
Также в этом меню есть такие полезные функции, как очистка или добавление в запрос символов переноса («|»), или же получение кода запроса вот в таком удобном виде:
В нижнем поле консоли запросов отображается поле результата запроса, ради чего и создана эта обработка:
Также консоль запросов кроме списка умеет отображать данные в виде дерева для запросов, содержащих итоги.
Другие статьи по 1С:
Если Вы начинаете изучать 1С программирование, рекомендуем наш курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
Вы наверняка заметили стремительное развитие технологий во всех сферах жизни. Практически каждый человек обладает устройством типа компьютер, планшет, смартфон, мы теперь не мыслим свою жизнь без программных продуктов: электронной почты, яндекс-карт и т.д.
Не отстает от прогресса и бизнес. Невозможно себе представить, чтобы сейчас применялась журнально-ордерная форма учета, если, конечно, это не овощной ларек. Да и ларек ларьку рознь. У каждой компании имеются огромные массивы информации и средства, которые используют эти массивы. Немалую долю среди этих средств занимают программы на платформе 1С. В частности, 1С УПП.
Все эти тенденции явно намекают нам: чтобы стать востребованным и грамотным специалистом, мы должны все лучше и лучше разбираться в цифровых технологиях. Так вот, тем, кто хочет повысить свою эффективность в работе с программными продуктами 1С, будет полезна эта статья. Это могут быть экономисты, финансовые менеджеры, аналитики и в меньшей степени бухгалтеры.
Часто ли Вам приходилось сохранять отчеты 1С в формате Excel, а потом обрабатывать их уже в программном продукте от Microsoft? Уверен, это не редкость. Я и сам поступал таким способом…
Такой подход хоть и имеет право на жизнь, но является совсем не эффективным. И вот почему:
- Сколько-нибудь большой массив данных в Excel работает невыносимо долго.
- Как правило, в ячейках таблиц, выгруженных из 1С, сохраняется уже скомпонованная информация, а ее хочется видеть в различных ячейках, для фильтрации.
Как быстро получить данные в 1С?
Конечно, можно возразить, что есть отчеты СКД, которые дают пользователю место для маневра, но настраивать СКД тоже не простое занятие.
Но есть средство, которое позволяет избежать всех трудностей, и оно совсем не новое, его использует каждый программист. Это обработка, название которой «Консоль запросов 1С». Хранится эта чудесная вещь на дисках ИТС. Различается для разных платформ.
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Эта вещь просто необходима для эффективной работы в УПП. Она просто окрыляет, Вы становитесь властителем информационной базы. Вы не зависите от программистов, способны извлечь практически любую информацию в считанные секунды.
Данные исполненного запроса легко сохранить в табличный документ и далее делать с ним все что угодно. Только данные будут сгруппированы именно так, как Вам удобно.
Но, конечно, для успешной работы Вам нужно кое-что знать о конфигурации 1С. Это не так сложно, как кажется на первый взгляд, приобретите любую книгу, описывающую конфигурацию, или возьмите «Руководство разработчика» из желтой коробки и полистайте. Не пройдет и пары недель, как Вы сможете достаточно хорошо писать запросы.
Как работать с обработкой
Давайте запустим обработку «Консоль запросов 1С» в программном продукте 1C УПП. Открываем нажатием на панели: «Файл – открыть – путь к файлу обработки».
Вам открылась обработка с тремя окнами. В правое верхнее окно введем текст:
ВЫБРАТЬ
Организации.Наименование ,
Организации.ИНН ,
Организации.КПП
ИЗ
Справочник.Организации КАК Организации
И нажмем кнопку выполнить на панели управления. В нижнем окне будет выведен перечень организаций, по которым ведется учет в Вашей базе УПП, их ИНН и КПП. Ну вот, Вы выполнили свой первый запрос – поздравляю.
Теперь щелкнем правой кнопкой мыши по правому верхнему окну и выберем пункт меню «Конструктор запросов». В левом поле мы видим все элементы конфигурации, в среднем — то, к чему мы обратились (в данном случае к справочнику «Организации»), в правом — то, что будет выведено по результату запроса.
Другие вкладки позволяют группировать, задавать условия, выводить итоги, и еще много полезнейших вещей.
С помощью консоли запросов можно обратиться к любому элементу конфигурации, задать условия вывода информации, объединить данные из разных источников, провести математические операции с данными. И все это будет выполнено невероятно быстро по сравнению с Excel.
Вот вкратце обзор полезнейшего инструмента в 1С УПП, без которого я не могу себе представить работу в данной программе.
Зачем консоль запросов мне?
Тут Вы можете возмутиться: «Я не программист, я экономист, аналитик, менеджер, зачем мне это?!» Погодите возмущаться. Начнем с того, что, освоив «Консоль запросов 1С» и научившись применять ее в УПП, Вы не станете программистом, и не рассчитывайте. НО.
- Вы будете экономить свое время, и это не просто слова. С помощью этой обработки Вы выполните работу, возможно, в 10 раз быстрее. Если Вы делаете анализ таблицы из периода в период, с применением различных фильтров и функций для выборки; не умеете писать макросы Excel; тратите на это пару часов или пару дней… Написав запрос один раз и сохранив его, Вы сможете получать эти данные за секунды, поменяв лишь параметры даты. Остается только посидеть и подумать над кодом запроса.
- Особенно полезна обработка «Консоль запросов 1С», если в компании еще нет чёткой системы ключевых показателей. Руководство каждый раз просит добавить в отчет новые данные или посчитать показатель по другой формуле. Тут Вы сможете блеснуть своими знаниям. И кто знает, к каким высотам это Вас может привести.
- Снимает Вашу зависимость от программиста. Конечно, результат запроса из консоли — это не полноценный отчет. Но важна не форма, а содержание. Консоль даст Вам любую информацию о конфигурации. И Вы сможете начать оперировать данными, пока отчет находится на стадии программирования.
- Использование консоли неминуемо заставит Вас углубить свои знания УПП. И это будут не знания типичного пользователя, азнания архитектуры конфигурации УПП. Если для Вас это пустые слова, вперед на «работные» сайты, и посмотрите, сколько стоят специалисты УПП.
Мы живем в цифровом мире, в котором умение работать с информацией повышает шансы стать успешнее и богаче!
Описание и установка внешней обработки "Консоль запросов" для управляемого приложения
Инструмент "Консоль запросов" предназначена для отладки и просмотра результатов выполнения запросов в режиме 1С:Предприятие . Данная обработка предназначена в основном для разработчиков конфигураций и специалистов по внедрению. Данный инструмент можно использовать только в управляемом режиме. Если работа происходит в обычном режиме, то необходимо использовать "Консоль запросов" для 1C:Предприятия 8.1.
При разработке запросов в конфигураторе, как правило, требуется проводить отладку запроса на реальных данных. Данный инструмент позволяет вести разработку запроса (или пакета запросов) параллельно с просмотром результата. При работе с инструментом в толстом клиенте можно воспользоваться конструктором запросов, как и при работе в конфигураторе. Возможности по анализу результата запроса включают:
- вывод данных временных таблиц;
- замер времени выполнения запроса и числа строк;
- подсветку указанных ячеек в результате запроса;
- интерактивное сравнение двух результатов запроса (только в толстом клиенте);
- вывод результата запроса в новом окне;
- вывод плана выполнения запроса, а также SQL-текст запроса, сформированного в СУБД. Для СУБД Microsoft SQL Server план выполнения выводится в виде дерева, а для остальных СУБД – в текстовом формате технологического журнала. Для упрощения анализа запросов также предусмотрено два режима отображения текстов запросов: с именами таблиц и колонок СУБД или с именами объектов метаданных и реквизитов конфигурации (только в обработке для "1С:Предприятие" версии 8.3).
После завершения отладки текст запроса можно перенести в код (с помощью команды формирования текста запроса для конфигуратора) или в отчеты конфигурации. К сервисным возможностям относится работа сразу с несколькими запросами (пакет запросов), сохранение текста и параметров запросов в файле, автосохранение, экспорт результатов запроса в табличный документ и другое.
ВЫ МОЖЕТЕ ПРЯМО СЕЙЧАС УСТАНОВИТЬ ФАЙЛЫ ОТЧЕТОВ И ОБРАБОТОК
НА ЖЕСТКИЙ ДИСК ВАШЕГО КОМПЬЮТЕРА
Обработка КонсольЗапросов.epf для запуска в "1С:Предприятии" версии 8.2 находится в каталоге \1CITS\EXE\ExtReps\Unireps82\RequestConsoleManaged\
Обработка КонсольЗапросов.epf для запуска в "1С:Предприятии" версии 8.3 находится в каталоге \1CITS\EXE\ExtReps\Unireps83\RequestConsoleManaged\
При разработке в конфигурациях 1С программисты получают данные из базы как результат компиляции запросов. Нередко успешность решения задачи сводится к оптимальному построению запроса. Достичь успеха в этом непростом деле разработчикам помогает специальный инструмент в виде внешней обработки – «Консоль запросов». Без нее намного сложнее научиться понимать основные принципы создания оптимальных запросов на выборку данных из базы.
Где найти и как использовать консоль
Большая популярность консоли запросов привела к тому, что ее выкладывают на большинстве сайтов, связанных с разработкой в 1С. Можно найти классические версии инструментария, как на сайте ИТС, или доработанные разработчиками с дополнительными функциями. Поэтому найти и скачать консоль запросов для 1С версии 8.3 или младше не составит труда. Специалисты, предоставляющие консультации по ведению 1С, советуют обращать внимание на отзывы, чтобы не попасть на вирусы под видом этого полезного инструмента.
Обработка представляет собой небольшой файл с расширением epf, который вы сможете открыть в 1С с помощью меню открытия файла. Для удобства есть возможность добавить ее в дополнительные обработки программы – чтобы при необходимости быстро открыть консоль запросов из 1С. В любом случае при открытии разработчик увидит форму, состоящую из 3 основных разделов:
- Заполнение параметров. Часто этот раздел совмещен с перечнем запросов, если консоль поддерживает работу с несколькими запросами;
- Сам запрос. В толстом клиенте можно воспользоваться конструктором запросов платформы 1С;
- Вывод результата.
Рис.1 Где найти и как использовать консоль
Для отладки и оптимизации запросов на языке 1С программисты вставляют текст в соответствующий раздел, заполняют параметры и проверяют результат работы. Чтобы заполнить параметры, необходимо найти соответствующую вкладку или раздел, а для запуска – нажать кнопку «Выполнить» или ее аналог – клавишу «F7». Кроме вывода перечня полей, в консоли отражается время выполнения запроса и количество строк, выведенных в соответствующий раздел.
Рис.2 В консоли отражается время выполнения запроса и количество строк
Практически в любой из распространяемых версий консоли запросов есть и дополнительные функции, позволяющие существенно облегчить работу.
Возможности консоли запросов 1С 8.3
В первую очередь отметим возможность выполнить не весь текст запроса, а его часть, и проверить результат. Это может пригодиться, если у вас пакетный запрос, но вы не можете определить, в какой части ошибка. Достаточно лишь выделить мышью кусок и нажать «Выполнить».
Многие консоли могут выдавать результат каждого запроса в пакете в соответствующем разделе. Некоторые включают эту функцию по умолчанию, в некоторых версиях программисту придется нажать на отдельную команду «Выполнить пакет». Полезной будет и возможность просмотра временных таблиц, созданных в процессе выполнения текста запроса. Для этого найдите команду «Просмотр временных таблиц».
Рис.3 Возможности консоли
Разработчикам часто приходится писать аналогичные друг другу запросы, и консоль может облегчить эту задачу. С ее помощью вы сможете сохранять шаблоны и загружать их с помощью 1 кнопки. Для этого воспользуйтесь командой «Сохранить» и на компьютере будет создан файл с текстами ваших запросов. Если часто просят сделать определенную выборку данных, то эта функция, как и следующая, будет полезна.
Сохранение данных результата запроса в файл распространенного формата позволяет решить частые задания без создания внешних отчетов. Намного быстрее запустить консоль запросов и написать только текст обращения к базе данных, чем оформлять форму отчета и писать процедуры вывода. Команда «Вывести список…» предложит вам несколько вариантов и позволит выгрузить лишь выделенные строки и определенные столбцы.
Рис.4 Команда «Вывести список…»
Отличия в версиях этой универсальной обработки продиктованы тем, что многие разработчики настраивают консоль под себя и распространяют уже обновленную версию. Так же можете поступить и вы, если в скачанной версии вам чего-либо не хватает.
Читайте также: