Difference between revisions of "Cash Book Received Voucher v2"

From AutoCount Resource Center
Jump to navigation Jump to search
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
  +
==Technical Specification==
===Rules in Cash Book Entry===
 
 
# Net Total of the voucher must be positive;
 
# Net Total of the voucher must be positive;
 
# Net Total of the voucher must not be zero.
 
# Net Total of the voucher must not be zero.
 
# Total Payment amounts must be tally with the total amounts in details.
 
# Total Payment amounts must be tally with the total amounts in details.
   
===References of AutoCount Accounting 2.0===
+
==References of AutoCount Accounting 2.0==
 
{{BaseReferenceAC20}}
 
{{BaseReferenceAC20}}
 
'''AutoCount.GL.dll'''
 
'''AutoCount.GL.dll'''
 
<br /><br />
 
<br /><br />
  +
==Sample with data model==
 
===Create new Cash Book <u>Received Voucher</u>===
 
===Create new Cash Book <u>Received Voucher</u>===
 
<syntaxhighlight lang="csharp">
 
<syntaxhighlight lang="csharp">
Line 56: Line 57:
 
</syntaxhighlight>
 
</syntaxhighlight>
   
===Classes of source===
+
===Classes of source (data model)===
 
<syntaxhighlight lang="csharp">
 
<syntaxhighlight lang="csharp">
 
public class CashBookSource
 
public class CashBookSource
Line 99: Line 100:
 
CurrencyRate = 1,
 
CurrencyRate = 1,
 
VoucherNo = "<<New>>",
 
VoucherNo = "<<New>>",
VoucherDate = new DateTime(2017, 11, 27),
+
VoucherDate = new DateTime(2018, 5, 10),
 
};
 
};
   

Latest revision as of 08:29, 7 June 2018

Technical Specification

  1. Net Total of the voucher must be positive;
  2. Net Total of the voucher must not be zero.
  3. Total Payment amounts must be tally with the total amounts in details.

References of AutoCount Accounting 2.0

AutoCount.Accounting.dll
AutoCount.Accounting.UI.dll
AutoCount.dll
AutoCount.MainEntry.dll
AutoCount.UI.dll
AutoCount.GL.dll



Sample with data model

Create new Cash Book Received Voucher

internal void NewReceivedVoucher(UserSession userSession, CashBookSource source)
{
    AutoCount.GL.CashBook.CashBookCommand cmd =
        AutoCount.GL.CashBook.CashBookCommand.Create(userSession, userSession.DBSetting);
    AutoCount.GL.CashBook.CashBook doc = cmd.AddNew(AutoCount.GL.CashBook.CashBookType.CashReceipt);
    AutoCount.GL.CashBook.CashBookPaymentDetail payment = null;
    AutoCount.GL.CashBook.CashBookDetail cbdtl = null;

    doc.ReceiveFrom = source.From;
    doc.Description = source.Description;
    doc.CurrencyCode = source.CurrencyCode;
    doc.CurrencyRate = source.CurrencyRate;
    doc.DocNo = source.VoucherNo;
    doc.DocDate = source.VoucherDate;

    foreach (ReceivedDetail pay in source.Payments)
    {
        payment = doc.AddPaymentDetail();
        payment.PaymentMethod = pay.PaymentMethod;
        payment.ChequeNo = pay.ChequeNo;
        payment.BankCharge = pay.BankCharge;
        payment.PaymentAmount = pay.Amount;
    }

    foreach (CashBookDetail dtl in source.Details)
    {
        cbdtl = doc.AddDetail();
        cbdtl.AccNo = dtl.Account;
        cbdtl.Description = dtl.Description;
        cbdtl.Amount = dtl.Amount;
        cbdtl.TaxType = dtl.GSTCode;
        cbdtl.InclusiveTax = dtl.Inclusive;
    }

    try
    {
        doc.Save();
        //log success
    }
    catch (AutoCount.AppException ex)
    {
        //log ex.Message
    }
}

Classes of source (data model)

public class CashBookSource
{
    public string From { get; set; }
    public string Description { get; set; }
    public string CurrencyCode { get; set; }
    public decimal CurrencyRate { get; set; }
    public string VoucherNo { get; set; }
    public DateTime VoucherDate { get; set; }
    public List<ReceivedDetail> Payments { get; set; } = new List<ReceivedDetail>();
    public List<CashBookDetail> Details { get; set; } = new List<CashBookDetail>();
}

public class ReceivedDetail
{
    public string PaymentMethod { get; set; }
    public string ChequeNo { get; set; }
    public decimal BankCharge { get; set; }
    public decimal Amount { get; set; }
}

public class CashBookDetail
{
    public string Account { get; set; }
    public string Description { get; set; }
    public decimal Amount { get; set; }
    public string GSTCode { get; set; }
    public bool Inclusive { get; set; } = false;
}

Implementation

public void MainEntry(AutoCount.Authentication.UserSession userSession)
{
    CashBookSource newCB = new CashBookSource()
    {
        From = "KENNY LEE",
        Description = "VEHICLE SOLD",
        CurrencyCode = "MYR",
        CurrencyRate = 1,
        VoucherNo = "<<New>>",
        VoucherDate = new DateTime(2018, 5, 10),
    };

    newCB.Payments.Add(new ReceivedDetail()
    {
        PaymentMethod = "CASH",
        Amount = 5000
    });

    newCB.Details.Add(new CashBookDetail(){ Account = "200-6000", Description = "ASSET PURCHASED VALUE",    Amount =  60000 });
    newCB.Details.Add(new CashBookDetail(){ Account = "200-6005", Description = "ACCUMULATED DEPRECIATION", Amount = -50000 });
    newCB.Details.Add(new CashBookDetail(){ Account = "900-1050", Description = "LOSS ON SOLD",             Amount = -5000 });

    NewReceivedVoucher(userSession, newCB);
}

ProgCBReceivedv2.PNG



See Also

Go to menu

IconAC81.png Go to top
ProgrammerGo.jpg Resources For AutoCount Software Developers