Структура запроса

30.06.23

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

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

Файлы

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

Наименование Скачано Купить файл
Структура запроса v.001:
.epf 12,04Kb
39 1 850 руб. Купить
Структура запроса v.002:
.epf 14,39Kb
24 1 850 руб. Купить

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

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

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

Кто не сталкивался с громоздким запросом и хотел понять источник данных?

Эту обработку делал для личного использования с "нуля". Изучать вопрос о схожих обработках времени нет и, если вдруг совпадет с чьей-то идеей, то никакого плагиата тут нет.

Прежде всего обработка позволяет быстро получить список источников данных:

 

 

Посмотреть создаваемые таблицы и связи источников внутри таблиц. Отдельно подсвечиваются вложенные запросы:

 

 

Для упрощения восприятия по текущему источнику данных подсвечиваются строки, где эта таблица ещё используется и где создавалась (если создавалась):

 

 

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

 

 

Эти, да и любые другие случаи, можно сверить с текстом запроса. Спозиционировавшись на любой строке из веток "Создания таблицы", из контекстного меню или по кнопке панели можно перейти в начало фрагмента запроса по соответствующей таблице:

 

 

Для позиционирования используется "WScript.Shell", поэтому может возникать предупреждение:

 

 

Без разрешения позиционирование не сработает.

Обработка будет работать на любой платформе, которая поддерживает объект "СхемаЗапроса" (доступен, начиная с версии 8.3.5).

Код открыт. Пользуйтесь, дорабатывайте.

 

Изменения в версии 002:

 

Изменилось отображение списка источников. Теперь это таблица в свертываемой группе:

 

По каждому источнику данных для выбранного пользователя (по умолчанию текущий) отображается право на "Чтение" и "Просмотр":

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

обработка схема структура визуализация запрос источники данных СхемаЗапроса

См. также

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

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

15500 руб.

02.09.2020    208632    1143    413    

1039

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

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

8400 руб.

20.08.2024    38221    215    111    

203

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

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

16000 руб.

10.11.2023    17566    75    39    

92

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

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

22200 руб.

06.10.2023    25198    65    30    

95

Инструментарий разработчика Программист 1С v8.3 1С:Управление нашей фирмой 3.0 Платные (руб)

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

9500 руб.

17.05.2024    36198    131    53    

175

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше.<br/> Далее в публикации:<br/> MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.

9900 руб.

25.08.2025    1398    4    7    

10

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

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    3208    7    0    

12
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. tormozit 7303 21.06.23 11:50 Сейчас в теме
Где то я уже это все видел =) Для самообразования написать такой инструмент - полезно.
alexey123perm; awk; user1876070; +3 Ответить
3. obmailok 200 21.06.23 13:28 Сейчас в теме
(1)Согласен с Вами. Но самообразование - это один раз, а вот экономия времени - это регулярно. ;)
5. tormozit 7303 21.06.23 13:42 Сейчас в теме
(3) Тоже согласен с тобой. Сам когда то очень давно написал аналогичную поделку. Многие ею пользуются. Тоже регулярно экономит время.
12. tormozit 7303 22.06.23 09:13 Сейчас в теме
(5) В моей поделке кстати нет ограничения "текст запроса должен соответствовать метаданным текущей конфигурации"
17. obmailok 200 22.06.23 15:46 Сейчас в теме
(12) Если не ошибаюсь, то речь об обработке "Парсер текста запроса". Как-то так кажется? Хорошая обработка, я бы даже усилил тезис до супер, но тут принципы совсем другие. Не текст запроса, а его схема - значительно упрощает жизнь. У меня буквально 5 процедур по 20 строк. Зато ограничения (на практике не существенные).
19. obmailok 200 23.06.23 08:04 Сейчас в теме
(12) Я когда-то скачивал https://infostart.ru/1c/tools/137294/. Тоже разбирает текст, не зависимо от конфигурации. Я так понимаю, что Ваша похожа и наверняка не хуже, тем более, что своя.
20. tormozit 7303 23.06.23 08:19 Сейчас в теме
(19) Посмотри подсистему "Инструменты разработчика". В ней есть консоль запросов со структурой запроса. Больше всего картинок тут https://infostart.ru/1c/articles/1355985/ , но тут структура запроса называется по-старому "Дерево запроса". Там структура запроса имеет 2 режима: ведомая (супер быстрая и нестрогая) https://www.hostedredmine.com/issues/958592 и ведущая (медленная). Построители структуры запроса обоих режимов работают без схемы запроса и без жесткой привязки к метаданным.
mip128; obmailok; +2 Ответить
32. Созинов 11.07.23 07:01 Сейчас в теме
(20) Читаешь статью, все нравится, потом смотришь комментарии и это уже есть в ИР. Использую их редко (ITK в основном юзаю), но функционал поражает. Спасибо за качественный инструмент!
24. LosevI 29.06.23 02:06 Сейчас в теме
(1) На Инфостарте тяжело найти dev tool, под которым нет вашего комментария "я это уже делал!!"
А меня вот лично ни разу не заинтересовала ИР по той лишь причине, что в ней все написано на обычное приложение, как я понял. В чем прикол в 2023 возиться в привязочном интерфейсе я не выкупаю. Ничего хорошего, кроме нативно-подсвечиваемого синтаксиса в поле с текстовым документом, в обычных формах нет.
25. tormozit 7303 29.06.23 07:16 Сейчас в теме
(24)
тяжело найти dev tool, под которым нет вашего комментария "я это уже делал!!"

Явное преувеличение, но действительно я много раз сообщал о наличии в ИР более функционального решения задачи в публикация.
в ней все написано на обычное приложение, как я понял

Понял ты неправильно. ИР написаны под толстый клиент в основном на обычных формах. Но работают они прекрасно и в обычном и в управляемом приложении.
ubnkfl; SirStefan; HolodZar; +3 Ответить
26. LosevI 29.06.23 09:08 Сейчас в теме
(25) Так получается я все правильно понял. Обычные формы же. То что работает в управляемом приложении "как то" это понятно. Хочется видеть тулзы, написанные для той платформы и мира, в котором живу я. Владельцы УПП живут на параллельной планете. Так что покуда люди будут стараться написать что-нибудь под УФ, пусть пишут, не демотивируйте их :)
user1233595; mort64ram; +2 1 Ответить
27. tormozit 7303 29.06.23 10:12 Сейчас в теме
(26) Про обычные формы ты правильно понял. Про обычное приложение ты понял неправильно. Поэтому утверждать "я все правильно понял" с твоей стороны некорректно.
работает в управляемом приложении "как то"

Видно, что не пробовал и не знаешь о чем пишешь. Может лучше сначала попробовать и потом уже делиться мудростью на эту тему?
не демотивируйте их

Согласен, что частично это может демотивировать. Но может и мотивировать сделать лучше и подсказывать удачные мелкие фичи, которые там уже отточены за многие годы.
SirStefan; HolodZar; +2 Ответить
28. LosevI 29.06.23 12:47 Сейчас в теме
(27) Да не тряситесь вы так. На этом форуме еще никому вас переспорить не удалось, да я в прочем то и не спорю. Просто пишу свои мнения. Мое право не хотеть использовать тулз на обычных формах под толстый клиент, разработка которого началась в 2007 и концептуально не изменилась за все это время. И да, я таки скачал вашу кодовую базу, чтобы убедиться в том, что я пишу. Неудобная информация: со времен УПП многое изменилось и в стандартах разработки, и в функциональности программ, и в построении интерфейсов. Перестало быть модным придумывать свои стандарты типа Есть Ложь. Появилось вообще осознание того, что такое промышленная разработка, слава богу, у самой фирмы 1С. Мое право без особого, заметьте, негатива, да и достаточно культурно не соглашаться с яростной пропагандой старых подходов и деморализации любых попыток (пусть и тоже дажеких до идеала) людей писать тулзы под УФ.

Я понимаю, что за 16 лет и 50к строчек УПП-кода открылась особая уверенность в собственном единственно истинном познании. Изредка могут появляться такие как я, которые будут что то говорить про "предъявляешь всем - соответствуй идеалу сам". Но им вы легко отрываете кабину с вершины своего опыта. Даже не буду вам ничего советовать, кто я такой, простая чернь, которая только и может, что ошибаться... Взял вот усомнился, что работоспособность вашего продукта - это заслуга разработчиков платформы с их постоянной вперед-совместимостью и необновляющимся 20 лет IDE. Простите. Не ставьте мне минусы, я очень расстраиваюсь.
user1233595; Pastor111; mort64ram; +3 2 Ответить
29. HolodZar 30.06.23 04:10 Сейчас в теме
(28) вы явно никогда не пользовались инструментами разработчика, либо вы консультант, которому они не нужны. Решение прекрасно интегрируется с конфигурациями на УФ
d4rkmesa; +1 Ответить
30. LosevI 30.06.23 04:16 Сейчас в теме
(29) То есть, у вас в голове это так работает: невозможно быть программистом 1С и не использовать в своей работе великий ИР от Сергея Старых? Так? А сертификат подтверждающий использование ИР можно получить где-нибудь? Чтобы перестать быть консультантом.
Я надеюсь, тут хотя бы бан не дают, если начинаешь такое мнение высказывать, а то пахнет уже какой-то сектой, вот честно. Я даже не буду спрашивать, почему смотреть в интерфейсы 2007 года и быть ограниченным режимом запуска базы это "прекрасная интеграция".
35. HolodZar 28.07.23 07:48 Сейчас в теме
(30) в моей голове это работает так - невозможно пользоваться штатной консолью запроса, которая предлагается в комплекте 1С, если ты видел более функциональное решение
Лично мне абсолютно не важно, как оно выглядит, мне важно, какие функции она выполняет
d4rkmesa; Gilev.Vyacheslav; +2 Ответить
2. leosoft 167 21.06.23 12:59 Сейчас в теме
Наглядно и удобно! Спасибо!
4. obmailok 200 21.06.23 13:29 Сейчас в теме
6. tormozit 7303 22.06.23 08:14 Сейчас в теме
Проблема с позиционированием (на самом деле прокруткой) в поле текстового документа внесена в 8.3.22 и исправлена в актуальной 8.3.23 https://www.hostedredmine.com/issues/958531
9. obmailok 200 22.06.23 09:05 Сейчас в теме
(6) Спасибо. У меня как раз 8.3.22
Сам был удивлен поведением, но решил.
7. acces969 376 22.06.23 08:20 Сейчас в теме
Интересно, спасибо.
Жду, когда кто-нибудь напишет консоль запросов ODATA
10. tormozit 7303 22.06.23 09:11 Сейчас в теме
(7) Да, лучше ждать много лет и мучаться из-за отсутствия нужного инструмента и затем потерять интерес к решаемой задаче, чем сделать усилие сейчас и написать инструмент самому и обкатать на реальной задаче.
ixijixi; obmailok; starik-2005; +3 Ответить
13. starik-2005 3187 22.06.23 09:57 Сейчас в теме
(10) Ну мало-ли кто на Инфостарте слова пишет. Кто-то просто аналитик, кто-то просто бухгалтер, кто-то просто РПшник или менеджер иной какой. Вряд ли они способны что-то такое написать, но идею подкинуть -чем плохо?
15. acces969 376 22.06.23 10:19 Сейчас в теме
(13) У меня есть эта обработка, я писал ее, когда работал с этим. Но как обычно во взрослой жизни - нет времени довести ее до ума. Может быть когда-нибудь, на пенсии, причешу ее и выложу в свою коллекцию полезных инструментов. Но будет это не скоро - много времени нужно потратить на нее.
14. starik-2005 3187 22.06.23 09:58 Сейчас в теме
(7)
консоль запросов ODATA
Excel?
8. olololeg 22.06.23 08:33 Сейчас в теме
Будем тестировать, идея хорошая, давно хотел реализовать подобный инструмент, но руки так и не дошли, хорошо, что у вас вышло!
11. tormozit 7303 22.06.23 09:12 Сейчас в теме
(8) Теперь уже не станешь первым =). Хотя возможно и автор не стал.
16. Evg-Lylyk 5161 22.06.23 12:27 Сейчас в теме
Подобный механизм есть в Infostart Toolkit и Управляемой консоли отчетов как раз базируется на схеме.
https://infostart.ru/1c/articles/1392009/

Естественно он имеет смысл в консоли запросов, отдельно малополезен
18. obmailok 200 22.06.23 15:53 Сейчас в теме
(16) В консоле запросов как правило сам пишешь и структуру держишь в голове. А вот чужой перехваченный быстренько посмотреть... Впрочем перенести текст в/из консоли не проблема, как и перенести код этой обработки в какую-нибудь консоль. Там кода всего 200 строк включая оформления.
21. kser87 2476 23.06.23 10:26 Сейчас в теме
Честно говоря, это не кажется более простым, чем просто запрос раскуривать.
mip128; oleg-m; Evg-Lylyk; +3 Ответить
34. SergDobrodelov 719 20.07.23 20:20 Сейчас в теме
(21) Иногда приходилось вручную строить такое дерево в консоли, чтобы ошибку найти.
22. triviumfan 102 26.06.23 20:47 Сейчас в теме
Мне не нравится объект "СхемаЗапроса", т.к. он не всегда получает текст запроса или параметры сложных запросов с выбором полей без разыменования (даже несоставных).
Обработка не нова, есть даже разборы запросов в виде графов, но всё равно спасибо.
23. tormozit 7303 26.06.23 21:25 Сейчас в теме
(22)
не всегда получает текст запроса

Можно пример?
obmailok; +1 Ответить
33. triviumfan 102 16.07.23 00:22 Сейчас в теме
(23) Текст не помню, какой-то сложный из erp, но он был.
А вот пример с параметрами - легко:
Таблица = Новый ТаблицаЗначений;
Таблица.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("СправочникСсылка.Номенклатура"));
	
Запрос = Новый Запрос();
Запрос.Текст = 
"ВЫБРАТЬ
|	Таблица.Номенклатура КАК Номенклатура
|ПОМЕСТИТЬ Товары
|ИЗ
|	&Таблица КАК Таблица
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ
|	Товары.Номенклатура.Артикул КАК Номенклатура
|ИЗ
|	Товары КАК Товары";

Запрос.УстановитьПараметр("Таблица", Таблица);

Запрос.Выполнить();

Схема = Новый СхемаЗапроса();
Схема.УстановитьТекстЗапроса(Запрос.Текст);

Попытка
	ПараметрыЗапроса = Схема.НайтиПараметры();
Исключение
	ОписаниеОшибки = ОписаниеОшибки();
	Сообщить(ОписаниеОшибки);
КонецПопытки;
Показать

И это раздражает, ведь редактор запроса его видит, а схема - нет. Понятное дело, что можно явно привести тип через оператор ВЫРАЗИТЬ, но в типовых конфигурациях такое сплошь и рядом.
Пришлось даже консоль запросов допиливать, чтобы "перехват" работал.
31. improg 735 01.07.23 10:31 Сейчас в теме
На больших запросах может быть полезен, увидеть список таблиц и свертка запросов в дереве, кратко увидеть струтктуру запроса.
Для отправки сообщения требуется регистрация/авторизация