private string CreateHourlySales(Int32 BranchID, string TerminalNo, DateTime ProcessDate, Data.TerminalReportDetails TerminalReportDetails) { string strRetValue = ""; DateTime dteDateFrom = ProcessDate; Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); DateTime dteDateTo = DateTime.MinValue; try { dteDateTo = clsTerminalReportHistory.NEXTDateLastInitialized(BranchID, TerminalNo, ProcessDate); } catch { } if (dteDateTo == DateTime.MinValue) { Event clsEvent = new Event(); clsEvent.AddEventLn("HourlySales: Did not found MAXDateLastInitialized from Terminal Report History. Using the MAXDateLastInitialized from terminal report", true); Data.TerminalReport clsTerminalReport = new Data.TerminalReport(clsTerminalReportHistory.Connection, clsTerminalReportHistory.Transaction); dteDateTo = clsTerminalReport.MAXDateLastInitialized(BranchID, TerminalNo, ProcessDate); } System.Data.DataTable dtHourlyReport = clsTerminalReportHistory.HourlyReport(BranchID, TerminalNo, dteDateFrom, dteDateTo); clsTerminalReportHistory.CommitAndDispose(); string stHourlyTableName = mclsFSIDetails.OutputDirectory + "\\H" + mclsFSIDetails.TenantName.Substring(0, 4) + TerminalReportDetails.TerminalNo + TerminalReportDetails.BatchCounter.ToString() + "." + TerminalReportDetails.DateLastInitializedToDisplay.ToString("MM").Replace("10", "A").Replace("11", "B").Replace("12", "C").Replace("0", "") + TerminalReportDetails.DateLastInitializedToDisplay.ToString("dd"); if (File.Exists(stHourlyTableName)) { File.Delete(stHourlyTableName); } writer = File.AppendText(stHourlyTableName); writer.WriteLine("01{0}", mclsFSIDetails.TenantCode); writer.WriteLine("02{0}", TerminalNo); DateTime dtePreviousTransactionDate = DateTime.MinValue; foreach (System.Data.DataRow dr in dtHourlyReport.Rows) { if (dtePreviousTransactionDate != Convert.ToDateTime(dr["TransactionDate"])) { writer.WriteLine("03{0}", Convert.ToDateTime(dr["TransactionDate"]).ToString("MMddyyyy")); dtePreviousTransactionDate = Convert.ToDateTime(dr["TransactionDate"]); } writer.WriteLine("04{0}", dr["Time"].ToString().Substring(0, 2)); writer.WriteLine("05{0}", Convert.ToDecimal(Convert.ToDecimal(dr["Amount"]) - Convert.ToDecimal(dr["VAT"])).ToString("####.#0").Replace(".", "")); writer.WriteLine("06{0}", Convert.ToInt64(dr["TranCount"]).ToString("####")); } writer.WriteLine("07{0}", TerminalReportDetails.DailySales.ToString("####.#0").Replace(".", "")); writer.WriteLine("08{0}", TerminalReportDetails.NoOfClosedTransactions.ToString("####")); writer.Flush(); writer.Close(); strRetValue = stHourlyTableName; return(strRetValue); }
public void CreateAndTransferFile(int BranchID, string TerminalNo, DateTime pvtDateInitialized) { DateTime dteDateToprocess = pvtDateInitialized; Event clsEvent = new Event(); try { clsEvent.AddEventLn("Starting Ayala FILE CREATOR.", true); clsEvent.AddEventLn("==================================================", true); clsEvent.AddEventLn("= Ayala FILE CREATOR =", true); clsEvent.AddEventLn("==================================================", true); /*********************************************************************** * Check the destination dir if existing. * ********************************************************************/ clsEvent.AddEventLn("Checking directory settings.", true); string dir = mclsAyalaDetails.OutputDirectory; dir = dir.Replace("{YYYY}", DateTime.Now.ToString("yyyy")); dir = dir.Replace("{MM}", DateTime.Now.ToString("MM")); dir = dir.Replace("{MMM}", DateTime.Now.ToString("MMM")); dir = dir.Replace("{MMMM}", DateTime.Now.ToString("MMMM")); if (!System.IO.Directory.Exists(dir)) { clsEvent.AddEventLn("Directory [" + dir + "] does not exist.", true); System.IO.Directory.CreateDirectory(dir); } else { clsEvent.AddEventLn("Directory [" + dir + "] exist.", true); } mclsAyalaDetails.OutputDirectory = dir; /*********************************************************************** * GET The report of Current Terminal using Specified InitializationDate * ********************************************************************/ Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); Data.TerminalReportDetails clsTerminalReportDetail = clsTerminalReportHistory.Details(BranchID, TerminalNo, dteDateToprocess); string stDailyTableName = CreateDailySales(dteDateToprocess, clsTerminalReportDetail); string stHourlyTableName = CreateHourlySales(BranchID, TerminalNo, dteDateToprocess); clsTerminalReportHistory.UpdateTerminalReportBatchCounter(TerminalNo, dteDateToprocess); clsTerminalReportHistory.CommitAndDispose(); clsEvent.AddEventLn("Record for [" + dteDateToprocess.ToString("yyyy-MM-dd HH:mm:ss") + "] BacthCounter:" + clsTerminalReportDetail.BatchCounter.ToString() + " has been created for Ayala.", true); TransferFile(stDailyTableName); TransferFile(stHourlyTableName); } catch (Exception ex) { clsEvent.AddErrorEventLn(ex); throw ex; } clsEvent.AddEventLn("Ayala FILE CREATOR exited.", true); }
private void LoadOptions() { Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); System.Data.DataTable dt = clsTerminalReportHistory.DatesLastInitialized(Constants.TerminalBranchID, mstTerminalNo, Convert.ToDateTime(txtDateFrom.Text), Convert.ToDateTime(txtDateTo.Text)); clsTerminalReportHistory.CommitAndDispose(); cboDate.DataSource = null; cboDate.DisplayMember = "DateLastInitialized"; cboDate.ValueMember = "DateLastInitialized"; cboDate.DataSource = dt.DefaultView; if (cboDate.Items.Count <= 0) { cboDate.DataSource = null; cboDate.Items.Clear(); cboDate.Items.Add("No valid date"); } cboDate.SelectedIndex = 0; }
private string CreateHourlySales(int BranchID, string TerminalNo, DateTime pvtProcessDate) { string strRetValue = ""; DateTime dteDateFrom = pvtProcessDate; Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); DateTime dteDateTo = DateTime.MinValue; try { dteDateTo = clsTerminalReportHistory.NEXTDateLastInitialized(BranchID, TerminalNo, pvtProcessDate); } catch { } if (dteDateTo == DateTime.MinValue) { Event clsEvent = new Event(); clsEvent.AddEventLn("HourlySales: Did not found MAXDateLastInitialized from Terminal Report History. Using the MAXDateLastInitialized from terminal report", true); Data.TerminalReport clsTerminalReport = new Data.TerminalReport(clsTerminalReportHistory.Connection, clsTerminalReportHistory.Transaction); dteDateTo = clsTerminalReport.MAXDateLastInitialized(Constants.TerminalBranchID, TerminalNo, pvtProcessDate); } System.Data.DataTable dthreport = clsTerminalReportHistory.HourlyReport(BranchID, TerminalNo, dteDateFrom, dteDateTo); clsTerminalReportHistory.CommitAndDispose(); string stHourlyTableName = mclsAyalaDetails.TenantCode.Substring(0, 3) + pvtProcessDate.ToString("MMdd") + "H"; string stHourlyFileName = mclsAyalaDetails.OutputDirectory + "\\" + stHourlyTableName + ".dbf"; if (File.Exists(stHourlyFileName)) { File.Delete(stHourlyFileName); } CreateHourlySalesTable(stHourlyTableName); InsertHourlySales(stHourlyTableName, dthreport); strRetValue = stHourlyFileName; return(strRetValue); }
private void LoadOptions() { Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); System.Data.DataTable dt = clsTerminalReportHistory.DatesLastInitializedForRLC(mclsTerminalDetails.BranchID, mclsTerminalDetails.TerminalNo, Convert.ToDateTime(txtDateFrom.Text), Convert.ToDateTime(txtDateTo.Text)); clsTerminalReportHistory.CommitAndDispose(); cboDate.DataSource = null; cboDate.DisplayMember = "DateLastInitializedDisplay"; cboDate.ValueMember = "DateLastInitialized"; cboDate.DataSource = dt.DefaultView; if (cboDate.Items.Count <= 0) { cboDate.DataSource = null; cboDate.Items.Clear(); cboDate.Items.Add("No valid date"); } cboDate.SelectedIndex = 0; if (CONFIG.MallCode.ToUpper() == MallCodes.RLC) { grpRLC.Visible = true; } }
public bool CreateAndTransferFile(Int32 BranchID, string TerminalNo, DateTime pvtDateInitialized) { bool bolRetValue = false; DateTime dteDateToprocess = pvtDateInitialized; Event clsEvent = new Event(); try { clsEvent.AddEventLn("Starting RLC FILE CREATOR.", true); clsEvent.AddEventLn("==================================================", true); clsEvent.AddEventLn("= RLC FILE CREATOR =", true); clsEvent.AddEventLn("==================================================", true); /*********************************************************************** * Check the destination dir if existing. * ********************************************************************/ clsEvent.AddEventLn("Checking directory settings.", true); string dir = mclsRLCDetails.OutputDirectory; dir = dir.Replace("{YYYY}", DateTime.Now.ToString("yyyy")); dir = dir.Replace("{MM}", DateTime.Now.ToString("MM")); dir = dir.Replace("{MMM}", DateTime.Now.ToString("MMM")); dir = dir.Replace("{MMMM}", DateTime.Now.ToString("MMMM")); if (!System.IO.Directory.Exists(dir)) { clsEvent.AddEventLn("Directory [" + dir + "] does not exist.", true); System.IO.Directory.CreateDirectory(dir); } else { clsEvent.AddEventLn("Directory [" + dir + "] exist.", true); } mclsRLCDetails.OutputDirectory = dir; /*********************************************************************** * GET The report of Current Terminal using Specified InitializationDate * ********************************************************************/ Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); Data.TerminalReportDetails clsTerminalReportDetail = clsTerminalReportHistory.Details(BranchID, TerminalNo, dteDateToprocess); Data.SalesTransactions clsSalesTransactions = new Data.SalesTransactions(clsTerminalReportHistory.Connection, clsTerminalReportHistory.Transaction); long lngSeniorCitizenDiscountCount = 0; decimal decSeniorCitizenDiscount = clsSalesTransactions.SeniorCitizenDiscounts(clsTerminalReportDetail.BranchID, clsTerminalReportDetail.TerminalNo, clsTerminalReportDetail.BeginningTransactionNo, clsTerminalReportDetail.EndingTransactionNo, out lngSeniorCitizenDiscountCount); long lngPWDDiscountCount = 0; decimal decPWDDiscount = clsSalesTransactions.PersonWithDisabilityDiscounts(clsTerminalReportDetail.BranchID, clsTerminalReportDetail.TerminalNo, clsTerminalReportDetail.BeginningTransactionNo, clsTerminalReportDetail.EndingTransactionNo, out lngPWDDiscountCount); string stDailyTableName = CreateDailySales(dteDateToprocess, clsTerminalReportDetail, decSeniorCitizenDiscount, lngSeniorCitizenDiscountCount, decPWDDiscount, lngPWDDiscountCount); clsTerminalReportHistory.CommitAndDispose(); bool bolTransferFile = TransferFile(stDailyTableName); if (bolTransferFile) { clsTerminalReportHistory = new Data.TerminalReportHistory(); clsTerminalReportHistory.UpdateTerminalReportBatchCounter(clsTerminalReportDetail.TerminalNo, dteDateToprocess); clsTerminalReportHistory.UpdateTerminalReportIsMallFileUploadComplete(clsTerminalReportDetail.TerminalNo, dteDateToprocess, true); if (clsTerminalReportDetail.BatchCounter == 1) { clsTerminalReportHistory.UpdateTerminalReportMallForwarderFileName(clsTerminalReportDetail.TerminalNo, dteDateToprocess, stDailyTableName); } clsTerminalReportHistory.CommitAndDispose(); bolRetValue = true; } clsEvent.AddEventLn("Record for [" + dteDateToprocess.ToString("yyyy-MM-dd HH:mm:ss") + "] BacthCounter:" + clsTerminalReportDetail.BatchCounter.ToString() + " has been created for RLC.", true); } catch (Exception ex) { clsEvent.AddErrorEventLn(ex); throw ex; } clsEvent.AddEventLn("RLC FILE CREATOR exited.", true); return(bolRetValue); }
private void SetDataSource(ReportDocument Report) { string strProductGroup = cboProductGroup.SelectedItem.Text == Constants.ALL ? string.Empty : cboProductGroup.SelectedItem.Text; string TransactionNo = txtTransactionNo.Text; string CustomerName = cboContactName.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboContactName.SelectedItem.Text.Replace("ALL", "").Replace("LIKE","").Trim() : cboContactName.SelectedItem.Text; string AgentName = cboAgent.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboAgent.SelectedItem.Text.Replace("ALL", "").Replace("LIKE", "").Trim() : cboAgent.SelectedItem.Text; string CashierName = cboCashierName.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboCashierName.SelectedItem.Text.Replace("ALL", "").Replace("LIKE", "").Trim() : cboCashierName.SelectedItem.Text; string TerminalNo = cboTerminalNo.SelectedItem.Text == Constants.ALL ? string.Empty : cboTerminalNo.SelectedItem.Text; DateTime StartTransactionDate = DateTime.MinValue; try { StartTransactionDate = Convert.ToDateTime(txtStartTransactionDate.Text + " " + txtStartTime.Text); } catch { } DateTime EndTransactionDate = DateTime.MinValue; try { EndTransactionDate = Convert.ToDateTime(txtEndTransactionDate.Text + " " + txtEndTime.Text); } catch { } TransactionStatus Status = (TransactionStatus)Enum.Parse(typeof(TransactionStatus), cboTransactionStatus.SelectedItem.Value); PaymentTypes PaymentType = (PaymentTypes)Enum.Parse(typeof(PaymentTypes), cboPaymentType.SelectedItem.Value); DataTable dt = new DataTable(); ReportDataset rptds = new ReportDataset(); SalesTransactions clsSalesTransactions; SalesTransactionsColumns clsSalesTransactionsColumns = new SalesTransactionsColumns(); #region clsSalesTransactionsColumns clsSalesTransactionsColumns.BranchCode = true; clsSalesTransactionsColumns.TransactionNo = true; clsSalesTransactionsColumns.CustomerName = true; clsSalesTransactionsColumns.CustomerGroupName = true; clsSalesTransactionsColumns.CashierName = true; clsSalesTransactionsColumns.TerminalNo = true; clsSalesTransactionsColumns.TransactionDate = true; clsSalesTransactionsColumns.DateSuspended = true; clsSalesTransactionsColumns.DateResumed = true; clsSalesTransactionsColumns.TransactionStatus = true; clsSalesTransactionsColumns.SubTotal = true; clsSalesTransactionsColumns.Discount = true; clsSalesTransactionsColumns.VAT = true; clsSalesTransactionsColumns.VATableAmount = true; clsSalesTransactionsColumns.LocalTax = true; clsSalesTransactionsColumns.AmountPaid = true; clsSalesTransactionsColumns.CashPayment = true; clsSalesTransactionsColumns.ChequePayment = true; clsSalesTransactionsColumns.CreditCardPayment = true; clsSalesTransactionsColumns.BalanceAmount = true; clsSalesTransactionsColumns.ChangeAmount = true; clsSalesTransactionsColumns.DateClosed = true; clsSalesTransactionsColumns.PaymentType = true; clsSalesTransactionsColumns.ItemsDiscount = true; clsSalesTransactionsColumns.Charge = true; clsSalesTransactionsColumns.CreditPayment = true; clsSalesTransactionsColumns.CreatedByName = true; clsSalesTransactionsColumns.AgentName = true; clsSalesTransactionsColumns.PaxNo = true; #endregion SalesTransactionDetails clsSearchKey = new SalesTransactionDetails(); clsSearchKey = new SalesTransactionDetails(); clsSearchKey.TransactionNo = TransactionNo; clsSearchKey.CustomerName = CustomerName; clsSearchKey.CashierName = CashierName; clsSearchKey.TerminalNo = TerminalNo; clsSearchKey.BranchID = int.Parse(cboBranch.SelectedItem.Value); clsSearchKey.TransactionDateFrom = StartTransactionDate; clsSearchKey.TransactionDateTo = EndTransactionDate; clsSearchKey.TransactionStatus = Status; clsSearchKey.PaymentType = PaymentType; clsSearchKey.AgentName = AgentName; clsSearchKey.isConsignmentSearch = cboConsignment.SelectedItem.Value; if (clsSearchKey.isConsignmentSearch != "-1") { clsSearchKey.isConsignment = bool.Parse(cboConsignment.SelectedItem.Value); } bool boWithTrustFund = true; string strReportType = cboReportType.SelectedValue; switch (strReportType) { case ReportTypes.SalesPerDay: #region Sales Per Day clsSalesTransactions = new SalesTransactions(); dt = clsSalesTransactions.ListAsDataTable(clsSearchKey.BranchID, clsSearchKey.TerminalNo, TransactionStatus: clsSearchKey.TransactionStatus, TransactionDateFrom: StartTransactionDate, TransactionDateTo: EndTransactionDate, WithTF: boWithTrustFund); //dt = clsSalesTransactions.SalesPerDay(StartTransactionDate, EndTransactionDate, boWithTrustFund); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Transactions.NewRow(); foreach (DataColumn dc in rptds.Transactions.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Transactions.Rows.Add(drNew); } break; #endregion case ReportTypes.SummarizeDailySales: #region SummarizeDailySales Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); dt = clsTerminalReportHistory.SummarizedDailySalesReport(Int32.Parse(cboBranch.SelectedItem.Value), TerminalNo, true, StartTransactionDate, EndTransactionDate, boWithTrustFund); clsTerminalReportHistory.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.SalesReport.NewRow(); foreach (DataColumn dc in rptds.SalesReport.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.SalesReport.Rows.Add(drNew); } break; #endregion default: break; } Report.SetDataSource(rptds); SetParameters(Report); }
private void LoadOptions() { Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); System.Data.DataTable dt = clsTerminalReportHistory.DatesLastInitialized(Constants.TerminalBranchID, TerminalDetails.TerminalNo, Convert.ToDateTime(txtDateFrom.Text), Convert.ToDateTime(txtDateTo.Text + " 23:59:59")); clsTerminalReportHistory.CommitAndDispose(); cboDate.DataSource = null; cboDate.DisplayMember = "DateLastInitializedToDisplay"; cboDate.ValueMember = "DateLastInitialized"; cboDate.DataSource = dt.DefaultView; if (cboDate.Items.Count <= 0) { cboDate.DataSource = null; cboDate.Items.Clear(); cboDate.Items.Add("No valid date"); } cboDate.SelectedIndex = 0; keyCommand = Keys.Enter; }
private void SendRLC() { try { tmr.Enabled = false; Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(mConnection, mTransaction); mConnection = clsTerminalReportHistory.Connection; mTransaction = clsTerminalReportHistory.Transaction; DateTime dteDateToProcess = clsTerminalReportHistory.getRLCDateLastInitialized(mclsTerminalDetails.BranchID, mclsTerminalDetails.TerminalNo); clsTerminalReportHistory.CommitAndDispose(); if (dteDateToProcess == DateTime.MinValue) { grpRLC.Visible = false; } else { try { try { grpRLC.Visible = true; } catch { } Back: SetText("RLC Notification: Trying to send unsent files...", "lblMallForwarderStatus"); AceSoft.RetailPlus.Forwarder.RLCDetails clsRLCDetails = new AceSoft.RetailPlus.Forwarder.RLCDetails(); clsRLCDetails.TenantCode = RLC_CONFIG.TenantCode; clsRLCDetails.TenantName = RLC_CONFIG.TenantName; clsRLCDetails.OutputDirectory = RLC_CONFIG.OutputDirectory; clsRLCDetails.FTPIPAddress = CONFIG.FTPIPAddress; clsRLCDetails.FTPUsername = CONFIG.FTPUsername; clsRLCDetails.FTPPassword = CONFIG.FTPPassword; clsRLCDetails.FTPDirectory = CONFIG.FTPDirectory; AceSoft.RetailPlus.Forwarder.RLC clsRLC = new AceSoft.RetailPlus.Forwarder.RLC(); clsRLC.RLCDetails = clsRLCDetails; bool bolCreateAndTransferFile = clsRLC.CreateAndTransferFile(mclsTerminalDetails.BranchDetails.BranchID, mclsTerminalDetails.TerminalNo, dteDateToProcess); if (bolCreateAndTransferFile) { tmrRLC.Enabled = false; SetText("Success in sending file(s) to RLC server. Press [Ctrl+C] to close this notification.", "lblMallForwarderStatus"); } else { tmrRLC.Enabled = true; SetText("ERROR!!! sending file(s) to RLC server. Press [Ctrl+C] to close this notification.", "lblMallForwarderStatus"); } clsTerminalReportHistory = new Data.TerminalReportHistory(mConnection, mTransaction); mConnection = clsTerminalReportHistory.Connection; mTransaction = clsTerminalReportHistory.Transaction; dteDateToProcess = clsTerminalReportHistory.getRLCDateLastInitialized(mclsTerminalDetails.BranchID, mclsTerminalDetails.TerminalNo); clsTerminalReportHistory.CommitAndDispose(); if (dteDateToProcess != DateTime.MinValue) { goto Back; } } catch { tmrRLC.Enabled = true; SetText("ERROR!!! sending file(s) to RLC server. Press [Ctrl+C] to close this notification.", "lblMallForwarderStatus"); } } } catch (Exception ex) { InsertErrorLogToFile(ex, lblMallForwarderStatus.Text); } }
private string CreateHourlySales(int BranchID, string TerminalNo, DateTime pvtProcessDate) { string strRetValue = ""; DateTime dteDateFrom = pvtProcessDate; Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); DateTime dteDateTo = DateTime.MinValue; try { dteDateTo = clsTerminalReportHistory.NEXTDateLastInitialized(BranchID, TerminalNo, pvtProcessDate); } catch { } if (dteDateTo == DateTime.MinValue) { Event clsEvent = new Event(); clsEvent.AddEventLn("HourlySales: Did not found MAXDateLastInitialized from Terminal Report History. Using the MAXDateLastInitialized from terminal report", true); Data.TerminalReport clsTerminalReport = new Data.TerminalReport(clsTerminalReportHistory.Connection, clsTerminalReportHistory.Transaction); dteDateTo = clsTerminalReport.MAXDateLastInitialized(Constants.TerminalBranchID, TerminalNo, pvtProcessDate); } System.Data.DataTable dthreport = clsTerminalReportHistory.HourlyReport(BranchID, TerminalNo, dteDateFrom, dteDateTo); clsTerminalReportHistory.CommitAndDispose(); string stHourlyTableName = mclsAyalaDetails.TenantCode.Substring(0, 3) + pvtProcessDate.ToString("MMdd") + "H"; string stHourlyFileName = mclsAyalaDetails.OutputDirectory + "\\" + stHourlyTableName + ".dbf"; if (File.Exists(stHourlyFileName)) File.Delete(stHourlyFileName); CreateHourlySalesTable(stHourlyTableName); InsertHourlySales(stHourlyTableName, dthreport); strRetValue = stHourlyFileName; return strRetValue; }
private string CreateHourlySales(Int32 BranchID, string TerminalNo, DateTime ProcessDate, Data.TerminalReportDetails TerminalReportDetails) { string strRetValue = ""; DateTime dteDateFrom = ProcessDate; Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); DateTime dteDateTo = DateTime.MinValue; try { dteDateTo = clsTerminalReportHistory.NEXTDateLastInitialized(BranchID, TerminalNo, ProcessDate); } catch { } if (dteDateTo == DateTime.MinValue) { Event clsEvent = new Event(); clsEvent.AddEventLn("HourlySales: Did not found MAXDateLastInitialized from Terminal Report History. Using the MAXDateLastInitialized from terminal report", true); Data.TerminalReport clsTerminalReport = new Data.TerminalReport(clsTerminalReportHistory.Connection, clsTerminalReportHistory.Transaction); dteDateTo = clsTerminalReport.MAXDateLastInitialized(BranchID, TerminalNo, ProcessDate); } System.Data.DataTable dtHourlyReport = clsTerminalReportHistory.HourlyReport(BranchID, TerminalNo, dteDateFrom, dteDateTo); clsTerminalReportHistory.CommitAndDispose(); string stHourlyTableName = mclsFSIDetails.OutputDirectory + "\\H" + mclsFSIDetails.TenantName.Substring(0, 4) + TerminalReportDetails.TerminalNo + TerminalReportDetails.BatchCounter.ToString() + "." + TerminalReportDetails.DateLastInitializedToDisplay.ToString("MM").Replace("10", "A").Replace("11", "B").Replace("12", "C").Replace("0", "") + TerminalReportDetails.DateLastInitializedToDisplay.ToString("dd"); if (File.Exists(stHourlyTableName)) File.Delete(stHourlyTableName); writer = File.AppendText(stHourlyTableName); writer.WriteLine("01{0}", mclsFSIDetails.TenantCode); writer.WriteLine("02{0}", TerminalNo); DateTime dtePreviousTransactionDate = DateTime.MinValue; foreach (System.Data.DataRow dr in dtHourlyReport.Rows) { if (dtePreviousTransactionDate != Convert.ToDateTime(dr["TransactionDate"])) { writer.WriteLine("03{0}", Convert.ToDateTime(dr["TransactionDate"]).ToString("MMddyyyy")); dtePreviousTransactionDate = Convert.ToDateTime(dr["TransactionDate"]); } writer.WriteLine("04{0}", dr["Time"].ToString().Substring(0,2)); writer.WriteLine("05{0}", Convert.ToDecimal(Convert.ToDecimal(dr["Amount"]) - Convert.ToDecimal(dr["VAT"])).ToString("####.#0").Replace(".", "")); writer.WriteLine("06{0}", Convert.ToInt64(dr["TranCount"]).ToString("####")); } writer.WriteLine("07{0}", TerminalReportDetails.DailySales.ToString("####.#0").Replace(".", "")); writer.WriteLine("08{0}", TerminalReportDetails.NoOfClosedTransactions.ToString("####")); writer.Flush(); writer.Close(); strRetValue = stHourlyTableName; return strRetValue; }
private void SetDataSource(ReportDocument Report) { string strProductGroup = cboProductGroup.SelectedItem.Text == Constants.ALL ? string.Empty : cboProductGroup.SelectedItem.Text; string TransactionNo = txtTransactionNo.Text; string CustomerGroupName = cboContactGroupName.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboContactGroupName.SelectedItem.Text.Replace("ALL", "").Replace("LIKE", "").Trim() : cboContactGroupName.SelectedItem.Text; string CustomerName = cboContactName.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboContactName.SelectedItem.Text.Replace("ALL", "").Replace("LIKE","").Trim() : cboContactName.SelectedItem.Text; string AgentName = cboAgent.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboAgent.SelectedItem.Text.Replace("ALL", "").Replace("LIKE", "").Trim() : cboAgent.SelectedItem.Text; string CashierName = cboCashierName.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboCashierName.SelectedItem.Text.Replace("ALL", "").Replace("LIKE", "").Trim() : cboCashierName.SelectedItem.Text; string TerminalNo = cboTerminalNo.SelectedItem.Text == Constants.ALL ? string.Empty : cboTerminalNo.SelectedItem.Text; DateTime StartValidityDate = DateTime.TryParse(txtStartValidityDate.Text + " 00:00:00" + txtStartTime.Text, out StartValidityDate) ? StartValidityDate : DateTime.MinValue; DateTime EndValidityDate = DateTime.TryParse(txtEndValidityDate.Text + " 23:59:59", out EndValidityDate) ? EndValidityDate : DateTime.MinValue; DateTime StartTransactionDate = DateTime.TryParse(txtStartTransactionDate.Text + " " + txtStartTime.Text, out StartTransactionDate) ? StartTransactionDate : DateTime.MinValue; DateTime EndTransactionDate = DateTime.TryParse(txtEndTransactionDate.Text + " " + txtEndTime.Text, out EndTransactionDate) ? EndTransactionDate : DateTime.MinValue; TransactionStatus Status = (TransactionStatus)Enum.Parse(typeof(TransactionStatus), cboTransactionStatus.SelectedItem.Value); PaymentTypes PaymentType = (PaymentTypes)Enum.Parse(typeof(PaymentTypes), cboPaymentType.SelectedItem.Value); DataTable dt = new DataTable(); ReportDataset rptds = new ReportDataset(); SalesTransactions clsSalesTransactions; SalesTransactionItems clsSalesTransactionItems; SalesTransactionsColumns clsSalesTransactionsColumns = new SalesTransactionsColumns(); #region clsSalesTransactionsColumns clsSalesTransactionsColumns.BranchCode = true; clsSalesTransactionsColumns.TransactionNo = true; clsSalesTransactionsColumns.CustomerName = true; clsSalesTransactionsColumns.CustomerGroupName = true; clsSalesTransactionsColumns.CashierName = true; clsSalesTransactionsColumns.TerminalNo = true; clsSalesTransactionsColumns.TransactionDate = true; clsSalesTransactionsColumns.DateSuspended = true; clsSalesTransactionsColumns.DateResumed = true; clsSalesTransactionsColumns.TransactionStatus = true; clsSalesTransactionsColumns.SubTotal = true; clsSalesTransactionsColumns.Discount = true; clsSalesTransactionsColumns.VAT = true; clsSalesTransactionsColumns.VATableAmount = true; clsSalesTransactionsColumns.LocalTax = true; clsSalesTransactionsColumns.AmountPaid = true; clsSalesTransactionsColumns.CashPayment = true; clsSalesTransactionsColumns.ChequePayment = true; clsSalesTransactionsColumns.CreditCardPayment = true; clsSalesTransactionsColumns.BalanceAmount = true; clsSalesTransactionsColumns.ChangeAmount = true; clsSalesTransactionsColumns.DateClosed = true; clsSalesTransactionsColumns.PaymentType = true; clsSalesTransactionsColumns.ItemsDiscount = true; clsSalesTransactionsColumns.Charge = true; clsSalesTransactionsColumns.CreditPayment = true; clsSalesTransactionsColumns.CreatedByName = true; clsSalesTransactionsColumns.AgentName = true; clsSalesTransactionsColumns.PaxNo = true; #endregion SalesTransactionDetails clsSearchKey = new SalesTransactionDetails(); clsSearchKey = new SalesTransactionDetails(); clsSearchKey.TransactionNo = TransactionNo; clsSearchKey.CustomerGroupName = CustomerGroupName; clsSearchKey.CustomerName = CustomerName; clsSearchKey.CashierName = CashierName; clsSearchKey.TerminalNo = TerminalNo; clsSearchKey.BranchID = int.Parse(cboBranch.SelectedItem.Value); clsSearchKey.TransactionDateFrom = StartTransactionDate; clsSearchKey.TransactionDateTo = EndTransactionDate; clsSearchKey.TransactionStatus = Status; clsSearchKey.PaymentType = PaymentType; clsSearchKey.AgentName = AgentName; clsSearchKey.isConsignmentSearch = cboConsignment.SelectedItem.Value; if (clsSearchKey.isConsignmentSearch != "-1") { clsSearchKey.isConsignment = bool.Parse(cboConsignment.SelectedItem.Value); } bool boWithTrustFund = true; string strReportType = cboReportType.SelectedValue; switch (strReportType) { case ReportTypes.SalesPerHour: #region Sales Per Hour clsSalesTransactions = new SalesTransactions(); dt = clsSalesTransactions.SalesPerHour(string.Empty, string.Empty, StartTransactionDate, EndTransactionDate,0, cboTerminalNo.SelectedItem.Text); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.SalesPerHour.NewRow(); foreach (DataColumn dc in rptds.SalesPerHour.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.SalesPerHour.Rows.Add(drNew); } break; #endregion case ReportTypes.SalesPerDay: //case ReportTypes.SalesPerDayWithTF: #region Sales Per Day if (strReportType == ReportTypes.SalesPerDay) boWithTrustFund = false; clsSalesTransactions = new SalesTransactions(); dt = clsSalesTransactions.ListAsDataTable(clsSearchKey.BranchID, clsSearchKey.TerminalNo, TransactionStatus: clsSearchKey.TransactionStatus, TransactionDateFrom: StartTransactionDate, TransactionDateTo: EndTransactionDate, WithTF: boWithTrustFund); //dt = clsSalesTransactions.SalesPerDay(StartTransactionDate, EndTransactionDate, boWithTrustFund); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Transactions.NewRow(); foreach (DataColumn dc in rptds.Transactions.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Transactions.Rows.Add(drNew); } break; #endregion case ReportTypes.SummarizeDailySales: //case ReportTypes.SummarizeDailySalesWithTF: #region SummarizeDailySales if (strReportType == ReportTypes.SummarizeDailySales) boWithTrustFund = false; Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); dt = clsTerminalReportHistory.SummarizedDailySalesReport(Int32.Parse(cboBranch.SelectedItem.Value), TerminalNo, false, StartTransactionDate, EndTransactionDate, boWithTrustFund); clsTerminalReportHistory.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.SalesReport.NewRow(); foreach (DataColumn dc in rptds.SalesReport.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.SalesReport.Rows.Add(drNew); } break; #endregion case ReportTypes.SalesTransactions: #region Sales Transactions clsSalesTransactions = new SalesTransactions(); //dt = clsSalesTransactions.List(clsSalesTransactionsColumns, clsSearchKey, System.Data.SqlClient.SortOrder.Ascending, 0, "TransactionNo", System.Data.SqlClient.SortOrder.Ascending); dt = clsSalesTransactions.ListAsDataTable(clsSearchKey, false, "TransactionNo", SortOption.Ascending, 0); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Transactions.NewRow(); foreach (DataColumn dc in rptds.Transactions.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Transactions.Rows.Add(drNew); } break; #endregion case ReportTypes.SalesTransactionPerCustomer: case ReportTypes.SalesTransactionPerCustomerPerGroup: case ReportTypes.SalesTransactionPerCustomerPerGroupSummarized: case ReportTypes.SalesTransactionPerCustomerWithCheque: case ReportTypes.SalesTransactionPerCashierPerCustomer: #region Sales Transaction Per Customer clsSalesTransactions = new SalesTransactions(); //dt = clsSalesTransactions.List(clsSalesTransactionsColumns, clsSearchKey, System.Data.SqlClient.SortOrder.Ascending, 0, "CustomerName", System.Data.SqlClient.SortOrder.Ascending); dt = clsSalesTransactions.ListAsDataTable(clsSearchKey, false, "CustomerName", SortOption.Ascending, 0); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Transactions.NewRow(); foreach (DataColumn dc in rptds.Transactions.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Transactions.Rows.Add(drNew); } break; #endregion case ReportTypes.SalesTransactionPerCustomerPerItem: #region Sales Transaction Per Customer Per Item clsSalesTransactions = new SalesTransactions(); //dt = clsSalesTransactions.List(clsSalesTransactionsColumns, clsSearchKey, System.Data.SqlClient.SortOrder.Ascending, 0, "CustomerName", System.Data.SqlClient.SortOrder.Ascending); dt = clsSalesTransactions.ListAsDataTable(clsSearchKey, false, "CustomerName", SortOption.Ascending, 0); clsSalesTransactions.CommitAndDispose(); string stIDs = ""; foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Transactions.NewRow(); foreach (DataColumn dc in rptds.Transactions.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Transactions.Rows.Add(drNew); stIDs += "," + dr["TransactionID"].ToString(); } if (dt.Rows.Count > 0) { clsSalesTransactionItems = new SalesTransactionItems(); dt = clsSalesTransactionItems.List(stIDs.Remove(0,1)); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.TransactionItems.NewRow(); foreach (DataColumn dc in rptds.TransactionItems.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.TransactionItems.Rows.Add(drNew); } } break; #endregion case ReportTypes.SalesTransactionPerCashier: #region Sales Transaction Per Cashier/Customer & Per Cashier clsSalesTransactions = new SalesTransactions(); //dt = clsSalesTransactions.List(clsSalesTransactionsColumns, clsSearchKey, System.Data.SqlClient.SortOrder.Ascending, 0, "CashierName", System.Data.SqlClient.SortOrder.Ascending); dt = clsSalesTransactions.ListAsDataTable(clsSearchKey, false, "CashierName", SortOption.Ascending, 0); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Transactions.NewRow(); foreach (DataColumn dc in rptds.Transactions.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Transactions.Rows.Add(drNew); } break; #endregion case ReportTypes.DailySalesTransaction: case ReportTypes.WeeklySalesTransaction: case ReportTypes.MonthlySalesTransaction: #region Daily, Weekely, Monthly Sales Transaction clsSalesTransactions = new SalesTransactions(); //dt = clsSalesTransactions.List(clsSalesTransactionsColumns, clsSearchKey, System.Data.SqlClient.SortOrder.Ascending, 0, "TransactionDate", System.Data.SqlClient.SortOrder.Ascending); dt = clsSalesTransactions.ListAsDataTable(clsSearchKey, false, "TransactionDate", SortOption.Ascending, 0); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Transactions.NewRow(); foreach (DataColumn dc in rptds.Transactions.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Transactions.Rows.Add(drNew); } break; #endregion case ReportTypes.SalesTransactionPerTerminal: #region Sales Transaction Per Terminal clsSalesTransactions = new SalesTransactions(); //dt = clsSalesTransactions.List(clsSalesTransactionsColumns, clsSearchKey, System.Data.SqlClient.SortOrder.Ascending, 0, "tblTransactions.TerminalNo", System.Data.SqlClient.SortOrder.Ascending); dt = clsSalesTransactions.ListAsDataTable(clsSearchKey, false, "TerminalNo", SortOption.Ascending, 0); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Transactions.NewRow(); foreach (DataColumn dc in rptds.Transactions.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Transactions.Rows.Add(drNew); } break; #endregion case ReportTypes.SalesTransactionPerItem: case ReportTypes.SalesTransactionPerItemWoutPurchaseDetails: #region Sales Transaction Per Item SaleperItemFilterType enumSaleperItemFilterType = SaleperItemFilterType.ShowBothPositiveAndNegative; if (rdoShowPositiveOnly.Checked) enumSaleperItemFilterType = SaleperItemFilterType.ShowPositiveOnly; if (rdoShowNegativeOnly.Checked) enumSaleperItemFilterType = SaleperItemFilterType.ShowNegativeOnly; clsSalesTransactionItems = new SalesTransactionItems(); if (cboProductGroup.Text == Constants.ALL) dt = clsSalesTransactionItems.SalesPerItem(TransactionNo + "%", CustomerName + "%", CashierName + "%", TerminalNo + "%", StartTransactionDate, EndTransactionDate, Status, PaymentType, enumSaleperItemFilterType); else dt = clsSalesTransactionItems.SalesPerItemByGroup(strProductGroup + "%", TransactionNo + "%", CustomerName + "%", CashierName + "%", TerminalNo + "%", StartTransactionDate, EndTransactionDate, Status, PaymentType, enumSaleperItemFilterType); clsSalesTransactionItems.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.SalesTransactionPerItem.NewRow(); foreach (DataColumn dc in rptds.SalesTransactionPerItem.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.SalesTransactionPerItem.Rows.Add(drNew); } break; #endregion case ReportTypes.CashSalesDaily: case ReportTypes.CashSalesMonthly: #region Cash-Sales Daily & Cash-Sales Monthly clsSalesTransactionsColumns = new SalesTransactionsColumns(); #region clsSalesTransactionsColumns clsSalesTransactionsColumns.TransactionDate = true; clsSalesTransactionsColumns.TransactionStatus = true; clsSalesTransactionsColumns.TransactionStatusName = true; clsSalesTransactionsColumns.CashPayment = true; #endregion clsSalesTransactions = new SalesTransactions(); dt = clsSalesTransactions.Cash_Cheque_CreditCard_Credit_Sales(clsSalesTransactionsColumns, clsSearchKey, System.Data.SqlClient.SortOrder.Ascending, 0, "tblTransactions.TerminalNo", System.Data.SqlClient.SortOrder.Ascending); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.CashSales.NewRow(); foreach (DataColumn dc in rptds.CashSales.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.CashSales.Rows.Add(drNew); } break; #endregion case ReportTypes.ChequePaymentList: #region ChequePaymentList ChequePaymentDetails clsChequeSearchKeys = new ChequePaymentDetails(); clsChequeSearchKeys.TransactionNo = TransactionNo; clsChequeSearchKeys.CustomerGroupName = CustomerGroupName; clsChequeSearchKeys.CustomerName = CustomerName; clsChequeSearchKeys.CashierName = CashierName; clsChequeSearchKeys.TerminalNo = TerminalNo; clsChequeSearchKeys.BranchDetails.BranchID = int.Parse(cboBranch.SelectedItem.Value); clsChequeSearchKeys.TransactionDateFrom = StartTransactionDate; clsChequeSearchKeys.TransactionDateTo = EndTransactionDate; clsChequeSearchKeys.ValidityDateFrom = StartValidityDate; clsChequeSearchKeys.ValidityDateTo = StartValidityDate; clsChequeSearchKeys.TransactionStatus = Status; clsChequeSearchKeys.PaymentType = PaymentType; clsChequeSearchKeys.AgentName = AgentName; ChequePayments clsChequePayments = new ChequePayments(); dt = clsChequePayments.ListAsReport(clsChequeSearchKeys); clsChequePayments.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.ChequePayments.NewRow(); foreach (DataColumn dc in rptds.ChequePayments.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.ChequePayments.Rows.Add(drNew); } break; #endregion case ReportTypes.ChequeSalesDaily: case ReportTypes.ChequeSalesMonthly: #region Cheque-Sales Daily & Cheque-Sales Monthly clsSalesTransactionsColumns = new SalesTransactionsColumns(); #region clsSalesTransactionsColumns clsSalesTransactionsColumns.TransactionDate = true; clsSalesTransactionsColumns.TransactionStatus = true; clsSalesTransactionsColumns.TransactionStatusName = true; clsSalesTransactionsColumns.ChequePayment = true; #endregion clsSalesTransactions = new SalesTransactions(); dt = clsSalesTransactions.Cash_Cheque_CreditCard_Credit_Sales(clsSalesTransactionsColumns, clsSearchKey, System.Data.SqlClient.SortOrder.Ascending, 0, "tblTransactions.TerminalNo", System.Data.SqlClient.SortOrder.Ascending); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.ChequeSales.NewRow(); foreach (DataColumn dc in rptds.ChequeSales.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.ChequeSales.Rows.Add(drNew); } break; #endregion case ReportTypes.CreditCardSalesDaily: case ReportTypes.CreditCardSalesMonthly: #region Card-Sales Daily Card-Sales Monthly clsSalesTransactionsColumns = new SalesTransactionsColumns(); #region clsSalesTransactionsColumns clsSalesTransactionsColumns.TransactionDate = true; clsSalesTransactionsColumns.TransactionStatus = true; clsSalesTransactionsColumns.TransactionStatusName = true; clsSalesTransactionsColumns.CreditCardPayment = true; #endregion clsSalesTransactions = new SalesTransactions(); dt = clsSalesTransactions.Cash_Cheque_CreditCard_Credit_Sales(clsSalesTransactionsColumns, clsSearchKey, System.Data.SqlClient.SortOrder.Ascending, 0, "tblTransactions.TerminalNo", System.Data.SqlClient.SortOrder.Ascending); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.CreditCardSales.NewRow(); foreach (DataColumn dc in rptds.CreditCardSales.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.CreditCardSales.Rows.Add(drNew); } break; #endregion case ReportTypes.PaidOut: #region PaidOut Report PaidOutColumns clsPaidOutColumns = new PaidOutColumns(); clsPaidOutColumns.BranchDetails = true; clsPaidOutColumns.TerminalNo = true; clsPaidOutColumns.Amount = true; clsPaidOutColumns.PaymentType = true; clsPaidOutColumns.DateCreated = true; clsPaidOutColumns.TerminalNo = true; clsPaidOutColumns.CashierID = true; clsPaidOutColumns.CashierName = true; clsPaidOutColumns.Remarks = true; PaidOutDetails clsPaidOutSeachKey = new PaidOutDetails(); clsPaidOutSeachKey.StartTransactionDate = StartTransactionDate; clsPaidOutSeachKey.EndTransactionDate = EndTransactionDate; PaidOut clsPaidOut = new PaidOut(); dt = clsPaidOut.ListAsDataTable(clsPaidOutColumns, clsPaidOutSeachKey); clsPaidOut.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.PaidOut.NewRow(); foreach (DataColumn dc in rptds.PaidOut.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.PaidOut.Rows.Add(drNew); } break; #endregion case ReportTypes.Disburse: #region Disburse Report DisburseColumns clsDisburseColumns = new DisburseColumns(); clsDisburseColumns.BranchDetails = true; clsDisburseColumns.TerminalNo = true; clsDisburseColumns.Amount = true; clsDisburseColumns.PaymentType = true; clsDisburseColumns.DateCreated = true; clsDisburseColumns.TerminalNo = true; clsDisburseColumns.CashierID = true; clsDisburseColumns.CashierName = true; clsDisburseColumns.Remarks = true; DisburseDetails clsDisburseSeachKey = new DisburseDetails(); clsDisburseSeachKey.StartTransactionDate = StartTransactionDate; clsDisburseSeachKey.EndTransactionDate = EndTransactionDate; Disburses clsDisburse = new Disburses(); dt = clsDisburse.ListAsDataTable(clsDisburseColumns, clsDisburseSeachKey); clsDisburse.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Disburse.NewRow(); foreach (DataColumn dc in rptds.Disburse.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Disburse.Rows.Add(drNew); } break; #endregion case ReportTypes.RecieveOnAccount: #region WithHold Report WithholdColumns clsWithHoldColumns = new WithholdColumns(); clsWithHoldColumns.BranchDetails = true; clsWithHoldColumns.TerminalNo = true; clsWithHoldColumns.Amount = true; clsWithHoldColumns.PaymentType = true; clsWithHoldColumns.DateCreated = true; clsWithHoldColumns.TerminalNo = true; clsWithHoldColumns.CashierID = true; clsWithHoldColumns.CashierName = true; clsWithHoldColumns.Remarks = true; WithholdDetails clsWithHoldSeachKey = new WithholdDetails(); clsWithHoldSeachKey.StartTransactionDate = StartTransactionDate; clsWithHoldSeachKey.EndTransactionDate = EndTransactionDate; Withhold clsWithHold = new Withhold(); dt = clsWithHold.ListAsDataTable(clsWithHoldColumns, clsWithHoldSeachKey); clsWithHold.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Withhold.NewRow(); foreach (DataColumn dc in rptds.Withhold.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.Withhold.Rows.Add(drNew); } break; #endregion default: break; } Report.SetDataSource(rptds); SetParameters(Report); }
private void SetDataSource(ReportDocument Report) { string strProductGroup = cboProductGroup.SelectedItem.Text == Constants.ALL ? string.Empty : cboProductGroup.SelectedItem.Text; string TransactionNo = txtTransactionNo.Text; string CustomerName = cboContactName.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboContactName.SelectedItem.Text.Replace("ALL", "").Replace("LIKE", "").Trim() : cboContactName.SelectedItem.Text; string AgentName = cboAgent.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboAgent.SelectedItem.Text.Replace("ALL", "").Replace("LIKE", "").Trim() : cboAgent.SelectedItem.Text; string CashierName = cboCashierName.SelectedItem.Text.Substring(0, 3).Trim() == Constants.ALL ? cboCashierName.SelectedItem.Text.Replace("ALL", "").Replace("LIKE", "").Trim() : cboCashierName.SelectedItem.Text; string TerminalNo = cboTerminalNo.SelectedItem.Text == Constants.ALL ? string.Empty : cboTerminalNo.SelectedItem.Text; DateTime StartTransactionDate = DateTime.MinValue; try { StartTransactionDate = Convert.ToDateTime(txtStartTransactionDate.Text + " " + txtStartTime.Text); } catch { } DateTime EndTransactionDate = DateTime.MinValue; try { EndTransactionDate = Convert.ToDateTime(txtEndTransactionDate.Text + " " + txtEndTime.Text); } catch { } TransactionStatus Status = (TransactionStatus)Enum.Parse(typeof(TransactionStatus), cboTransactionStatus.SelectedItem.Value); PaymentTypes PaymentType = (PaymentTypes)Enum.Parse(typeof(PaymentTypes), cboPaymentType.SelectedItem.Value); DataTable dt = new DataTable(); ReportDataset rptds = new ReportDataset(); SalesTransactions clsSalesTransactions; SalesTransactionsColumns clsSalesTransactionsColumns = new SalesTransactionsColumns(); #region clsSalesTransactionsColumns clsSalesTransactionsColumns.BranchCode = true; clsSalesTransactionsColumns.TransactionNo = true; clsSalesTransactionsColumns.CustomerName = true; clsSalesTransactionsColumns.CustomerGroupName = true; clsSalesTransactionsColumns.CashierName = true; clsSalesTransactionsColumns.TerminalNo = true; clsSalesTransactionsColumns.TransactionDate = true; clsSalesTransactionsColumns.DateSuspended = true; clsSalesTransactionsColumns.DateResumed = true; clsSalesTransactionsColumns.TransactionStatus = true; clsSalesTransactionsColumns.SubTotal = true; clsSalesTransactionsColumns.Discount = true; clsSalesTransactionsColumns.VAT = true; clsSalesTransactionsColumns.VATableAmount = true; clsSalesTransactionsColumns.LocalTax = true; clsSalesTransactionsColumns.AmountPaid = true; clsSalesTransactionsColumns.CashPayment = true; clsSalesTransactionsColumns.ChequePayment = true; clsSalesTransactionsColumns.CreditCardPayment = true; clsSalesTransactionsColumns.BalanceAmount = true; clsSalesTransactionsColumns.ChangeAmount = true; clsSalesTransactionsColumns.DateClosed = true; clsSalesTransactionsColumns.PaymentType = true; clsSalesTransactionsColumns.ItemsDiscount = true; clsSalesTransactionsColumns.Charge = true; clsSalesTransactionsColumns.CreditPayment = true; clsSalesTransactionsColumns.CreatedByName = true; clsSalesTransactionsColumns.AgentName = true; clsSalesTransactionsColumns.PaxNo = true; #endregion SalesTransactionDetails clsSearchKey = new SalesTransactionDetails(); clsSearchKey = new SalesTransactionDetails(); clsSearchKey.TransactionNo = TransactionNo; clsSearchKey.CustomerName = CustomerName; clsSearchKey.CashierName = CashierName; clsSearchKey.TerminalNo = TerminalNo; clsSearchKey.BranchID = int.Parse(cboBranch.SelectedItem.Value); clsSearchKey.TransactionDateFrom = StartTransactionDate; clsSearchKey.TransactionDateTo = EndTransactionDate; clsSearchKey.TransactionStatus = Status; clsSearchKey.PaymentType = PaymentType; clsSearchKey.AgentName = AgentName; clsSearchKey.isConsignmentSearch = cboConsignment.SelectedItem.Value; if (clsSearchKey.isConsignmentSearch != "-1") { clsSearchKey.isConsignment = bool.Parse(cboConsignment.SelectedItem.Value); } bool boWithTrustFund = true; string strReportType = cboReportType.SelectedValue; switch (strReportType) { case ReportTypes.SalesPerDay: #region Sales Per Day clsSalesTransactions = new SalesTransactions(); dt = clsSalesTransactions.ListAsDataTable(clsSearchKey.BranchID, clsSearchKey.TerminalNo, TransactionStatus: clsSearchKey.TransactionStatus, TransactionDateFrom: StartTransactionDate, TransactionDateTo: EndTransactionDate, WithTF: boWithTrustFund); //dt = clsSalesTransactions.SalesPerDay(StartTransactionDate, EndTransactionDate, boWithTrustFund); clsSalesTransactions.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.Transactions.NewRow(); foreach (DataColumn dc in rptds.Transactions.Columns) { drNew[dc] = dr[dc.ColumnName]; } rptds.Transactions.Rows.Add(drNew); } break; #endregion case ReportTypes.SummarizeDailySales: #region SummarizeDailySales Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); dt = clsTerminalReportHistory.SummarizedDailySalesReport(Int32.Parse(cboBranch.SelectedItem.Value), TerminalNo, true, StartTransactionDate, EndTransactionDate, boWithTrustFund); clsTerminalReportHistory.CommitAndDispose(); foreach (DataRow dr in dt.Rows) { DataRow drNew = rptds.SalesReport.NewRow(); foreach (DataColumn dc in rptds.SalesReport.Columns) { drNew[dc] = dr[dc.ColumnName]; } rptds.SalesReport.Rows.Add(drNew); } break; #endregion default: break; } Report.SetDataSource(rptds); SetParameters(Report); }
public void ReprintZRead() { DialogResult result = GetWriteAccess(mclsSalesTransactionDetails.CashierID, AccessTypes.ReprintZRead); if (result == DialogResult.None) { LogInWnd login = new LogInWnd(); login.AccessType = AccessTypes.PrintZRead; login.Header = "Re-Print ZREAD Report"; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); result = login.Result; login.Close(); login.Dispose(); } if (result == DialogResult.OK) { bool boWithTF = true; TerminalHistoryDateWnd clsTerminalHistoryDateWnd = new TerminalHistoryDateWnd(); clsTerminalHistoryDateWnd.TerminalDetails = mclsTerminalDetails; clsTerminalHistoryDateWnd.WithTF = boWithTF; clsTerminalHistoryDateWnd.ShowDialog(this); DialogResult clsTerminalHistoryDateWndresult = clsTerminalHistoryDateWnd.Result; DateTime dtDateLastInitialized = clsTerminalHistoryDateWnd.DateLastInitialized; Keys keyCommand = clsTerminalHistoryDateWnd.keyCommand; clsTerminalHistoryDateWnd.Close(); clsTerminalHistoryDateWnd.Dispose(); if (clsTerminalHistoryDateWndresult == System.Windows.Forms.DialogResult.OK) { Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(mConnection, mTransaction); mConnection = clsTerminalReportHistory.Connection; mTransaction = clsTerminalReportHistory.Transaction; if (keyCommand == Keys.F12) //override boWithTF, so that it will get the actual if it is an F12 { boWithTF = false; } // get the details, boWithTF will determine if it will be selected from esales or from actual Data.TerminalReportDetails Details = clsTerminalReportHistory.Details(mclsTerminalDetails.BranchDetails.BranchID, mclsTerminalDetails.TerminalNo, dtDateLastInitialized, boWithTF); clsTerminalReportHistory.CommitAndDispose(); decimal OldTrustFund = mclsTerminalDetails.TrustFund; if (keyCommand == Keys.F12) //override even if boWithTF=true { mclsTerminalDetails.TrustFund = 0; Details.TrustFund = 0; } else { mclsTerminalDetails.TrustFund = Details.TrustFund; } AceSoft.Common.SYSTEMTIME st = new AceSoft.Common.SYSTEMTIME(); // set the sytem date to NextDetails DateLastInitialized st = AceSoft.Common.ConvertToSystemTime(Details.DateLastInitialized.AddSeconds(-2).ToUniversalTime()); mdtCurrentDateTime = DateTime.Now; tmr.Enabled = true; tmr.Start(); AceSoft.Common.SetSystemTime(ref st); TerminalReportWnd clsTerminalReportWnd = new TerminalReportWnd(); clsTerminalReportWnd.SysConfigDetails = mclsSysConfigDetails; clsTerminalReportWnd.TerminalDetails = mclsTerminalDetails; clsTerminalReportWnd.Details = Details; clsTerminalReportWnd.CashierName = mCashierName; clsTerminalReportWnd.TerminalReportType = TerminalReportType.ZRead; clsTerminalReportWnd.ShowDialog(this); result = clsTerminalReportWnd.Result; clsTerminalReportWnd.Close(); clsTerminalReportWnd.Dispose(); if (result == DialogResult.OK) { //PrintZReadDelegate printzreadDel = new PrintZReadDelegate(PrintZRead); //printzreadDel.BeginInvoke(Details, null, null); RePrintZRead(Details); InsertAuditLog(AccessTypes.ReprintZRead, "Re-Print ZRead report: TerminalNo=" + mclsTerminalDetails.TerminalNo + " DateLastInitialized=" + dtDateLastInitialized.ToString("yyyy-MM-dd hh:mm") + " @ Branch: " + mclsTerminalDetails.BranchDetails.BranchCode); } // set the sytem date to NextDetails DateLastInitialized st = AceSoft.Common.ConvertToSystemTime(mdtCurrentDateTime.ToUniversalTime()); AceSoft.Common.SetSystemTime(ref st); tmr.Stop(); tmr.Enabled = false; mclsTerminalDetails.TrustFund = OldTrustFund; } } }
private void InitializeZRead(bool boWithOutTF) { if (!SuspendTransactionAndContinue()) return; DialogResult loginresult = GetWriteAccessAndLogin(mclsSalesTransactionDetails.CashierID, AccessTypes.InitializeZRead); if (loginresult == DialogResult.OK) { Data.SalesTransactions clsSales = new Data.SalesTransactions(mConnection, mTransaction); mConnection = clsSales.Connection; mTransaction = clsSales.Transaction; int count = clsSales.CountSuspended(mclsTerminalDetails.TerminalNo, 0, mclsTerminalDetails.BranchID); clsSales.CommitAndDispose(); if (count != 0) { if (MessageBox.Show("There are suspended transactions for this day. Please CLOSE the transactions first or press 'OK' to continue Z-Read... " + Environment.NewLine + Environment.NewLine + " Note: All Suspended transaction will be automatically VOID.", "RetailPlus", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == System.Windows.Forms.DialogResult.Cancel) { return; } } if (IsDateLastInitializationOK() == false) { return; } if (MessageBox.Show("Warning!!! Z-Read will be initialized...Press OK to continue.", "RetailPlus", MessageBoxButtons.OKCancel , MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.OK) { Cursor.Current = Cursors.WaitCursor; try { clsEvent.AddEvent("[" + lblCashier.Text + "] Initializing ZReading.",true); PrintZRead(true); Data.TerminalReport clsTerminalReport = new Data.TerminalReport(mConnection, mTransaction); mConnection = clsTerminalReport.Connection; mTransaction = clsTerminalReport.Transaction; // Dec 01, 2008 Lemuel E. Aceron // added the IsCashCountInitialized for // 1 time Cash count every printing of report. Data.Terminal clsTerminal = new Data.Terminal(mConnection, mTransaction); mConnection = clsTerminal.Connection; mTransaction = clsTerminal.Transaction; clsTerminal.UpdateIsCashCountInitialized(mclsTerminalDetails.BranchID, mclsTerminalDetails.TerminalNo, mclsSalesTransactionDetails.CashierID, false); //initialize Z-Read clsTerminalReport.InitializeZRead(mclsTerminalDetails.BranchID, mclsTerminalDetails.TerminalNo, mclsSalesTransactionDetails.CashierName, Constants.C_DATE_MIN_VALUE, boWithOutTF); InsertAuditLog(AccessTypes.InitializeZRead, "Initialize Z-Read." + " [Branch]:" + mclsTerminalDetails.BranchDetails.BranchCode + " [TerminalNo]" + mclsTerminalDetails.TerminalNo); DateTime dteMAXDateLastInitialized = DateTime.MinValue; // May 21, 2009 Lemuel E. Aceron // added the for auto FTP of file for RLC // get the maxdatelastinitialized if (CONFIG.MallCode.ToUpper() == MallCodes.RLC) { Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(mConnection, mTransaction); mConnection = clsTerminalReportHistory.Connection; mTransaction = clsTerminalReportHistory.Transaction; dteMAXDateLastInitialized = clsTerminalReportHistory.MINDateLastInitialized(mclsTerminalDetails.BranchID, mclsTerminalDetails.TerminalNo, DateTime.Now); } clsTerminalReport.CommitAndDispose(); clsEvent.AddEventLn("Done!", true); MessageBox.Show("Z-Read has been initialized for [Branch]:" + mclsTerminalDetails.BranchDetails.BranchCode + " [TerminalNo]" + mclsTerminalDetails.TerminalNo + "...", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Information); // May 21, 2009 Lemuel E. Aceron // added the for auto FTP of file for RLC // send the data to RLC if (CONFIG.MallCode.ToUpper() == MallCodes.RLC) ProcessMallForwarder(dteMAXDateLastInitialized, true); // 23Mar2015 : Initialize all reading with the same ORSeriesBranchID and ORSeriesTerminalNo InitializeAllZreadWithSameORSeries(boWithOutTF); LoggedOutCashier(false); } catch (Exception ex) { InsertErrorLogToFile(ex, "ERRROR!!! Initializing ZREAD for [Branch]:" + mclsTerminalDetails.BranchDetails.BranchCode + " [TerminalNo]" + mclsTerminalDetails.TerminalNo); } Cursor.Current = Cursors.Default; } } }
private void LoadOptions() { Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); System.Data.DataTable dt = clsTerminalReportHistory.DatesLastInitializedForRLC(TerminalDetails.BranchID, TerminalDetails.TerminalNo, Convert.ToDateTime(txtDateFrom.Text), Convert.ToDateTime(txtDateTo.Text)); clsTerminalReportHistory.CommitAndDispose(); cboDate.DataSource = null; cboDate.DisplayMember = "DateLastInitializedDisplay"; cboDate.ValueMember = "DateLastInitialized"; cboDate.DataSource = dt.DefaultView; if (cboDate.Items.Count <= 0) { cboDate.DataSource = null; cboDate.Items.Clear(); cboDate.Items.Add("No valid date"); } cboDate.SelectedIndex = 0; if (CONFIG.MallCode.ToUpper() == MallCodes.RLC) grpRLC.Visible = true; }
public void InitializeAllZreadWithSameORSeries(bool boWithOutTF) { try { Cursor.Current = Cursors.WaitCursor; Data.Terminal clsTerminal = new Data.Terminal(mConnection, mTransaction); mConnection = clsTerminal.Connection; mTransaction = clsTerminal.Transaction; Data.TerminalReport clsTerminalReport = new Data.TerminalReport(mConnection, mTransaction); mConnection = clsTerminalReport.Connection; mTransaction = clsTerminalReport.Transaction; AccessUser clsUser = new AccessUser(mConnection, mTransaction); mConnection = clsUser.Connection; mTransaction = clsUser.Transaction; System.Data.DataTable dt = clsTerminal.ListORSeries(mclsTerminalDetails.ORSeriesTerminalNo); foreach (System.Data.DataRow dr in dt.Rows) { Int32 iBranchID = Int32.Parse(dr["BranchID"].ToString()); string stTerminalNo = dr["TerminalNo"].ToString(); clsEvent.AddEventLn("Getting Terminal Info BranchID: " + iBranchID.ToString() + " Terminalno:" + stTerminalNo, true); mclsTerminalDetails = clsTerminal.Details(iBranchID, stTerminalNo); mclsSalesTransactionDetails.CashierID = clsTerminal.getLastLoggedCashierID(mclsTerminalDetails.BranchDetails.BranchID, mclsTerminalDetails.TerminalNo); if (mclsSalesTransactionDetails.CashierID == 0) mclsSalesTransactionDetails.CashierID = Convert.ToInt64(lblCashier.Tag); AccessUserDetails details = clsUser.Details(mclsSalesTransactionDetails.CashierID); mclsSalesTransactionDetails.CashierName = details.Name; if (IsDateLastInitializationOK(false)) { try { clsEvent.AddEvent("[" + lblCashier.Text + "] Initializing ZReading.", true); PrintZRead(false); // Dec 01, 2008 Lemuel E. Aceron // added the IsCashCountInitialized for // 1 time Cash count every printing of report. clsTerminal.UpdateIsCashCountInitialized(mclsTerminalDetails.BranchID, mclsTerminalDetails.TerminalNo, mclsSalesTransactionDetails.CashierID, false); //initialize Z-Read clsTerminalReport.InitializeZRead(mclsTerminalDetails.BranchID, mclsTerminalDetails.TerminalNo, mclsSalesTransactionDetails.CashierName, Constants.C_DATE_MIN_VALUE, boWithOutTF); InsertAuditLog(AccessTypes.InitializeZRead, "Initialize Z-Read." + " [Branch]:" + mclsTerminalDetails.BranchDetails.BranchCode + " [TerminalNo]" + mclsTerminalDetails.TerminalNo); DateTime dteMAXDateLastInitialized = DateTime.MinValue; // May 21, 2009 Lemuel E. Aceron // added the for auto FTP of file for RLC // get the maxdatelastinitialized if (CONFIG.MallCode.ToUpper() == MallCodes.RLC) { Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(mConnection, mTransaction); mConnection = clsTerminalReportHistory.Connection; mTransaction = clsTerminalReportHistory.Transaction; dteMAXDateLastInitialized = clsTerminalReportHistory.MINDateLastInitialized(mclsTerminalDetails.BranchID, mclsTerminalDetails.TerminalNo, DateTime.Now); } clsEvent.AddEventLn("Done!", true); MessageBox.Show("Z-Read has been initialized for [Branch]:" + mclsTerminalDetails.BranchDetails.BranchCode + " [TerminalNo]" + mclsTerminalDetails.TerminalNo + "...", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Information); // May 21, 2009 Lemuel E. Aceron // added the for auto FTP of file for RLC // send the data to RLC if (CONFIG.MallCode.ToUpper() == MallCodes.RLC) ProcessMallForwarder(dteMAXDateLastInitialized, true); } catch (Exception ex) { InsertErrorLogToFile(ex, "ERRROR!!! Initializing ZREAD for [Branch]:" + mclsTerminalDetails.BranchDetails.BranchCode + " [TerminalNo]" + mclsTerminalDetails.TerminalNo); } } } clsTerminal.CommitAndDispose(); Cursor.Current = Cursors.Default; } catch (Exception ex) { InsertErrorLogToFile(ex, "ERRROR!!! Initializing ALL ZREAD [ORSeriesBranchID]:" + mclsTerminalDetails.ORSeriesBranchID.ToString() + " [ORSeriesTerminalNo]" + mclsTerminalDetails.ORSeriesTerminalNo); } // 23Mar2015 : Needed to do this mclsSalesTransactionDetails.CashierID = Convert.ToInt64(lblCashier.Tag); mclsSalesTransactionDetails.CashierName = lblCashier.Text; }
public bool CreateAndTransferFile(Int32 BranchID, string TerminalNo, DateTime pvtDateInitialized) { bool bolRetValue = false; DateTime dteDateToprocess = pvtDateInitialized; Event clsEvent = new Event(); try { clsEvent.AddEventLn("Starting RLC FILE CREATOR.", true); clsEvent.AddEventLn("==================================================", true); clsEvent.AddEventLn("= RLC FILE CREATOR =", true); clsEvent.AddEventLn("==================================================", true); /*********************************************************************** * Check the destination dir if existing. * ********************************************************************/ clsEvent.AddEventLn("Checking directory settings.", true); string dir = mclsRLCDetails.OutputDirectory; dir = dir.Replace("{YYYY}", DateTime.Now.ToString("yyyy")); dir = dir.Replace("{MM}", DateTime.Now.ToString("MM")); dir = dir.Replace("{MMM}", DateTime.Now.ToString("MMM")); dir = dir.Replace("{MMMM}", DateTime.Now.ToString("MMMM")); if (!System.IO.Directory.Exists(dir)) { clsEvent.AddEventLn("Directory [" + dir + "] does not exist.", true); System.IO.Directory.CreateDirectory(dir); } else { clsEvent.AddEventLn("Directory [" + dir + "] exist.", true); } mclsRLCDetails.OutputDirectory = dir; /*********************************************************************** * GET The report of Current Terminal using Specified InitializationDate * ********************************************************************/ Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(); Data.TerminalReportDetails clsTerminalReportDetail = clsTerminalReportHistory.Details(BranchID, TerminalNo, dteDateToprocess); Data.SalesTransactions clsSalesTransactions = new Data.SalesTransactions(clsTerminalReportHistory.Connection, clsTerminalReportHistory.Transaction); long lngSeniorCitizenDiscountCount = 0; decimal decSeniorCitizenDiscount = clsSalesTransactions.SeniorCitizenDiscounts(clsTerminalReportDetail.BranchID, clsTerminalReportDetail.TerminalNo, clsTerminalReportDetail.BeginningTransactionNo, clsTerminalReportDetail.EndingTransactionNo, out lngSeniorCitizenDiscountCount); long lngPWDDiscountCount = 0; decimal decPWDDiscount = clsSalesTransactions.PersonWithDisabilityDiscounts(clsTerminalReportDetail.BranchID, clsTerminalReportDetail.TerminalNo, clsTerminalReportDetail.BeginningTransactionNo, clsTerminalReportDetail.EndingTransactionNo, out lngPWDDiscountCount); string stDailyTableName = CreateDailySales(dteDateToprocess, clsTerminalReportDetail, decSeniorCitizenDiscount, lngSeniorCitizenDiscountCount, decPWDDiscount, lngPWDDiscountCount); clsTerminalReportHistory.CommitAndDispose(); bool bolTransferFile = TransferFile(stDailyTableName); if (bolTransferFile ) { clsTerminalReportHistory = new Data.TerminalReportHistory(); clsTerminalReportHistory.UpdateTerminalReportBatchCounter(clsTerminalReportDetail.TerminalNo, dteDateToprocess); clsTerminalReportHistory.UpdateTerminalReportIsMallFileUploadComplete(clsTerminalReportDetail.TerminalNo, dteDateToprocess, true); if (clsTerminalReportDetail.BatchCounter == 1) clsTerminalReportHistory.UpdateTerminalReportMallForwarderFileName(clsTerminalReportDetail.TerminalNo, dteDateToprocess, stDailyTableName); clsTerminalReportHistory.CommitAndDispose(); bolRetValue = true; } clsEvent.AddEventLn("Record for [" + dteDateToprocess.ToString("yyyy-MM-dd HH:mm:ss") + "] BacthCounter:" + clsTerminalReportDetail.BatchCounter.ToString() + " has been created for RLC.", true); } catch (Exception ex) { clsEvent.AddErrorEventLn(ex); throw ex; } clsEvent.AddEventLn("RLC FILE CREATOR exited.", true); return bolRetValue; }