Programmer:Search Sales Invoice (19)

From AutoCount Resource Center
Revision as of 03:40, 11 February 2019 by DanielY (talk | contribs) (Created page with "==References of AutoCount Accounting version 1.8 / 1.9== {{BaseReferenceAC18}} '''BCE.AutoCount.Invoicing.dll''' '''BCE.AutoCount.Invoicing.Sales.dll''' ==Get Single Sale I...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

References of AutoCount Accounting version 1.8 / 1.9

BCE.AutoCount.dll
BCE.AutoCount.CommonAccounting.dll
BCE.AutoCount.MainEntry.dll
BCE.Utils.dll
BCE.Utils.UI.dll
BCE.AutoCount.Invoicing.dll
BCE.AutoCount.Invoicing.Sales.dll

Get Single Sale Invoice DataSet

public DataSet GetInvoiceDocument(string docNo, BCE.Data.DBSetting dbSetting)
{
    BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCommand cmd =
        BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCommand.Create(dbSetting);
    return cmd.LoadData(GetDocKeyByDocNo(docNo, dbSetting));
}

LoadData method of InvoiceCommand requires only DocKey, this method returns DocKey from a DocNo

private long GetDocKeyByDocNo(string docNo, BCE.Data.DBSetting dbSetting)
{
    object obj = dbSetting.ExecuteScalar("SELECT DocKey FROM IV WHERE DocNo=?", docNo);
    return obj == null ? 0 : BCE.Data.Convert.ToInt64(obj);
}

Extract Master Table of Sales Invoice with filtering

Get Sales Invoice by Last Modified Date Time

  • LastModified is a DateTime type that records Date and Time.
    Unlike DocDate which is also DateTime type, but it DocDate does not record the time of the document.
  • The string "IV" is a sql prefix which is fixed.
public DataTable GetInvoiceByDateRange(DateTime fromDate, DateTime toDate, BCE.Data.DBSetting dbSetting)
{
    BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCommandSQL cmdSql =
        BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCommand.Create(dbSetting) as BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCommandSQL;
    BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCriteria criteria = new BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCriteria();
    DataTable tblInvoice = new DataTable("Invoice");

    //Filter Date Range
    BCE.AutoCount.SearchFilter.Filter filterDate = new BCE.AutoCount.SearchFilter.Filter("IV", "LastModified");
    filterDate.Type = BCE.AutoCount.SearchFilter.FilterType.ByRange;
    filterDate.From = fromDate;
    filterDate.To = toDate;

    //Add filter to Criteria
    criteria.AddFilter(filterDate);

    //In BasicSearch, defines the columns that are in the database table
    cmdSql.BasicSearch(criteria, "DocKey, DocNo, DocDate, LastModified, DebtorCode, DebtorName, Description, CurrencyCode, CurrencyRate, FinalTotal, TotalExTax", tblInvoice, "");

    return tblInvoice;
}

Call above function

//Last Modified Date
DateTime fromDate = new DateTime(2019, 1, 1);
DateTime toDate = DateTime.Today.Date;

DataTable tblInvoiceMaster = GetInvoiceByDateRange(fromDate, toDate, dbSetting);

Get Sales Invoice by Debtor list and Last Modified Date Time

public DataTable GetInvoiceByDebtorAndDateRange(List<string> debtorCodeList, DateTime fromDate, DateTime toDate, BCE.Data.DBSetting dbSetting)
{
    BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCommandSQL cmdSql =
        BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCommand.Create(dbSetting) as BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCommandSQL;
    BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCriteria criteria = new BCE.AutoCount.Invoicing.Sales.Invoice.InvoiceCriteria();
    DataTable tblInvoice = new DataTable("Invoice");
            
    //Filter Debtor Code with Multi-Selection
    BCE.AutoCount.SearchFilter.Filter filterDebtor = new BCE.AutoCount.SearchFilter.Filter("IV", "DebtorCode");
    filterDebtor.Type = BCE.AutoCount.SearchFilter.FilterType.ByIndividual;
    debtorCodeList.ForEach(code => filterDebtor.Add(code));

    //Filter Date Range
    BCE.AutoCount.SearchFilter.Filter filterDate = new BCE.AutoCount.SearchFilter.Filter("IV", "LastModified");
    filterDate.Type = BCE.AutoCount.SearchFilter.FilterType.ByRange;
    filterDate.From = fromDate;
    filterDate.To = toDate;

    //Add filters to Criteria
    criteria.AddFilter(filterDebtor);
    criteria.AddFilter(filterDate);

    //In BasicSearch, defines the columns that are in the database table
    cmdSql.BasicSearch(criteria, "DocKey, DocNo, DocDate, LastModified, DebtorCode, DebtorName, Description, CurrencyCode, CurrencyRate, FinalTotal, TotalExTax", tblInvoice, "");

    return tblInvoice;
}

Call above function

//Last Modified Date
DateTime fromDate = new DateTime(2019, 1, 1);
DateTime toDate = DateTime.Today.Date;

//Create a list of DebtorCode
List<string> debtorList = new List<string>() { "300-A001", "300-C002" };

DataTable tblInvoiceMaster = GetInvoiceByDebtorAndDateRange(debtorList, fromDate, toDate, dbSetting);


See Also Report API

Category Reporting
AR
AP
Stock
Sales
Purchase

Go to menu

Go to top
Resources For AutoCount Software Developers