Имя: Пароль:
1C
1С v8
УПП. Постоянно вызывается ОбновлениеОтображения()
0 Dirk Diggler
 
01.12.11
13:20
Сабж. открыт док "заказ поставщику", но форма неактивна, я работаю в форме списке документов. Курсор ползает как черепаха. посмотрел отладчиком - каждый раз, когда я перехожу на новую строку в списке доков, вызывается  ОбновлениеОтображения() открытой в фоне формы заказа. как понять почему?
1 Dirk Diggler
 
01.12.11
13:26
если что, версия упп 1.3.16.1, платформа - последний релиз 8.13
2 эцп
 
01.12.11
13:34
(0) Доработки есть?

А если попробовать закомментировать процедуры типа *ПриВыводеСтроки?
3 Dirk Diggler
 
01.12.11
13:35
есть доработки формы заказа. форму списка не дорабатывал, а срабатывает именно при переводе курсора/щелчке мышью по форме списка.
4 Fish
 
гуру
01.12.11
13:43
Типовая Управление производственным предприятием, редакция 1.3 (1.3.16.1)
Форма списка "ЗаказаПоставщику", Открыл док, хожу по списку, никакого ОбновлениеОтображения() открытой в фоне формы заказа не наблюдается :)))
5 Fish
 
гуру
01.12.11
13:44
(4) "форму списка не дорабатывал" - может кто-то другой дорабатывал? :))
6 Dirk Diggler
 
01.12.11
14:25
(5) нет, кроме меня никто. куды копнуть-то? что должно измениться, чтобы вызвалось ОбноылениеОтображения?
7 Dirk Diggler
 
01.12.11
14:26
как бе проблема в том, что ОбновлениеОтображения - первое, что вызывается после клика мышкой. вот в чем странность.
8 Dirk Diggler
 
01.12.11
14:27
ОбновлениеОтображения() вызывается даже после клика на главное меню. Это норма?
9 Dirk Diggler
 
01.12.11
14:43
аппп. С доком заказпокупателя в норме всё. форму списка сейчас подгрузил из типовой - та же бнопня.
10 hhhh
 
01.12.11
14:46
(9) в форме списка вообще юзер задает периодичность обновления формы. ОН может там поставил 1 секунду, вот у тебя форма и обновляется раз в секунду. Против юзера не попрешь.
11 Dirk Diggler
 
01.12.11
14:48
дык обновляется-то форма документа, а не списка....
12 hhhh
 
01.12.11
14:52
ну значит в табличной части документа. Какая разница?
13 Dirk Diggler
 
01.12.11
14:56
(12) Разница в том, что юзер я, и ничего там не задавал. И вообще форма не активна. А всё равно обновляется на любой клик мышки, даже в главном меню.
14 vmv
 
01.12.11
15:03
Варианты

1. В обработчике ПриВыводеСтроки() - "тяжелый" код, модифицирущий нечто на форме(возможно рющки, побрябукушки) с вызовом обновления.

2. В обработчике ПриАктивизацииСтроки() - "тяжелый" код, ...тоже самое

3. Обработчики оповещеия формы принимают нечто из приложения или других сеансов и реагируют с обновление формы

4. Форму писала гимназистка и ей было приятно делать переопределение реквизитов формы просто потому, что так красивее код, почти как ямб.
15 vmv
 
01.12.11
15:04
эээ, если это управлямая форма - то запрос списка желательно посмотреть.

уся
16 Dirk Diggler
 
01.12.11
15:04
форма обычная
17 Dirk Diggler
 
01.12.11
15:07
(14) 1,2) - я отключил всё, что внес руками.
18 Dirk Diggler
 
01.12.11
15:08
при вызове обновлениеотображения() связано со значением в свойстве ЭтаФорма.модифицированность ?
19 Dirk Diggler
 
01.12.11
15:39
загрузил форму дока из типовой, заработало. подробный отчет о сравнении объекта содержал только закомментированный код и вот это

       - Диалог
           - ОсновнаяПанель Изменено
               При смене страницы
               - Различаются значения
               - Страница[1] Товары - Товары
                   - Товары Изменено
                       При получении данных
                       - Различаются значения
               - Страница[2] Материалы - Материалы
                   - Материалы Изменено
                       При получении данных
                       - Различаются значения
               - Страница[4] Тара - Тара
                   - ВозвратнаяТара Изменено
                       При получении данных
                       - Различаются значения
20 эцп
 
01.12.11
23:36
(19) Видимо у тебя в процедурах информация в ячейки выводится способом:

ОформлениеСтроки.Ячейки.<ИмяЯчейки>.Значение = <Твое рассчитанное значение>;

а следует писать так:

ОформлениеСтроки.Ячейки.<ИмяЯчейки>.УстановитьТекст(СокрЛП(<Твое рассчитанное значение>));

В первом случае изменяется содержимое табличной части (данные), и 1С вызывает ОбновлениеОтображения()
P.S. Во втором случае изменяется представление данных
21 Dirk Diggler
 
02.12.11
08:32
(20) это конечно может быть, но я ведь закомментил ВСЕ строки, которые дописал сам. в т.ч. все, что касается приполученииданных и привыводестроки
22 Cyberhawk
 
02.12.11
09:33
(19) обработчик "ПриПолученииДанных" в какой форме (твоя или типовая) есть?
23 Dirk Diggler
 
02.12.11
17:59
в моей, но пустой.
24 Dirk Diggler
 
02.12.11
18:00
вот такой:
       Изменено: 1678 - 1678
           < "···  //этаформа"
           > ""
           Объект присутствует только в основной конфигурации: 3305 - 3320
           ""
           ""
           "// DIRK ON"
           "Процедура ТоварыПриПолученииДанных(Элемент, ОформленияСтрок)"
           "·"
           "·//Для каждого ОфСтрок Из ОформленияСтрок Цикл"
           "·//·"
           "·//·Если Вспомогательный.ПолучитьВесСтрокиДокумента(ОфСтрок.ДанныеСтроки) <= 0 тогда"
           "·//··ОфСтрок.Цветфона = WebЦвета.Розовый;"
           "·//·КонецЕсли"
           "·//·"
           "·//КонецЦикла; "
           "·"
           "КонецПроцедуры"
           ""
           "// DIRK OFF"
25 disk-2008
 
02.12.11
18:28
(1)У меня в типовой 1.3.16.1  и платформа 8.2.13.219 - нормально работает.
26 Cyberhawk
 
03.12.11
21:51
(21) а теперь у элемента формы "Страница[1](Товары)" убери обработчик "При получении данных" и проверь, будет ли срабатывать обновление отображения формы документа при щелканьи на главном меню. Проверь с активной вкладкой "Товары", затем со вкладкой "Тара".