Улучшенный конструктор запроса тонкого клиента (Infostart Toolkit)

17.11.21

Разработка - Запросы

Конструктор запросов тонкого клиента появился в платформе с 8.3.5 обладает рядом недостатков, которые возможно исправить. Передача входных таблиц, исправление связей и другое

Конструктор появился в платформе 8.3.5 вместе с объектной моделью запроса СхемаЗапроса это важно т.к. он базируется на этом объекте.

Представляется в виде обработки, встроенной в платформу, она платформозависимая (в каждой платформе своя, и они там постоянно что-то меняют) и написана на английском языке.

Как выгружать/загружать платформенные обработки уже написано здесь, здесь и здесь

Берем идею, улучшаем, лечим конструктор :). Посмотрите что я улучшил, поправил основную боль ;)

 

Контекстная подсказка и подцветка синтаксиса запросов в редакторе текста запроса и выражении (с версии 1.7)

 

Передача входных таблиц внутрь конструктора

 

Добавление картинки типа к полям

 

Связи редактируются аналогично классическому конструктору

 

Добавлена возможность менять порядок условий

 

"Перейти к полю в выбранных" на странице Объединения/Псевдонимы

 

Выделение жирным активного запроса пакета, оператора (объединения)

 

В редакторе текста, выражения добавлен помощник вставки предопределенных

 

В редакторе текста, выражения добавлена функция преобразовать выделенный запрос во вложенный

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

Есть такая функция в толстом конструкторе, тонкий родился уже без нее

 

Другие небольшие изменения, исправления ошибок

  • При открытии активируется последний запрос пакета (стандартно первый)
  • При добавлении в ГДЕ поля типа булево по умолчанию не используется параметр (Например, вместо: "Документ.Проведен = &Проведен", заполняется: Документ.Проведен)
  • Более информативные заголовки страниц
  • В основное окно добавлены кнопки Назад, Далее. Запрос перенесена в левый нижний угол более похоже на классический конструктор
  • Добавлено чередование цветов строк выбранных полей, условий, полей объединения, индексов, полей итогов, пакетов
  • Сворачивание/Разворачивание ветки метаданных при двойном щелчке (ошибка)
  • Удаление кнопкой Del в группировочных полях (ошибка)
  • Удаление кнопкой Del в таблицах для изменения (ошибка)
  • Удаление кнопкой Del в индексах (ошибка)
  • При открытии редактора текста запроса устанавливается более удобный размер формы
  • В редакторе текста не понимал изменения текста (ошибка)
  • В редакторе текста не работал признак модифицированности (ошибка)
  • При изменении на выборка/помещение странице Дополнительно исправлено обновление элементов страниц (ошибка)
  • Включен многострочный режим для условий (ошибка)
 
 Как сделано внедрение конструктора в расширение (некоторые технические нюансы)

Описанный улучшенный конструктор используется в продукте Infostart Toolkit

Конструктор запроса Тонкий клиент Запрос Улучшенный конструктор

См. также

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

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

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

13000 руб.

02.09.2020    119946    656    389    

701

Для чего используют конструкцию запроса "ГДЕ ЛОЖЬ" в СКД на примере конфигурации 1С:ERP

Запросы СКД Платформа 1С v8.3 Запросы Система компоновки данных 1С:ERP Управление предприятием 2 Бесплатно (free)

В типовых конфигурациях разработчики компании 1С иногда используют в отчетах, построенных на СКД, такую конструкцию, как "ГДЕ ЛОЖЬ". Такая конструкция говорит о том, что данные в запросе не будут получены совсем. Для чего же нужен тогда запрос?

13.02.2024    5621    KawaNoNeko    23    

23

Набор-объект для СКД по тексту или запросу

Запросы СКД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Есть список полей в виде текста, или запрос - закидываем в набор СКД.

1 стартмани

31.01.2024    1964    2    Yashazz    0    

29

Запрос 1С copilot

Инструментарий разработчика Запросы Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Пишем на человеческом языке, что нам надо, и получаем текст запроса на языке 1С. Используются большие языковые модели (LLM GPT) от OpenAI или Яндекс на выбор.

5 стартмани

15.01.2024    6093    29    mkalimulin    23    

48

PrintWizard: поддержка представлений ЗУП в конструкторе

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

Одной из интересных задач, стоящих в процессе разработки, была поддержка механизма представлений в ЗУП. Но не просто возможность исполнения запросов с ними. Основная проблема была в том, чтобы с ними было удобно работать, а именно: создавать, модифицировать и отлаживать. Кратко о том, что в итоге получилось...

14.12.2023    1714    vandalsvq    7    

28

Объектная модель запроса "Схема запроса" 2

Запросы Платформа 1С v8.3 Запросы Конфигурации 1cv8 Бесплатно (free)

Далеко уже не новый тип данных "Схема запроса". Статья о том, как использовать его "попроще". Примеры создания текста запроса с нуля и изменение имеющегося запроса.

06.12.2023    5285    user1923546    26    

43

Начните уже использовать хранилище запросов

HighLoad оптимизация Запросы

Очень немногие из тех, кто занимается поддержкой MS SQL, работают с хранилищем запросов. А ведь хранилище запросов – это очень удобный, мощный и, главное, бесплатный инструмент, позволяющий быстро найти и локализовать проблему производительности и потребления ресурсов запросами. В статье расскажем о том, как использовать хранилище запросов в MS SQL и какие плюсы и минусы у него есть.

11.10.2023    15958    skovpin_sa    14    

98
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. lefthander 07.09.20 11:46 Сейчас в теме
Я так понимаю отдельно, как консоль запроса, его не получить?
2. Evg-Lylyk 4547 07.09.20 11:50 Сейчас в теме
(1) Он используется в составе инструментов
Уточните что вы имеете ввиду? Отдельной обработкой? или вы хотите себе его куда то внедрить?
3. lefthander 07.09.20 12:18 Сейчас в теме
(2)Привык работать с просто консолью запросов. Мне вполне хватает Вашей консоли отчетов 3.8.9 ;) Когда совсем не понятно что то запускаюсь в толстом клиенте.
4. Evg-Lylyk 4547 07.09.20 12:40 Сейчас в теме
(3) Инструменты это продолжение разработки консоли в том числе. Много удобств образуется на взаимосвязи инструментов.
Развивать функциональность консоли запросов, отчетов не планирую. Развитие будет идти в новых инструментах.
15. FReIM 8 09.04.21 07:43 Сейчас в теме
(4)
Добрый день.
На скриншоте не видно как редактируются условия связи таблиц.
В классическом тонком клиенте это убогая убогость.
В толстом можно было быстро выбрать поля из таблиц и выбрать функцию для связи эти полей.
В этой обработке как с этим?
5. Xershi 1473 08.09.20 09:00 Сейчас в теме
А не пробовали написать в 1с?
Идеи просто огонь, то чего не хватает.
DrAku1a; pavelpribytkin96; +2 Ответить
7. Evg-Lylyk 4547 08.09.20 09:35 Сейчас в теме
(5) Не писал, ИМХО они очень редко делают что то для разработчиков
cheburashka; DrAku1a; Agrozentr; 7OH; pavelpribytkin96; +5 Ответить
14. DrAku1a 1678 28.09.20 10:19 Сейчас в теме
(7) На самом деле, что-то из просимого делают. Только медленно. И на письма не отвечают, так что такой себе UDP-запрос ))
6. John_d 5204 08.09.20 09:14 Сейчас в теме
Где его взять для внедрения?
8. Evg-Lylyk 4547 08.09.20 09:38 Сейчас в теме
(6) Используется в составе инструментов.
Куда вы хотите внедрить? Скорее всего это нужно индивидуально обсуждать
9. пользователь 09.09.20 15:50
Сообщение было скрыто модератором.
...
10. 7OH 69 09.09.20 23:25 Сейчас в теме
а условия виртуальных таблиц можно сделать как обычные условия, набором строк ?
не понимаю, почему это самой 1С не сделано.
11. Evg-Lylyk 4547 10.09.20 09:16 Сейчас в теме
(10) Насколько знаю: Схема запроса выражения не разбирает на части
Т.е. сделать можно, но только разбирая выражение самостоятельно
12. 7OH 69 10.09.20 09:20 Сейчас в теме
(11) ну реально ведь тупо сделали 1с-овцы.
Такое же условие по сути как и обычное или в соединении.
То ли мышкой один раз пнуть то ли два раза и ещё апмерсанд поставить с первого раза правильно
13. Evg-Lylyk 4547 10.09.20 09:23 Сейчас в теме
(12) Согласен. Запишу как пожелание
Что понял модифицируя конструктор 1С они делали как проще. Тут я за них (уже настолько привык что это не доставляет неудобств)
16. Evg-Lylyk 4547 09.04.21 08:47 Сейчас в теме
(15) Как в классическом с установленной галкой произвольное выражение + в нем есть контекстная подсказка.
Выбор поля с деревом в списке в управляемых формах никак
17. FReIM 8 09.04.21 08:53 Сейчас в теме
(16)Ну почему же никак. Можно до определенного уровня вложения.
А потом придется мучаться с сохранением текущей позиции в древе и углублять вложенность с перерисовкой этого древа.
Просто сие будет не список а отдельная форма с древом.
Как то так.
18. Evg-Lylyk 4547 09.04.21 08:56 Сейчас в теме
(17) Ааа да можно формой выбора, запишу
19. tolyan_ekb 104 17.08.21 13:01 Сейчас в теме
Добрый день. Подскажите есть преобразование текста запроса в SQL?
20. Evg-Lylyk 4547 17.08.21 13:30 Сейчас в теме
(19) Нет, это отдельная задача. Здесь на ИС видел что то такое, поищите
21. Lancelot-2M 115 11.08.22 18:56 Сейчас в теме
Я правильно понимаю, что дамп запроса из под отладчика не доступен?
В смысле, я люблю делать так: Обработки.Запросник2_0.Создать().Дамп(Запрос),
а потом в режиме предприятия загружаю дамп по кнопке - и там у меня все прелести, включая ТЗ в параметрах и временные таблицы.
Тут так можно?
А когда будет можно?
22. Evg-Lylyk 4547 11.08.22 20:19 Сейчас в теме
23. Serg2000mr 310 31.01.23 16:55 Сейчас в теме
(0) Можете еще добавить в конструктор такую функцию?

Есть пакет запросов, например, две временные таблицы и выборка.
Во временной таблице меняем, скажем, Док.Номенклатура на функцию ЕстьNull(Док.Номенклатура, "Отсутствует")

Конструктор автоматически меняет псевдоним на Поле1 и все нижние запросы и пакеты, использующие эту временную таблицу, незаметно редуцируются, связи и поля исчезают. Сразу можно и не заметить, приходится переделывать всю работу.

Решение - при изменении псевдонима поля предупреждать, что автопсевдоним меняется и что есть зависимые связи и поля, которые исчезнут при таком переименовании.
24. Evg-Lylyk 4547 31.01.23 17:15 Сейчас в теме
(23) Хорошая идея, записал https://github.com/infostart-hub/toolkit/issues/689
проблема известная
SagittariusA; Serg2000mr; +2 Ответить
Оставьте свое сообщение