gifts2017

Структура подчинённости документов. Немного оптимизирована скорость.

Опубликовал Трактор Трактор (Трактор) в раздел Программирование - Работа с интерфейсом

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

Скачать файлы

Наименование Файл Версия Размер
Структура подчинённости 877
.1226933963 14,81Kb
25.09.09
877
.1226933963 14,81Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. segen (segen) 19.11.08 08:09
К заказу покупателя привязано 40 документов. Штатными средствами УТ 2м.45сек., с помощью данной обработки 1м.20сек. Напрягает то, что приходится выбирать тип документа. Было бы хорошо, если при открытии сразу выводился список заказов покупателей.
2. Ри (Fate) 19.11.08 09:19
Спасибо, действительно, работает шустрее
3. Трактор Трактор (Трактор) 19.11.08 10:03
>> Напрягает то, что приходится выбирать тип документа.
segen, а ты обнови штатную общую форму.
Я переделал форму во внешнюю обработку только для удобства выкладки.
4. Crocy (crocy) 19.11.08 18:45
А не работает. Если на документ много ссылок, то структуру вообще не показывает.
а конкретно измененная процедура по подчиненным документам вылетает на ограничении SQL в 256 таблиц :(
(отрабатывается исключение)

Таки , критерий отбора "структура подчиненности" уже далеко не типовой, но штатная обработка все отображает, хотя и медленно.
5. Ivan (Zlodey) 20.11.08 06:32
Управление производственным предприятием, редакция 1.2 (1.2.17.3)
Данная обработка не работает. Не показывает структуру подчиненности
6. Crocy (crocy) 20.11.08 16:48
Прежде чем что-то оптимизировать, попытайтесь вначале понять почему сделано именно так, а не по-другому.
Если используется RLS, то ваша обработка структуру подчиненности не показывает.

То, что сделано в типовых конфигурациях сделано так, чтобы и под RLS работал и в случаях, когда в структуре подчиненности используется много объектов
(например для УПП)
7. Сhe Burashka (CheBurator) 20.11.08 16:54
> К заказу покупателя привязано 40 документов. Штатными средствами УТ 2м.45сек., с помощью данной обработки 1м.20сек.
Ребята, это что????? это правильно??? за счет чего такие тормоза...??? не, я понимаю, всякие там новые возможности, подходы... что-то кардинально изменилось в снеговике в работе/понятии структура подчиненности? почему в клюшках у меня структура подчиненности на 20-40 листов формируется практически мгновенно...??? или я чего-то не понимаю в принципе, поясните плиз...?
(в снеговике - практический ноль)
8. Трактор Трактор (Трактор) 20.11.08 20:30
7 >> за счет чего такие тормоза...???
За счёт того что в клюшках есть общий журнал документов, в снеговике нет. Критерии отбора в снеговике это не настоящая таблица, а виртуальная :-( Запрос к ней вызывает соединение со всеми таблицами, включёнными в критерий отбора.

6 >> Прежде чем что-то оптимизировать, попытайтесь вначале понять почему сделано именно так
Crocy, прежде чем умничать подумай почему должны мучаться все, если некоторые могут облегчить свою участь. Нахрена пользовать универсальное решение, если частное решение работает быстрее?
Касательно RLS вынеси запрос в привилегированный модуль и объедешь ограничение.

>> Управление производственным предприятием, редакция 1.2 (1.2.17.3)
Zlodey, обработка написана для УТ близкой к типовой. Более того, для базы под Postgre. Там работает.
Rustig; Serj1C; +2 Ответить
9. Crocy (crocy) 27.11.08 02:13
Трактор, не тупи.
Мне не надо бороть ограничение RLS - мне надо чтобы юзвери,сидящие под ограниченными правами,
видели в структуре подчиненности только разрешенные им на просмотр документы.
Выносом обработки в привелигированный модуль такую проблему не решить.
Так что твоя обработка имеет слишком узкое применение, а именно в УТ, может быть в БП и только у пользователей,
у которых не стоят ограничения RLS.
10. Трактор Трактор (Трактор) 27.11.08 22:56
>> Мне не надо бороть ограничение RLS
Crocy, я тебе и не предлагал бороть RLS. Я тебе предложил обход ограничения на 256 таблиц в запросе. Для этого запрос выносишь в привилегированный модуль, а доступность документов можно проверить перед выводом в дерево.
Так всё-равно будет работать быстрее чем типовой универсальный отчёт.
11. Трактор Трактор (Трактор) 13.05.09 12:32
Оказывается в PostgreSQL нет ограничения на использование более 256 таблиц в запросе.
Пользуйте PostgreSQL!
12. Kostya Zhurov (It-developer) 08.09.10 18:20
У меня в УПП 1.1 (1.1.11) не показывает те документы, которые указывают на текущий документ. Отчет показывает только те документы, на которые указывает наш документ (и вложенные от этих документов).
13. Трактор Трактор (Трактор) 07.11.10 09:44
(12) У тебя криво настроены критерии отбора.
14. Сергей Средних (morpheus2) 27.10.11 10:29
15. Роман (rkozom) 28.11.11 13:22
Классно! Когда структура подчиненности содержит больше 10 документов (что у нас не редкость), скорость работы особенно радует! Сервер разгружается. Когда обновил стандартную обработку, вообще хорошо стало. Спасибо!
16. Алексей Прилепский (IamAlexy) 06.01.12 12:08
пока на смотрел - для новомодных УТ11 и прочих УНФ работает ?
17. uno dos (unoDosTres) 28.04.14 08:53
Вещь отличная, хоть и давно написанная, я конечно не знаю зачем 1с написали в типовых конфах такой универсальный механизм который в них сейчас имеется, ибо он весьма неоптимальный у меня в конфе запрос по структуре был чуть ли не самым прожорливым, видимо на то были какие-то свои причины, а вот эта вещь от автора ну намного шустрей чем типовая, спасибо большое!
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа