Имя: Пароль:
1C
1С v8
оптимизация открытия формы (а вдруг...)
,
0 z01
 
18.07.13
12:33
ОткрытьФорму("Обработка.ПодборТоваровВДокументПродажи.Форма", ПараметрыФормы, ЭтаФорма, УникальныйИдентификатор);

можно ускорить?
1 mikecool
 
18.07.13
12:34
убрать код из присозданиинасервере, из передоткрытием и из приоткрытии )))
2 Mitriy
 
18.07.13
13:08
+ вообще убрать код из модуля формы и модуля объекта и завершить ускорение удалением всех элементов с формы...
3 Ork
 
18.07.13
13:09
+ (2) Да и саму форму вызывать методом Предупреждение("Hello World!");
4 z01
 
18.07.13
13:12
этим методом даже пустая форма долго вызывается это косяк платформы
5 Cube
 
18.07.13
13:12
(4) Да что ты говоришь...
Долго - это сколько (в секундах)
6 z01
 
18.07.13
13:26
(5)это столько что пользователь сообщает что работать неудобно и старая учетная система работала втрое быстрее как минимум чем это ваше ут11
7 z01
 
18.07.13
13:26
чисто типовая форма открывается 40000 лет
8 Fragster
 
гуру
18.07.13
13:27
у меня тормозит только если сотни/тысячи строк в ТЧ. вот как это ускорить - ХЗ...
9 z01
 
18.07.13
13:28
Элемент.ЛевоеЗначение =    Новый ПолеКомпоновкиДанных(ИмяПоля);

вот результат по замеру производительности
теперь думаю как эту строку переписать или вообще не вызывать
10 z01
 
18.07.13
13:29
(9)точнее это замер по серфингу по форме
а открытие её это тормоза указанного выше метода
под 8.1 такого торможения никогда не было
11 palpetrovich
 
18.07.13
13:30
(8) а если ужать ТЧ до 5-ти строк? как минимум ПриПолученииДанных будет меньше работать
зы: тоже столкнулся с томозами с " сотни/тысячи строк "
12 Fragster
 
гуру
18.07.13
13:31
(11) ее вообще на форме при открытии не видно, да и обработчиков типа ПриПолученииДанных не навешено
13 z01
 
18.07.13
13:39
(9)оказалось что именно "Элемент.ЛевоеЗначение" дает тормоза
прикольно
14 Fragster
 
гуру
18.07.13
13:40
(13) а сколько раз оно вызывается?
15 z01
 
18.07.13
13:40
(13)хотя нет это за все три строки, т.е. всё таки конструктор наверное тормозит )))
16 z01
 
18.07.13
13:41
(14)оно вызывается минимум один раз при каждом перемещении по дереву
17 hhhh
 
18.07.13
13:55
(16) и наверно отбор по этому полю? Приколист.
18 z01
 
19.07.13
18:42
(17) вы таки будете смеяться а я что-то всё таки решил )))

       Если Строка(Элемент.ЛевоеЗначение) = ИмяПоля И ТипЗнч(Элемент) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда
               
           Иначе                            
               
               Элемент.ЛевоеЗначение
               =
               Новый ПолеКомпоновкиДанных(ИмяПоля);                
               
           КонецЕсли;                    
           
       КонецЕсли;
       Если Представление <> Неопределено Тогда
           
           Если Строка(Элемент.Представление) <> Представление Тогда
               
               Элемент.Представление = Представление;
               
           КонецЕсли;
           
       КонецЕсли;
19 z01
 
19.07.13
18:44
и ещё там кучи говн по типу получения объекта когда от него только пару ссылочных реквизитов нужно и т.д. и т.п.
типа обработчиков срабатывающих тогда когда их никто фактически не вызывает
20 z01
 
23.07.13
13:42
(8) кластерный индекс по номенклатуре посмотри