Имя: Пароль:
1C
1С v8
Долгое открытие формы элемента справочника номенкатуры из-за метода Обновить()
, ,
0 Jackman
 
21.10.11
19:35
Начал разбираться с причинами очень долгого открывания формы элемента справочника "Номенклатура", и обнаружил, что виною оказался метод Обновить() в процедуре ПриИзмененииДанных().

Из-за чего этот метод мог так тормозить? Он отрабатывал 10-15 секунд. В это времы значительно увеличивалась загрузка проца, одно из ядер выдавало 100% загрузку.
1 DrShad
 
21.10.11
19:37
а у тебя при открытии происходит изменение данных?
2 shuhard
 
21.10.11
19:38
(0) зря ты порнушку храниш в картинках товаров,
она и тормозит
3 Jackman
 
21.10.11
19:38
По крайней мере процедура ПриИзмененииДанных() срабатывает
4 zag2art
 
21.10.11
19:39
(0) в каких-то старых релизах УПП была ошибка в логике и при открытии формы в базе искались ссылки на нее.
5 DrShad
 
21.10.11
19:39
а дальше ковырять замер не стал?
6 Jackman
 
21.10.11
19:39
(2) Вот и у меня подозрение на картинки номенклатуры, которые отображаются в форме элемента справочника.
7 DrShad
 
21.10.11
19:40
у тя там может в обновление отображения хрен знает что напихано
8 Jackman
 
21.10.11
19:40
Я закоментировал строку - форма открывается за 1-2 секунды вместо 15.
9 DrShad
 
21.10.11
19:43
(8) продолжай в том же духе и будет тебе счастие, в конфе еще много срочек которые можно закомментить
10 Jackman
 
21.10.11
19:44
(7) Сама процедура ПриОтрытии() работает быстро, ОбновлениеОтображения() тоже не тупит. ПРоблема в процедуре:



Процедура ПриИзмененииДанных()
   
   ПрочитатьЗаполнитьСвойстваИЗначения();    
   ПрочитатьЗаполнитьКатегории();    
   УстановитьФлагФормироватьНаименованиеПолноеАвтоматически();
   УстановитьДоступность();

   Обновить(); //ВОТ тут    
   
КонецПроцедуры



11 Jackman
 
21.10.11
19:44
Просто не могу понять, что ж она такое ужасное делала...
12 DrShad
 
21.10.11
19:45
пипец...
13 Jackman
 
21.10.11
20:06
(12) Риторический комментарий или что-то конкретное? :)
14 DrShad
 
21.10.11
20:08
(13) риторический - ибо тебе объяснять бестолку
15 Jackman
 
21.10.11
20:08
Кстати, такие жуткие тормоза появились при переходе на MS SQL 2008 R2. Вчера, на MS SQL 2000 форма открывалась за 2-3 секунды.
16 shuhard
 
21.10.11
20:11
(15) регламентные работы на сервере забыли
индекс не обновили
вот и шуткует
17 Jackman
 
21.10.11
20:13
(16) Так только сегодня ночью загрузили базу через 1Сную выгрузку на новый сервак под MS SQL 2008 R2. Сервер отработал всего один день.
18 Jackman
 
21.10.11
20:17
(16) На всякий случай сделаю еще тестирование и исправление, потом проверю. Просто думал, может кто встречался с подобным...
19 DrShad
 
21.10.11
20:20
(18) ага ТиИ почаще делай, глядишь что новенькое вылезет
20 Jackman
 
21.10.11
20:27
(19) Обнадежил :)
21 Jackman
 
21.10.11
20:31
(1) Кстати процедура ПриИзмененииДанных() отрабатывает еще до процедуры ПриОткрытии()
22 Jackman
 
21.10.11
23:37
(16) Сделал реиндексацию - не помогло
Основная теорема систематики: Новые системы плодят новые проблемы.