|
Странное поведение &Перед("ПередЗаписью")
| ☑ |
0
mikecool
13.10.20
✎
10:47
|
Хочу запретить ручное создание контрагентов, использую перехват
&Перед("ПередЗаписью")
Процедура ПередПередЗаписью(Отказ)
бла-бла
Отказ = Истина
срабатывает дважды
1) стек вызовов только ПередПередЗаписью(Отказ = Ложь)
2) стек вызовов ПередЗаписью(ОТказ = Истина) и ПередПередЗаписью(Отказ = Ложь)
все бы ладно, что два раза, но почему во второй раз по стеку не приходит значение отказа?
|
|
1
mikecool
13.10.20
✎
10:49
|
во втором случае стек вообще прикольно смотрится, после выхода из ПередПередЗаписью:
ПередЗаписью
ПередЗаписью
|
|
2
mikecool
13.10.20
✎
10:59
|
обошел через допсвойства
|
|
3
mikecool
13.10.20
✎
11:24
|
самое веселое, что на первой итерации есть допсвойства объекта, которые установились до записи
а на второй - только те, что могу определить в перехватчике (((
словно они обнуляются
|
|
4
hhhh
13.10.20
✎
11:25
|
(0) а справочник Партнеры тоже есть?
|
|
5
mikecool
13.10.20
✎
11:25
|
(4) нет, это бухня
|
|
6
RomanYS
13.10.20
✎
11:27
|
(3) объект то один и тот же?
|
|
7
mikecool
13.10.20
✎
11:28
|
(6) да
|
|
8
PCcomCat
13.10.20
✎
14:23
|
(0) А расширение одно?
|
|
9
hhhh
13.10.20
✎
14:48
|
(5) ну, часто бывает в справочниках 2 раза записать. Например, чтобы указывать владельца у подчиненного справочника. Например, номенклатура и единица измерения.
|
|
10
youalex
13.10.20
✎
14:59
|
+ ПередЗаписью() могли использовать чтобы перехватить это событие (установив Отказ = Истина) , задать какой-нибудь вопрос, и программно вызвать Записать() (или не вызвать)
|
|
11
hhhh
13.10.20
✎
15:04
|
(0) да, лучше делайте
&После("ПередЗаписью")
потому что в других ПередЗаписью кто-то спокойно может поставить Отказ = Ложь;
поэтому важно, чтобы ваша процедура выполнялась потом.
|
|