|
Вопрос - почему так медленно? | ☑ | ||
---|---|---|---|---|
0
Rounder
03.09.13
✎
14:15
|
Есть некий документ.
Есть его проведение по регистру сведений. Код сформирован конструктором. Есть две строки: 1. Движение.ЕдиницаИзмерения = ТекСтрокаТовары.Номенклатура.ЕдиницаХраненияОстатков; 2. Движение.Филиал = ТекСтрокаТовары.Номенклатура.ПризнакЗавода; Почему первая строка при замере производительности отнимает почти 90% времени выполнения (вторая 1%). 1 и 2 отличаются типами: 1 - СправочникСсылка, 2 - строка. |
|||
1
Ненавижу 1С
гуру
03.09.13
✎
14:16
|
потому что первая считывает данные из базы, а вторая из кеша
вообще запросы рулят |
|||
2
Rounder
03.09.13
✎
14:19
|
Т.е. если получаемую инфу в 1 я получу запросом - то будет значительный выигрыш по времени?
|
|||
3
Rounder
03.09.13
✎
14:19
|
Или что имелось в виду в (1)?
|
|||
4
Sammo
03.09.13
✎
14:20
|
(2) Вопрос в том - что такое ТекСтрокаТовары.
По идее - собираешь все необходимые данные запросом и без обращений через 2 точки |
|||
5
palpetrovich
03.09.13
✎
14:21
|
(2) наверное то, что "первая строка" - эт неявный запрос к ТекСтрокаТовары.Номенклатура
|
|||
6
Rounder
03.09.13
✎
14:21
|
ТекСтрокаТовары - строка табличной части.
|
|||
7
Defender aka LINN
03.09.13
✎
14:22
|
(2) Тогда 2 тормозить начнет, это же очевидно. А так да, если получать эти 2 поля запросом, будет быстрее.
|
|||
8
Rounder
03.09.13
✎
14:22
|
(5) а почему тогда "вторая строка" не является неявным запросом к ТекСтрокаТовары.Номенклатура?
|
|||
9
Maxus43
03.09.13
✎
14:24
|
(8) потому что первая строчка ужсе считала весь объект и в кэш положила, а вторая из кэша достаёт, а не из базы
обращения через точку зло |
|||
10
Lama12
03.09.13
✎
14:24
|
(6) Вытаскивай запросом все данные из базы (по максимуму) которые потребуются для создания движений.
Наиболее оптимальный вариант, сделать так, что б результат запроса можно было загрузить в движения через метод "Загрузить". (8)Является, только результаты этого запроса уже закэшированы системой на уровне серверов. |
|||
11
palpetrovich
03.09.13
✎
14:25
|
(8) ыдк, кэш, как говорили выше
|
|||
12
Rounder
03.09.13
✎
14:27
|
Все. Догнал. Спасибо всем.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |