微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在2020R2中创建销售订单付款

如何解决在2020R2中创建销售订单付款

我正在升级一个定制,该定制能够通过代码在销售订单上创建付款。在2020R2之前,我可以使用......

PXGraph graph;
orderEntry.CreatePaymentProc(orderEntry.Document.Current,out graph);
ARPaymentEntry paymentEntry = (ARPaymentEntry)graph;
ARPayment payment = paymentEntry.Document.Select();

payment.PaymentMethodID = ...;
payment.CuryOrigDocAmt = ...;
payment.ExtRefNbr = ...;
payment.CashAccountID = ...;

paymentEntry.Document.Update(payment);
paymentEntry.Actions.PressSave();

从Acumatica 2020R2开始,CreatePaymentProc不再是SOOrderEntry方法

如何获得相同的结果?

解决方法

您可以在扩展CreatePaymentExt类中找到 Acumatica 2020R2 版本中为销售订单记录创建付款的所有方法和操作。

Acumatica 2020R2 起,CreatePaymentProc已更改CreatePayment类上的CreatePaymentExt方法。

,

这里的完整解决方案涉及几个附加的方法调用...

SOOrder order = orderEntry.Document.Current;
CreatePaymentExt createPaymentExt = orderEntry.GetExtension<CreatePaymentExt>();
SOQuickPayment payment = createPaymentExt.QuickPayment.Current;
createPaymentExt.SetDefaultValues(payment,order);

payment.PaymentMethodID = ...;
payment.CuryOrigDocAmt = ...;
payment.ExtRefNbr = ...;
payment.CashAccountID = ...;

ARPaymentEntry paymentEntry = createPaymentExt.CreatePayment(payment,order,ARPaymentType.Payment);
paymentEntry.Save.Press();

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。