Графическая нотация описания языка запросов 1С (черновик)

25.04.21

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

Сразу хочу предупредить, что это не окончательный, не готовый к использованию продукт. Это лишь наброски, черновик, прототип. Этот документ я нашел в своих старых записях и решил им поделиться. И представляет он чисто академический интерес. Возможно, кого-то он на что-то вдохновит. Я буду только рад.

Скачать файл

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

Наименование Бесплатно
Графическая нотация описания языка запросов 1С (черновик) - PDF
.pdf 267,72Kb
23
23 Скачать бесплатно
Графическая нотация описания языка запросов 1С (черновик) - DOCX
.docx 39,72Kb
16
16 Скачать бесплатно

Этот документ датирован 2010 годом. Я тогда хотел придумать графическую нотацию, чтобы можно было наглядно изображать структуру запроса на языке 1С. А заодно и на любом SQL-подобном языке.

Я даже предпринимал несколько попыток создать визуализатор, который на вход получает текст запроса, а на выходе выдаёт графическую схему. Желательно, интерактивную. В идеале, даже с возможностью редактирования схемы запроса.

Начинал я эту нотацию придумывать наверное еще в 2009 или в 2008 году. Тогда еще не было пакетных запросов. И большинство более-менее серьезных запросов представляли собой дикую комбинацию соединений, объединений и вложенных запросов. Разобраться в таком монструозном запросе было тем еще квестом.

С появлением пакетных запросов и временных  таблиц читабельность запросов сильно возросла, и потребность в этой нотации стала уже не такой острой.

В общем, решил поделиться с комьюнити этим документом. Возможно, кому-то этот артефакт покажется интересным. Благодарю за внимание.

P.S. Обратите внимание! Нотация не представляет собой законченный продукт. Некоторые моменты могут оказаться непродуманными. И вообще, документ не завершён. Примеры в конце не до конца расписаны, потому что ручное создание таких диаграмм достаточно трудоемко. Именно поэтому была мысль создать программу-визуализатор, чтобы не составлять такие диаграммы вручную.

нотация запрос графика

См. также

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

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

15500 руб.

02.09.2020    192390    1064    405    

992

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

QueryConsole1C — расширение, включающее консоль запросов с поддержкой исполняемых представлений — аналогов виртуальных таблиц, основанных на методах программного интерфейса ЗУП. Оно позволяет выполнять запросы с учётом встроенной бизнес-логики, отлаживать алгоритмы получения данных и автоматически генерировать код на встроенном языке 1С.

1 стартмани

16.05.2025    2797    62    zup_dev    14    

53

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

В данной публикации рассказывается о решении, которое позволяет находить сразу все ошибки в тексте запроса за раз, а не только самую первую.

2 стартмани

05.03.2025    2575    7    XilDen    12    

23

Обновление 1С Запросы Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

Данный инструмент помогает анализировать доработанную конфигурацию после обновления на новый релиз и находить «битые» тексты запросов, в которых участвуют несуществующие в новом релизе метаданные.

2 стартмани

06.02.2025    2564    20    XilDen    26    

36

Запросы Программист Платформа 1С v8.3 Запросы 1C:Бухгалтерия Бесплатно (free)

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

03.12.2024    6536    artemusII    11    

23

Запросы Программист Бесплатно (free)

Увидел cheatsheet по SQL и захотелось нарисовать подобное, но про запросы.

18.10.2024    14315    sergey279    18    

67

Запросы Программист Платформа 1С v8.3 Запросы 1C:Бухгалтерия Бесплатно (free)

Столкнулся с интересной ситуацией, которую хотел бы разобрать, ввиду её неочевидности. Речь пойдёт про использование функции запроса АВТОНОМЕРЗАПИСИ() и проблемы, которые могут возникнуть.

11.10.2024    9050    XilDen    36    

94

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

Работая с типовыми отчетами в конфигурациях «Зарплата и управление персоналом, редакция 3», «Зарплата и кадры государственного учреждения, редакция 3» и подобных, в схемах компоновки данных можно встретить конструкции запросов, которые обращаются к некоторым виртуальным таблицам.

20.08.2024    3710    PROSTO-1C    0    

25
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Olenevod 34 25.04.21 14:51 Сейчас в теме
А как можно было бы применять такие нотации (где)? Или, наверное, больше вопрос для кого?
Сама задумка интересная. вот только пока в голову не приходит идея применения такой нотации.
3. Anything 92 25.04.21 23:33 Сейчас в теме
(1) Изначально она планировалась для визуализации (анализа) сложных запросов. Когда еще не было пакетных запросов и временных таблиц. Когда в запросе могло быть 10 вложенных запросов, и отследить путь какого-либо поля из самого глубокого вложенного запроса наружу было достаточно затруднительно. В данной нотации предполагается, что путь поля изнутри наружу можно проследить, просматривая схему слева направо.

Сейчас это уже не так актуально. Запросы стали проще. Но при желании подобную нотацию можно применять, например, в обучающих целях. Например, как используют блок-схемы для визуализации алгоритмов при программировании. Можно на её основе сделать визуальный редактор запросов. В отличие от нынешнего штатного редактора такой редактор отображал бы все составные части запроса на одном экране, а не на разных закладках.
2. Yashazz 4855 25.04.21 15:14 Сейчас в теме
Интереснее визуализировать планируемую и реальную схемы исполнения запроса, только не в терминах СУБД, а уже в контексте 1С. Но, насколько помню, этот подвиг уже кто-то совершил. Там ничего сложного - выцепить схему в хмл-виде из профайлера скуля (насчёт Оракла и других, думаю, тоже можно), отрисовать в графической схеме, "переведя" все нотации в контекст и термины 1С. Полезно весьма.
4. Adeptus 247 27.04.21 08:43 Сейчас в теме
5. sergpn 29.04.21 07:59 Сейчас в теме
не увидел оператора ИМЕЮЩИЕ
Anything; +1 Ответить
7. Anything 92 29.04.21 14:21 Сейчас в теме
(5) Хорошее замечание. В то время еще не было конструкции ИМЕЮЩИЕ, поэтому и в нотации её нет.
6. sergpn 29.04.21 07:59 Сейчас в теме
Не увидел оператор ИМЕЮЩИЕ
8. ccapt 30.04.21 09:46 Сейчас в теме
Чисто для развития представлений о мире вне ниши 1С - посмотрите, например, на описание концепций и BNF-диаграммы синтаксиса SQL в документации Oracle. К примеру, https://docs.oracle.com/cd/B19188_01/doc/B15917/sqsyntax.htm
9. Anything 92 30.04.21 18:03 Сейчас в теме
(8) Спасибо. Но описание синтаксиса - это немного другое. В нашем случае речь идет не про синтаксис запросов, а про создание диаграммы конкретного запроса с конкретными именами полей и таблиц, связями и т. д. Т. е. задача этой нотации - превратить текст конкретного запроса в наглядную диаграмму.
10. ccapt 03.05.21 14:41 Сейчас в теме
(9) Стало понятнее. Интересная идея. Спасибо.
Оставьте свое сообщение