Exemplo n.º 1
0
		private void SetDataSource(ReportDocument Report)
		{
			ReportDataset rptds = new ReportDataset();

			DateTime PostingDateFrom = DateTime.MinValue;
			try
			{	PostingDateFrom = Convert.ToDateTime(txtStartDate.Text + " " + txtStartTime.Text);	}
			catch{}
			DateTime PostingDateTo = DateTime.MinValue;
			try
			{	PostingDateTo = Convert.ToDateTime(txtEndDate.Text + " " + txtEndTime.Text);	}
			catch{}

			System.Data.DataTable dt;
			string ReportType = cboReportType.SelectedItem.Text;

			switch (ReportType)
			{
				case "Posted PO":
					Data.PO clsPO = new Data.PO();
                    dt = clsPO.ListAsDataTable(POStatus.Posted, new Data.PODetails(), Constants.C_DATE_MIN_VALUE, Constants.C_DATE_MIN_VALUE, PostingDateFrom, PostingDateTo);
					clsPO.CommitAndDispose();

					foreach(System.Data.DataRow dr in dt.Rows)
					{
						DataRow drPO = rptds.PO.NewRow();

						foreach (DataColumn dc in rptds.PO.Columns)
							drPO[dc] = dr[dc.ColumnName];

						rptds.PO.Rows.Add(drPO);
					}
					break;
				case "Posted PO Returns":
					Data.POReturns clsPOReturns = new Data.POReturns();
					dt =  clsPOReturns.ListAsDataTable(POReturnStatus.Posted, PostingStartDate: PostingDateFrom, PostingEndDate: PostingDateTo);
					clsPOReturns.CommitAndDispose();

					foreach(System.Data.DataRow dr in dt.Rows)
					{
						DataRow drPOReturns = rptds.POReturns.NewRow();

						foreach (DataColumn dc in rptds.POReturns.Columns)
							drPOReturns[dc] = dr[dc.ColumnName];

						rptds.POReturns.Rows.Add(drPOReturns);
					}
					break;
				case "Posted Debit Memo":
					Data.DebitMemos clsDebitMemos = new Data.DebitMemos();
					dt =  clsDebitMemos.ListAsDataTable(DebitMemoStatus.Posted, PostingStartDate: PostingDateFrom, PostingEndDate: PostingDateTo);
					clsDebitMemos.CommitAndDispose();

					foreach(System.Data.DataRow dr in dt.Rows)
					{
						DataRow drDebitMemos = rptds.DebitMemo.NewRow();

						foreach (DataColumn dc in rptds.DebitMemo.Columns)
							drDebitMemos[dc] = dr[dc.ColumnName];

						rptds.DebitMemo.Rows.Add(drDebitMemos);
					}
					break;
				case "By Vendor":
					Data.PurchaseAnalysis clsPurchaseAnalysis = new Data.PurchaseAnalysis();
					dt = clsPurchaseAnalysis.ByVendor(PostingDateFrom, PostingDateTo);
					clsPurchaseAnalysis.CommitAndDispose();

					foreach(System.Data.DataRow dr in dt.Rows)
					{
						DataRow drPAByVendor = rptds.PurchaseAnalysisPerVendor.NewRow();

						foreach (DataColumn dc in rptds.PurchaseAnalysisPerVendor.Columns)
							drPAByVendor[dc] = dr[dc.ColumnName];

						rptds.PurchaseAnalysisPerVendor.Rows.Add(drPAByVendor);
					}
					break;

				default:
					break;
			}

			Report.SetDataSource(rptds); 

			SetParameters(Report);

		}