Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Что отработает быстрее в ОбработкаПолученияПредставления

Что отработает быстрее в ОбработкаПолученияПредставления
Я
   TolikoSprosit
 
29.05.18 - 12:55
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
    // Вставить содержимое обработчика.

    СтандартнаяОбработка = Ложь;
    Представление = Данные.Наименование + "(" + Строка(Данные.SpaceTypesMain) + ")";
    Представление = Данные.Наименование + "(" + ОбщегоНазначения.ПолучитьЗначениеРеквизита(Данные.SpaceTypesMain,"Наименование") + ")";
    
КонецПроцедуры

Замер производительности показывает что запрос в ПолучитьЗначениеРеквизита самое медленное место, это почему так? Или замер лукавит?
 
 
   singlych
 
1 - 29.05.18 - 12:57
А вот кто-нибудь запилит обработку получения представления для Данные.SpaceTypesMain, что будешь делать?
   TolikoSprosit
 
2 - 29.05.18 - 12:59
(1) это я переживу)
   TolikoSprosit
 
3 - 29.05.18 - 13:08
SpaceTypesMain не большой справочник. Моя ставка на то, что 1с кэшурует представление(Строка(Данные.SpaceTypesMain)) поэтому он и отрабатывает быстрей. Но я хочу чтобы господа эксперты высказались)
   DmitrO
 
4 - 29.05.18 - 13:09
Не надо использовать ОбщегоНазначения.ПолучитьЗначениеРеквизита, это отдельный запрос к базе.
Надо использовать событие ОбработкаПолученияПолейПредставления и все данные для формирования представления будут получаться в исходном запросе.
   DmitrO
 
5 - 29.05.18 - 13:11
А SpaceTypesMain это ссылка что ли? Тогда да, 1С так не умеет. :)
   TolikoSprosit
 
6 - 29.05.18 - 13:14
(4) (5) Я уж думал чудо какое есть)
   DmitrO
 
7 - 29.05.18 - 13:18
Им бы сделать чтобы можно было указать в ОбработкаПолученияПолейПредставления поля так: Поля.Добавить("SpaceTypesMain.Наименование");
а в структуру данных помещать под такой ключ: "SpaceTypesMainНаименование" - но кто ж об этом догадаться-то то может, это ж мля, так не очевидно!
   TolikoSprosit
 
8 - 29.05.18 - 13:26
Шутки шутками, а закэшированное Строка(Данные.SpaceTypesMain), отработает быстрее всего. Думаю можно расходится.
   RomanYS
 
9 - 29.05.18 - 13:36
(3) если справочник условно-неизменный можно поиграться с
-модулями повторного использования
-(фиксированным) соответствием засунутым, например, в параметры сеанса
   TolikoSprosit
 
10 - 29.05.18 - 13:41
(9) Тоже думал про модуль, но не нашлось нужного модуля с нужными галочками, а для отдельной функции модуль добавлять пока не буду.

2ое решение я бы назвал экзотическим. С моей точки зрения, трудно поддерживаемое.
 
 Рекламное место пустует
   aka MIK
 
11 - 29.05.18 - 13:44
(8) ну разумеется, оно уже на клиенте. Для этого все и делилось на инструкции где что выполнять
   DmitrO
 
12 - 29.05.18 - 15:00
(8)разыменование ссылок кешируется только на время серверного вызова. При следующем серверном вызове снова же в базу полезет.
   TolikoSprosit
 
13 - 30.05.18 - 10:18
(11) на каком клиенте? это модель менеджера.
   TolikoSprosit
 
14 - 30.05.18 - 10:19
(12) "разыменование" это другое. Кэшируется на сессию.
   тарам пам пам
 
15 - 30.05.18 - 10:38
(8) Быстрее всего отработает добавленный реквизит "Представление", который заполнять перед записью.
   TolikoSprosit
 
16 - 30.05.18 - 10:47
(15) как вариант

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует