是否可以调用方法库.Persist() 同时在 Graph Extended 上执行 Persist() 的覆盖



我正在尝试覆盖扩展的图形上的 Persist 方法以删除对原始方法的验证,但我无法调用实际将数据保存到扩展图中的数据库的base.Persist()方法。这是我到目前为止得到的:

1(我已经创建了图形扩展及其覆盖方法

public class POReceiptEntryExt : PXGraphExtension<POReceiptEntry>
{
public delegate void PersistDelegate();
[PXOverride]
public void Persist(PersistDelegate baseMethod)
{
//baseMethod(); base method is commented so the base.Persist() is not actually happening
//code without the validation I don't want here
base.Base.Persist(); //if I add this part the code enters in a endless loop
Base.poLinesSelection.Cache.Clear();
Base.openOrders.Cache.Clear();
}
}

有人可以帮我解决这个问题。

以下博客文章中的最后一个示例演示了如何在 PXGraphExtension 中调用 PXGraph.Persist(( 以避免图形的重写 Persist 方法中的逻辑。

https://asiablog.acumatica.com/2017/02/override-static-method.html

如博客文章中所述 - 除非有必要,否则应避免使用此方法。

最新更新