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 StartTransactionDate = DateTime.MinValue; StartTransactionDate = DateTime.TryParse(txtStartTransactionDate.Text + " " + txtStartTime.Text, out StartTransactionDate) ? StartTransactionDate : DateTime.MinValue; DateTime EndTransactionDate = DateTime.MinValue; 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); } string strReportType = cboReportType.SelectedValue; switch (strReportType) { case ReportTypes.ANALYTICS_All: case ReportTypes.ANALYTICS_All_Covers: #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); 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.ANALYTICS_ItemsForPOBasedOnSales: #region Items For PO Based On Sales 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); if (cboProductGroup.Text == Constants.ALL) dt = clsSalesTransactionItems.SalesPerItem(TransactionNo, CustomerName, CashierName, TerminalNo, StartTransactionDate, EndTransactionDate, Status, PaymentType, enumSaleperItemFilterType); else dt = clsSalesTransactionItems.SalesPerItemByGroupProc(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 default: break; } Report.SetDataSource(rptds); SetParameters(Report); }