Выполнение и отладка запроса

26.10.11

Разработка - Инструментарий разработчика

Инструмент для программиста. Упрощенный вариант консоли запросов, умеющий записывать/считывать параметры, просматривать временные таблицы и еще...

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
(только для физ. лиц)
ВыполнениеЗапроса_82.erf
.erf 48,26Kb
260 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Простой отладчик запросов, умеющий записывать/считывать параметры, просматривать временные таблицы и еще...

Можно использовать пакеты запросов с выгрузкой во временные таблицы в запросе.

  Обработка оформлена в виде пошагового мастера: 

Первый шаг (вкладка "Запрос") - указание самого текста запроса. На этой странице имеется кнопка "Конструктор", вызывает стандартный конструктор запросов. Также можно сохранить/загрузить/отредактировать текст запроса. Можно скопировать текст из конфигуратора, не надо при этом удалять символы | - обработка сама их удалит. Также есть кнопка "Код запроса" - которая оформит текст запроса в виде кода, который можно вставить в конфигуратор.

Второй шаг (вкладка "Параметры") - настройка параметров отчета. Здесь также имеется кнопка "Загрузить..." с помощью которой можно загрузить параметры из файла, но для этого параметры надо предварительно выгрузить. Как это делается - чуть позже...

Третий шаг (вкладка "Результат") - просмотр результата запроса. Результат выводится в табличное поле как таблица или дерево значений. Можно вывести в печатную форму. Также есть кнопка - просмотр временных таблиц (в случае если выполнялся пакет запросов со выгрузкой в промежуточные таблицы).


25.10.2011 - обновлен интерфейс, более удобное заполнение параметров запроса (выбор типа) + возможность указывать в параметрах массив, список или таблицу значений. Добавлена возможность сохранять/считывать параметры запроса.

Воспользовавшись поиском по ИС (по подсказке пользователя Поручик) нашел целый ряд публикаций по теме:
Приведу неполный список :

  1.  Запросник (автор: tezin) 
  2.  Консоль запросов с просмотром временных таблиц для 8.1 (автор: proal) 
  3.  Универсальная консоль отчетов (автор: Evg-Lylyk) 
  4.  Шаблон для отчета СКД (автор: coder1cv8)
  5.  Консоль запросов (еще 1)  (автор: skiller3000)    
  6.  Очередная консоль запросов (замеры, ВТ, IntelliSense)  (автор: vhd)    
  7.  Консоль запросов (ИР) (автор: acsent)   
  8.  Удобная консоль запросов  (автор: pipi) 
  9.  Еще одна консоль запросов + возможность подключения внешних модулей из файла  (автор: Legavaz)  
  10.  СКД против запроса с итогами  (автор: Ish_2) 
  11.  СКД против "ручного" кодинга (автор: Ish_2)   
  12.  [8.2] Управляемая консоль отчетов (только управляемые формы)  (автор: Evg-Lylyk) 
  13.  Обработка Помощник для написания запроса в тонком клиенте   (автор: boln) 
  14.  Нестандартный синтаксис оператора "ВЫБОР" в запросе   (автор: ll13) 
  15.  Недокументированный синтаксис оператора "В"   (автор: German)

Повторюсь: список неполный. То есть есть еще... и много... И после моей публикации еще будут - я уверен.

Да, здесь есть действительно "мощные" разработки! Особенно впечатлили 1, 6, 5. Есть на что посмотреть - и однозначно я буду черпать оттуда идеи для дальнейшего развития. 

Постараюсь объяснить почему я пользуюсь своей обработкой (и почему я ее здесь положил):

Вот несколько моих жизненных ситуаций: 

  1. нужно как можно быстрее разработать отчет на запросе, не требующий детальной настройки - как универсальный отчет, при этом желательно "на лету" протестировать какой результат будет давать запрос.
    • Открыл обработку - в конструкторе собрал запрос
    • Жму "Выполнить" - заполняю параметры
    • Еще раз "Выполнить" - смотрю что вышло в результате 
    • Жму "Код запроса" - копирую текст запроса.
    • Создаю внешний отчет - пихаю туда текст запроса и небольшой код по созданию построителя отчета и оформлению результата.

    На все про все пол-часа, максимум час. 

  2. Отчет построенный на запросе дает неверные данные.
  3. Документ заполняется неправильно, при отладке дошли до процедуры, в которой находится пакетный мегазапрос на три с лишним страницы кода. Кто переносил ЗУП с ЗиК - наверняка сталкивались.
  4. Выделяю в модуле текст запроса и копирую
    • Открываю свой отладчик запросов, вставляю текст.
    • Нажимаю "Выполнить".
    • Заполняю значения параметров. Если их немного - вручную. Если много и они сложны - то выгружаю из отладчика.
    • Жму еще раз "Выполнить" - и получаю результат.
    • Все это делается очень быстро, без лишних телодвижений...

Далее - в зависимости от ситуации:

  1. "играю" с параметрами - меняю и смотрю что на что влияет...
  2. модифицирую (обычно, упрощаю) текст запроса, смотрю в конструкторе из каких источников собираются данные
  3. изменяю текст запроса так, чтобы вывел список документов-регистраторов для записей - и ищу "виновника"...

процесс обычно занимает до нескольких часов (когда примерно знаю где искать - то быстрее).


В общем, обработка сделана так - чтобы не тратить время на просмотр списка ранее сохраненных запросов, а сосредоточиться на отладке одного конкретного. При этом все, что нужно собрано в одном окне в четырех вкладках. Потому и называется "Выполнение и отладка запросов" (а точнее назвать будет "Выполнение и отладка запроса").

 

Как загрузить параметры из файла (и зачем это надо):

Используется при отладке запросов, особенно в типовых конфигурациях - например ЗУП, когда нужно разобраться откуда в пакете запросов получился тот или иной результат. Технология довольно сложная, но решения проще я пока не нашел (часто это гораздо быстрее, чем указывать параметры "вручную"):

  1. Открыть  обработку, нажать на 2-й странице "Загрузить...", при этом обработка в области уведомлений выдаст строку, наподобие:
    ВнешниеОтчеты.ПолучитьФорму("I:\ОтладчикЗапросов\ВыполнениеЗапроса_82.erf", "ВыгрузкаПараметровЗапроса").ВыгрузитьПараметры(Запрос)
    и вопрос "Прочитать параметры из файла?" - поскольку файла пока еще нет, нажимаем "Нет".
  2. Запускается отладка и ставится точка останова на строке "Запрос.Выполнить(.........", затем выполняются в программе действия, пока не дойдет до точки останова. Тогда надо вызвать в отладчике "Вычислить выражение" (Shift + F9) и ввести код для вычисления, который выдала нам обработка на шаге 1. В результате выполнения должно выдать имя файла, куда выгрузились параметры. Это имя нам не особо нужно, т.к. обработка сама найдет откуда надо считывать...
  3. Продолжить выполнение (или завершить отладку - решать вам).
  4. Перейти в обработку "ВыполнениеЗапроса", скопировать-вставить текст запроса из изучаемой процедуры, перейти на вкладку "Параметры", там нажать кнопку "Загрузить..." и на вопрос  "Прочитать параметры из файла?" - теперь нажимаем "Да".Обработка загрузит все параметры, даже массивы и таблицы/списки значений (такие параметры нельзя указать из табличной части).
  5. Нажимаем "Выполнить", затем смотрим результат выполнения и при необходимости - временные таблицы.

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    204969    1125    410    

1026

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    36432    209    105    

198

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

16000 руб.

10.11.2023    16696    73    39    

89

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    24272    63    28    

92

Инструментарий разработчика Программист 1С v8.3 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    35063    126    53    

167

SALE! 30%

Инструментарий разработчика WEB-интеграция 1С v8.3 1C v8.2 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Инструмент для генерации OpenApi (Swagger) спецификаций на основании файлов конфигураций 1С. Это консольное и десктопное приложение на языке Rust с полноценным редактором кода, содержащим автозамену и подсвечивание ошибок для быстрого и безошибочного написания документирующего комментария.

18000 12600 руб.

22.11.2024    1960    1    0    

8

Инструментарий разработчика Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

6000 руб.

07.02.2018    107600    249    100    

313
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Поручик 4594 24.10.11 15:32 Сейчас в теме
(0) Не вижу достоинств и преимуществ перед другими подобными консолями запросов.
2. DrAku1a 1768 25.10.11 02:25 Сейчас в теме
(1) Простота использования и минимум излишеств.
Делалось для себя - изначально для простой и быстрой отладки запросов, когда разрабатывал отчеты (при внедрении), но оказалось весьма полезным - при анализе запросов от 1С.
В будущем, возможно углубление в сторону парсинга запроса - разбивать сложные запросы (с соединениями) на несколько простых и собирать обратно.
5. Поручик 4594 25.10.11 13:41 Сейчас в теме
(2) (4) Ваше право, но изобретаете новую модель велосипеда с треугольными колёсами со штырём вместо сиденья. Удобных консолей запросов с возможностью отладки, просмотра ВТ, обработки результатов, etc тут чуть больше, чем до ... много.
6. DrAku1a 1768 25.10.11 14:28 Сейчас в теме
(5) Тогда посоветуйте парочку... Может действительно - есть получше.
7. Поручик 4594 25.10.11 14:42 Сейчас в теме
(6) Ссылок не помню, пишу названия публикаций
Запросник от tezin
Дополненная типовая обработка консоль запросов от lavelin
Консоль запросов от lavelin с модификацией от proal (Консоль запросов с просмотром временных таблиц)
Консоль запросов от Чистова
Консоль запросов для отладки запросов на лету + работа с временными таблицами
Консоль запросов (замеры, ВТ, IntelliSense)
8. DrAku1a 1768 25.10.11 16:31 Сейчас в теме
(7) Воспользовавшись поиском по ИС (по Вашему списку) нашел целый ряд публикаций.
Приведу список :
  • 1. Запросник http://infostart.ru/public/72969/
  • 2. Консоль запросов с просмотром временных таблиц для 8.1 http://infostart.ru/public/92327/
  • 3. Универсальная консоль отчетов http://infostart.ru/public/16782/
  • 4. Шаблон для отчета СКД http://infostart.ru/public/20333/
  • 5. Консоль запросов (еще 1) http://infostart.ru/public/73694/
  • 6. Очередная консоль запросов (замеры, ВТ, IntelliSense) http://infostart.ru/public/73006/
  • 7. Консоль запросов (ИР) http://infostart.ru/public/57854/
  • 8. Удобная консоль запросов http://infostart.ru/public/21993/
  • 9. Еще одна консоль запросов + возможность подключения внешних модулей из файла http://infostart.ru/public/15421/
  • 10. СКД против запроса с итогами http://infostart.ru/public/79992/
  • 11. СКД против "ручного" кодинга http://infostart.ru/public/75878/
  • 12. [8.2] Управляемая консоль отчетов (только управляемые формы) http://infostart.ru/public/77865/
  • 13. Обработка Помощник для написания запроса в тонком клиенте http://infostart.ru/public/83529/
  • 14. Нестандартный синтаксис оператора "ВЫБОР" в запросе http://infostart.ru/public/67585/
  • 15. Недокументированный синтаксис оператора "В" http://infostart.ru/public/67413/

    Да, здесь есть действительно "мощные" разработки! Особенно впечатлили 1, 6, 5. Есть на что посмотреть - и однозначно я буду черпать оттуда идеи для дальнейшего развития.

    Постараюсь объяснить почему я пользуюсь своей обработкой (и почему я ее здесь положил).
    Вот несколько моих жизненных ситуаций:
    1. нужно как можно быстрее разработать отчет на запросе, не требующий детальной настройки - как универсальный отчет, при этом желательно "на лету" протестировать какой результат будет давать запрос.
    • Открыл обработку - в конструкторе собрал запрос
    • Жму "Выполнить" - заполняю параметры
    • Еще раз "Выполнить" - смотрю что вышло в результате
    • Жму "Код запроса" - копирую текст запроса.
    • Создаю внешний отчет - пихаю туда текст запроса и небольшой код по созданию построителя отчета и оформлению результата.
    На все про все пол-часа, максимум час.

    2. Отчет построенный на запросе дает неверные данные.
    3. Документ заполняется неправильно, при отладке дошли до процедуры, в которой находится пакетный мегазапрос на три с лишним страницы кода. Кто переносил ЗУП с ЗиК - наверняка сталкивались.

    • Открываю свой отладчик запросов, выделяю в модуле текст запроса, вставляю в обработку.
    • Нажимаю "Выполнить" - обработка определит что текст запроса поменялся (при этом сама удалит символы из текста запроса "|"), заполнит список параметров и переместит на страницу "Параметры"...
    • Заполняю значения параметров. Если их немного - вручную. Если много и они сложны - то выгружаю из отладчика.
    • Жму еще раз "Выполнить" - и получаю результат.
    Все это делается очень быстро, без лишних телодвижений... Далее - в зависимости от ситуации:
    • "играю" с параметрами - меняю и смотрю что на что влияет...
    • модифицирую (обычно, упрощаю) текст запроса, смотрю в конструкторе из каких источников собираются данные
    • изменяю текст запроса так, чтобы вывел список документов-регистраторов для записей - и ищу "виновника"...

    процесс обычно занимает до нескольких часов (когда примерно знаю где искать - то быстрее).

    В общем, обработка сделана так - чтобы не тратить время на просмотр списка ранее сохраненных запросов, а сосредоточиться на отладке одного конкретного. При этом все, что нужно собрано в одном окне в четырех вкладках. Потому и назывется "Выполнение и отладка запросов" (а точнее назвать будет "Выполнение и отладка запроса").
  • 3. Angeros 25.10.11 12:23 Сейчас в теме
    По моему усложненная консоль не так уж сложна. Работает как часы.
    4. DrAku1a 1768 25.10.11 12:32 Сейчас в теме
    Обновлен интерфейс, более удобное заполнение параметров запроса (выбор типа) + возможность указывать в параметрах массив, список или таблицу значений. Добавлена возможность сохранять/считывать параметры запроса.
    9. Evlannikov 46 30.10.11 20:05 Сейчас в теме
    10. headMade 144 09.11.11 20:32 Сейчас в теме
    1. Может стоит на основную формы повесить кнопку для копирования в буфер текста, который потом нуна будет вставлять в конфигураторе. (пускай эта кнопка будет н большая, но это на много удобней чем лазить в справку)
    2. Если сразу после копирования в буфер текста попытаться вставить его в Shift+F9, то чет подвисает 1С и через некоторое время буфер очищается а если предварительно вставить его в txt или на форму отчета, тогда все ок сработает. У вас такого не было?
    11. DrAku1a 1768 09.11.11 20:56 Сейчас в теме
    (10) 1. Можно... сделаю это на странице, куда выводится код запроса.
    2. Такая проблема не возникала. Если используете терминальный сеанс, например Citrix - то проблема может быть в самом терминальном клиенте (отключить настройку синхронизации буферов обмена - должно помочь).
    12. headMade 144 10.11.11 00:35 Сейчас в теме
    DrAku1a пишет:
    Такая проблема не возникала.

    вобщем ХЗ тогда. Попробую может на другом компьютере, но я пробвал на локальной базе.........
    13. mailwood 21 13.01.12 17:00 Сейчас в теме
    Ошибка при выполнении запроса:

    {Форма.ФормаОтчета.Форма(12)}: Поле объекта не обнаружено (ТипЗначения)
    18. Программулькин 301 01.06.12 10:16 Сейчас в теме
    Ошибка при выполнении запроса:

    {Форма.ФормаОтчета.Форма(12)}: Поле объекта не обнаружено (ТипЗначения)
    /************************************************************************************************************
    ВЫБРАТЬ
    ОсновныеНачисленияРаботниковОрганизаций.Сотрудник,
    ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета,
    ОсновныеНачисленияРаботниковОрганизаций.Результат
    ИЗ
    РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций
    ГДЕ
    ОсновныеНачисленияРаботниковОрганизаций.Сотрудник В
    (ВЫБРАТЬ
    РаботникиОрганизацийСрезПоследних.Сотрудник КАК Сотрудник
    ИЗ
    РегистрСведений.РаботникиОрганизаций.СрезПоследних(&КонДата, ) КАК РаботникиОрганизацийСрезПоследних
    ГДЕ
    РаботникиОрганизацийСрезПоследних.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение))
    /************************************************************************************************************
    Параметр:
    Имя Тип Значение

    КонДата Дата 31.05.2012 0:00:00
    /*************************************************************************************************************

    ОБЫЧНАЯ КОНСОЛЬ ОТРАБАТЫВАЕТ БЕЗ ОШИБОК
    19. DrAku1a 1768 05.06.12 03:09 Сейчас в теме
    (18) скоро будет обновление - там все уже исправлено.
    + "визуальная структура запроса"
    + наработки по отладке запроса
    + панель "обработка результата" (программный код), например, для перепроведения документов...
    + генератор модуля универсального отчета
    + если хватит времени - руководство.

    кое-что уже сделано, кое-что в разработке... ориентировочно обновление будет через неделю, но может быть и раньше.
    14. 1C_tradeomsk 105 30.01.12 18:11 Сейчас в теме
    Давно искал консоль с работающей возможностью задавать тип параметров запроса .... Аллилуйа!!!
    15. 1C_tradeomsk 105 30.01.12 18:11 Сейчас в теме
    Давно искал консоль с работающей возможностью задавать тип параметров запроса .... Аллилуйа!!!
    16. Rino 26.03.12 12:02 Сейчас в теме
    17. rasswet 82 28.05.12 18:12 Сейчас в теме
    по-моему запросник пункт 1. выполняет все ваши задачи..если нет-напишите чего там не хватает по вашему..
    Оставьте свое сообщение