从“发票和备忘录”屏幕上的“发布操作”上运行代码

时间:2016-05-10 14:35:00

标签: c# acumatica

我有一个自定义项,我想在发布发票时运行一些代码(一个Web服务调用)。在培训中,在我的Graph Extension中,我使用并修改了如下示例,其中UICollectionViewCell方法是我想要在Release Action上运行的方法(最终是RowPersisted事件):

CreateAPBills

不幸的是,这似乎不起作用。我错过了什么?

1 个答案:

答案 0 :(得分:0)

我认为你的惯例已经逆转了。 PXAction成员以大写字母开头,方法以小写字母开头。另外,尝试使您的方法受到虚拟保护,并检查它是否有效。

public PXAction<ARInvoice> Release;
[PXUIField(DisplayName = "Release", MapEnableRights = PXCacheRights.Update, MapViewRights = PXCacheRights.Update)]
[PXProcessButton]
protected virtual IEnumerable release(PXAdapter adapter)
{
    PXGraph.InstanceCreated.AddHandler<ARInvoiceEntry>((graph) =>
    {
        graph.RowPersisted.AddHandler<ARInvoice>((cache, args) =>
        {
            if (args.TranStatus == PXTranStatus.Completed)
            {
                CreateAPBill(cache);
            }
        });
    });

    return Base.release.Press(adapter);
}
相关问题