我想通過擴展CustTable來使用D365FO中新的'命令鏈'功能。D365FO中的命令鏈(方法環繞)導致'對象未設置爲對象的實例'
我們需要檢查更新方法中的值是否已更改,然後再將其記錄到新表中。
[ExtensionOf(tableStr(CustTable))]
final class CustTable_Extension
{
void update(boolean _updateSmmBusRelTable = true, boolean _updateParty =
true)
{
CustTable custTable_Orig = this.orig();
boolean hasChanged = this.CreditMax != custTable_Orig.CreditMax;
next update(_updateSmmBusRelTable, _updateParty);
if(hasChanged)
{
//do something
}
}
}
但是,當運行此代碼時,我們得到「對象未設置爲對象的實例」錯誤。發生錯誤是因爲'this'對象爲空。調用「next update(_updateSmmBusRelTable,_updateParty);」時也會出現同樣的錯誤。
documentation指出:「這允許在不需要使用事件處理程序的情況下擴展公共方法和受保護方法的邏輯,當您包裝方法時,還可以訪問其他公共和受保護的方法以及類的變量。
任何想法?
我在應用PU10後做了一個完整的構建。我也剛剛做了另一個完整的構建,只是爲了仔細檢查,仍然得到相同的錯誤。 – AinsleyJ
您是否嘗試使用「構建相關軟件包」複選框來激活您的軟件包?聽起來很奇怪,但它應該以這種方式工作。 –