public void DisplayData(int intInvoiceID) { DataSet dsInvoicer = null; try { //InvoicerDataSetTableAdapters.ClientTableAdapter objClient = new InvoicerDataSetTableAdapters.ClientTableAdapter(); InvoicerDataSetTableAdapters.InvoiceTableAdapter objInvoice = new InvoicerDataSetTableAdapters.InvoiceTableAdapter(); InvoicerDataSetTableAdapters.LineItemTableAdapter objLineItem = new InvoicerDataSetTableAdapters.LineItemTableAdapter(); dsInvoicer = new DataSet(); DataTable dtInvoice = objInvoice.GetDataByID(intInvoiceID); if (dtInvoice.Rows.Count > 0) { foreach (DataRow drInvoice in dtInvoice.Rows) { //SELECT AddressFlag, CGST, ClientID, DCNoDate, Discount, Freight, GSTIN, IGST, InvoiceDate, //InvoiceID, InvoicePath, LineAmount, OrderDate, OrderNo, SGST, StateCode, //SubTotal, TaxAmount, TotalAmount FROM Invoice WHERE (InvoiceID = ?) cmbClient.SelectedValue = drInvoice["ClientID"].ToString(); txtInvoiceID.Text = drInvoice["InvoiceID"].ToString(); txtInvoiceNo.Text = drInvoice["InvoiceNo"].ToString().PadLeft(3, '0'); dtInvoiceDate.Text = drInvoice["InvoiceDate"].ToString(); dtDCDate.Text = drInvoice["DCNoDate"].ToString(); dtRefDate.Text = drInvoice["OrderDate"].ToString(); txtRefNo.Text = drInvoice["OrderNo"].ToString(); txtCGST.Text = drInvoice["CGST"].ToString(); txtSGST.Text = drInvoice["SGST"].ToString(); txtIGST.Text = drInvoice["IGST"].ToString(); txtDiscount.Text = drInvoice["Discount"].ToString(); txtGSTIN.Text = drInvoice["GSTIN"].ToString(); txtStateCode.Text = drInvoice["StateCode"].ToString(); radOldAddr.Checked = drInvoice["AddressFlag"].ToString() == "True" ? false : true; txtTaxAmount.Text = drInvoice["TaxAmount"].ToString(); txtLineAmount.Text = drInvoice["LineAmount"].ToString(); txtTotalDiscount.Text = drInvoice["SubTotal"].ToString(); txtTotalAmount.Text = drInvoice["TotalAmount"].ToString(); DataTable dtLineItem = objLineItem.GetDataByID(intInvoiceID); lineItemBindingSource.DataSource = dtLineItem.AsDataView(); if (dtLineItem.Rows.Count > 0) { txtHSNCode.Text = dtLineItem.Rows[0]["HSNCode"].ToString(); } else { txtHSNCode.Text = ConfigurationManager.AppSettings["HSNCODE"].ToString(); } dgInvoicer.DataSource = lineItemBindingSource; dgInvoicer.Refresh(); } } else { cmbClient.SelectedValue = 0; //txtInvoiceNo.Text = drInvoice["InvoiceID"].ToString().PadLeft(3, '0'); dtInvoiceDate.Text = DateTime.Now.ToShortDateString(); dtDCDate.Text = DateTime.Now.ToShortDateString(); dtRefDate.Text = DateTime.Now.ToShortDateString(); txtRefNo.Text = ""; txtCGST.Text = "0"; txtSGST.Text = "0"; txtIGST.Text = "0"; txtDiscount.Text = "0"; txtGSTIN.Text = ConfigurationManager.AppSettings["GSTIN"].ToString(); txtStateCode.Text = ConfigurationManager.AppSettings["STATECODE"].ToString(); txtHSNCode.Text = ConfigurationManager.AppSettings["HSNCODE"].ToString(); radOldAddr.Checked = false; txtTaxAmount.Text = "0"; txtLineAmount.Text = "0"; txtTotalDiscount.Text = "0"; txtTotalAmount.Text = "0"; //DataTable dtLineItem = objLineItem.GetDataByID(0); lineItemBindingSource.DataSource = objLineItem.GetDataByID(0).AsDataView(); dgInvoicer.DataSource = lineItemBindingSource; dgInvoicer.Refresh(); //this.invoicerDataSetBindingSource = objLineItem.GetDataByID(0); //BindingSource DT = (BindingSource)lineItemBindingSource.DataSource; //if (DT != null) // ((DataView)DT.List).Clear(); //this.lineItemBindingSource = this.invoicerDataSetBindingSource; //this.lineItemBindingSource.DataMember = "LineItem"; //dgInvoicer.Update(); } } catch (Exception excLocal) { throw excLocal; } }
public static bool GeneratePDFReport(int intInvoiceid, string strClientName) { string strSourceRptPath; string strReportOutputPath; string strFileName = String.Empty; DataSet dsInvoicer = null; ReportDocument rptDoc = null; try { InvoicerDataSetTableAdapters.ClientTableAdapter objClient = new InvoicerDataSetTableAdapters.ClientTableAdapter(); InvoicerDataSetTableAdapters.InvoiceTableAdapter objInvoice = new InvoicerDataSetTableAdapters.InvoiceTableAdapter(); InvoicerDataSetTableAdapters.LineItemTableAdapter objLineItem = new InvoicerDataSetTableAdapters.LineItemTableAdapter(); dsInvoicer = new DataSet(); DataTable dtInvoice = objInvoice.GetDataByID(intInvoiceid); if (dtInvoice.Rows.Count > 0) { strSourceRptPath = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().CodeBase.ToString()).ToString() + @"\"; strSourceRptPath = strSourceRptPath.Replace(@"file:\", ""); //Create a new Report Document object rptDoc = new ReportDocument(); rptDoc.Load(strSourceRptPath + "rptInvoiceDetails.rpt"); //DbConnectionStringBuilder builder = new DbConnectionStringBuilder(); //Invoicer.Properties.Settings objsettings = new Properties.Settings(); ////builder.ConnectionString = ConfigurationManager.ConnectionStrings["Invoicer.Properties.Settings.InvoicerConnectionString"].ConnectionString; //builder.ConnectionString = objsettings.InvoicerConnectionString.ToString(); //string databasepath = builder["Data Source"] as string; string databasepath = ConfigurationManager.AppSettings["InvoiceDBPath"].ToString(); ////change path of the database rptDoc.DataSourceConnections[0].SetConnection("", databasepath, false); ////'' if password is given then give the password ////'' if not give it will ask at runtime rptDoc.DataSourceConnections[0].SetLogon("admin", ""); //SetReportLogon(rptDoc, "RXP", null); rptDoc.SetParameterValue("InvoiceID", intInvoiceid); //rptDoc.SetParameterValue("ADDRESS", ConfigurationManager.AppSettings["ADDRESS"].ToString()); // Stream objstream = rptDoc.ExportToStream(ExportFormatType.PortableDocFormat); dsInvoicer.Tables.Add(objClient.GetDataByID(Convert.ToInt32(dtInvoice.Rows[0]["ClientID"].ToString()))); dsInvoicer.Tables.Add(dtInvoice); dsInvoicer.Tables.Add(objLineItem.GetDataByID(intInvoiceid)); rptDoc.SetDataSource(dsInvoicer); //strReportOutputPath = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().CodeBase.ToString()).ToString() + @"\PDFReports\";//ConfigurationManager.AppSettings["ExportPDFPath"].ToString(); strClientName = dsInvoicer.Tables["Client"].Rows[0]["ClientName"].ToString(); strReportOutputPath = System.IO.Path.GetDirectoryName(ConfigurationManager.AppSettings["InvoicePDFPath"].ToString()) + @"\" + strClientName + @"\"; strReportOutputPath = strReportOutputPath.Replace(@"file:\", ""); //strReportOutputPath = strReportOutputPath + @"\"; if (!Directory.Exists(strReportOutputPath)) { Directory.CreateDirectory(strReportOutputPath); } string strInvNo = dtInvoice.Rows[0]["InvoiceNo"].ToString().PadLeft(3, '0'); strFileName = "Invoice_" + strInvNo + "_" + DateTime.Now.ToString("dd_MM_yyyy_hh_mm_ss") + ".pdf"; if (UpdatePDFFiles(strReportOutputPath + strFileName, intInvoiceid)) { FileInfo fileInfo = new FileInfo(strReportOutputPath + strFileName); if (fileInfo.Exists) { File.Delete(strReportOutputPath + strFileName); } } //rptDoc.PrintOptions.PaperOrientation = PaperOrientation.Portrait; //rptDoc.PrintOptions.PaperSize = PaperSize.PaperA4; //int intcount = rptDoc.Database.Tables.Count; rptDoc.ExportToDisk(ExportFormatType.PortableDocFormat, strReportOutputPath + strFileName); //rptDoc.PrintToPrinter(1, false, 0, 0); } return(true); } catch (Exception excLocal) { throw excLocal; } finally { dsInvoicer.Dispose(); //Clear Report Document object rptDoc.Close(); //rptDoc.Dispose(); rptDoc = null; } }