|
Вопрос по быстродействию системы | ☑ | ||
---|---|---|---|---|
0
mzelensky
06.09.11
✎
14:29
|
Еще раз здрасти!
Интересует следующий момент: перебираю справочник номенклатуры (в принципе любой справочник) и сравниваю значения его реквизитов с эталонными (ну скажем из файла, но это не важно), так вот лучше работать с ссылкой на элемент справочника или с объектом элемента (разумеется если нужно все-таки поменять значение реквизита, то тогда однозначно получаем объект) ??? Т.е. на сколько идет разница в быстродействии между работой с ссылкой и с объектом??? П.С. платформа 8.1 |
|||
1
mirosh
06.09.11
✎
14:30
|
(0) С ссылкой работай. Лучше получи все нужные тебе реквизиты в запросе. запрос, естественно, не в цикле
|
|||
2
mzelensky
06.09.11
✎
14:33
|
(1) не, там циклом не получится, я получаю ссылку через "справочники.Номенклатура.найтипокоду()", а потом уже если надо получаю объект из нее.
Просто сперва сделал работу через "объект" - объект получался сразу из ссылки в любом случае. В этом варианте загрузка занимает около 3 минут. Потом сделал сравнение по ссылке и объект получаю ток если его НУЖНО получить, т.е. изменить какой-то реквизит. По моей логике скорость работы должна была увеличиться...но на практике загрузка прошла примерно за теже 3 минуты |
|||
3
H A D G E H O G s
06.09.11
✎
14:37
|
(2) Все правильно.
|
|||
4
H A D G E H O G s
06.09.11
✎
14:38
|
(2) Когда ты из ссылки считывает реквизит - платформа считывает весь объект.
|
|||
5
mzelensky
06.09.11
✎
14:40
|
(3) т.е. можно не заморачиваться с этими условиями и получать "объект" сразу же, а потом с ним и работать?
|
|||
6
H A D G E H O G s
06.09.11
✎
14:40
|
(5) Можно получать нужное запросом.
|
|||
7
H A D G E H O G s
06.09.11
✎
14:42
|
(5) Вернее даже - сравнивать в запросе, на выходе имея табличку объектов которые надо изменить.
|
|||
8
mzelensky
06.09.11
✎
14:42
|
Не красиво получится!
я обхожу файл ХМЛ, там прописаны реквизиты справочника. Считываю последовательно значения из файла и сравниваю их с уже имеющимися данными в справочнике. Чет мне кажется засовывать туда ЗАПРОС будет как-то криво |
|||
9
H A D G E H O G s
06.09.11
✎
14:46
|
(8) Обойди тысяч 10 элементов справочника сохрани в ТЗ, ТЗ засунь в запрос, сравни, получи на выходе обновляемые элементы, из ТЗ заполни их новые реквизиты, повтори.
|
|||
10
H A D G E H O G s
06.09.11
✎
14:46
|
Че не пацан штоле?
|
|||
11
mzelensky
06.09.11
✎
14:49
|
(9) и ты думаешь это будет быстрее???
|
|||
12
H A D G E H O G s
06.09.11
✎
14:50
|
(11) Конечно.
|
|||
13
Amiralnar
06.09.11
✎
14:51
|
Я знаю, что будет быстрее
|
|||
14
Дикообразко
06.09.11
✎
14:51
|
(12) update не хватает?
|
|||
15
H A D G E H O G s
06.09.11
✎
14:53
|
(14) За update-ами ходите в ADO.
|
|||
16
H A D G E H O G s
06.09.11
✎
14:53
|
(14) Пиривет.
|
|||
17
John83
06.09.11
✎
14:54
|
вопрос на засыпку
Объект = Ссылка.ПолучитьОбъект(); Сообщить(Объект); какие данные будут во время Сообщить() читаться? |
|||
18
H A D G E H O G s
06.09.11
✎
14:57
|
(17) Никаких.
|
|||
19
mzelensky
06.09.11
✎
15:00
|
(12) ладно, подумаю :(
|
|||
20
Дикообразко
06.09.11
✎
15:00
|
(16) ага... и тебе :)
|
|||
21
mzelensky
06.09.11
✎
15:01
|
(12) и как думаешь, на 10 тысячах на сколько секунд выигрыш будет ?
|
|||
22
H A D G E H O G s
06.09.11
✎
15:07
|
(21) От 0 минут до 2 минут 45 секунд.
|
|||
23
H A D G E H O G s
06.09.11
✎
15:07
|
(21) Смотря сколько данных обновляется.
|
|||
24
Дикообразко
06.09.11
✎
15:12
|
(23) мне кажется там больше времени на чтения файла уйдет
|
|||
25
mzelensky
06.09.11
✎
15:18
|
Да там данные обновляются довольно редко
|
|||
26
mzelensky
06.09.11
✎
15:36
|
мне кажется лучше уменьшить количество данных в самом файле.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |