我正在为我的公司开发一个会计第三方C#表单应用程序,它从外部源批量加载付款,原型,我使用excel文件获取实际付款数据。
现在我有IRecievePaymenttoDeposit
,我收到所有未付款的客户参考发票和IInvoiceQuery
我可以获得客户,但这两个查询的参考密钥是什么?
我将获得客户名称,客户ID和发票号码,如何将金额添加到所选付款中。
答案 0 :(得分:0)
要将付款应用于发票,您需要发票的TxnID,该发票的TxnID与发票编号不同。您可以使用发票号来查询发票以获取TxnID。
IInvoiceQuery invQuery = MsgRequest.AppendInvoiceQueryRq();
invQuery.ORInvoiceQuery.InvoiceFilter.ORRefNumberFilter.RefNumberFilter.RefNumber.SetValue(invoiceNumber);
// Use either the full name of the customer or the ListID
invQuery.ORInvoiceQuery.InvoiceFilter.EntityFilter.OREntityFilter.FullNameList.Add(customerName);
invQuery.ORInvoiceQuery.InvoiceFilter.EntityFilter.OREntityFilter.ListIDList.Add(customerid);
获得发票后,您就可以获得TxnID。然后,当您创建ReceivePaymentAdd时,指定TxnID以将付款应用于:
// Create the payment add request
IReceivePaymentAdd pmtAdd = MsgRequest.AppendReceivePaymentAddRq();
// Create the AppliedToTxn request for the payment.
IAppliedToTxnAdd appAdd = pmtAdd.ORApplyPayment.AppliedToTxnAddList.Append();
// Set the invoice TxnID and amount of the payment to apply
appAdd.TxnID.SetValue(invoiceTxnID);
appAdd.PaymentAmount.SetValue(amountToApply);