AR Received Payment: Difference between revisions

no edit summary
mNo edit summary
No edit summary
 
(8 intermediate revisions by the same user not shown)
Line 1:
==Technical Specification==
==Rules in AR Payment==
# Payment '''Knockoff Date''' must be equal or greater than the '''Payment Date'''.
# Payment net total must be greater than 0.
# Payment net total must be the sum of Payment Amount in '''Payment Detail'''
Line 6:
# '''Payment Method''' is created in ''General Maintenance | '''Payment Method Maintenance'''''.
 
==References of AutoCount Accounting version 1.8, 1.9==
{{BaseReferenceAC18}}
'''BCE.AutoCount.ARAP.dll'''
Line 17:
BCE.AutoCount.ARAP.ARPayment.ARPaymentDataAccess cmd = BCE.AutoCount.ARAP.ARPayment.ARPaymentDataAccess.Create(dbSetting);
BCE.AutoCount.ARAP.ARPayment.ARPaymentEntity doc = cmd.NewARPayment();
 
//If you want to set your own Payment Voucher number, uncomment the next linedoc.DocNo, otherwise, the system will use running number.
//doc.DocNo = “RC-0001″;
doc.DebtorCode = "300-A001";
Line 26 ⟶ 27:
paymentDetail.PaymentAmt = 100;
paymentDetail.ChequeNo = "MBB 123456";
 
//Knockoff Invoice
//doc.KnockOff(BCE.AutoCount.Document.DocumentType.ARInvoice, "IV-0001", 100);
 
try
cmd.SaveARPayment(doc, BCE.AutoCount.Authentication.UserAuthentication.GetOrCreate(dbSetting).LoginUserID);
{
cmd.SaveARPayment(doc, BCE.AutoCount.Authentication.UserAuthentication.GetOrCreate(dbSetting).LoginUserID);
BCE.Application.AppMessage.ShowMessage($"Success: {doc.DocNo}");
}
catch (BCE.Application.AppException ex)
{
BCE.Application.AppMessage.ShowMessage(ex.Message);
}
}
</syntaxhighlight>
Line 38 ⟶ 48:
BCE.AutoCount.ARAP.ARPayment.ARPaymentDataAccess cmd = BCE.AutoCount.ARAP.ARPayment.ARPaymentDataAccess.Create(dbSetting);
BCE.AutoCount.ARAP.ARPayment.ARPaymentEntity doc = cmd.GetARPayment("RC-0001");
 
//If doc (arPayment) is null, doc (arPayment) does not exist in AR Payment;
//Then exit this function
Line 68 ⟶ 79:
}
</syntaxhighlight>
 
===Knockoff===
<syntaxhighlight lang="csharp">
doc.KnockOff(knockoff.DocType, knockoff.DocNo, knockoff.Amount, knockoff.Date.Value);
</syntaxhighlight>
See [[AR Received Payment#Create New ARPayment|Example of ARPayment Knockoff]]
<br /><br />
 
Line 116 ⟶ 133:
public string BankChargeBillNoForGst { get; set; }
public string PaymentBy { get; set; }
 
//If this cheque is returned/bounced cheque
//Set the returned/bounced date. Otherwise it is null
Line 155 ⟶ 173:
BCE.AutoCount.ARAP.ARPayment.ARPaymentDataAccess cmd =
BCE.AutoCount.ARAP.ARPayment.ARPaymentDataAccess.Create(dbSetting);
 
//Create a new ARPayment transaction
BCE.AutoCount.ARAP.ARPayment.ARPaymentEntity doc = cmd.NewARPayment();
Line 246 ⟶ 265:
source.PaymentKnockoff.Add(new PaymentKnockoffSource()
{
DocType = PaymentKnockoffSource.ARInvoiceDocType, DocNo = "I-000002", Amount = 70
DocNo = "I-000002",
Amount = 70
});
source.PaymentKnockoff.Add(new PaymentKnockoffSource()
{
DocType = PaymentKnockoffSource.ARInvoiceDocType, DocNo = "I-000003", Amount = 30
DocNo = "I-000003",
Amount = 30
});
 
Line 258 ⟶ 281:
</syntaxhighlight>
----
 
===Example of Foreign Customer and payment in customer currency===
====Test Data Result Screenshot====
Line 293 ⟶ 317:
source.PaymentKnockoff.Add(new PaymentKnockoffSource()
{
DocType = PaymentKnockoffSource.ARInvoiceDocType, DocNo = "I-000017", Amount = 70
DocNo = "I-000017",
Amount = 70
});
source.PaymentKnockoff.Add(new PaymentKnockoffSource()
{
DocType = PaymentKnockoffSource.ARInvoiceDocType, DocNo = "I-000018", Amount = 30
DocNo = "I-000018",
Amount = 30
});
 
Line 304 ⟶ 332:
</syntaxhighlight>
 
<br /><br />
{{SeeAlsoAPIAccount}}
==See Also==
* [[AR Debtor]]
* [[AR Invoice]]
* [[AR Received Payment]]
* [[AR Debit Note]]
* [[AR Credit Note]]
* [[AR Refund]]
* [[AR Deposit]]
* [[AR Deposit - Create New or Update with Refund & Forfeit]]
 
[[Category:Programmer]]
[[Category:API]]