首页 > 解决方案 > 在网格单元格、网格行、表单视图和保存时引发验证异常的最佳方法是什么?

问题描述

在网格单元格、网格行、表单视图和保存时引发验证异常的最佳方法是什么?

对于字段级别,我将 fieldVerifying 并引发 PropertySetException 它在带有红色标记的字段上显示异常。在保存句柄 RowPersisting 事件时,如果任何验证失败,它会引发异常,它将显示警报消息,但不会显示在单元格或行或字段上。这是处理验证异常的好方法吗?您可以建议任何处理验证异常的击球手方法吗?

我们是否应该将验证异常放入 RowPersisting(以避免错误的数据保存)以及 FieldVerifying 中?

标签: acumaticaacumatica-kb

解决方案


您可以使用cache.RaiseExceptionHandling而不是在 RowPersisting 事件中引发异常来突出显示带有错误符号的字段。您还可以通过指定错误级别来控制错误符号出现的位置,如下所示: sender.RaiseExceptionHandling<DAC.field>(e.Row, sender.GetValueExt<DAC.field>(e.Row), new PXSetPropertyException(message, PXErrorLevel.Error));

PXErrorLevel.Error 将在字段上设置错误符号,PXErrorLevel.RowError 将用错误符号标记网格中的整行。

根据 UI 要求,您可以将验证保留在 FieldVerifying 上,也可以同时进行 FieldVerifying 和 RowPersisting


推荐阅读