public void NewARCreditNote(AutoCount.Authentication.UserSession userSession)
{
AutoCount.ARAP.ARCN.ARCNDataAccess cmd = AutoCount.ARAP.ARCN.ARCNDataAccess.Create(userSession, userSession.DBSetting);
AutoCount.ARAP.ARCN.ARCNEntity doc = cmd.NewARCN();
AutoCount.ARAP.ARCN.ARCNDTLEntity dtl = null;
//doc.DocNo = "CN-Test-0025";
doc.DocDate = new DateTime(2018, 6, 5);
doc.Description = "DISCOUNT";
doc.Reason = "Early Payment discount";
doc.OurInvoiceNo = "I-000001";
doc.JournalType = "SALES";
doc.CNType = "DISCOUNT";
dtl = doc.NewDetail();
//Debit A/C (of detail)
dtl.AccNo = "520-0000";
dtl.Description = "DISCOUNT ALLOWED";
dtl.Amount = 10M;
//Knockoff AR Invoice
//If knockoff date is not defined, it follows system settings in Tools | Options
doc.KnockOff(AutoCount.Document.DocumentType.ARInvoice, "I-000001", 10);
try
{
cmd.SaveARCN(doc, userSession.LoginUserID);
//Log success
AutoCount.AppMessage.ShowMessage($"Credit Note {doc.DocNo} Created Successfully.");
}
catch (AutoCount.AppException ex)
{
//Log Failed
AutoCount.AppMessage.ShowMessage(
string.Format("Fail to create new Credit Note.\n{0}", ex.Message));
}
}
public void EditARCreditNote(AutoCount.Authentication.UserSession userSession)
{
AutoCount.ARAP.ARCN.ARCNDataAccess cmd = AutoCount.ARAP.ARCN.ARCNDataAccess.Create(userSession, userSession.DBSetting);
AutoCount.ARAP.ARCN.ARCNEntity doc = cmd.GetARCN("CN-000001");
AutoCount.ARAP.ARCN.ARCNDTLEntity dtl = null;
if (doc == null)
return;
//doc.DocNo = "CN-Test-0025";
doc.DocDate = new DateTime(2018, 6, 5);
doc.Description = "DISCOUNT";
doc.Reason = "Special Discount";
doc.OurInvoiceNo = "I-000001";
doc.JournalType = "SALES";
doc.CNType = "DISCOUNT";
doc.ClearDetails();
dtl = doc.NewDetail();
dtl.AccNo = "520-0000";
dtl.Description = "DISCOUNT ALLOWED";
dtl.Amount = 10M;
//Knockoff AR Invoice
//If knockoff date is not defined, it follows system settings in Tools | Options
doc.KnockOff(AutoCount.Document.DocumentType.ARInvoice, "I-000001", 10);
try
{
cmd.SaveARCN(doc, userSession.LoginUserID);
//Log success
AutoCount.AppMessage.ShowMessage($"Credit Note '{doc.DocNo}' Updated Successfully.");
}
catch (AutoCount.AppException ex)
{
//Log Failed
AutoCount.AppMessage.ShowMessage(
string.Format("Fail to update Credit Note '{0}'.\n{1}", doc.DocNo, ex.Message));
}
}
public void CancelARCreditNote(AutoCount.Authentication.UserSession userSession)
{
string docNo = "CN-000001";
AutoCount.ARAP.ARCN.ARCNDataAccess cmd = AutoCount.ARAP.ARCN.ARCNDataAccess.Create(userSession, userSession.DBSetting);
try
{
cmd.CancelARCN(docNo, userSession.LoginUserID);
AutoCount.AppMessage.ShowMessage($"{docNo} is cancelled.");
}
catch (AutoCount.AppException ex)
{
AutoCount.AppMessage.ShowMessage(ex.Message);
}
}
public void DeleteARCreditNote(AutoCount.Authentication.UserSession userSession)
{
string docNo = "CN-000001";
AutoCount.ARAP.ARCN.ARCNDataAccess cmd = AutoCount.ARAP.ARCN.ARCNDataAccess.Create(userSession, userSession.DBSetting);
try
{
cmd.DeleteARCN(docNo, userSession.LoginUserID);
AutoCount.AppMessage.ShowMessage($"{docNo} is deleted.");
}
catch (AutoCount.AppException ex)
{
AutoCount.AppMessage.ShowMessage(ex.Message);
}
}