【发布时间】:2019-09-18 11:32:57
【问题描述】:
我需要在采购收据发布后向用户显示一些消息,所以我在已发布字段更新事件中添加了我的代码,我尝试了 PXOperationCompletedException 方法来显示一些消息,但问题是采购收据被释放和库存收据也已创建但未发布。有人可以建议我在购买收据发布后如何显示自定义消息(如弹出窗口)。
public class INReleaseProcessExt : PXGraphExtension<INReleaseProcess>
{
protected void INRegister_Released_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e, PXFieldUpdated BaseEvent)
{
BaseEvent?.Invoke(cache, e);
INRegister row = e.Row as INRegister;
if (row == null)
return;
if (row.OrigModule == "PO")
throw new PXOperationCompletedException("Purchse Receipt is released");
}
}
【问题讨论】:
-
我假设您想要查看的不仅仅是显示过程完成的过程结果?您是否希望显示某种类型的库存收据编号?如果用户正在处理多个 PO 收据会怎样?您的消息会在第一个消息之后停止该过程吗?
-
感谢Brendan的回复,实际上,我在采购收据屏幕上有一个按钮,只有在发布公关后才会启用,这个按钮将创建一些其他带有公关数据的文档,并且必须点击按钮,但有时用户会忘记单击它。所以我想提醒他们点击按钮。不需要显示任何参考编号,我只想显示一条消息,例如“请在继续之前单击按钮”。
-
如果您只处理始终需要的附加步骤怎么办?您应该能够覆盖 POReceiptEntry ReleaseReceipt 来执行此操作
-
实际上,是的,我想只在 PR 发布操作中处理新按钮操作,但 PR 中的按钮是由其他合作伙伴创建的。
-
听起来好像需要始终运行以创建另一个项目并将该进程连接到从 ReleaseReceipt 自动运行。对我来说似乎是一个更可靠的解决方案。用户在实际准备弹出框方面并不是最好的:) 弹出框可能会有点棘手,并且可能会阻止接收过程正确执行(正如您已经以一种方式发现的那样)
标签: acumatica