【问题标题】:Need to show message after purchase receipt is released购买收据下达后需要显示信息
【发布时间】: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


【解决方案1】:

抛出异常将中止当前操作并显示一条消息。

要在不中止当前操作的情况下显示消息,请使用Ask 方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多