Пожелание по консоли запросов. Группы запросов
|
|
VirDim | Дата: Понедельник, 25.02.2019, 08:42 | Сообщение # 1 |
Рядовой
Группа: Пользователи
Сообщений: 4
Репутация: 2
Статус: Оффлайн
| Цитата tormozit () Известно ли тебе про режим "дерево запроса" в консоли запроса?
Да, конечно, но иногда с ним не очень удобно работать. Раз уж тут пошл разговор про удобство. Можно сделать пару фич? 1. Можно ли в дополнении к команде у группы запросов "поместить во временные таблицы" добавить команду которая просто выполняла бы все запросы в группе без запроса имени временной таблицы в которую надо поместить, ибо у меня уже в запросах, как правило, есть "поместить ИмяВРТаблицы". Иногда уменя в группе много запросов с помещение во временные таблицы и не удобно 15-20 раз прокликивать кнопку отмены. Было бы совсем круто если ещё у каждого запроса в группе можно было ставить флаг "выполнять при групповом выполнении" или что-то подобное. Например, для отладки есть два разных запроса, которые помещаются во временную таблицу с одинаковым именем и хотелось бы иметь выбор какой запрос мне нужен в данном группововм выполнении. 2. Опять же про группы. Можно ли сделать команду у группы для сбора текстов всех запросов в один большой запрос. Было бы круто ещё так же задействовать флаг "использовать" из первого пункта или например выводить список с галочками какие запросы нужно собрать, добавив ещё, например возможноть изменять положение в списке местами.
|
|
| |
tormozit | Дата: Понедельник, 25.02.2019, 19:49 | Сообщение # 2 |
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
| Прежде всего хотелось бы понять, почему не использовал дерево запроса для пошагового выполнения пакетного запроса. Почему комментирование хвоста текста запроса оказалось удобнее?
Мне не удалось понять п.1 и п.2. Попробуй пояснить пожелания иллюстрациями.
|
|
| |
VirDim | Дата: Вторник, 26.02.2019, 18:02 | Сообщение # 3 |
Рядовой
Группа: Пользователи
Сообщений: 4
Репутация: 2
Статус: Оффлайн
| Коментированивае хвоста это немного из другой оперы было.
Попытаюсь объяснить с илюстрациями. На первом скриншоте отображен пакетный запрос в дереве. Далее попробую по пунктам 1. Запросов 53 в данном случае и все они выведнены одним списком в дереве. В таком большом колчестве строк уже достаточно сложно быстро ориентироваться какой запрос тебе нужно изменить. 2. Чтобы добавить запрос, нужно редактировать корень пакета. При больших запросах сохранение в дереве происходит очень долго. 3. Субьективно, мне не очень удобна логика редактирования подзапросов в дереве и что некоторые запросы, заменяются на имена временных таблиц.
Теперь тоже самое, только в виде списка запросов в группе на втором скриншоте 1. Всего строк запросов в группе не очень много и они имеют осмысленные имена. 2. Каждый такой запрос содержит запросы, которые получают законченные данные, соответствующие заголовку. Например мне нужно получить цены номенклатуры. Для того чтобы их получить, нужно сделать ещё несколько вспомогательных подзапросов(специфика учета). В итоге получается 5-6 подзапросов и в конечном итоге я получаю нужную мне временную таблицу с ценами, которую я могу далее присоединять к другим запросам. В итоге, если я в результате понимаю что у меня ошибка в логике получения цен, я не буду скролить список из более 50 подзапросов в дереве, а открою запрос отвечающий за получение цен и внутри могу его отладить. По мнк так, работа с такими атомарными запросами удобнее чем огромным деревом. 3. Эти запросы из группы я так же могу использовать в других запросах. Например, у меня есть задача сделать 2 механизма выгрузки данных, в которых я, например, использую одинаковый механизм того же получения цены. Я могу один раз его написать, выполнить, поместить во временные таблицы данные о ценах и использовать их уже в дальнеших запросах для моих механизмов. Получается такая некая унификация запроса.
|
|
| |
tormozit | Дата: Среда, 27.02.2019, 23:26 | Сообщение # 4 |
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
| 1. Названия узлов содержат имена/псевдонимы таблиц, в/из которых в этих узлах выбираются данные. Поэтому если имена/псевдонимы имеют хорошую опознаваемость, то это уже неплохо повышает удобство навигации по дереву. 2. При использовании конструктора запроса ИР каждому запросу/части объединения можно задавать явные имена, которые будут отображаться в соответствующих узлах дерева запроса. 3. Над списком запросов есть поле поиска по подстроке. Этот поиск раскрывает и окрашивает желтым найденные запросы в дереве запросов и узлы в дереве запроса, а также позволяет переходить по найденным строкам дерева. 4. По F12/F11 можно переходить к запросу создания временной таблицы из текста/дерева запроса. 5. Команда "Показать зависимые" в дереве запроса окрашивает узлы, в которых используется временная таблица, создаваемая текущим запросом. 6. Чтобы добавить запрос в пакетный запрос достаточно в тексте текущего запроса пакета вставить ";" и после нее написать нужный запрос и сохранить узел дерева. 7. Запросы типа "Уничтожить" сильно захламляют дерево и усложняют отладку запроса. Поэтому я рекомендую не использовать их, ведь платформа сама их уничтожает при уничтожении менеджера временных таблиц. А уж если сильно хочется их использовать, то лучше выполнять их в самом конце и еще лучше отдельным пакетным запросом. 8. По скорости парсинга текста запроса признаю что она не достаточно комфортна для работы с огромными текстами Я работал с деревьями из более 100 запросов и мне перечисленных возможностей хватало для удобной навигации.
Пример с многократным использованием временных таблиц, создаваемых пакетными запросами, понятен. У него конечно есть преимущества. Но пока я не готов двигаться в этом направлении.
|
|
| |
VirDim | Дата: Четверг, 28.02.2019, 08:09 | Сообщение # 5 |
Рядовой
Группа: Пользователи
Сообщений: 4
Репутация: 2
Статус: Оффлайн
| Ок, я понял твою точку зрения. Кстати, некоторых фич, о которых написано, не знал, спасибо. А что если я сам реализую этот функционал? Добавишь его в релиз?
|
|
| |
tormozit | Дата: Четверг, 28.02.2019, 20:33 | Сообщение # 6 |
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
| Обещать не могу. Но постарайся сделать свою доработку так, чтобы она минимально меняла форму и по возможности существующие методы в модуле. Тогда и тебе самому будет проще ее добавлять в новые версии ИР и мне будет проще ее поддерживать, если решу ее влить.
|
|
| |