Имя: Пароль:
1C
1С v8
Как найти гадину, которая изменяет реквизит в форме?
0 toypaul
 
гуру
03.03.16
15:58
Не могу найти в управляемой форме ("миллион" строк кода) в каком месте меняется реквизит. Реквизит изменяется после изменения другого реквизита, но в точке останова обработчика ПриИзменении реквизит уже изменен.
1 Господин ПЖ
 
03.03.16
16:00
брутал-форс тебе поможет

комменти куски кода и смотри где отвалится
2 Pro-tone
 
03.03.16
16:03
(0) остановка по условию тебе поможет
3 toypaul
 
гуру
03.03.16
16:04
(2) как это оно мне поможет. я даже не знаю куда точку останова поставить. это же не С++ где можно поставить точку останова на изменение данных
4 sash-ml
 
03.03.16
16:04
а в табло добавить?
5 silent person
 
03.03.16
16:05
реквизит программно меняется ?
замер производительности и поиск в результате замера по имени реквизита
6 Pro-tone
 
03.03.16
16:06
(0) был однажды такой опыт в ЕРП - тоже менялось значение реквизита, отладчик показывает, что он не меняется, а в ИБ пишется измененный реквизит. Виновника нашел - в форму было добавлено программное условное оформление, оно меняло реквизит минуя код
7 toypaul
 
гуру
03.03.16
16:06
(4) чо в табло добавить?
8 toypaul
 
гуру
03.03.16
16:07
(5) ммм. идея конечно. но блин есть вариант, что он меняется не напрямую, а через переменную. там какие-то гребаные обработчики срабатывают до изменения исходного реквизита!
9 Pro-tone
 
03.03.16
16:08
(3) визуально разбей главный обработчик на части если он большой, поставь несколько точек останова с условиями
10 sash-ml
 
03.03.16
16:09
(7) реквизит естественно,
11 toypaul
 
гуру
03.03.16
16:10
(10) и чо?
12 toypaul
 
гуру
03.03.16
16:11
ну идея конечно с замером ... хотя бы увижу куда точку поставить
13 vde69
 
03.03.16
16:14
переименуй реквизит, если меняется в коде - получишь ошибку исполнения
14 toypaul
 
гуру
03.03.16
16:15
(13) да уж ... :)
15 vde69
 
03.03.16
16:16
(14) на тестовой разумеется, и сначала сменить имя элемента формы, если не поможет имя реквизита...

потом вернуть назад...
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.