|
18.09.2020, 16:18 | #1 |
Участник
|
Идентификация иерархических таблиц в методах таблиц-родителей
dax2012
Таблица AgreementLineQuantityCommitment наследник от AgreementLine Вызывается метод AgreementLineQuantityCommitment.validateWrite() В этой таблице этого метода нет, поэтому вызывается метод таблицы-родителя. Там идет вызов avl = PdsApprovedVendorListCheck::newFromTable(this); Ну, и внутри этого метода идентифицируется таблица через обычный switch X++: switch (_buffer.TableId) { case tableNum(AgreementLine): default : throw error(strfmt("@PRO1805",tableid2name(_buffer.TableId))); } При этом при работе "вручную" (на клиенте, на сервере, с CIL, без CIL) - никаких проблем. Только и исключительно при пакетной обработке. CIL пересобирал, AOS перезагружал В данном конкретном случае понятно, что можно просто дописать нужный case. Вопрос в том, "почему"? Т.е. в каких случаях, какой именно TableId будет идентифицироваться? В чем причина проблемы? Что могло спровоцировать такое поведение?
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
|
|