Имя: Пароль:
1C
1C 7.7
v7: Повторное срабатывание функции в табличной части документа
0 Eeakie
 
09.11.21
09:06
Клюшки, SQL
Есть табличная часть документа с единственным элементом-текстом, на котором висит функция (Сообщить("Блаблабла"); Возврат "";). При открытии документа видим тройное "Блаблабла". При переходе на другую строку обычным одинарным щелком мыши видим двойное "Блаблабла".
Просветите откуда берётся повторное срабатывание?
1 ChMikle
 
09.11.21
09:09
В Процедуре ПриОткрытии()
Что написано ?
2 Eeakie
 
09.11.21
09:10
(1) ПриЗаписиПерепроводить(1); Больше ничего.
3 ChMikle
 
09.11.21
09:11
(2) ищи где эта процедура (бла-бла-бла ) вызывается из кода
4 Eeakie
 
09.11.21
09:14
(3) Закомментил весь код и оставил только эту функцию. С формы убрал всё кроме табличной части, в которой осталась только колонка с этой функцией. Ума не приложу что может вызывать её повторно.
5 ChMikle
 
09.11.21
09:15
(4) в модуле документа не вызывается ?
6 Eeakie
 
09.11.21
09:18
(5) Не вызывается.

Подгрузил МД себе на домашний комп - всё нормально. Может это какой-то косяк терминала?
7 Eeakie
 
09.11.21
09:19
+(6) RDP имел в виду :)
8 ChMikle
 
09.11.21
09:21
если только иммитирует клик по табличной части ....
9 Eeakie
 
09.11.21
09:23
(8) Ну я вот теперь уже на это грешу. Как это можно проверить интересно?
10 Strogg
 
09.11.21
09:25
(8) там же есть стек вызовов. ТАм тоже пусто?
11 Eeakie
 
09.11.21
09:32
(10) Пусто. Просто "Проверка(); Строка 2".
12 Builder
 
09.11.21
09:36
А попробуй в приоткрытии добавить
Форма.ТвойРеквизит.ВыполнятьФормулуТолькоПриИзменении(1)
Вроде она тут тоже задействована.
13 Eeakie
 
09.11.21
09:38
(12) Это не реквизит, а элемент "Текст" с функцией на нём.
14 Strogg
 
09.11.21
09:38
(12) он в (6) написал, что воспроизводится только на терминале. Похоже, дело в нем. Если на иных клиентах будет работать корректно, то точно дело в терминале.
15 Builder
 
09.11.21
09:39
(13) Думаешь к нему нельзя это применить?
16 Eeakie
 
09.11.21
09:40
(15) Окей, сейчас присвою идентификатор и попробую.
17 Eeakie
 
09.11.21
09:42
+(16) Не помогло :\
18 Eeakie
 
09.11.21
09:44
Повесил кнопку на форму с функцией Форма.Обновить(1) нажал и увидел "БлаБлаБла" 6 раз. Что за лишние обновления..
19 HawkEye
 
09.11.21
09:45
(0) при открытии любого документа? а не зависимости от кол-ва строк?
20 Eeakie
 
09.11.21
09:50
(19) Во всех документах такая фигня. При любом количестве строк в ТЧ вылазит двойное БлаБла.
21 Eeakie
 
09.11.21
09:53
Может быть что-то с библиотеками стандартными 1сными?
22 Eeakie
 
09.11.21
10:08
Зашёл на сервер чтобы запустить напрямую, а не через терминал. Такая же ерунда. Форма.Обновить() отрабатывает 6 раз вместо 1 и функции также двоятся.
23 ChMikle
 
09.11.21
10:11
м.б. у тебя на серваке по особеному мышка настроена ?
24 HawkEye
 
09.11.21
10:17
(20) какие еще функции на форме есть?
25 Eeakie
 
09.11.21
10:19
(24) Форма пустая. Только одно текстовое поле под функцию.
26 Eeakie
 
09.11.21
10:20
Накинул кнопку с Форма.Обновить() в справочник, где тоже висят функции. Сузил форму до 6 элементов в списке. Итого 24 обновления вместо 6.
27 trad
 
09.11.21
10:49
отключи ВК
28 Eeakie
 
09.11.21
11:02
(27) По очереди грузились 1cpp и потом formex. Отрубил formex - всё стало нормально. Спасибо :)
29 Eeakie
 
09.11.21
12:58
Разобрался. Надо отключать разрисовку таблиц в формексе и тогда форма не будет дважды перерисовываться. Мда уж.