Имя: Пароль:
1C
1С v8
Будет ли разница в производительности? (запрос)
,
0 cons74
 
05.05.14
11:24
Запрос.УстановитьПараметр("Организация", Документ.Организация);
или
Запрос.УстановитьПараметр("Организация", Документ.Организация.Ссылка);
1 ДенисЧ
 
05.05.14
11:25
Будет. Только не в запросе, а на этапе его подготовки, заполнения параметров
2 Wobland
 
05.05.14
11:25
нет
3 МойКодУныл
 
05.05.14
11:26
(0) 0_o
В запросе нет.
В получении занчения для параметра - да. Второй длинней.
4 МойКодУныл
 
05.05.14
11:27
Документ.Организация.Ссылка.Ссылка.Ссылка.Ссылка.Ссылка
Самая быстрая конструкция.
Из-за особенностей работы оптимизатора SQL.
=)
5 fisher
 
05.05.14
11:29
(0) Х.з.
Проще проверить. По-хорошему, такие вещи сервер приложений должен оптимизировать.
6 fisher
 
05.05.14
11:31
Но лично меня вот эти вот лишние ".Ссылка" в чужом коде всегда коробили. Ибо избыточность не может не коробить перфекциониста :)
7 МойКодУныл
 
05.05.14
11:37
(6) Конечно, это излишества.

(0) в (4) шутка. А то вдруг что.
8 vvp91
 
05.05.14
11:55
>> Документ.Организация.Ссылка
Получение в коде 1С значения реквизита через точку от ссылки приводит к полной загрузке объекта из базы, вместе с его табличными частями ( http://its.1c.ru/db/v8std#content:2149184145:1 ).

Поэтому запись Организация.ИНН будет неоптимальной по производительности, если Организация будет ссылкой.

Но! Запись вида Организация.Ссылка не ведет к загрузке объекта из базы, а просто возвращает уже известное значение ссылки и эквивалентно записи Организация, если Организация является ссылкой.
Так зачем писать лишнее?

А вот когда запись вида Переменная.Ссылка может пригодиться - если Переменная является параметром в каком-нибудь методе, и этот параметр может оказаться как самой ссылкой, так и объектом или структурой или выборкой или строкой таблицы с полем Ссылка.
9 fisher
 
05.05.14
11:58
(8) "Запись вида Организация.Ссылка не ведет к загрузке объекта из базы, а просто возвращает уже известное значение ссылки и эквивалентно записи Организация, если Организация является ссылкой"
Это домысел, строка из документации или кем-то доказанный факт?
10 hhhh
 
05.05.14
11:58
(8) организация может и всё равно, но если допустим сравнить Субконто1 и Субконто1.Ссылка, то реально в десятки раз по времени разница.
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший