|
v7: Периодический реквизит. Тормоза. | ☑ | ||
---|---|---|---|---|
0
AntiBuh
30.06.14
✎
09:36
|
Есть справочник с несколькими периодическими реквизитами
при получении реквизитов - на некоторые тратится оч много времени Получаю так: Спр.ИспользоватьДату(Дат); п1 = Спр.Рекв1; п2 = Спр.Рекв2; п3 = Спр.Рекв3; Рекв1 - Строка 30 Рекв2 и Рекв3 - Число 15.2 на получение Рекв2 и 3 уходит раз в 100 больше времени чем на Рекв1 в чем может быть проблема? |
|||
1
vde69
модератор
30.06.14
✎
09:42
|
Рекв1 -
то реально так называется реквизит???? или он назывется по другому??? |
|||
2
AntiBuh
30.06.14
✎
09:43
|
(1) а имеет значение как он в реале называется?
|
|||
3
ДенисЧ
30.06.14
✎
09:44
|
Это норма (с)
периодические - они такие.... |
|||
4
SleepyHead
гуру
30.06.14
✎
09:45
|
(2) Все периодические значения хранятся в файле 1sconst, делай выводы
|
|||
5
vde69
модератор
30.06.14
✎
09:46
|
(2)
имеет, МойРекв будет быстрее чем МойСуперПуперРеквизтДляСправочникаЛевыхЗапчастей... |
|||
6
ДенисЧ
30.06.14
✎
09:47
|
(5) Что за гон???
|
|||
7
SleepyHead
гуру
30.06.14
✎
09:48
|
Модератор пьян с утра и шутит? :)
|
|||
8
vde69
модератор
30.06.14
✎
09:48
|
(6) это не гон, замерь...
|
|||
9
ДенисЧ
30.06.14
✎
09:49
|
(8) В 7ке? Издеваешься? Где я её возьму?
|
|||
10
Адинэснег
30.06.14
✎
09:49
|
клюшки RIP
|
|||
11
vde69
модератор
30.06.14
✎
09:49
|
то что не уложится в индекс будет тормозить.... а индекс для дбф коротенький :)
|
|||
12
ДенисЧ
30.06.14
✎
09:50
|
(11) В индексе нет имени реквизита, каким его показывает 1с...
|
|||
13
AntiBuh
30.06.14
✎
09:55
|
(5) Длина имени у тормозного имя на 2 символа длиннее
|
|||
14
vde69
модератор
30.06.14
✎
09:55
|
(12) ладно, раскули - шутю.... дляна реквизита не зависит, в файле его ID...
по сабжу - смотреть надо, так на вскидку не скажешь :) |
|||
15
AntiBuh
30.06.14
✎
09:55
|
(13) 6 и 8 соотвественно
|
|||
16
vde69
модератор
30.06.14
✎
09:57
|
если серьезно - может влиять только 2 фактора
1. наличие/отсутсвие регистратор 2. количество записей как в таблице в целом так и для конкретных реквизитов. но понять, что конкретно влияет без тестов с копией базы вряд-ли можно :) |
|||
17
vde69
модератор
30.06.14
✎
09:58
|
еще влияет отсутствие явной типизации у реквизита...
|
|||
18
SleepyHead
гуру
30.06.14
✎
10:01
|
ТС, попробуй не через объект с установленной датой читать, как в начале темы, а через ссылку, примерно так:
Элемент = Спр.ТекущийЭлемент(); Значение1 = Элемент.ИмяПериодическогоРеквизита.Получить(нужнаяДата); |
|||
19
AntiBuh
30.06.14
✎
10:02
|
(16) заполнение абсолютно одинаково - в обработке (без регистратора)
количество записей соответственно одинаковое, разве что у тормозных значения чаще меняются (17) типизация в наличии, в топ посте сразу написал |
|||
20
SleepyHead
гуру
30.06.14
✎
10:03
|
(19) у тормозных значения чаще меняются
Вот и ответ. Поиск идет по ид элемента справочника и ид реквизита и дате, соответственно нужно проанализировать больше значений. |
|||
21
AntiBuh
30.06.14
✎
10:04
|
(18) да вот думал что с установленной датой будет быстрее чем для каждого реквизита Получить() юзать
|
|||
22
AntiBuh
30.06.14
✎
10:06
|
(20) ну пишутся-то они одинаково
просто у Рекв1 значение совпадает со старым |
|||
23
AntiBuh
30.06.14
✎
10:22
|
(18) однохренственно
|
|||
24
Злой Бобр
30.06.14
✎
15:51
|
(0) Эх ..., молодежь. Получай прямым запросом и будет тебе счастье.
|
|||
25
AntiBuh
30.06.14
✎
16:10
|
(24) вот пробую
все равно вроде медленновато |
|||
26
Злой Бобр
30.06.14
✎
16:58
|
(25) Ну незнаю, незнаю. Либо у вас сервак медленный, либо просто неумеете готовить.
|
|||
27
ДенисЧ
30.06.14
✎
17:00
|
(25) индекс создай нужный
|
|||
28
Ujcnm99
30.06.14
✎
17:28
|
А Спр это выборка или элемент
Может так попробовать Спр.ИспользоватьДату(Дат, 1) |
|||
29
НеБорис Нуралиев
30.06.14
✎
17:35
|
(25) Бобр прав. Прямыми запросами быстрее на порядок.
|
|||
30
SleepyHead
гуру
30.06.14
✎
18:52
|
(29) Это ж сколько значений надо прочитать, чтобы эффект был заметен пользователю? Разница в 100 раз штука относительная, пользователь в итоге может и не заметить, на самом деле.
На полном серьезе - один раз клиенты (медицина) попросили, чтобы программа работала подольше, хотя бы минуту чтобы отчет формировался, а то как-то несолидно и неудобно перед начальством. Исходно отчет формировался за секунды, пришлось лепить задержки до минуты. |
|||
31
дедушка Вах
30.06.14
✎
19:26
|
может он элемент, или этого ещё не проходили?
|
|||
32
AntiBuh
30.06.14
✎
21:15
|
(26) второе вероятнее :)
(30) вот именно что выборка всего 30-35 значений и получается порядка секунды на каждое |
|||
33
SleepyHead
гуру
01.07.14
✎
06:30
|
А стоит ли из-за 35 секунд искать, в чем проблема? Больше времени потеряешь, а пользователи пусть чай пьют.
Сколько раз в день отчет формируется? |
|||
34
AntiBuh
01.07.14
✎
07:49
|
(33) ну у ползателя вроде еще медленнее
на основании этих данных еще ряд значений заполняется и этого довольно много |
|||
35
НеБорис Нуралиев
01.07.14
✎
16:00
|
(30) Кому-то нужно что бы солидно было, а кому-то что бы работало хорошо.
|
|||
36
SleepyHead
гуру
01.07.14
✎
18:09
|
(35) Одно другому не мешает вообще-то.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |