Имя: Пароль:
1C
1С v8
При изменении организации подписка ПриУстановкеНовогоНомера срабатывает, без изменения нет
0 NikP123
 
24.04.19
19:28
Как это устроено? Почему подписка на событие ПриУстановкеНовогоНомера() срабатывает, если в ранее сохраненном документе сменить организацию, но если ее не изменять, а изменить любой другой реквизит, то не срабатывает? Вроде в коде модуля объекта документа это нигде не прописано.
ERP
1 palsergeich
 
24.04.19
19:35
(0) на сколько я помню - это делается в других подписках, потому что при изменении организации - должен сменться префикс.
2 NikP123
 
24.04.19
19:40
(1) да, префикс изменяется при смене организации. Просто я думаю, откуда средствам платформы знать, что префикс берется именно из определенного реквизита справочника Организации, и поэтому платформа знает, что надо вызвать обработчик подписки..
Но если вы говорите, что для этого задействованы другие подписки, то буду искать
3 ЧессМастер
 
24.04.19
19:48
(0) "Почему подписка на событие ПриУстановкеНовогоНомера() срабатывает, если в ранее сохраненном документе сменить организацию"

Потому что при смене организации меняется номер. Сменился номер - сработала подписка.

При изменении другого реквизита номер не меняется. А раз так то и подписка не должна срабатывать.

(2)
"откуда средствам платформы знать, что префикс берется именно из определенного реквизита справочника Организации, и поэтому платформа знает, что надо вызвать обработчик подписки"

Причем тут платформа ? Подписка это конфигурация а не платформа. Сменили организацию - сменился номер - отработала подписка.
4 NikP123
 
24.04.19
19:57
(3) Номер не меняется при смене организации до записи документа
5 palsergeich
 
24.04.19
19:58
(3) Не совсем так, ПриУстановкеНовогоНомера вызывается при новом объекте и если этот обработчик вызвали мануально.
Это происходит в подписках подсистемы ПрефиксацияОбъектов.
Там сравниваются значения в БД и объекта до записи и если есть изменения, то вызывается событие установки нового кода
6 NikP123
 
24.04.19
20:02
(5) да нашел, в подписке перед записью при определенных условиях стирается номер, поэтому потом и срабатывает ПрРиУстановкеНовогоНомера
7 palsergeich
 
24.04.19
20:04
(6) ЕЕсли посмотришь подсистемы, в которые входит эта подписка - скорее всего это ПрефиксацияОбъектов.
2 + 2 = 3.9999999999999999999999999999999...