|
Есть какая-нибудь методика чтения больших запросов? | ☑ | ||
---|---|---|---|---|
0
Галахад
28.03.24
✎
12:05
|
Ну кроме как послать творцу лучи добра и налить свежую кружку кофе.
|
|||
1
Lama12
28.03.24
✎
12:09
|
Декомпозируй.
|
|||
2
Garykom
28.03.24
✎
12:13
|
(0) Такая не устроит?
|
|||
3
Garykom
28.03.24
✎
12:16
|
(1) +1 на кучу ВТ
|
|||
4
steep1
28.03.24
✎
12:17
|
(0) Самое просто, это начать самому писать большие запросы, после этого понятие чужих больших запросов придет автоматически.
|
|||
5
Ёпрст
28.03.24
✎
12:17
|
(0) есть же всякие анализаторы запросов и разложение их в графы на нимфостарте
|
|||
6
Hans
28.03.24
✎
12:18
|
Есть какая то методика на Курсы РФ Насипова.
|
|||
7
Ёпрст
28.03.24
✎
12:19
|
https://infostart.ru/1c/tools/617990/
тип такого |
|||
8
Галахад
28.03.24
✎
12:26
|
(1) 🤝
(2) Нет. Кстати насколько удобно? (3) 🤝 (4) Не люблю много контекста одновременно. (5), (7) О, спасибо. Почитаю. (6) 🤝 |
|||
9
trdm
28.03.24
✎
12:30
|
А разве конструктор не декомпостирует запрос?
запустил, посмотрел на последнюю звкладку. |
|||
10
Волшебник
28.03.24
✎
12:33
|
(0) Начинать с конца
|
|||
11
Garykom
28.03.24
✎
12:35
|
(8) >Нет. Кстати насколько удобно?
Обычно не использую, но большой монитор 4K удобно что много влазит на один экран |
|||
12
Галахад
28.03.24
✎
12:41
|
(9) Для чего? Что бы знать имена таблиц?
(10) 🧐 Спасибо, кэп. (11) Наверное для EDT удобно. |
|||
13
d4rkmesa
28.03.24
✎
12:45
|
(8) Консоль из ИР довольно удобно разбивает запросы из пакета в дерево, каждую ветку из которой можно выполнить отдельно.
|
|||
14
Галахад
28.03.24
✎
12:54
|
(13) Да. ИР отличная штука.
|
|||
15
101101
28.03.24
✎
13:28
|
Вместо любого большого запроса можно написать несколько маленьких в цикле. Может так и не правильно с позиции производительности, но намного быстрее писать и отлаживать потом.
|
|||
16
Dmitrii
28.03.24
✎
13:57
|
(15) >> намного быстрее писать и отлаживать потом
Писать и отлаживать надо сначала, а не потом. Разве нет? |
|||
17
rphosts
28.03.24
✎
14:00
|
(13) всё так, но порой на входе запроса не только вагон параметров но и менеджерВТ с тележкой ВТ
|
|||
18
Valdis2007
28.03.24
✎
14:02
|
(2) +1...надо заказать себе...давно собираюсь
|
|||
19
101101
28.03.24
✎
14:02
|
(16)
Потом всплывают неизвестные заранее нюансы |
|||
20
Dmitrii
28.03.24
✎
14:04
|
Любые методики работают ровно до того момента, пока ты не сталкиваешься с программным интерфейсом типа того, что реализован в ЗУП.
Когда сам запрос может быть и небольшим, но он не обращается к таблицам базы данных, а только к временным таблицам (ВТ) из менеджера временных таблиц (МВТ), которые сформировались перед его (основного запроса) выполнением во множестве процедур различных модулей. Каждый небольшой текст запросов, создающих ВТ для МВТ, может ещё и меняться и редактироваться в этих процедурах в зависимости от каких-то параметров и условий. |
|||
21
Гипервизор
28.03.24
✎
14:12
|
(20) Ох, +100500, это внеземной разум.
|
|||
22
Valdis2007
28.03.24
✎
14:14
|
(20) +1...это они Hibernate такой свой делают
|
|||
23
Hans
28.03.24
✎
14:17
|
Запрос отражение в рег учете ЕРП. Любой документ порядка 10к строк запроса. Это что такое? неоптимальная архитектура или как раз оптимальная?
|
|||
24
DimVad
28.03.24
✎
14:17
|
(17) Ну я сперва перебрасываю в ИР запросы формирующие эти ВТ (ну там перебрасываются и параметры).
|
|||
25
Hans
28.03.24
✎
14:20
|
Так же в ЕРП сейчас есть запросы которые тупо не открываются конструкторами, при этом выполняются без проблем.
|
|||
26
Dmitrii
28.03.24
✎
14:21
|
(21) (22) Ну.... на самом деле там не всё так уж и страшно.
Проблема в том, что для ого, чтобы в ЗУПовском программном интерфейсе разобраться нужно время. А в условиях отсутствия внятной документации ещё и постоянно в этом вариться. Для тех, кто погружён в тему, это не составляет особого труда. И многие вещи кажутся вполне себе логичным и здравыми. Однако, для специалиста, который заглядывает туда раз в сто лет, это кажется непроходимыми дебрями. |
|||
27
ildary
28.03.24
✎
14:42
|
(0) Проблема только в том, что надо разобраться в связях между временными таблицами?
|
|||
28
rphosts
28.03.24
✎
14:51
|
(24) если в какой-то ЕРП - там жесть сколько всякого накручивается порой... но с другой стороны наверное по другому никак
|
|||
29
unbred
28.03.24
✎
15:12
|
(0) читаю по диагонали . обращаю внимание только на "ИЗ" И "ГДЕ" (либо параметры виртуальной)
с вложенными запросами не работает. там приходится вчитываться. ненавижу. |
|||
30
Garykom
28.03.24
✎
15:12
|
(28) По другому это рефакторинг ("переписать все нафуй") - а на это нужны время и деньги
Зачем если и так продается? |
|||
31
Garykom
28.03.24
✎
15:13
|
(30)+ Не факт что после переписывания не будет еще хуже ))
|
|||
32
Valdis2007
28.03.24
✎
15:23
|
(29) ненавижу.
а теперь представь, как удобно было читать программы в машинных кодах 60 лет назад? Сразу легче станет)) |
|||
33
olegves
28.03.24
✎
16:36
|
мне нравится консоль ИР - там все промежуточные таблицы, а так можно по одной табличке в консоли смотреть/добавлять
|
|||
34
Timon1405
28.03.24
✎
17:08
|
(33) и даже через ирОбщий.Отладить(Запрос) можно в нее данные из отладки подкинуть, но, как замечают коллеги выше, в современных типовых такие спагетти из временных таблиц что даже ИР уже не вывозит.
|
|||
35
unbred
28.03.24
✎
17:12
|
(32) иногда...иногда, вложенные имеют смысл, так как ускоряют запрос, в сравнении с ВТ.
но в большинстве случаев запросы с вложенными запросами пишут староверы, которые знать не знают про ВТ и чихать хотели на читабельность. представь, что 60 лет назад были ровно такие-же ситуации. не вижу причин заглядывать в 60 лет назад. |
|||
36
unbred
28.03.24
✎
17:18
|
(35) в догонку.
особенно умиляет, когда у тебя вагон вложений и ты их именуешь.. вложенный запрос. это просто ад. |
|||
37
bolder
28.03.24
✎
20:47
|
(35) Да,тоже столкнулся.Красивый запрос с ВТ исполняется на 10-15% медленнее.Плюнул,оставил как есть.
|
|||
38
Прохожий
28.03.24
✎
20:47
|
(0) Перепиши все. Заодно разберешься. Но после этого понимать будешь только ты.
|
|||
39
bolder
28.03.24
✎
20:51
|
(38) Я согласен с (4).Нужно самому начать их писать.
В процессе будут находки. |
|||
40
Garykom
28.03.24
✎
20:53
|
(37) Правильно написанный не медленней
Фишка что без ВТ СУБД сама оптимизирует план запроса (может одновременно вложенный и наружный "считать") А вот когда выделены ВТ (по сути несколько запросов в одном) то они по порядку выполняются И вот тут может быть не оптимально, слишком большие ВТ формируются а затем соединяются криво |
|||
41
DimVad
29.03.24
✎
06:08
|
(29) // с вложенными запросами не работает.
Я скачивал с инфостарта "Отладчик запросов (by Акулов А.С.).epf". В нём есть такая фичка - он может все вложенные запросы автоматически преобразовать в запрос с временными табличками. Кнопочка такая есть :-) Копируешь запрос в эту консоль, преобразуешь, копируешь обратно в ИР и там уже отлаживаешь. Запрос с временными таблицами - он "линейный", его легче отлаживать. p.s. У меня версия только на ОФ, не знаю есть ли на УФ, но это в любом случае не проблема если надо использовать только выделение подзапросов. |
|||
42
DJ Anthon
29.03.24
✎
08:58
|
в ерп на каждое проведение почти любого документа программно создается запрос на 5000-15000 строк. вот их читать одно удовольствие )
|
|||
43
Garykom
29.03.24
✎
10:00
|
(41) А как насчет обратно из запроса с ВТ в запрос с вложенными?
|
|||
44
Garykom
29.03.24
✎
10:01
|
(42) Читать ладно. Их дорабатывать пришлось для акцизов...
|
|||
45
mikecool
29.03.24
✎
10:05
|
когда проходил собес в 1с, мне обещали научить методе собирать исходный запрос по МВТ и ежи с ним
не повезло, когда ответили по результатам собеса я уже полгода(!) работал на новой работе ) |
|||
46
Волшебник
29.03.24
✎
10:45
|
(45) не "ежи", а "иже"
|
|||
47
DimVad
29.03.24
✎
10:58
|
(43) Ну кнопочка "Собрать запрос" там есть, на небольших запросах пробовал - работает.
|
|||
48
sdf
29.03.24
✎
14:44
|
В отличии от ТС, я больше писатель, чем читатель, но тоже ничего не влазит, и приходится есть этот желтый кактус (как те ежи...).
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |