AP Credit Note API v2: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 1:
 
==Technical Specification==
#'''Net Total''' is a read-only field that is calculated from the total amount of detail (APCNDTLEntity).
#Net Total must be positive value
#'''Knockoff Total Amount''' must be equal or smaller than Net Total
 
==References of AutoCount Accounting version 2.0==
Line 56 ⟶ 59:
 
===Edit with knockoff AP Invoice===
====Load AP C/N with ''Document No''====
<syntaxhighlight lang="csharp">
public void Edit(AutoCount.Authentication.UserSession userSession)
Line 77 ⟶ 81:
doc.Reason = "Pricing Adjustment";
doc.SupplierCNNo = "DSC-00015";
doc.SupplierInvoiceNo = "BIL-00101";
 
//Default available values: "PURCHASE", "GENERAL"
//Note that user is able to change the above values
//that is maintained in General Maintenance > Journal Type Maintenance
doc.JournalType = "PURCHASE";
 
//Default available values: "DISCOUNT", "RETURN"
//Note that user is able to change the above values
doc.CNType = "RETURN";
 
dtl = doc.NewDetail();
dtl.AccNo = "520-0000";
dtl.Description = "Return of Item A";
dtl.Amount = 50.00M;
 
//Knockoff AP Invoice or AP Debit Note
//"PI-00001" is AP Invoice Document Number
doc.KnockOff(AutoCount.Document.DocumentType.APInvoice, "PI-00001", 50M);
 
try
{
cmd.SaveAPCN(doc, userSession.LoginUserID);
//Log success
AutoCount.AppMessage.ShowMessage($"New ARCN '{doc.DocNo}' is Created.");
}
catch (AutoCount.AppException ex)
{
//Log fail
AutoCount.AppMessage.ShowMessage("Fail to create new ARCN.\n" + ex.Message);
}
}
</syntaxhighlight>
 
====Load APCN with ''SupplierCNNo''====
<syntaxhighlight lang="csharp">
public void EditWithSupplierCreditNoteNo(AutoCount.Authentication.UserSession userSession)
{
string supplierCNNo = "DSC-00015";
string creditorCode = "400-X001";
 
AutoCount.ARAP.APCN.APCNDataAccess cmd = AutoCount.ARAP.APCN.APCNDataAccess.Create(userSession, userSession.DBSetting);
AutoCount.ARAP.APCN.APCNEntity doc = cmd.GetAPCN(supplierCNNo, creditorCode);
AutoCount.ARAP.APCN.APCNDTLEntity dtl = null;
 
if (doc == null)
{
//log unable to load "CN-00001", or not found
return;
}
 
//Clear all details of this document
doc.ClearDetails();
doc.ClearKnockOff();
 
doc.DocDate = new DateTime(2018, 6, 21);
doc.Description = "Discount";
doc.Reason = "Pricing Adjustment";
doc.SupplierCNNo = supplierCNNo;
doc.SupplierInvoiceNo = "BIL-00101";
 
Line 121 ⟶ 184:
{
cmd.CancelAPCN(docNo, userSession.LoginUserID);
//cmd.CancelAPCN("DSC-00015", "400-X001", userSession.LoginUserID); //Cancel with SupplierCNNo
AutoCount.AppMessage.ShowMessage($"ARCN 'docNo' is Created.");
}