07.11.2018, 15:54 | #1 |
Участник
|
D365FO: Inheritance + Extensions + RealTime
Есть 8.0 PU15. Переношу overlaid-решение на extensions.
В классе InventMovement был кастом-метод, который был перекрыт в наследниках (InventMov_Purch) Я создал extensions к этим методам и ожидаю, что в real-time вызовется нужный extension: X++: [ExtensionOf(classStr(InventMovement))] final class InventMovementAQM_Extension { boolean AQMmustUpdateBatchInfo() { return false; } } [ExtensionOf(classStr(InventMov_Purch))] final class InventMov_PurchAQM_Extension { boolean AQMmustUpdateBatchInfo() { return true; } } X++: [ExtensionOf(tableStr(InventBatch))] final class InventBatchAQM_Extension { public void initFromInventMovement(InventMovement _inventMovement, InventTrans _inventTrans) { next initFromInventMovement(_inventMovement, _inventTrans); if (_inventMovement.AQMmustUpdateBatchInfo()) { // blablabla } } Если сделать явное преобразование X++: InventMov_Purch invMov;
invMov = _inventMovement;
if (invMov.AQMmustUpdateBatchInfo())
{
} Как Вы считаете - это баг? В 8.1\8.1.1\8.1.2 система ведет себя также? |
|
Теги |
chain of command, d365fo |
|
|