【问题标题】:Acumatica - Raise multiple error/ExceptionAcumatica - 引发多个错误/异常
【发布时间】:2021-08-11 01:17:50
【问题描述】:

美好的一天

我试图同时引发多个错误。

示例: 当 Acumatica 在保存过程中发现错误时,它会同时显示所有错误:

我试图在我的销售订单网格上实现同样的目标:

    protected void SOLine_RowPersisting(PXCache cache, PXRowPersistingEventArgs e)
    {
        //logic ...
        if (ShowError)
        {
            string errorMsg = "locationID error msg";
            // The error shows on SOLine.locationID
            cache.RaiseExceptionHandling<SOLine.locationID>(row, row.LocationID, new PXSetPropertyException(errorMsg, PXErrorLevel.Error));
        }
    }

有没有更好的方法来引发异常以实现同时引发多个错误?

【问题讨论】:

    标签: acumatica


    【解决方案1】:

    我使用PXUIFieldAttribute.SetError 方法。它适用于大多数情况,不会引发异常。

    您可以在 RowSelected 方法中放置许多 SetError/SetWarning 调用:

    PXUIFieldAttribute.SetError<DAC.field>(cache, row, "Error Message");
    

    或者您可以在多个 FieldValidating 事件中放置一个。

    【讨论】:

      【解决方案2】:

      FieldValidating 事件是添加这些消息的理想场所。

      【讨论】:

      • 没错,我有一个警告显示在那里,然后在他们保存时出现此错误。
      • 我不确定我是否理解,您试图获得与 Acumatica 相同的结果,因为尝试保存标记了许多错误消息。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-27
      • 1970-01-01
      • 1970-01-01
      • 2018-03-21
      • 2012-02-11
      • 2012-11-18
      • 2020-11-16
      相关资源
      最近更新 更多