![]() |
#6 |
Участник
|
Разобрался. Ключевым моментом оказалось использование разработчиками объекта RecordInsertList для вставки запиесй.
Во время разноски используется метод X++: PurchFormLettrer.suspendRecIDs() Вставка происходит след образом - табл. purchParmTable.insert, внутри Insert вызывается метод X++: purchParmSubTable::createFromPurchParmTable(PurchParmTable _purchParmTable, boolean _insert = true) X++: purchParmSubTable.insert() X++: this.insertPurchParmSubTable(purchParmSubTable) Второй раз вызов createFromPurchParmTable (уже с параметром _insert = true) происходит при отработке метода X++: protected void recordInsertListInsert() { recordInsertPurchParmTable.insertDatabase(); recordInsertPurchParmSubTable.insertDatabase(); recordInsertPurchParmLine.insertDatabase(); recordInsertPurchParmLine_Asset.insertDatabase(); this.removeRecIdSuspension(); } X++: recordInsertPurchParmTable.insertDatabase() А происходит повторный вызов из-за того, что у нас включено логирование на таблице purchParmSubTable (на Insert). Как только отключили логирование все заработало. |
|
|
За это сообщение автора поблагодарили: AlGol (1), lev (2), Ivanhoe (3), gl00mie (5), S.Kuskov (3). |
Теги |
ax2009, purchparmsubtable, recid, ошибка |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|