Быстрый запрос

12.08.21

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

Можно ли дать пользователю "удочку", а не "рыбу"? До сих пор ответ на этот вопрос был отрицательным. Всякий инструмент, который мог бы делать с базой данных все или почти все (или хотя бы многое), отвергался пользователями, как слишком сложный. Вспомните тот же SQL, который изначально разрабатывался именно как пользовательский инструмент. "Быстрый запрос" - это попытка устранить сложность, но сохранить при этом универсальность. (По состоянию на 06.08.2021 эта разработка устарела. Актуальная разработка здесь: https://infostart.ru/public/1492741/)

Скачать файл

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

Наименование По подписке [?] Купить один файл
Быстрый запрос (демо)
.epf 13,42Kb
7
7 Скачать (1 SM) Купить за 1 850 руб.
Быстрый запрос (управляемые формы)
.epf 15,60Kb
11
11 Скачать (1 SM) Купить за 1 850 руб.
Быстрый запрос (обычные формы)
.epf 20,17Kb
5
5 Скачать (1 SM) Купить за 1 850 руб.
Быстрый запрос (универсальная версия)
.epf 20,16Kb
8
8 Скачать (1 SM) Купить за 1 850 руб.

Для пользователя все максимально просто.

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

Таблицу результата можно распечатать или сохранить в Excel, используя стандартную команду "Вывести список".

 

Ячейки, содержащие ссылки, слеланы открываемыми.

 

 

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

 

Самое главное для пользователя заключается в том, что он не обязан знать каким образом колонка из одной таблицы может быть соединена с колонкой из другой. За него это сделает программа. Вот здесь я добавил к трем колонкам из предыдущего примера еще три.

Более того. Нет необходимости задумыватья о том, в каком порядке выбирать колонки. Ползователь действует, как у него "рука пошла". Можно сначала выбрать "участников".

А потом "мероприятия".

 

Удалим последнюю колонку.

И нажмем кнопку "Свернуть". Получим ответ на вопрос: "в скольких мероприятиях принимал участие тот или иной человек".

 

Итак. Пользователю предлагается всего две операции: добавить/удалить колонку и свернуть/развернуть таблицу. С одной стороны, эти операции нельзя назвать слишком сложными. С другой - они позволяют получить довольно широкий круг результатов. Можно сказать, что это упрощенный до предела язык запросов.

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

В данной публикации представлена полностью рабочая версия, но ограниченная двумя типами объектов метаданных: "Документы" и "Справочники". 

Как вам идея в целом? Хотели бы увидеть полную версию?

 

Обработка тестировалась на управляемых формах. Платформа 8.3.10.2667. Код обработки полностью открыт.

 

10.06.2019

Выпущена рабочая версия. Главные отличия от демо: 

Работа с регистрами сведений.

Работа с регистрами накопления.

Сортировка таблицы результатов.

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

Обработка тестировалась на управляемых и обычных формах. Платформа 8.3.13.1809. Код обработки полностью открыт.

См. также

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

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

12000 руб.

02.09.2020    169275    937    403    

905

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

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

18.10.2024    11394    sergey279    18    

65

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

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

11.10.2024    6338    XilDen    36    

83

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

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

16.08.2024    9068    user1840182    5    

28

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

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

08.07.2024    2727    ivanov660    9    

22

Запросы СКД Программист Стажер Система компоновки данных Россия Бесплатно (free)

Часто при разработке отчетов в СКД возникает ситуация, когда не совсем понятно, почему отчет выводит не те данные, которые нужны, либо не выводит вовсе. Возникает потребность увидеть конечный запрос, который формирует СКД. Как это сделать, рассмотрим в этой статье.

15.05.2024    10219    implecs_team    6    

48

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

Часто поступают задачи по произвольному распределению общих сумм. После распределения иногда пропадают копейки. Суть решения добавить АвтоНомерЗаписи() в ВТ распределения, и далее используя функции МАКСИМУМ или МИНИМУМ можем положить разницу копеек в первую или последнюю строку знаменателя распределения.

11.04.2024    3623    andrey_sag    10    

38
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. psih12 131 29.04.19 12:42 Сейчас в теме
А на обычных формах есть?
Если "да", то хотелось бы увидеть полную версию.
jaroslav.h; +1 Ответить
2. mkalimulin 1250 29.04.19 12:53 Сейчас в теме
(1) Думаете - стоит потрудиться над версией для обычных форм?
RustIG; jaroslav.h; +2 Ответить
3. psih12 131 29.04.19 16:26 Сейчас в теме
(2)
У пользователей должен быть выбор.
Если в Вашей обработке можно соединять разные объекты по вложенным реквизитам, то тем более
4. mkalimulin 1250 29.04.19 16:34 Сейчас в теме
(3) Вы говорите о выборе между УФ и ОФ? Или о выборе вариантов соединения колонок?
5. jaroslav.h 180 29.04.19 16:59 Сейчас в теме
(4) я за запуск как в обычном режиме, так и на упр формах, спасибо
6. mkalimulin 1250 29.04.19 17:05 Сейчас в теме
(5) Видимо, придется две обработки поддерживать. На обычных формах много пользователей сидит? Как вы думаете?
7. jaroslav.h 180 29.04.19 17:25 Сейчас в теме
(6) было бы здорово если бы все в одной обработке.

На счет пользователей, так у нас клиенты, под обычными где то 60% сидит
8. mkalimulin 1250 29.04.19 18:07 Сейчас в теме
(7) Пока не представляю себе - как можно сделать обработку, которая будет открывать обычную или управляемую форму в зависимости от среды. Вы такое видели?
9. jaroslav.h 180 29.04.19 19:26 Сейчас в теме
(8) откройте вашу обработку в конфигураторе в котором возможно добавлять разные типы формы http://prntscr.com/niclz0 и таким образом разработаете для двух приложений обработку, а уже при открытии в конкретной конфигурации система сама будет автоматически подставлять нужную форму в зависимости от используемых форм

должно в итоге получиться активны две вкладки для разработки форм http://prntscr.com/nicn2k
CyberCerber; acanta; +2 Ответить
10. mkalimulin 1250 29.04.19 20:38 Сейчас в теме
(9) Вон оно куда дошел прогресс. А я думал надо будет какой-нибудь "ПриСозданииНаСервере" задействовать. Если так, то надо будет попробовать.
jaroslav.h; +1 Ответить
28. Nikola23 706 03.07.19 18:52 Сейчас в теме
(10)Да, лет 5ть уж как дошел:)
14. RustIG 1833 30.04.19 15:13 Сейчас в теме
(0) на обычных формах самописные остались + ут10.3 - пока планов переходить на УФ нет.
24. psih12 131 02.05.19 21:53 Сейчас в теме
(4)
О выборе вариантов соединения колонок
26. mkalimulin 1250 03.05.19 13:20 Сейчас в теме
(24) Я думал над этим, но пока так окончательно и не решил, что важнее - возможность выбора соединения или простота.
13. RustIG 1833 30.04.19 15:11 Сейчас в теме
(2) идея прикольная и будет востребована!
для обычных форм можете сделать.
если некогда, я сделаю.
17. mkalimulin 1250 30.04.19 19:22 Сейчас в теме
(13) Буду делать полную версию универсальной. Для УФ и ОФ.
11. shard 282 30.04.19 14:19 Сейчас в теме
и первым же вопросом: "а что такое ссылка?")))
15. mkalimulin 1250 30.04.19 19:19 Сейчас в теме
(11) И сразу ответ:
Не понимаешь - не жми. Жми на "города", "должности", "мероприятия" и т.д.
12. Sedaiko 591 30.04.19 15:05 Сейчас в теме
16. mkalimulin 1250 30.04.19 19:20 Сейчас в теме
18. logarifm 1123 30.04.19 20:44 Сейчас в теме
(0) для красоты - колонки называйте как они в медаданных привычны пользователю (то есть заголовками колонко сделайте синоним)
19. mkalimulin 1250 30.04.19 21:23 Сейчас в теме
(18) Спасибо. Тоже думал об этом.
20. dreamcreal 02.05.19 01:51 Сейчас в теме
21. mkalimulin 1250 02.05.19 10:38 Сейчас в теме
22. bashirov.rs 31 02.05.19 16:43 Сейчас в теме
Идея не плохая.
Универсальность под УФ и ОФ только приветствуется. Что тут скажешь, если даже есть конторы, которые до сих пор на 7.7. сидят)))
В принципе, альтернатива универсальному отчету, которые есть в типовых конфигурациях. Только в вашем случае получается, что может собирать из таблицу из нескольких таблиц. Я правильно понял?
23. mkalimulin 1250 02.05.19 17:58 Сейчас в теме
(22) Да, совершенно верно. Выбираете колонки из разных таблиц, а программа сама делает необходимые соединения.
25. psih12 131 02.05.19 21:57 Сейчас в теме
А с табличными частями обработка работает?
27. mkalimulin 1250 03.05.19 13:23 Сейчас в теме
(25) Да, работает. Если посмотрите текст статьи, то увидите табличную часть документа.
29. user597078_steem34 17.07.20 17:05 Сейчас в теме
30. mkalimulin 1250 18.07.20 18:48 Сейчас в теме
31. chg 18.02.21 06:51 Сейчас в теме
Добрый день.
Как готовый шаблон отчёта нет возможности сохранять?(как в универсальном).
32. mkalimulin 1250 18.02.21 11:05 Сейчас в теме
(31) Добрый день. К сожалению, сейчас такой возможности нет. Я планирую большое обновление этого продукта в марте-апреле текущего года. Обязательно включу сохранение. Спасибо за обратную связь!
33. chg 18.02.21 14:22 Сейчас в теме
(32)если не секрет, то чем ещё решили дополнить?
34. mkalimulin 1250 18.02.21 16:38 Сейчас в теме
(33) Не секрет. Будет редактирование объектов (в т.ч. массовое) и сравнение объектов.
Оставьте свое сообщение