|
Обработка получения представления. | ☑ | ||
---|---|---|---|---|
0
Puzyrevskiy
21.07.20
✎
12:00
|
Здравствуйте, дорогие Мисчане! В обработке получения представления справочника, реализован запрос такого вида:
ВЫБРАТЬ СегментыКлиентовСрезПоследних.Клиент КАК Клиент, ПРЕДСТАВЛЕНИЕ(СегментыКлиентовСрезПоследних.Сегмент) КАК Сегмент ИЗ РегистрСведений.СегментыКлиентов.СрезПоследних(, Клиент = &Клиент) КАК СегментыКлиентовСрезПоследних при больших объемах считываемых данных данный запрос дает нагрузку в 0,5-0,8 секунд, что собственно мне не нравится, да и вообще писать в данном обработчике какие-либо запросы некамельфо, ибо обращений сюда много. Внимание вопрос! Как оптимальней получать данные по сегментам и выводить их в представление? Возможно (как вариант), завести реквизит, куда бы заранее писались данные представления, а потом бы из этого реквизита подхватывались, что думаете? |
|||
1
D_E_S_131
21.07.20
✎
12:20
|
Есть еще "ОбработкаПолученияПолейПредставления", если нужно вытащить какие-то данные, которых нет непосредственно в объекте.
|
|||
2
DTX 4th
21.07.20
✎
12:25
|
Сейчас посмотрел типовые отчеты в РТ2. Там нигде нет представлений. Почему? СКД как-то разруливает это дело?
|
|||
3
lodger
21.07.20
✎
12:31
|
система позволяет такие извращения, конечно. но зачем? просто "так хочет клиент"?
тут 2 основных пути - перевесить эту задачу на отчеты, который 1 раз для всего массива стянет срез последних, второй записать в элемент справочника. есть дополнительные варианты - поставить этот запрос в модуль с повторновозвращаемыми данными, а где нужно дергать уже модуль. последние значения будут кешироваться. |
|||
4
lodger
21.07.20
✎
12:32
|
в обработке получения данных представления... ну можете скулю приделать объем оперативки превышающий объем рабочей базы.
|
|||
5
Йохохо
21.07.20
✎
12:57
|
(2) потому что платформа по умолчанию всегда тащит запросом поля нужные для типового представления
|
|||
6
acht
21.07.20
✎
13:00
|
(0) > Мисчане... некамельфо
Бесталковая идея, Пузырь. |
|||
7
acht
21.07.20
✎
13:02
|
Ты бярешь срес лефаго сначениа на дату, а претсавлениё ва перфых кышыруется, а ва втарых - по сцылке зправочника.
|
|||
8
fisher
21.07.20
✎
13:09
|
Да, срез последних в получении представления - это слишком сурово. Но можешь включить для регистра сведений хранение итогов среза последних - станет значительно быстрее.
Но брать из реквизита - оптимально. |
|||
9
fisher
21.07.20
✎
13:13
|
(2) СКД грамотно разруливает получение представлений скопом. А вот если сам формируешь табличный документ с большим количеством ссылок и забыл про представления (выводишь ссылку вместо представления и платформа вынуждена сама получать представления), то можно удивиться разнице в быстродействии.
|
|||
10
Puzyrevskiy
21.07.20
✎
13:16
|
(8) Да, тут даже идея была такая, завести реквизит, первоначально заполнить его значениями из регистра, а потом реализовать регламентное на обновление этих сегментов в ночное время.
|
|||
11
DTX 4th
21.07.20
✎
13:50
|
(9) Что-то не думал об этом. Спасибо
В общем, слава СКД :) |
|||
12
D_E_S_131
21.07.20
✎
14:22
|
(10) Не "регламентное обновление" уж тогда, а подписку на событие записи набора записей (или где там эти сегменты хранятся).
|
|||
13
Йохохо
21.07.20
✎
14:23
|
(9) платформа дополняет автоматом запросы к бд для получения типового представления
|
|||
14
Puzyrevskiy
21.07.20
✎
14:54
|
(12) да, тоже отличная мысль :) Спасибо!
|
|||
15
Puzyrevskiy
21.07.20
✎
14:55
|
Всем спасибо ребята!
|
|||
16
fisher
21.07.20
✎
15:00
|
(13) Обычные запросы представлениями не дополняются. А про СКД уже написано.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |