Exemple #1
0
        /// <summary>
        /// Generate PDF To Content
        /// </summary>
        /// <param name="content"></param>
        /// <param name="html"></param>
        /// <returns></returns>
        public byte[] GeneratePDFTOCContent(byte[] content, string html)
        {
            var reader = new PdfReader(content);
            var sb     = new StringBuilder();

            // Title of PDF
            sb.Append("<h2><strong style='text-align:center'>Demo for Load More Button in Kendo UI Grid</strong></h2><br>");

            // Begin to create TOC
            sb.Append("<table>");
            sb.Append(string.Format("<tr><td width='80%'><strong>{0}</strong></td><td align='right' width='10%'><strong>{1}</strong></td></tr>", "Section", "Page"));
            using (var ms = new MemoryStream())
            {
                // XML document generated by iText
                SimpleBookmark.ExportToXML(SimpleBookmark.GetBookmark(reader), ms, "UTF-8", false);

                // rewind to create xmlreader
                ms.Position = 0;
                using (var xr = XmlReader.Create(ms))
                {
                    xr.MoveToContent();

                    const string format = @"<tr><td width='80%'>{0}</td><td align='right' width='10%'>{1}</td></tr>";

                    // extract page number from 'Page' attribute
                    var re = new Regex(@"^\d+");
                    while (xr.Read())
                    {
                        if (xr.NodeType != XmlNodeType.Element || xr.Name != "Title" || !xr.IsStartElement())
                        {
                            continue;
                        }

                        var page = re.Match(xr.GetAttribute("Page")).Captures[0].Value;
                        xr.Read();

                        if (xr.NodeType != XmlNodeType.Text)
                        {
                            continue;
                        }

                        var text        = xr.Value.Trim();
                        var pageSection = int.Parse(page) + 1;
                        sb.Append(string.Format(format, text, pageSection));
                    }
                }
            }
            sb.Append("</table>");

            var workStream = new MemoryStream();
            var document   = new Document(reader.GetPageSizeWithRotation(1));
            var writer     = PdfWriter.GetInstance(document, workStream);

            writer.CloseStream = false;

            document.Open();
            document.NewPage();

            // Add TOC
            var styles = new StyleSheet();

            styles.LoadTagStyle("h2", HtmlTags.HORIZONTALALIGN, "center");
            styles.LoadTagStyle("h2", HtmlTags.COLOR, "#F90");

            foreach (IElement element in HTMLWorker.ParseToList(new StringReader(sb.ToString()), styles))
            {
                document.Add(element);
            }

            // Append your chapter content again
            var chapter = CreateChapterContent(html);

            document.Add(chapter);

            document.Close();
            writer.Close();

            var byteInfo = workStream.ToArray();

            workStream.Write(byteInfo, 0, byteInfo.Length);
            workStream.Position = 0;

            return(byteInfo);
        }
Exemple #2
0
        public override void ExecuteResult(ControllerContext context)
        {
            if (context == null)
            {
                throw new ArgumentNullException("context");
            }
            if (string.IsNullOrEmpty(this.ViewName))
            {
                this.ViewName = context.RouteData.GetRequiredString("action");
            }

            if (this.View == null)
            {
                this.View = this.FindView(context).View;
            }


            // First get the html from the Html view
            using (var writer = new StringWriter())
            {
                var vwContext = new ViewContext(context, this.View, this.ViewData, this.TempData, writer);
                this.View.Render(vwContext, writer);

                // Convert to pdf

                var response = context.HttpContext.Response;

                using (var pdfStream = new MemoryStream())
                {
                    var pdfDoc    = new Document(PageSize.A4, 20, 20, 20, 20);
                    var pdfWriter = PdfWriter.GetInstance(pdfDoc, pdfStream);
                    pdfWriter.PageEvent = new PageEventHelper();
                    pdfDoc.Open();
                    var str = writer.ToString();
                    //Regex.Replace(HTMLCode, @"(<script[^*]*</script>)", "", RegexOptions.IgnoreCase);
                    HtmlDocument doc = new HtmlDocument();
                    doc.LoadHtml(str);
                    foreach (HtmlNode row in doc.DocumentNode.SelectNodes("//tr"))
                    {
                        if (!row.InnerHtml.Contains("</td>") && !row.InnerHtml.Contains("<td>"))
                        {
                            row.Remove();
                        }
                    }
                    doc.DocumentNode.Descendants()
                    .Where(n => n.Name == "script" || n.Name == "style")
                    .ToList()
                    .ForEach(n => n.Remove());

                    str = doc.DocumentNode.InnerHtml;
                    using (var htmlRdr = new StringReader(str))
                    {
                        var parsed = HTMLWorker.ParseToList(htmlRdr, null);

                        foreach (var parsedElement in parsed)
                        {
                            if (parsedElement is PdfPTable)
                            {
                                (parsedElement as PdfPTable).SplitLate    = false;
                                (parsedElement as PdfPTable).KeepTogether = true;
                            }
                            if (parsedElement.GetType().Name.Equals("Paragraph"))
                            {
                                // cast the element to a Paragraph
                                Paragraph htmlPar = ((Paragraph)parsedElement);

                                if (htmlPar[0].ToString()
                                    .Equals("PageBreak", StringComparison.InvariantCultureIgnoreCase))
                                {
                                    pdfDoc.Add(Chunk.NEXTPAGE);
                                    continue;
                                }
                            }

                            pdfDoc.Add(parsedElement);
                        }
                    }

                    pdfDoc.Close();

                    response.ContentType = "application/pdf";
                    response.AddHeader("Content-Disposition", "attachment;filename=" + FileDownloadName + ".pdf");
                    byte[] pdfBytes = pdfStream.ToArray();
                    response.OutputStream.Write(pdfBytes, 0, pdfBytes.Length);
                }
            }
        }
        protected void gvMostrarPersonas_SelectedIndexChanged(object sender, EventArgs e)
        {
            GridViewRow gr = gvMostrarPersonas.SelectedRow;


            Document pdfDoc = new Document(PageSize.A4, 10, 10, 10, 10);

            try
            {
                PdfWriter.GetInstance(pdfDoc, System.Web.HttpContext.Current.Response.OutputStream);

                //Open PDF Document to write data
                pdfDoc.Open();


                string cadenaFinal = "";

                cadenaFinal += "<br/><br/><h2>CURRICULUM<h2/><br/><br/><br/>";
                cadenaFinal += "<TABLE BORDER='1'><TR><TD>NOMBRE :</TD><TD>" + gr.Cells[2].Text + "</TD></TR>" +
                               "<TR><TD>APELLIDOS:</TD><TD>" + gr.Cells[3].Text + "</TD></TR>" +
                               "<TR><TD>TELEFONO:</TD><TD>" + gr.Cells[4].Text + "</TD></TR>" +
                               "<TR><TD>FECHA NACIMIENTO:</TD><TD>" + gr.Cells[5].Text + "</TD></TR>" +
                               "<TR><TD>DIRECCION:</TD><TD>" + gr.Cells[6].Text + "</TD></TR>" +
                               "<TR><TD>NACIONALIDAD:</TD><TD>" + gr.Cells[7].Text + "</TD></TR>" +
                               "<TR><TD>CORREO ELECTRONICO:</TD><TD>" + gr.Cells[8].Text + "</TD></TR>" +
                               "<TR><TD>HABILIDAD ESPECIAL:</TD><TD>" + gr.Cells[9].Text + "</TD></TR>" +
                               "<TR><TD>CERTIFICACION DESTACADA:</TD><TD>" + gr.Cells[10].Text + "</TD></TR>" +
                               "<TR><TD>FECHA CERTIFICACION DESTACADA:</TD><TD>" + gr.Cells[11].Text + "</TD></TR>" +
                               "<TR><TD>CARRERA:</TD><TD>" + gr.Cells[12].Text + "</TD></TR>" +
                               "<TR><TD>GRADO ACADEMICO:</TD><TD>" + gr.Cells[13].Text + "</TD></TR>" +
                               "<TR><TD>ULTIMA PROFESION:</TD><TD>" + gr.Cells[14].Text + "</TD></TR>" +
                               "<TR><TD>SEGUNDO IDIOMA :</TD><TD>" + gr.Cells[16].Text + "</TD></TR></TABLE>";
                //Assign Html content in a string to write in PDF
                string strContent = cadenaFinal;

                //Read string contents using stream reader and convert html to parsed conent
                var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(strContent), null);

                //Get each array values from parsed elements and add to the PDF document
                foreach (var htmlElement in parsedHtmlElements)
                {
                    pdfDoc.Add(htmlElement as IElement);
                }

                //Close your PDF
                pdfDoc.Close();

                Response.ContentType = "application/pdf";

                //Set default file Name as current datetime
                Response.AddHeader("content-disposition", "attachment; filename=" + gr.Cells[2].Text + "_CV.pdf");
                System.Web.HttpContext.Current.Response.Write(pdfDoc);

                Response.Flush();
                Response.End();
            }
            catch (Exception ex)
            {
                Response.Write(ex.ToString());
            }
        }
Exemple #4
0
        public string GetRecibo(string tranferId,
                                string username,
                                string numReceipt,
                                string date,
                                string nAffiliate,
                                string typeMembresia,
                                string namePeson,
                                string hour,
                                string detalle,
                                string quotesPendiente,
                                string concepto,
                                string cod)
        {
            string fechaVar   = DateTime.Now.ToString("yyyyMMddHHmmss");
            string nameTicket = cod + username + "_" + tranferId + fechaVar;
            string dni        = username.Substring(2, (username.Length - 2));

            using (Document document = new Document(PageSize.A4, 10, 10, 10, 10))
            {
                string     rutaImg = HttpContext.Current.Server.MapPath("~/Resources/Images/");
                string     ruta    = HttpContext.Current.Server.MapPath("~/Resources/RecibosRegister/") + nameTicket + ".pdf";
                FileStream stream  = new FileStream(ruta, FileMode.Create);
                PdfWriter.GetInstance(document, stream);
                document.Open();


                string cadenfinal = string.Empty;
                cadenfinal += "<!DOCTYPE html ><html><head><title></title></head><body>";
                cadenfinal += "<div style='font-family: sans-serif;display: block;padding:20px;margin:10px auto;width:700px;height: 700px;background-color: white;'>";
                //cadenfinal += "<img src='" + rutaImg + "rec.png' style='position: absolute;top: 24%;left:28%;opacity: 0.1;z-index:1;width:515px;'/>";
                //cadenfinal += "<div style='display:flex;justify-content:space-between;text-align:center;' >";
                //cadenfinal += "<img src='" + rutaImg + "rec.png'/>";
                //cadenfinal += "<div><div style='font-size: 24px' ><b> RECIBO </b> Nro. 002044 </div><label> 20 de marzo del 2019 </label></div></div>";
                cadenfinal += "<div><img src='" + rutaImg + "rec.png' style='position: absolute;top: 24%;left:28%;opacity: 0.1;z-index:1;width:515px;'></div>";

                cadenfinal += "<div style='display:block;margin:10px auto;text-align: center;' ><h2><b> VALLE ENCANTADO S.A.C </b></h2>";
                cadenfinal += "<h4><b> RUC 20601460271 </b></h4></div><div style='display: flex;justify-content: space-between;'>";
                //cadenfinal += "<div style='display:block' ><div style='margin:5px 0'><b> Nro. MEMBRESIA:</b> AR00101 </div>";
                cadenfinal += "<div style='display:block' ><div style='margin:5px 0'><b> Codigo:</b> " + username + " </div>";
                cadenfinal += "<label><b> Nombre: </b> " + namePeson.ToUpper() + "</label></div><div><div><b> Codido Membresia: </b>" + typeMembresia + "</div>";
                cadenfinal += "<label><b> DNI: </b> " + dni + " </label></div></div><div style = 'margin:15px auto;'><label><B> Codigo de operacion: </B> " + tranferId + " </label>";
                cadenfinal += "</div>";
                cadenfinal += "<div style='margin: 15px auto' ><b> Fecha: </b>" + date + " HORA: " + hour + " </div>";
                cadenfinal += "<div style='margin: 15px auto' ><b> Concepto: </b> " + concepto + " </div>";
                cadenfinal += "<div style='margin: 15px auto' ><b> Monto: </b>" + detalle + " </div>";
                cadenfinal += "<div style='margin: 15px auto' ><b> Cuotas pendientes: </b>" + quotesPendiente + " </div>";

                //cadenfinal += "<div style='border:1px solid grey;display: flex;justify-content: space-around;' ><div style='border:2px solid grey;width: 25%;text-align: center;'>";
                //cadenfinal += "<div style='border-bottom: 2px solid grey;font-weight: bold; background-color: #d6d6d6'> CONCEPTO </div>";
                //cadenfinal += "<label> CUOTA 1°</label></div><div style = 'border:2px solid grey;width:25%;text-align: center;'>";
                //cadenfinal += "<div style='border-bottom: 2px solid grey;font-weight: bold; background-color: #d6d6d6'> MONTO </div>";
                //cadenfinal += "<label> 2437.00 </label></div><div style = 'border:2px solid grey;width: 25%;text-align: center;'>";
                //cadenfinal += "<div style='border-bottom: 2px solid grey;font-weight: bold; background-color: #d6d6d6'> INTERÉS </div>";
                //cadenfinal += "<label> 00.00 </label></div><div style = 'border:2px solid grey;width: 25%;text-align: center;' >";
                //cadenfinal += "<div style='border-bottom: 2px solid grey;font-weight: bold; background-color: #d6d6d6' > TOTAL </div>";
                //cadenfinal += "<label> 2437.00 </label></div></div><div style='display: flex;justify-content: space-between;'>";
                //cadenfinal += "<label style='margin: 20px'> CUOTAS PENDIENTES: 0 </label><div style=';text-align: center;";
                //cadenfinal += "display: flex;margin: 10px 0px;background-color: white;border: 1px solid grey;' >";
                //cadenfinal += "<div style='width: 160px;padding:7px 5px;border: 2px solid grey'><b> TOTAL PAGADO </b></div>";
                //cadenfinal += "<div style='width: 160px;padding:5px 5px;border: 2px solid grey'> S /. 2437.00 </div>";
                //cadenfinal += "</div></div><div style='font-size: 14px;margin: 30px 0'><div> VALLE ENCANTADO S.A.C - RUC 20601460271 </div>";
                //cadenfinal += "<div>AV.GUARDIA CIVIL 1321 EDIFICIO CONEXION LIMA OFICINA 602 </div>";
                //cadenfinal += "<div>FIJO: 01 - 4349481 / 01 - 4799174 </div><div> CELULAR / WHATSAPP: 938627349 / 938627411 / 938627011 </div>";
                //cadenfinal += "<div>CORREO: SOCIOS @CIENEGUILLARIBERADELRIO.COM</div></div>";
                cadenfinal += "</div></body></html>";

                var styles = new StyleSheet();
                Dictionary <string, string> cuadro = new Dictionary <string, string>();
                cuadro.Add("font-family", "sans-serif");
                cuadro.Add("display", "block");
                cuadro.Add("padding", "20px");
                cuadro.Add("margin", "10px auto");
                cuadro.Add("width", "700px");
                cuadro.Add("height", "700px");
                cuadro.Add("background-color", "green");

                styles.LoadStyle("cuadro", cuadro);

                var parsehtml = HTMLWorker.ParseToList(new StringReader(cadenfinal), null);

                foreach (var htmlElement in parsehtml)
                {
                    document.Add(htmlElement as IElement);
                }
                document.Close();
            }

            return(nameTicket + ".pdf");
        }
    protected void Button1_Click(object sender, EventArgs e)
    {
        // Create a Document object
        var document = new Document(PageSize.A4, 50, 50, 25, 25);

        // Create a new PdfWrite object, writing the output to a MemoryStream
        var output = new MemoryStream();
        var writer = PdfWriter.GetInstance(document, output);

        // Open the Document for writing
        document.Open();

        // Read in the contents of the Receipt.htm HTML template file
        string contents = File.ReadAllText(Server.MapPath("~/HTMLTemplate/invoice.htm"));

        // Replace the placeholders with the user-specified text
        contents = contents.Replace("[ORDERDATE]", ordernumber.Text);
        contents = contents.Replace("[BILLTO]", billto.Text);
        contents = contents.Replace("[BOOKEDBY]", bookedby.Text);
        contents = contents.Replace("[TRUCK]", truck.Text);
        contents = contents.Replace("[DRIVER]", driver.Text);
        contents = contents.Replace("[PICKUPLOCATION]", pickuplocation.Text);
        contents = contents.Replace("[DROPOFFLOCATION]", dropofflocation.Text);
        contents = contents.Replace("[TOTALCHARGES]", totalcharges.Text);
        contents = contents.Replace("[TOTALCHARGES2]", totalcharges.Text);
        string newString = txtAddress.Text;

        newString = newString.Replace("\r\n", "<br>");
        contents  = contents.Replace("[ADDRESS]", newString);
        newString = txtCandTtext.Text;
        newString = newString.Replace("\r\n", "<br>");
        contents  = contents.Replace("[TandC]", newString);

        // Uses iTextSharp and fills the PDF
        var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(contents), null);

        foreach (var htmlElement in parsedHtmlElements)
        {
            document.Add(htmlElement as IElement);
        }

        // Adds an image in the upper right corner
        var logo = iTextSharp.text.Image.GetInstance(Server.MapPath("~/logos/" + (String)Session["mySessionVar2"] + "-logo.png"));

        logo.SetAbsolutePosition(40, 680);
        logo.ScaleToFit(170, 170);
        document.Add(logo);

        var logo3 = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/line2.png"));

        logo3.SetAbsolutePosition(12, 569);
        logo.ScalePercent(80);
        document.Add(logo3);

        var logo2 = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/line2.png"));

        logo2.SetAbsolutePosition(12, 492);
        logo.ScalePercent(80);
        document.Add(logo2);

        document.Close();
        Response.ContentType = "application/pdf";
        Response.AddHeader("Content-Disposition", string.Format("attachment;filename=MikesTrucking-{0}.pdf", ordernumber.Text));
        Response.BinaryWrite(output.ToArray());
    }
Exemple #6
0
    public void GeneratePDFNew(string Imagepath, string fileName, string HeaderName, GridView GridReport, Page oPage, string text)
    {
        var document = new Document(PageSize.A4, 50, 50, 25, 25);

        //  document.SetMargins(20, 20, 20, 20);
        try
        {
            // oPage.Response.Clear();
            PdfWriter.GetInstance(document, oPage.Response.OutputStream);
            // generates the grid first
            StringBuilder strB  = new StringBuilder();
            StringBuilder strB1 = new StringBuilder();
            string        str   = string.Empty;

            str = "<font size='12px' face='arial'><table width='100%' align='left' cellspacing='6'>";

            str = str + "<tr><td colspan='5' align='left'><b>" + lblCompanyName.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='left'><b>" + lblCompanyAddress.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='left'><b>Phone No:" + lblPhnNo.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='left'><b>Fax No:" + lblFaxNo.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Center'><b>Assign Stock Register</b></td></tr>";

            str = str + "<tr><td colspan='5' align='Left'></td></tr>";
            str = str + "<tr><td align='right'><b>" + "Stock No. :" + "</b></td><td align='Left'><b>" + lblStockNo.Text + "</b></td><td ></td><td  align='right'><b>" + "Stock Date:" + "</b></td><td align='left'><b>" + lblStockDate.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Left'></td></tr>";
            str = str + "<tr><td colspan='5' align='Left'></td></tr>";
            document.SetMargins(10, 10, 10, 10);
            document.Open();
            str = str + "<br><tr><td colspan='5' align='right'>" + GridViewToHtml(ReqGrid) + "</td></tr><br>";
            str = str + "<br><tr><td colspan='5'><table width='100%'><tr><td colspan='2'>Prepared By</td><td></td><td colspan='2'>Authorised By</td><td></td><td colspan='2'>Issued By</td><td></td><td colspan='2'>Received By</td></tr></br>";
            str = str + "<br><tr><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td></tr></br>";
            str = str + "<br><tr><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td></tr></br>";
            str = str + "<br><tr><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td></tr></br>";

            str = str + "<br><tr><td colspan='2'>Name & Designation</td><td></td><td colspan='2'>Name & Designation</td><td></td><td colspan='2'>Name & Designation</td><td></td><td colspan='2'>Name & Designation</td></tr></br>";
            str = str + "<br><tr><td colspan='2'>Store Incharge</td><td></td><td colspan='2'>Unit Head / Operation Manager </td><td></td><td colspan='2'>Store Incharge</td></tr></br>";
            str = str + "<br><tr><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td></tr></br>";
            str = str + "<br><tr><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td><td></td><td colspan='2'></td></tr></br>";

            str = str + "</table></td></tr></br>";
            str = str + "</table></font>";

            strB.Append(str);

            document.SetMargins(20, 20, 20, 20);
            document.Open();
            if (text.Length.Equals(0)) // export the text
            {
                //  BindMyGrid();
                using (StringWriter sWriter = new StringWriter(strB))
                {
                    using (HtmlTextWriter htWriter = new HtmlTextWriter(sWriter))
                    {
                    }
                }
            }
            else // export the grid
            {
                strB.Append(text);
            }
            // now read the Grid html one by one and add into the document object
            using (TextReader sReader = new StringReader(strB.ToString()))
            {
                iTextSharp.text.Image gif = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/MasterPages/MayurLogo.png"));
                document.Add(gif);
                List <IElement> list = HTMLWorker.ParseToList(sReader, new StyleSheet());
                foreach (IElement elm in list)
                {
                    document.Add(elm);
                }
            }
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
        finally
        {
            document.Close();
        }
    }
Exemple #7
0
    public void GeneratePDFNew(string Imagepath, string fileName, string HeaderName, GridView GridReport, GridView GridReport1, Page oPage, string text)
    {
        var document = new Document(PageSize.A4, 50, 50, 25, 25);

        //  document.SetMargins(20, 20, 20, 20);
        try
        {
            // oPage.Response.Clear();
            PdfWriter.GetInstance(document, oPage.Response.OutputStream);
            // generates the grid first
            StringBuilder strB  = new StringBuilder();
            StringBuilder strB1 = new StringBuilder();
            string        str   = string.Empty;

            str = "<font size='12px' face='arial'><table width='90%' align='left'>";

            str = str + "<tr><td colspan='4' align='left'><b>" + lblCompanyName.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='left'><b>" + lblCompanyAddress.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='left'><b>Phone No:" + lblPhnNo.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='left'><b>Fax No:" + lblFaxNo.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='Center'><b>Purchase Order</b></td></tr>";

            //str = str + "<tr><td align='Left'><b>" + "Purchase Order No. :" + "</b></td><td align='Left'><b>" + lblPono.Text + "</b></td><td  align='right'><b>" + "PurchaseOrderDate:" + "</b></td><td align='right'><b>" + lblPODate.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='Left'><b>Purchase Order No. :" + lblPono.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='Left'><b>PurchaseOrderDate:" + lblPODate.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='3' align='Left'><b>To,</b></td></tr>";
            str = str + "<tr><td colspan='3' align='Left'><b></b></td></tr>";
            str = str + "<tr><td ><b>" + lblSuplier.Text + "</b></td><td colspan='2' align='Left'></td></tr>";
            str = str + "<tr><td colspan='3' align='Left'><b>" + "" + "</b></td></tr>";
            document.SetMargins(10, 10, 10, 10);
            document.Open();
            str = str + "<br><tr><td colspan='5' align='Right'>" + GridViewToHtml(PurOrderGrid) + "</td></tr><br>";

            str = str + "<br><tr><td colspan='5' align='Left'>" + GridViewToHtml(TermsGrid) + "</td></tr><br>";

            //str = str + "<br><tr><td colspan='5' align='left'><b>Tin No:" + LblTinNo.Text + "</b></td></tr>";
            //str = str + "<br><tr><td colspan='5' align='left'><b>Vat No:" + lblVatNo.Text + "</b></td></tr>";
            //str = str + "<br><tr><td colspan='5' align='left'><b>Service Tax No No:" + lblServiceTaxNo.Text + "</b></td></tr>";

            str = str + "<br><tr><td colspan='5'><table width='100%'><tr><td width='30%'>&nbsp;</td><td>&nbsp;</td><td width='30%'>&nbsp;</td><td>&nbsp;</td><td width='30%'>&nbsp;</td></tr></br>";
            str = str + "<br><tr><td width='30%'>&nbsp;</td><td>&nbsp;</td><td width='30%'>&nbsp;</td><td>&nbsp;</td><td width='30%'>&nbsp;</td></tr></br>";
            str = str + "<br><tr><td width='30%'>Prepared By</td><td></td><td width='30%'>Accepted By</td><td></td><td width='30%'>Authorised By</td></tr></br>";
            str = str + "<br><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></br>";
            str = str + "<br><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></br>";
            str = str + "<br><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td >&nbsp;</td></tr></br>";
            str = str + "<br><tr><td>Name &amp; Designation</td><td></td><td>Name &amp; Designation</td><td></td><td>Name &amp; Designation</td></tr></br>";
            str = str + "<br><tr><td>Store Incharge</td><td>&nbsp;</td><td>Vendor: Seal &amp; Signature</td><td>&nbsp;</td><td>Unit Head/Operation Manager</td></tr></br>";
            str = str + "</table></td></tr>";
            str = str + "</table></font>";

            strB.Append(str);

            document.SetMargins(20, 20, 20, 20);
            document.Open();
            if (text.Length.Equals(0)) // export the text
            {
                //  BindMyGrid();
                using (StringWriter sWriter = new StringWriter(strB))
                {
                    using (HtmlTextWriter htWriter = new HtmlTextWriter(sWriter))
                    {
                        //grdPrice.RenderControl(htWriter);
                    }
                }
            }
            else // export the grid
            {
                strB.Append(text);
            }
            // now read the Grid html one by one and add into the document object
            using (TextReader sReader = new StringReader(strB.ToString()))
            {
                iTextSharp.text.Image gif = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/MasterPages/MayurLogo.png"));
                document.Add(gif);
                List <IElement> list = HTMLWorker.ParseToList(sReader, new StyleSheet());
                foreach (IElement elm in list)
                {
                    document.Add(elm);
                }
            }
            // oPage.Response.ContentType = "application/pdf";
            // oPage.Response.AddHeader("content-disposition", "attachment; filename=" + fileName);
            //  oPage.Response.Flush();
            //  oPage.Response.End();
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
        finally
        {
            document.Close();
        }
    }
Exemple #8
0
    public void generatePdf()
    {
        Document pdfDoc         = new Document(PageSize.A4, 10, 10, 10, 10);
        Proyecto proyecto       = crudProyecto.nomProyecto(Convert.ToInt16(vistaCertificaciones.SelectedRow.Cells[7].Text));
        String   nombreProyecto = proyecto.nomProyecto;

        try
        {
            PdfWriter.GetInstance(pdfDoc, System.Web.HttpContext.Current.Response.OutputStream);
            DateTime thisDay = DateTime.Today;
            //Open PDF Document to write data
            pdfDoc.Open();
            string cadenaFinal = "";
            String encabezado  = "";
            String firma       = "<br><br><br><br><br><br><p>___________________________&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;___________________________<br>" +
                                 "&nbsp;&nbsp;&nbsp;Ing:" + Convert.ToString(crudMaestro.nombreDirector(Convert.ToInt16(vistaCertificaciones.SelectedRow.Cells[7].Text)))
                                 + "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ing:" + lblNombre.Text + "" +
                                 "<br>&nbsp;&nbsp;&nbsp;DIRECTOR DEL PROYECTO"
                                 + "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DIRECTO DE VINCULACIÓN</p>";
            String tituloUniversidad = "<br><br><br><br><p align='center' FONT FACE='times new roman'FONT SIZE=5><b>UNIVERSIDAD DE LAS FUERZAS ARMADAS ESPE <br>" +
                                       "VIERRECTORADO DE INVESTIGACIÓN, INNOVACIÓN Y TRASNFERENCIA DE TECNOLOGÍA <br>" +
                                       "UNIDAD DE VINCULACION CON LA SOCIEDAD</b></p><br><br>";
            String cuerpo;
            string pathEspe       = Server.MapPath("/Imagenes/Logo_ESPE.png");
            string pathVincuacion = Server.MapPath("/Imagenes/logo-vinculacion.png");
            encabezado = "<TABLE><TR><TD><img src='" + pathEspe + "' Height='100' Width='100'/>" +
                         "</TD><TD><TD></TD></TD><TD><img src='" + pathVincuacion + "' Height='100' Width='100'/></TD></TR></TABLE>";
            cuerpo = "<br><br><p FONT FACE='times new roman' align='justify'FONT SIZE=5>Señor <b>" + vistaCertificaciones.SelectedRow.Cells[3].Text + " " + vistaCertificaciones.SelectedRow.Cells[4].Text + "</b>" +
                     ", con cédula de ciudadanía, <b>" + vistaCertificaciones.SelectedRow.Cells[2].Text + "</b></br>." +
                     "Quien participo en el Proyecto de Vinculación con la Sociedad, " + nombreProyecto + " " +
                     "cumpliendo con un total de<b> " + Convert.ToString(crudEstudiante.numHoras(Convert.ToInt16(vistaCertificaciones.SelectedRow.Cells[1].Text))) + "" +
                     " </b>horas de servicio a la comunidad, a partir del <b> " + Convert.ToString(Convert.ToDateTime(proyecto.fechaInicio).ToString("yyyy-MM-dd").ToString()) + "</b>, hasta <b>" + Convert.ToString(thisDay.ToString("d")) + "</b>.</p>";

            //encabezado = "<img src='" + pathEspe + "' Height='320' Width='350'/>";
            //cadenaFinal += "<TABLE BORDER='1'><TR><TD>NOMBRE :</TD><TD>GILMER</TD></TR>" +"<br></br>"+
            //                "<TR><TD>APELLIDO :</TD><TD>MELGAREJO LIMAS</TD></TR>" +
            //                "<TR><TD>EDAD :</TD><TD>24</TD></TR></TABLE>";
            cadenaFinal = encabezado + tituloUniversidad + cuerpo + firma;
            //Assign Html content in a string to write in PDF
            string strContent = cadenaFinal;

            //Read string contents using stream reader and convert html to parsed conent
            var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(strContent), null);

            //Get each array values from parsed elements and add to the PDF document
            foreach (var htmlElement in parsedHtmlElements)
            {
                pdfDoc.Add(htmlElement as IElement);
            }

            //Close your PDF
            pdfDoc.Close();

            Response.ContentType = "application/pdf";

            //Set default file Name as current datetime
            Response.AddHeader("content-disposition", "attachment; filename=certificadoVinculación.pdf");
            System.Web.HttpContext.Current.Response.Write(pdfDoc);

            Response.Flush();
            Response.End();
        }
        catch (Exception ex)
        {
            Response.Write(ex.ToString());
        }
    }
    public void GeneratePDFNew(string Imagepath, string fileName, string HeaderName, GridView GridReport, Page oPage, string text)
    {
        var document = new Document(PageSize.A4, 50, 50, 25, 25);

        //  document.SetMargins(20, 20, 20, 20);
        try
        {
            PdfWriter.GetInstance(document, oPage.Response.OutputStream);
            StringBuilder strB  = new StringBuilder();
            StringBuilder strB1 = new StringBuilder();
            string        str   = string.Empty;

            #region [pdfPrint]
            str = "<font size='12px' face='arial'><table width='100%' align='Centre'>";

            str = str + "<tr><td colspan='5' align='left'><b>" + lblCompanyName.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='left'><b>" + lblCompanyAddress.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='left'><b>Phone No:" + lblPhnNo.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='left'><b>Fax No:" + lblFaxNo.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Center'><b>Material Issue Register Details </b></td></tr>";

            str = str + "<tr><td align='right'><b>Inward No:</b></td><td align='left'><b>" + lbInwardNo.Text + "</b></td><td align='right'><b></b></td><td align='right'><b>Inward Date:</b></td><td align='left'><b>" + lblInwardDate.Text + "</b></td></tr>";
            str = str + "<tr><td align='right'><b>Bill No:</b></td><td align='left'><b>" + lbBillNo.Text + "</b></td><td align='right'><b></b></td><td align='right'><b>Inward Through:</b></td><td align='left'><b>" + lbInwardThrough.Text + "</b></td></tr>";
            str = str + "<tr><td align='right'><b>To,</b></td><td align='left'><b></b></td><td align='right'><b></b></td><td align='right'><b>Purchase Order No:</b></td><td align='left'><b>" + lblPONO.Text + "</b></td></tr>";
            str = str + "<tr><td align='right'><b></b></td><td align='left' colspan='3'><b>" + lblSupplier.Text + "</b></td><td align='left'><b></b></td></tr>";
            str = str + "<tr><td align='right'><b></b></td><td align='left' colspan='3'><b></b></td><td align='left'><b></b></td></tr>";
            str = str + "<tr><td align='right'><b>Billing Address:</b></td><td align='left' colspan='4'><b>" + lblBillingAddress.Text + "</b></td></tr>";
            str = str + "<tr><td align='right'><b>Shipping Address:</b></td><td align='left' colspan='4'><b>" + lblShippingAddress.Text + "</b></td></tr>";

            document.SetMargins(10, 10, 10, 10);
            document.Open();
            str = str + "<br><tr><td colspan='5' align='Center'>" + GridViewToHtml(InwardGrid) + "</td></tr><br>";
            str = str + "<tr><td colspan='5' align='Right'><b>" + "SubTotal:" + lblSubTotal.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Right'><b>" + "Discount:" + lblDiscount.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Right'><b>" + "VAT:" + lblVat.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Right'><b>" + "Dekhrekh:" + lblDekhrekh.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Right'><b>" + "Hamali:" + lblHamali.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Right'><b>" + "Cess:" + lblCESS.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Right'><b>" + "Freight:" + lblFreight.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='5' align='Right'><b>" + "Packing:" + lblPacking.Text + "</b></td></tr>";
            str = str + "<tr><td align='Right'><b>Tin No:" + LblTinNo.Text + "</b></td><td colspan='4' align='Right'><b>" + "Postage:" + lblPostage.Text + "</b></td></tr>";
            str = str + "<tr><td align='Right'><b>Vat No:" + lblVatNo.Text + "</b></td><td colspan='4' align='Right'><b>" + "Other Charges:" + lblOtherCharges.Text + "</b></td></tr>";
            str = str + "<tr><td align='Right'><b>ServiceTaxNo:" + lblServiceTaxNo.Text + "</b></td><td colspan='4' align='Right'><b>" + "GrandTotal:" + lblGrandTotal.Text + "</b></td></tr>";

            str = str + "<br><tr><td colspan='7'><table width='100%'><tr><td width='15%'>Prepared By</td><td></td><td width='15%'>Authorised By</td><td></td><td width='15%'>Received By</td></tr></br>";
            str = str + "<br><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></br>";
            str = str + "<br><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></br>";
            str = str + "<br><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></br>";
            str = str + "<br><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></br>";
            str = str + "<br><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></br>";
            str = str + "<br><tr><td>Name &amp; Designation</td><td></td><td>Name &amp; Designation</td><td></td><td >Name &amp; Designation</td></tr></br>";
            str = str + "<br><tr><td>Store Incharge</td><td></td><td>Unit Head/Operation Manager</td><td></td><td>Store Incharge</td></tr></br>";
            str = str + "</table></td></tr></br>";
            str = str + "</table></font>";
            #endregion

            strB.Append(str);

            document.SetMargins(20, 20, 20, 20);
            document.Open();
            if (text.Length.Equals(0)) // export the text
            {
                //  BindMyGrid();
                using (StringWriter sWriter = new StringWriter(strB))
                {
                    using (HtmlTextWriter htWriter = new HtmlTextWriter(sWriter))
                    {
                        //grdPrice.RenderControl(htWriter);
                    }
                }
            }
            else // export the grid
            {
                strB.Append(text);
            }
            // now read the Grid html one by one and add into the document object
            using (TextReader sReader = new StringReader(strB.ToString()))
            {
                iTextSharp.text.Image gif = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/MasterPages/MayurLogo.png"));
                document.Add(gif);
                List <IElement> list = HTMLWorker.ParseToList(sReader, new StyleSheet());
                foreach (IElement elm in list)
                {
                    document.Add(elm);
                }
            }
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
        finally
        {
            document.Close();
        }
    }
        public static void ExportData(System.Data.DataTable dt, string ExportFileName)
        {
            //if (sfd.FilterIndex == 1)
            //{
            //    bool ExcelImport = false;
            //    if (W.Show("Will this file be Imported into MS EXCEL?", "EXCEL", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)
            //        ExcelImport = true;

            //    using (StreamWriter sw = new StreamWriter(sfd.FileName))
            //    {
            //        StringBuilder sb = new StringBuilder();
            //        foreach (DataColumn dc in dt.Columns)
            //        {
            //            sb.Append(dc.ColumnName + ",");
            //        }
            //        sw.WriteLine(sb.ToString().Substring(0, sb.ToString().Length - 1));

            //        foreach (DataRow dr in dt.Rows)
            //        {
            //            sb = new StringBuilder();
            //            string rec = "";
            //            foreach (DataColumn dc in dt.Columns)
            //            {
            //                if (ExcelImport)
            //                    rec = @"=" + "\"" + dr[dc.ColumnName].ToString() + "\"";
            //                else
            //                    rec = dr[dc.ColumnName].ToString();

            //                sb.Append(rec + ",");
            //            }

            //            sw.WriteLine(sb.ToString().Substring(0, sb.ToString().Length - 1));
            //        }
            //    }
            //}
            //else if (sfd.FilterIndex == 2)
            //{
            //Document is inbuilt class, available in iTextSharp
            Document      document = new Document(PageSize.A4, 80, 50, 30, 65);
            StringBuilder strData  = new StringBuilder(string.Empty);

            try
            {
                StringWriter sw = new StringWriter();
                sw.WriteLine(Environment.NewLine);
                sw.WriteLine(Environment.NewLine);
                sw.WriteLine(Environment.NewLine);
                sw.WriteLine(Environment.NewLine);
                StreamWriter strWriter = new StreamWriter(ExportFileName, false, Encoding.UTF8);
                //strWriter.Write("<html><head><link href=Style.css rel=stylesheet type=text/css /></head><body>" + htw.InnerWriter.ToString() + "</body></html>");
                #region Write in StreamWriter

                string sError           = string.Empty;
                int    iNoOfColsinaPage = 7;
                int    iRunningColCount = 0;
                strWriter.Write("<HTML><BODY><TABLE>");
                foreach (DataColumn dc in dt.Columns)
                {
                    if (iRunningColCount % iNoOfColsinaPage == 0)
                    {
                        strWriter.Write("<TR>");
                    }
                    strWriter.Write("<TD>&nbsp;" + dc.ColumnName + "&nbsp;</TD>");

                    iRunningColCount++;

                    if (iRunningColCount % iNoOfColsinaPage == 0)
                    {
                        strWriter.Write("</TR>");
                    }
                }

                foreach (DataRow dr in dt.Rows)
                {
                    iRunningColCount = 0;
                    foreach (DataColumn dc in dt.Columns)
                    {
                        if (iRunningColCount % iNoOfColsinaPage == 0)
                        {
                            strWriter.Write("<TR>");
                        }
                        strWriter.Write("<TD>" + dr[dc.ColumnName].ToString() + "&nbsp;</TD>");
                        iRunningColCount++;
                        if (iRunningColCount % iNoOfColsinaPage == 0)
                        {
                            strWriter.Write("</TR>");
                        }
                    }
                }

                strWriter.Write("</TABLE></BODY></HTML>");
                //sb = strWriter.to .Replace("</TD><TR>", "</TD></TR><TR>");

                #endregion
                strWriter.Close();
                strWriter.Dispose();
                iTextSharp.text.html.simpleparser.
                StyleSheet styles = new iTextSharp.text.html.simpleparser.StyleSheet();
                styles.LoadTagStyle("ol", "leading", "16,0");
                List <IElement> objects;
                styles.LoadTagStyle("li", "face", "garamond");
                styles.LoadTagStyle("span", "size", "8px");
                styles.LoadTagStyle("body", "font-family", "times new roman");
                styles.LoadTagStyle("body", "font-size", "10px");
                StreamReader sr = new StreamReader(ExportFileName, Encoding.Default);
                objects = HTMLWorker.ParseToList(sr, styles);
                sr.Close();
                PdfWriter.GetInstance(document, new FileStream(ExportFileName, FileMode.Create));

                document.Add(new Header("stylesheet", "Style.css"));
                document.Open();
                document.NewPage();
                for (int k = 0; k < objects.Count; k++)
                {
                    document.Add((IElement)objects[k]);
                }
            }
            catch (Exception ex)
            {
                //throw ex;
            }
            finally
            {
                document.Close();
            }
        }
Exemple #11
0
        /// <summary>
        /// Renders the PDF to an array of bytes
        /// </summary>
        public byte[] RenderPdf(string imageFilePath)
        {
            //Document is inbuilt class, available in iTextSharp
            MemoryStream file     = new MemoryStream();
            Document     document = new Document(new Rectangle(842, 595));

            document.SetMargins(200, 200, 200, 100);
            PdfWriter writer = PdfWriter.GetInstance(document, file);
            Image     jpg    = iTextSharp.text.Image.GetInstance(imageFilePath);

            jpg.ScaleToFit(842, 595);
            jpg.Alignment = Image.UNDERLYING;
            jpg.SetAbsolutePosition(0, 0);


            //allow modifications of the document
            if (this.BeforeRender is RenderEvent)
            {
                this.BeforeRender(writer, document);
            }

            document.Open();

            //render each page that has been added
            foreach (HtmlPdfPage page in this._Pages)
            {
                document.NewPage();
                document.Add(jpg);

                //generate this page of text
                MemoryStream output = new MemoryStream();
                StreamWriter html   = new StreamWriter(output, Encoding.UTF8);

                //get the page output
                html.Write(string.Concat(HtmlToPdfBuilder.DOCUMENT_HTML_START, page._Html.ToString(), HtmlToPdfBuilder.DOCUMENT_HTML_END));
                html.Close();
                html.Dispose();

                //read the created stream
                MemoryStream generate = new MemoryStream(output.ToArray());
                StreamReader reader   = new StreamReader(generate);
                foreach (object item in HTMLWorker.ParseToList(reader, this._Styles))
                {
                    document.Add((IElement)item);
                }

                //cleanup these streams
                html.Dispose();
                reader.Dispose();
                output.Dispose();
                generate.Dispose();
            }

            //after rendering
            if (this.AfterRender is RenderEvent)
            {
                this.AfterRender(writer, document);
            }

            //return the rendered PDF
            document.Close();
            return(file.ToArray());
        }
    public static void ExportPDFContrlReport(string fileName, GridView gv, string LoginName, string withRender, string[] relData)
    {
        HttpContext.Current.Response.Clear();
        //HttpContext.Current.Response.AddHeader("content-disposition", string.Format("attachment; filename={0}", fileName));
        //HttpContext.Current.Response.ContentType = "application/ms-excel";
        //HttpContext.Current.Response.ContentType = "application/pdf";

        HttpContext.Current.Response.ContentType = "application/pdf";
        HttpContext.Current.Response.AddHeader("content-disposition", "attachment;filename=" + fileName + ".pdf");
        HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);

        using (StringWriter sw = new StringWriter())
        {
            using (HtmlTextWriter htw = new HtmlTextWriter(sw))
            {
                Table table = new Table();

                //table.GridLines = gv.GridLines;

                if (gv.HeaderRow != null)
                {
                    gv.HeaderStyle.Font.Bold = true;
                    GridViewExportUtil.PrepareControlForExport(gv.HeaderRow);
                    gv.HeaderRow.Font.Bold = true;
                    table.Rows.Add(gv.HeaderRow);
                }
                foreach (GridViewRow row in gv.Rows)
                {
                    GridViewExportUtil.PrepareControlForExport(row);
                    table.Rows.Add(row);
                }
                if (gv.FooterRow != null)
                {
                    GridViewExportUtil.PrepareControlForExport(gv.FooterRow);
                    table.Rows.Add(gv.FooterRow);
                }
                table.RenderControl(htw);

                //table.HeaderRow.Style.Add("width", "15%");
                //gvData.HeaderRow.Style.Add("font-size", "10px");
                //gvData.Style.Add("text-decoration", "none");
                //gvData.Style.Add("font-family", "Arial, Helvetica, sans-serif;");
                //gvData.Style.Add("font-size", "8px");

                StringReader sr  = new StringReader(sw.ToString());
                StringReader sr1 = new StringReader(withRender);
                EtrekReports.text.Document pdfDoc = new EtrekReports.text.Document(EtrekReports.text.PageSize.A2, 7f, 7f, 7f, 0f);
                HTMLWorker htmlparser             = new HTMLWorker(pdfDoc);
                PdfWriter.GetInstance(pdfDoc, HttpContext.Current.Response.OutputStream);

                pdfDoc.Open();

                //Read string contents using stream reader and convert html to parsed content
                var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(withRender), null);

                //Get each array values from parsed elements and add to the PDF document
                foreach (var htmlElement in parsedHtmlElements)
                {
                    pdfDoc.Add(htmlElement as EtrekReports.text.IElement);
                }
                // htmlparser.Parse(sr1);
                htmlparser.Parse(sr);
                pdfDoc.Close();
                HttpContext.Current.Response.Write(pdfDoc);
                HttpContext.Current.Response.End();

                //if (withRender.ToUpper() == "REN")
                //    rptRenewalListstyle(LoginName);
                //else if (withRender.ToUpper() == "CLINV")
                //    rptInvoiceListstyle(LoginName);
                //else if (withRender.ToUpper() == "BKR")
                //    rptBrokeragestyle(LoginName);
                //else if (withRender.ToUpper() == "OCL")
                //    rptOutstandingClaimListstyle(LoginName, relData);
                //if (withRender.ToUpper() == "OSCP")
                //    rptOSLossesClaimPaymentheader(LoginName, (relData[0] == null ? "" : relData[0].ToString()), (relData[1] == null ? "" : relData[1].ToString()));
                //HttpContext.Current.Response.Write(sw.ToString());
                //HttpContext.Current.Response.End();
            }
        }
    }
Exemple #13
0
        public string GetRecibo(string tranferId,
                                string username,
                                string numReceipt,
                                string date,
                                string nAffiliate,
                                string typeMembresia,
                                string namePeson,
                                string hour,
                                string detalle,
                                string quotesPendiente,
                                string concepto)
        {
            string fechaVar   = DateTime.Now.ToString("yyyyMMddHHmmss");
            string nameTicket = username + "_" + tranferId + fechaVar;
            string dni        = username.Substring(2, (username.Length - 2));

            using (Document document = new Document(PageSize.A4, 10, 10, 10, 10))
            {
                string     rutaImg = HttpContext.Current.Server.MapPath("~/Resources/Images/");
                string     ruta    = HttpContext.Current.Server.MapPath("~/Resources/RecibosRegister/") + nameTicket + ".pdf";
                FileStream stream  = new FileStream(ruta, FileMode.Create);
                PdfWriter.GetInstance(document, stream);
                document.Open();


                string cadenfinal = string.Empty;
                cadenfinal += "<!DOCTYPE html ><html><head><title></title></head><body>";
                cadenfinal += "<div style='font-family: sans-serif;display: block;padding:20px;margin:10px auto;width:700px;height: 700px;background-color: white;'>";

                cadenfinal += "<div><img src='" + rutaImg + "rec.png' style='position: absolute;top: 24%;left:28%;opacity: 0.1;z-index:1;width:515px;'></div>";

                cadenfinal += "<div style='display:block;margin:10px auto;text-align: center;' ><h2><b> VALLE ENCANTADO S.A.C </b></h2>";
                cadenfinal += "<h4><b> RUC 20601460271 </b></h4></div><div style='display: flex;justify-content: space-between;'>";
                //cadenfinal += "<div style='display:block' ><div style='margin:5px 0'><b> Nro. MEMBRESIA:</b> AR00101 </div>";
                cadenfinal += "<div style='display:block' ><div style='margin:5px 0'><b> Codigo:</b> " + username + " </div>";
                cadenfinal += "<label><b> Nombre: </b> " + namePeson.ToUpper() + "</label></div><div><div><b> Codido Membresia: </b>" + typeMembresia + "</div>";
                cadenfinal += "<label><b> DNI: </b> " + dni + " </label></div></div><div style = 'margin:15px auto;'><label><B> Codigo de operacion: </B> " + tranferId + " </label>";
                cadenfinal += "</div>";
                cadenfinal += "<div style='margin: 15px auto' ><b> Fecha: </b>" + date + " HORA: " + hour + " </div>";
                cadenfinal += "<div style='margin: 15px auto' ><b> Concepto: </b> " + concepto + " </div>";
                cadenfinal += "<div style='margin: 15px auto' ><b> Monto: </b>" + detalle + " </div>";
                cadenfinal += "<div style='margin: 15px auto' ><b> Cuotas pendientes: </b>" + quotesPendiente + " </div>";


                cadenfinal += "</div></body></html>";

                var styles = new StyleSheet();
                Dictionary <string, string> cuadro = new Dictionary <string, string>();
                cuadro.Add("font-family", "sans-serif");
                cuadro.Add("display", "block");
                cuadro.Add("padding", "20px");
                cuadro.Add("margin", "10px auto");
                cuadro.Add("width", "700px");
                cuadro.Add("height", "700px");
                cuadro.Add("background-color", "green");

                styles.LoadStyle("cuadro", cuadro);

                var parsehtml = HTMLWorker.ParseToList(new StringReader(cadenfinal), null);

                foreach (var htmlElement in parsehtml)
                {
                    document.Add(htmlElement as IElement);
                }
                document.Close();
            }

            return(nameTicket + ".pdf");
        }
Exemple #14
0
        public bool ExportReferenceDataToPdf(int shipmentRefID, string outFilePath)
        {
            bool blStatus = false;

            try
            {
                if (shipmentRefID > 0)
                {
                    DataTable dtRxnRefs   = null;
                    DataTable dtCrossRefs = null;

                    DataSet dsRxn_CrossRefs = ReactionCurationDB.GetRxnAndCrossReferencesOnShipmentRefID(shipmentRefID);
                    if (dsRxn_CrossRefs != null)
                    {
                        if (dsRxn_CrossRefs.Tables.Count == 2)
                        {
                            dtCrossRefs = dsRxn_CrossRefs.Tables[0];
                            dtRxnRefs   = dsRxn_CrossRefs.Tables[1];
                        }
                    }

                    DataSet dsRxns = ReactionCurationDB.GetReactionsForExportOnDocID(shipmentRefID);
                    if (dsRxns != null)
                    {
                        if (dsRxns.Tables.Count == 8)
                        {
                            DataTable dtDocMaster = dsRxns.Tables[0];
                            DataTable dtReactions = dsRxns.Tables[1];
                            //DataTable dtRxnRefs = dsRxns.Tables[2];
                            //DataTable dtCrossRefs = dsRxns.Tables[3];
                            DataTable dtRxnSteps     = dsRxns.Tables[4];
                            DataTable dtConditions   = dsRxns.Tables[5];
                            DataTable dtParticipants = dsRxns.Tables[6];
                            DataTable dtProducts     = dsRxns.Tables[7];

                            string rxnsRefNo   = dtDocMaster.Rows[0]["REFERENCE_NAME"].ToString();
                            string sysText     = dtDocMaster.Rows[0]["SYS_TEXT"].ToString();
                            string sysNo       = dtDocMaster.Rows[0]["SYS_NO"].ToString();
                            string outFileName = outFilePath;// Path.Combine(outFilePath, rxnsRefNo + ".pdf");

                            List <ReactionInfo> lstRxnInfo = new List <ReactionInfo>();
                            int reactionID = 0;
                            //Unique ID for reaction (serial number); format: RXCInnnnnnnn;n=numerical range for backfiles is 70000001...89999999.
                            int mdlNo = 70000000;
                            foreach (DataRow drow in dtReactions.Rows)
                            {
                                //increment MDL Numer
                                mdlNo++;

                                reactionID = Convert.ToInt32(drow["REACTION_ID"]);

                                ReactionInfo rxnInfo = new ReactionInfo();
                                rxnInfo.ShipmentRefID  = shipmentRefID;
                                rxnInfo.ReactionID     = reactionID;
                                rxnInfo.SysNo          = dtDocMaster.Rows[0]["SYS_NO"].ToString();
                                rxnInfo.SysText        = dtDocMaster.Rows[0]["SYS_TEXT"].ToString();
                                rxnInfo.RxnMDLNo       = "RXCI" + mdlNo;
                                rxnInfo.ReactionScheme = drow["REACTION_SCHEME"];
                                rxnInfo.ReactionSNo    = Convert.ToInt32(drow["REACTION_SNO"]);
                                rxnInfo.RxnRef         = GetRxnRefInfoFromTableOnReactionID(dtRxnRefs, reactionID);
                                rxnInfo.RxnCrossRef    = GetCrossRefInfoFromTableOnReactionID(dtCrossRefs, reactionID);

                                DataTable dtRxnStages      = GetStepsOnReactionID(dtRxnSteps, reactionID);
                                DataTable participantsData = GetParticipantsForProdFormation(dtParticipants, dtConditions, dtRxnStages);

                                rxnInfo.ParticipantsForPdf = participantsData;// GetReactionStepsInfoFromTableOnReactionID(dtRxnSteps, dtParticipants, dtConditions, reactionID);
                                //Add to list
                                lstRxnInfo.Add(rxnInfo);
                            }

                            if (lstRxnInfo != null)
                            {
                                if (dtReactions.Rows.Count > 0)
                                {
                                    using (iTextSharp.text.Document doc = new iTextSharp.text.Document())
                                    {
                                        iTextSharp.text.pdf.PdfWriter.GetInstance(doc, new System.IO.FileStream(outFileName, FileMode.Create));
                                        doc.Open();

                                        //Declare Reaction Participants tables
                                        #region MyRegion
                                        DataTable dtProdTbl     = null;
                                        DataTable dtReactantTbl = null;
                                        DataTable dtPartpntTbl  = null;
                                        DataTable dtCondsTbl    = null;
                                        DataTable dtStagesTbl   = null;
                                        #endregion

                                        iTextSharp.text.Image chemimg = null;
                                        iTextSharp.text.Font  georgia = FontFactory.GetFont("georgia", 10f);

                                        //Define variables
                                        #region MyRegion

                                        int intProdCnt  = 0;
                                        int intReactCnt = 0;

                                        string    strRxnHdr = "";
                                        PdfPTable PdfTable  = null;
                                        PdfPCell  rxnCell   = null;

                                        #endregion

                                        //Define font style
                                        #region MyRegion
                                        styles = new StyleSheet();
                                        styles.LoadTagStyle("th", "size", "8px");
                                        styles.LoadTagStyle("th", "face", "helvetica");
                                        styles.LoadTagStyle("span", "size", "7px");
                                        styles.LoadTagStyle("span", "face", "helvetica");
                                        styles.LoadTagStyle("td", "size", "7px");
                                        styles.LoadTagStyle("td", "face", "helvetica");
                                        #endregion

                                        PdfPTable pTRxnRef   = null;
                                        PdfPTable pTCrossRef = null;

                                        PdfPCell pcRxnRef   = null;
                                        PdfPCell pcCrossRef = null;

                                        //Add Pdf Header to document
                                        PdfPTable ptHeader = GetPdfHeaderTable(rxnsRefNo, sysNo);
                                        doc.Add(ptHeader);

                                        //Define Participants elements
                                        List <IElement> lstPartpnt = null;

                                        foreach (ReactionInfo rxnInfo in lstRxnInfo)
                                        {
                                            //Create instance of the pdf table and set the number of column in that table
                                            PdfTable = new PdfPTable(1);
                                            PdfTable.SpacingAfter        = 4f;
                                            PdfTable.HorizontalAlignment = 0;    //0=Left, 1=Centre, 2=Right
                                            PdfTable.TotalWidth          = 800f; // doc.PageSize.Width;
                                            PdfTable.WidthPercentage     = 100;

                                            //Add Reaction Header to Pdf Table
                                            strRxnHdr                   = "Reaction - " + rxnInfo.ReactionSNo.ToString();
                                            rxnCell                     = new PdfPCell(new Phrase(strRxnHdr, fontTinyItalic));
                                            rxnCell.Colspan             = intProdCnt + intReactCnt;
                                            rxnCell.HorizontalAlignment = PdfPCell.ALIGN_LEFT;// 0; //0=Left, 1=Centre, 2=Right
                                            rxnCell.VerticalAlignment   = PdfPCell.ALIGN_TOP;
                                            rxnCell.BackgroundColor     = bgcolRxnNo;
                                            PdfTable.AddCell(rxnCell);

                                            //Reaction Reference Info
                                            pTRxnRef = GetReactionReferecneTable(rxnInfo);
                                            if (pTRxnRef != null)
                                            {
                                                pcRxnRef        = new PdfPCell(pTRxnRef);
                                                pcRxnRef.Border = PdfPCell.NO_BORDER;
                                                //pcRxnRef.BackgroundColor = bgcolRctNumStage;
                                                PdfTable.AddCell(pcRxnRef);
                                            }

                                            //Cross Reference Info
                                            pTCrossRef = GetCrossReferecneTable(rxnInfo);
                                            if (pTCrossRef != null)
                                            {
                                                pcCrossRef        = new PdfPCell(pTCrossRef);
                                                pcCrossRef.Border = PdfPCell.NO_BORDER;
                                                //pcRxnRef.BackgroundColor = bgcolRctNumStage;
                                                PdfTable.AddCell(pcCrossRef);
                                            }

                                            if (rxnInfo.ReactionScheme != null)
                                            {
                                                System.Drawing.Image img = GetStructureImage(rxnInfo.ReactionScheme.ToString());
                                                chemimg = iTextSharp.text.Image.GetInstance(img as System.Drawing.Image, System.Drawing.Imaging.ImageFormat.Jpeg);
                                                if (chemimg != null)
                                                {
                                                    chemimg.ScaleToFit(450f, 150f);
                                                    //chemimg.ScaleAbsolute((float)600f, (float)250f);
                                                    chemimg.Alignment = iTextSharp.text.Image.TEXTWRAP | iTextSharp.text.Image.ALIGN_CENTER;

                                                    //pdfCell = new PdfPCell(chemimg, true);
                                                }
                                                else
                                                {
                                                    //pdfCell = new PdfPCell(new Phrase("Structure generation error", fontTinyItalic));
                                                }

                                                PdfTable.AddCell(chemimg);
                                            }

                                            //Product Yield, CS, DS and Other information

                                            //Get Participatns text from RichTextBox object
                                            string strRtf = GetPartpntsDataBindToRichTextBox(rxnInfo.ParticipantsForPdf);

                                            //Get Participants elements from RichTextBox Rtf and convert to HTML
                                            lstPartpnt = HTMLWorker.ParseToList(new StringReader(markupConverter.ConvertRtfToHtml(strRtf)), styles);

                                            //Add Participants string in a row cell to Pdf Table
                                            PdfPCell pcPartpnt = new PdfPCell();
                                            foreach (IElement iEle in lstPartpnt)
                                            {
                                                pcPartpnt.AddElement(iEle);
                                            }
                                            pcPartpnt.Colspan = 1;// intProdCnt + intReactCnt;
                                            //pcPartpnt.BackgroundColor =  bgcolRxnPartpnt;
                                            pcPartpnt.VerticalAlignment   = Element.ALIGN_TOP;
                                            pcPartpnt.HorizontalAlignment = 0;// Element.ALIGN_LEFT; //0=Left, 1=Centre, 2=Right
                                            PdfTable.AddCell(pcPartpnt);


                                            doc.Add(PdfTable);
                                        }

                                        doc.Close();
                                        blStatus = true;
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                ErrorHandling.WriteErrorLog(ex.ToString());
            }
            return(blStatus);
        }
Exemple #15
0
        public void generar(Usuario usuario, Compra compra)
        {
            List <DetalleCompra> listaDeCompra = new List <DetalleCompra>();

            listaDeCompra = compra.Productos;
            CodigoQr codigoQr = new CodigoQr();

            codigoQr.generar(compra);
            string file = "C:/Factura" + compra.Id + ".pdf";
            string html = @"<img src = 'https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-ash4/381399_10201016661237859_441547910_n.jpg' />
	                        <h2 align='right'><font color='#F05D13'>Pre-orden</font></h2>
	                        <p align='right'>
		                        <strong>Fecha: </strong>"         + DateTime.Now.ToString("dd-MM-yyyy") + @"<br />
		                        <strong>Nro. Orden: </strong> 123124
	                        </p>
	                        <h2><font color='#F05D13'><strong>Datos del Cliente</strong></font></h2>
	                        <p>
		                        <strong>Nombre completo: </strong>"         + usuario.Nombre + @"<br />
                                <strong>C&eacute;dula: </strong>" + usuario.Pasaporte + @"<br />
                                <strong>Correo Electr&oacute;nico:</strong>" + usuario.Email + @"<br />
                                <strong>Direcci&oacute;n: </strong><br />
	                        </p>
	                        <br />
                            <div class='datagrid'>
                            <table>
		                        <thead><tr>
			                        <th width='50%'>Producto</th>
			                        <th width='10%'>Cantidad</th>
			                        <th width='20%'>Precio unitario Bs.</th>
			                        <th width='20%'>Total Bs.</th></tr>
		                        </thead>
                                    <tbody>";

            for (int i = 0; i < listaDeCompra.Count(); i++)
            {
                float multiplicacion = listaDeCompra[i].Monto * listaDeCompra[i].Cantidad;
                html = html + @"<tr>
				                                    <td>"                 + listaDeCompra[i].Producto.Nombre + @"</td><td>" + listaDeCompra[i].Cantidad.ToString() + @"</td><td>" + listaDeCompra[i].Monto.ToString() + @"</td><td>" + multiplicacion.ToString() + @"</td>
			                                    </tr>"            ;
            }
            html = html + "</tbody></table></div>";
            html = html + @"<table>
		                                    <tbody>
			                                    <tr ><td width='50%' style='background-color:white;'></td><td width='10%' style='background-color:white;'></td>
			                                    <td width='20%'><strong>
				                                    Total a Pagar Bs 
			                                    </strong></td><td width='20%'>
				                                    "                 + compra.MontoTotal.ToString() + @"
			                                    </td></tr>
		                                    </tbody>
	                                    </table>
                                        <div class='datagrid'>
                                        <table>
                                            <thead><tr><th>Informaci&oacute;n de m&eacute;todo de pago</th></tr></thead>
                                        <tbody>
	                                        <tr><td>  Marca:"     + compra.Pago.Marca + " Numero: " + compra.Pago.Numero + " Fecha vencimiento: " + compra.Pago.FechaVencimiento.ToString("dd-MM-yyyy") + @"</td></tr>
                                        </tbody>
                                        </table>	
                                        </div>

                                    <h2>
                                     Código Qr
                                    </h2>
                                    <img src = 'c:/Qr" + compra.Id.ToString() + ".png' />";

            Document document = new Document(PageSize.A4, 80, 50, 30, 65);

            PdfWriter.GetInstance(document, new FileStream(file, FileMode.Create));
            document.Open();
            foreach (IElement E in HTMLWorker.ParseToList(new StringReader(html), new StyleSheet()))
            {
                document.Add(E);
            }
            document.Close();
        }
Exemple #16
0
        public Documento ClientesExportarPDF(ReporteFilter filter)
        {
            FileStream fs;
            Document   doc = null;
            PdfWriter  writer;

            try
            {
                doc = new Document();
                // Verifico el directorio
                string filePath = System.IO.Path.Combine(HttpRuntime.AppDomainAppPath, "Archivos\\");
                if (!Directory.Exists(filePath))
                {
                    Directory.CreateDirectory(filePath);
                }

                var fecha = DateTime.Now.ToString("dd-MM-yyyy");
                // Nombre del archivo
                string fileName = string.Format("{0}-{1}.pdf", "Clientes", fecha);
                // Generación del PDF
                fs = new FileStream(System.IO.Path.Combine(filePath, fileName), FileMode.Create, FileAccess.Write, FileShare.None);

                writer = PdfWriter.GetInstance(doc, fs);
                doc.Open();
                string pathImg1 = System.IO.Path.Combine(HttpRuntime.AppDomainAppPath, "Archivos\\logo_farmix.jpg");
                Image  image1;
                if (Image.GetInstance(pathImg1) != null)
                {
                    image1 = Image.GetInstance(pathImg1);
                    image1.ScalePercent(24F);
                    image1.Alignment = Element.ALIGN_CENTER;
                    doc.Add(image1);
                }
                //añadimos linea negra abajo de las imagenes para separar.
                doc.Add(new Paragraph(new Chunk(new iTextSharp.text.pdf.draw.LineSeparator(2.0F, 100.0F, BaseColor.BLACK, Element.ALIGN_LEFT, 1))));
                doc.Add(new Paragraph(" "));
                //Inicio datos
                var             lista   = GetClientes(filter);
                Font            fuente1 = new Font(FontFamily.TIMES_ROMAN, 12.0f, Font.BOLD, BaseColor.BLACK);
                Font            fuente2 = new Font(FontFamily.TIMES_ROMAN, 14.0f, Font.BOLD, BaseColor.BLACK);
                Rectangle       rect    = PageSize.LETTER;
                List <IElement> ie;
                float           pageWidth = rect.Width;
                string          html      = "";
                html = @"
                            <html><head></head><body>
                            <table>
                            <tr><td><b>Clientes</b></td></tr>
                            <tr><td>Generado por: <b>" + filter.usuario + @"</b></td></tr>
                            <tr><td>Fecha: <b>" + fecha + @"</b></td></tr>                    
                            </table>
                            </body></html>";
                ie   = HTMLWorker.ParseToList(new StringReader(html), null);
                foreach (IElement element in ie)
                {
                    PdfPTable table1 = element as PdfPTable;

                    if (table1 != null)
                    {
                        table1.SetWidthPercentage(new float[] { (float)1 * pageWidth }, rect);
                    }
                    doc.Add(element);
                }
                doc.Add(new Paragraph(" "));
                if (lista.Count() > 0)
                {
                    string nombre, apellido, plan;
                    if (filter.nombre == null)
                    {
                        nombre = "Sin datos";
                    }
                    else
                    {
                        nombre = filter.nombre;
                    }
                    if (filter.apellido == null)
                    {
                        apellido = "Sin datos";
                    }
                    else
                    {
                        apellido = filter.apellido;
                    }
                    switch (filter.idPlan)
                    {
                    case 1:
                        plan = "Plan pequeño";
                        break;

                    case 2:
                        plan = "Plan mediano";
                        break;

                    case 3:
                        plan = "Plan grande";
                        break;

                    case 4:
                        plan = "Plan super";
                        break;

                    default:
                        plan = "Sin datos";
                        break;
                    }
                    html  = @"
                            <html><head></head><body>
                            <table>
                            <tr><td><b>Filtro Aplicado</b></td><td></td><td></td><td></td><td></td><td></td></tr>                
                            </table>
                            <table border='1'>
                            <thead>
                            <tr>
                            <th>Nombre</th>
                            <th>Apellido</th>       
                            <th>Estado Cuenta</th>
                            <th>Plan</th>
                            <th>Fecha Desde</th>
                            <th>Fecha Hasta</th>";
                    html += @"</tr>               
                            </thead>
                            <tbody>
                            <tr><td>" + nombre + @"</td><td>" + apellido + @"</td><td>" + (filter.estadoCuenta != "0" ? filter.estadoCuenta : "Sin datos") + @"</td><td>" + plan + @"</td><td>" + (filter.fechaDesde != null ? filter.fechaDesde : "Sin datos") + @"</td><td>" + (filter.fechaHasta != null ? filter.fechaHasta : "Sin datos") + @"</td></tr>
                            </tbody></table></body></html>";
                    ie    = HTMLWorker.ParseToList(new StringReader(html), null);
                    foreach (IElement element in ie)
                    {
                        PdfPTable table = element as PdfPTable;

                        if (table != null)
                        {
                            table.SetWidthPercentage(new float[] { (float).16 * pageWidth, (float).16 * pageWidth, (float).16 * pageWidth, (float).16 * pageWidth, (float).16 * pageWidth, (float).16 * pageWidth }, rect);
                        }
                        doc.Add(element);
                    }
                    doc.Add(new Paragraph(" "));
                    html = @"
                            <html><head></head><body>
                            <table border='1'>
                            <thead>
                            <tr>
                            <th>Apellido</th>
                            <th>Nombre</th>                           
                            <th>Fecha Alta</th>
                            <th>Plan Contratado</th>
                            <th>Administradores</th>
                            <th>Usuarios</th>
                            <th>Campos</th>
                            <th>Bovinos</th>
                            <th>Estado cuenta</th>
                            </tr>               
                            </thead>
                            <tbody>";
                    foreach (var item in lista)
                    {
                        html += @"<tr><td>" + item.apellido + @"</td><td>" + item.nombre + @"</td><td>" + item.fechaAlta + @"</td><td>" + item.nombrePlan + @"</td><td>" + item.cantidadAdministradores + @"</td><td>" + item.cantidadUsuarios + @"</td><td>" + item.cantidadCampos + @"</td><td>" + item.cantidadBovinos + @"</td><td>" + item.estadoCuenta + @"</td></tr>";
                    }
                    html += @"</tbody></table>
                            </body></html> ";
                    ie    = HTMLWorker.ParseToList(new StringReader(html), null);
                    foreach (IElement element in ie)
                    {
                        PdfPTable table = element as PdfPTable;

                        if (table != null)
                        {
                            table.SetWidthPercentage(new float[] { (float).1 * pageWidth, (float).1 * pageWidth, (float).1 * pageWidth, (float).1 * pageWidth, (float).1 * pageWidth, (float).1 * pageWidth, (float).1 * pageWidth, (float).1 * pageWidth, (float).1 * pageWidth }, rect);
                        }
                        doc.Add(element);
                    }
                }
                doc.Close();
                return(new Documento()
                {
                    nombre = fileName
                });
            }
            catch (Exception ex)
            {
                doc.Close();
                throw ex;
            }
            finally
            {
                fs     = null;
                doc    = null;
                writer = null;
            }
        }
Exemple #17
0
    public void GeneratePDFNew(string Imagepath, string fileName, string HeaderName, GridView GridReport, Page oPage, string text)
    {
        var document = new Document(PageSize.A4, 50, 50, 25, 25);

        //  document.SetMargins(20, 20, 20, 20);
        try
        {
            // oPage.Response.Clear();
            PdfWriter.GetInstance(document, oPage.Response.OutputStream);
            // generates the grid first
            StringBuilder strB  = new StringBuilder();
            StringBuilder strB1 = new StringBuilder();
            string        str   = string.Empty;

            str = "<font size='12px' face='arial'><table width='90%' align='left'>";

            str = str + "<tr><td colspan='4' align='left'><b>" + lblCompanyName.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='left'><b>" + lblCompanyAddress.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='left'><b>Phone No:" + lblPhnNo.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='left'><b>Fax No:" + lblFaxNo.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='Center'><b>Purchase Order</b></td></tr>";

            //str = str + "<tr><td align='Left'><b>" + "Purchase Order No. :" + "</b></td><td align='Left'><b>" + lblPono.Text + "</b></td><td  align='right'><b>" + "PurchaseOrderDate:" + "</b></td><td align='right'><b>" + lblPODate.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='Left'><b>Purchase Order No. :" + lblPono.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='Left'><b>PurchaseOrderDate:" + lblPODate.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='3' align='Left'><b>To,</b></td></tr>";
            str = str + "<tr><td colspan='3' align='Left'><b></b></td></tr>";
            str = str + "<tr><td ><b>" + lblSuplier.Text + "</b></td><td colspan='2' align='Left'></td></tr>";
            str = str + "<tr><td colspan='3' align='Left'><b>" + "" + "</b></td></tr>";
            document.SetMargins(10, 10, 10, 10);
            document.Open();
            str = str + "<br><tr><td colspan='5' align='Right'>" + GridViewToHtml(PurOrderGrid) + "</td></tr><br>";
            //------Newly Added ------
            str = str + "<br><tr><td colspan='5' align='Right'><table width='100%'>";
            str = str + "<br><tr><td colspan='7'></td><td style='text-align: right'>Total :</td><td>" + lblTotal.Text + "</td></tr></br>";
            str = str + "<br><tr><td colspan='7'></td><td style='text-align: right'>VAT :</td><td >0.00</td></tr></br>";
            str = str + "<br><tr><td colspan='7'></td><td style='text-align: right'>Service Tax :</td><td>0.00</td></tr></br>";
            str = str + "<br><tr><td colspan='6' ></td><td style='text-align: right' colspan='2'>Freight & Insurance :</td><td >0.00</td></tr></br>";
            str = str + "<br><tr><td colspan='6'></td><td style='text-align: right' colspan='2'>other Changes :</td><td >0.00</td></tr></br>";
            str = str + "<br><tr><td colspan='7'></td><td style='text-align: right'>Gross Total :</td><td >" + lblGrossTotal.Text + "</td></tr></br>";
            str = str + "<br></table></td></tr>";
            str = str + "<br><tr><td align='left' colspan='7'><h4>Note :Terms And Conditions</h4></td></tr></br>";
            str = str + "<br><tr><td colspan='7'>1.All material to be deliver with valid PO no and as per the Standerd specification of the material</td></tr></br>";
            str = str + "<br><tr><td colspan='7'>2.All the material to be deliver on time if not purcahser have the right to cancelled the order</td></tr></br>";
            str = str + "<br><tr><td colspan='7'>3.payment as per the contract</td></tr></br>";
            str = str + "<br><tr><td colspan='7'>4.If we received any damage material will be return back to supplier</td></tr></br>";
            str = str + "<br><tr><td colspan='7'>5.Subject to Pune Jurisdiction Only</td></tr></br>";

            str = str + "<br><tr><td colspan='7'><table width='100%'><tr><td></td><td></td><td></td><td></td><td></td></tr></br>";
            str = str + "<br><tr><td width='30%'></td><td></td><td width='30%'></td><td></td><td width='30%'></td></tr></br>";
            str = str + "<br><tr><td>Prepared By</td><td></td><td width='30%'>Accepted By</td><td></td><td width='30%'>Authorised By</td></tr></br>";
            str = str + "<br><tr><td></td><td></td><td></td><td></td><td></td></tr></br>";
            str = str + "<br><tr><td></td><td></td><td></td><td></td><td></td></tr></br>";
            str = str + "<br><tr><td></td><td></td><td></td><td></td><td></td></tr></br>";
            str = str + "<br><tr><td></td><td></td><td></td><td></td><td></td></tr></br>";
            str = str + "<br><tr><td>Name &amp; Designation</td><td></td><td>Name &amp; Designation</td><td></td><td>Name &amp; Designation</td></tr></br>";
            str = str + "<br><tr><td>Store Incharge</td><td></td><td>Vendor: Seal &amp; Signature</td><td></td><td>Unit Head/Operation Manager</td></tr></br>";

            str = str + "</table></td></tr></br>";
            str = str + "</table></font>";

            strB.Append(str);

            document.SetMargins(20, 20, 20, 20);
            document.Open();
            if (text.Length.Equals(0)) // export the text
            {
                //  BindMyGrid();
                using (StringWriter sWriter = new StringWriter(strB))
                {
                    using (HtmlTextWriter htWriter = new HtmlTextWriter(sWriter))
                    {
                        //grdPrice.RenderControl(htWriter);
                    }
                }
            }
            else // export the grid
            {
                strB.Append(text);
            }
            // now read the Grid html one by one and add into the document object
            using (TextReader sReader = new StringReader(strB.ToString()))
            {
                iTextSharp.text.Image gif = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/MasterPages/MayurLogo.png"));
                document.Add(gif);
                List <IElement> list = HTMLWorker.ParseToList(sReader, new StyleSheet());
                foreach (IElement elm in list)
                {
                    document.Add(elm);
                }
            }
            // oPage.Response.ContentType = "application/pdf";
            // oPage.Response.AddHeader("content-disposition", "attachment; filename=" + fileName);
            //  oPage.Response.Flush();
            //  oPage.Response.End();
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
        finally
        {
            document.Close();
        }
    }
    public PDFCreator(List <System.Web.UI.WebControls.ListItem> items, string totaalPrijs, HttpResponseBase response, HttpServerUtilityBase server)
    {    // Create a Document object
        var document = new Document(PageSize.A4, 50, 50, 25, 25);


        // Create a new PdfWrite object, writing the output to a MemoryStream
        var output = new MemoryStream();
        var writer = PdfWriter.GetInstance(document, output);

        // Open the Document for writing
        document.Open();

        // Read in the contents of the Receipt.htm HTML template file
        string contents = File.ReadAllText(server.MapPath("~/HTMLTemplate/Receipt.htm"));

        // Replace the placeholders with the user-specified text
        contents = contents.Replace("[TOTALPRICE]", Convert.ToDecimal(totaalPrijs).ToString("c"));
        contents = contents.Replace("[ORDERDATE]", DateTime.Now.ToShortDateString());

        var itemsTable = @"<table><tr><th style=""font-weight: bold"">Naam</th><th style=""font-weight: bold"">Prijs</th></tr>";

        foreach (System.Web.UI.WebControls.ListItem item in items)
        {
            // Each CheckBoxList item has a value of ITEMNAME|ITEM#|QTY, so we split on | and pull these values out...
            var pieces = item.Value.Split("|".ToCharArray());
            if (pieces[0] == string.Empty || pieces[0].Length < 3)
            {
                continue;
            }
            if (pieces[1] == " 0" || pieces[1] == string.Empty)
            {
                pieces[1] = "-";
            }
            else
            {
                pieces[1] = "€" + pieces[1];
            }

            itemsTable += string.Format("<tr><td>{0}</td><td>{1}</td></tr>",
                                        pieces[0], pieces[1]);
        }

        itemsTable += "</table>";

        contents = contents.Replace("[ITEMS]", itemsTable);


        var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(contents), null);

        foreach (var htmlElement in parsedHtmlElements)
        {
            document.Add(htmlElement as IElement);
        }

        // You can add additional elements to the document. Let's add an image in the upper right corner
        //var logo = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/4guysfromrolla.gif"));
        //logo.SetAbsolutePosition(440, 800);
        //document.Add(logo);

        document.Close();

        response.ContentType = "application/pdf";
        response.AddHeader("Content-Disposition", string.Format("attachment;filename=Receipt-{0}.pdf", "5"));
        response.BinaryWrite(output.ToArray());
    }
Exemple #19
0
        /// <summary>
        /// Actually convert HTMl to PDF and return byte[]...
        /// </summary>
        /// <param name="html"></param>
        /// <returns></returns>
        public byte[] HtmlToPdfbytes(string html)
        {
            StringWriter   sw         = new StringWriter();
            HtmlTextWriter htmlWriter = new HtmlTextWriter(sw);

            string htmlContent = "";

            if (ctx.GetIsRightToLeft())
            {
                htmlContent = @"<html dir='rtl'>
                <body>";
            }
            else
            {
                htmlContent = @"<html>
                <body>";
            }

            htmlContent += html;
            html        += "</html></body>";
            string[] htmls = html.Split('~');

            byte[] docArray = null;

            //if (ctx.GetIsRightToLeft())
            //{
            //    Document document = new Document();
            //    using (var memoryStream = new MemoryStream())
            //    {
            //        try
            //        {
            //            document = new Document(PageSize.A4, 50, 50, 50, 50);
            //            // step 2
            //            PdfWriter writer = PdfWriter.GetInstance(document, memoryStream);
            //            // step 3
            //            document.Open();

            //            BaseFont bf = BaseFont.CreateFont("c:\\windows\\fonts\\arabtype.ttf", BaseFont.IDENTITY_H, true);
            //            iTextSharp.text.

            //            Font f2 = new iTextSharp.text.Font(bf, 24, iTextSharp.text.Font.NORMAL, iTextSharp.text.Color.BLUE);


            //            String atext = "صصصث  خ8 صث اهلا";
            //            PdfPTable table = new PdfPTable(1);
            //            table.RunDirection =

            //            PdfWriter.RUN_DIRECTION_RTL;
            //            PdfPCell cell = new PdfPCell(new Phrase(10, atext, f2));
            //            table.AddCell(cell);

            //            document.Add(table);

            //            document.Close();

            //        }
            //        catch (DocumentException de)
            //        {
            //            //              this.Message = de.Message;
            //        }
            //        catch (IOException ioe)
            //        {
            //            //                this.Message = ioe.Message;
            //        }

            //        // step 5: we close the document
            //        document.Close();

            //        docArray = memoryStream.ToArray();

            //    }



            //}
            //else
            //{

            FontFactory.Register("c:/windows/fonts/arabtype.TTF");
            StyleSheet style = new StyleSheet();

            style.LoadTagStyle("body", "face", "Arabic Typesetting");
            style.LoadTagStyle("body", "encoding", BaseFont.IDENTITY_H);
            style.LoadTagStyle("body", "direction", "RTL");

            System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("ar-IQ");
            using (var memoryStream = new MemoryStream())
            {
                var document = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4.Rotate());
                {
                    PdfWriter writer = PdfWriter.GetInstance(document, memoryStream);
                    writer.CloseStream = false;

                    if (ctx.GetIsRightToLeft())
                    {
                        writer.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
                    }

                    // Write PDF here.

                    document.Open();


                    //iTextSharp.text.html.simpleparser.HTMLWorker hw = new iTextSharp.text.html.simpleparser.HTMLWorker(document);

                    //for (int i = 0; i < htmls.Count(); i++)
                    //{
                    //   // hw.Style = style;
                    //    hw.Parse(new StringReader(htmls[i]));
                    //    document.NewPage();
                    //}


                    for (int i = 0; i < htmls.Count(); i++)
                    {
                        var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(htmls[i]), style);
                        foreach (var htmlElement in parsedHtmlElements)
                        {
                            document.Add(htmlElement as IElement);
                        }

                        document.NewPage();
                    }



                    document.Close();
                }

                docArray = memoryStream.ToArray();
            }

            //}


            return(docArray);
        }
        protected void Button2_Click(object sender, EventArgs e)
        {
            string file = @"C:\Windows\Temp\Documento.pdf";
            string faz  = "cabe";

            Document document = new Document(PageSize.A4);

            PdfWriter.GetInstance(document, new FileStream(file, FileMode.Create));

            float x, y;

            x = 0;
            y = 0;

            document.Open();

            string html = "" +
                          "<div style='height: 25px; text-align: center; width: 1119px;'>" +
                          "&nbsp;<span style='font-family: Verdana, Geneva, Tahoma, sans-serif; font-size: 20px'><b>Relátório de Estoque</b></span><br />" +
                          "<br />" +
                          "</div>" +
                          "<table style='width:100;' border='1'>" +
                          "<tr>" +
                          "<td style='width: 10px; text-align: center; font-size: small; background-color: #CCCCCC;'><b>codigo</b></td>" +
                          "<td style='width: 15px; text-align: center; font-size: small; background-color: #CCCCCC;'><b>Vencto</b></td>" +
                          "<td style='width: 991px; text-align: left; font-size: small; background-color: #CCCCCC;'><b>Descrição&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</b></td>" +
                          "<td style='width: 50px; text-align: center; font-size: small; background-color: #CCCCCC;'><b>Qtd</b></td>" +
                          "<td style='width: 50px; text-align: center; font-size: small; background-color: #CCCCCC;'><b>Qtd min</b></td>" +
                          "<td style='width: 30px; text-align: center; font-size: small; background-color: #CCCCCC;'><b>Situação</b></td>" +
                          "</tr>";

            String query = "";

            query = "SELECT * FROM estoque ORDER BY id DESC";

            using (MySqlConnection con = new MySqlConnection(strConx()))
            {
                MySqlDataReader dr;
                MySqlCommand    command = con.CreateCommand();
                command.CommandText = query;

                try
                { con.Open(); }
                catch
                { }

                dr = command.ExecuteReader();

                // Mostra registros na tela
                while (dr.Read())
                {
                    html += "<tr>" +
                            "    <td style='width: 55px; text-align: center; font-size: small;'>" + dr["codigo"].ToString() + "</td>" +
                            "    <td style='width: 59px; text-align: center; font-size: small; '>" + dr["vencimento"].ToString() + "</td>" +
                            "    <td style='width: 89px; text-align: left; font-size: small;'>" + dr["descricao"].ToString() + "</td>" +
                            "    <td style='width: 113px; text-align: right; font-size: small;'>" + dr["qtd_estq"].ToString() + "</td>" +
                            "    <td style='width: 151px; text-align: right; font-size: small;'>" + dr["qtd_mini"].ToString() + "</td>" +
                            "    <td style='width: 216px; text-align: center; font-size: small;'>Ativo</td>" +
                            "</tr>";
                }

                try
                { }
                catch
                { }
            }


            html += "</table>";


            foreach (IElement E in HTMLWorker.ParseToList(new StringReader(html), new StyleSheet()))
            {
                document.Add(E);
            }

            document.Close();

            Process.Start(file);
        }
Exemple #21
0
        public void Cronograma2(int _nAfiliate, string _cc, string correlativo)
        {
            string[] arrayLogin = HttpContext.Current.User.Identity.Name.Split('¬');
            string   tipocambio = "", numerodecuotas = "", nombre = "", dni = "", domicilio = "", distrito = "", correo = "", telefono = "", codemem = "";

            string username = "", fecha = "";


            //Session["cronogramaya"] = "6857.5|6142.5|0|11/2/2018¬89.57|24|10|Mensual^Inicial nro: 1|11/2/2018|S/. 6857.5|S/. 715|S/. 0|S/. 715¬Inicial nro: 2|12/2/2018|S/. 6142.5|S/. 800|S/. 0|S/. 800¬Inicial nro: 3|1/2/2018|S/. 5342.5|S/. 1000|S/. 0|S/. 1000¬Cuota nro: 1|11/1/2018|S/. 4342.5|S/. 164.89|S/. 34.63|S/. 199.52¬Cuota nro: 2|12/1/2018|S/. 4177.61|S/. 166.21|S/. 33.31|S/. 199.52¬Cuota nro: 3|1/1/2019|S/. 4011.4|S/. 167.53|S/. 31.99|S/. 199.52¬Cuota nro: 4|2/1/2019|S/. 3843.87|S/. 168.87|S/. 30.65|S/. 199.52¬Cuota nro: 5|3/1/2019|S/. 3675|S/. 170.22|S/. 29.3|S/. 199.52¬Cuota nro: 6|4/1/2019|S/. 3504.78|S/. 171.57|S/. 27.95|S/. 199.52¬Cuota nro: 7|5/1/2019|S/. 3333.21|S/. 172.94|S/. 26.58|S/. 199.52¬Cuota nro: 8|6/1/2019|S/. 3160.27|S/. 174.32|S/. 25.2|S/. 199.52¬Cuota nro: 9|7/1/2019|S/. 2985.95|S/. 175.71|S/. 23.81|S/. 199.52¬Cuota nro: 10|8/1/2019|S/. 2810.24|S/. 177.11|S/. 22.41|S/. 199.52¬Cuota nro: 11|9/1/2019|S/. 2633.13|S/. 178.52|S/. 21|S/. 199.52¬Cuota nro: 12|10/1/2019|S/. 2454.61|S/. 179.95|S/. 19.57|S/. 199.52¬Cuota nro: 13|11/1/2019|S/. 2274.66|S/. 181.38|S/. 18.14|S/. 199.52¬Cuota nro: 14|12/1/2019|S/. 2093.28|S/. 182.83|S/. 16.69|S/. 199.52¬Cuota nro: 15|1/1/2020|S/. 1910.45|S/. 184.29|S/. 15.23|S/. 199.52¬Cuota nro: 16|2/1/2020|S/. 1726.16|S/. 185.76|S/. 13.76|S/. 199.52¬Cuota nro: 17|3/1/2020|S/. 1540.4|S/. 187.24|S/. 12.28|S/. 199.52¬Cuota nro: 18|4/1/2020|S/. 1353.16|S/. 188.73|S/. 10.79|S/. 199.52¬Cuota nro: 19|5/1/2020|S/. 1164.43|S/. 190.24|S/. 9.29|S/. 199.52¬Cuota nro: 20|6/1/2020|S/. 974.19|S/. 191.75|S/. 7.77|S/. 199.52¬Cuota nro: 21|7/1/2020|S/. 782.44|S/. 193.28|S/. 6.24|S/. 199.52¬Cuota nro: 22|8/1/2020|S/. 589.16|S/. 194.82|S/. 4.7|S/. 199.52¬Cuota nro: 23|9/1/2020|S/. 394.34|S/. 196.38|S/. 3.14|S/. 199.52¬Cuota nro: 24|10/1/2020|S/. 197.96|S/. 197.94|S/. 1.58|S/. 199.52¬~446.01~4788.5";
            //Session["datos"] = "Nombre|Apellidos|birthDay|M|DocumentType|NroDoc$NombreC|ApellidoC|1|313231c$bankName|nombreBankAccount|TypeAccount|nroAccount|nroTaxer|SocialReason|fiscalAdress|UserType$email|nroCell|nroCell2|country|State|City|Adress";
            //Session["carrito"] = "6000.00|descripcionDB|60|9750.00|3.25|10|TOP";


            string[] datos      = Session["datos"].ToString().Split('$');
            string[] carrito    = Session["carrito"].ToString().Split('|');
            string[] cronograma = Session["cronogramaYa"].ToString().Split('|');

            string[] arrayperson   = datos[0].Split('|');
            string[] arraycontacto = datos[3].Split('|');
            string   totaldolares  = cronograma[0];
            string   primeracuota  = carrito[3];

            tipocambio = carrito[4];
            decimal typeChange = decimal.Parse(tipocambio);

            numerodecuotas = carrito[2];
            codemem        = carrito[1];

            nombre   = arrayperson[0].ToUpper() + " " + arrayperson[1].ToUpper();
            dni      = arrayperson[5];
            username = (arrayperson[0].Substring(0, 1) + arrayperson[1].Substring(0, 1) + dni).ToUpper();

            domicilio = arraycontacto[6];
            distrito  = arraycontacto[5];
            correo    = arraycontacto[0];
            telefono  = arraycontacto[1];

            fecha = DateTime.Now.ToString("dd-MM-yyyy");

            MyFunctions mf = new MyFunctions();
            MyConstants mc = new MyConstants();

            string[] array1   = Session["cronogramaYa"].ToString().Split('^');
            string[] datosMem = array1[0].Split('|');
            string[] array2   = array1[1].Split('~');

            string[] cuotas = array2[0].Split('¬');

            decimal totalpagar = 0, interestotal = 0, importefinanciado = 0, porcefinanciado = 0;
            int     ncuotas = 0, interruptor = 0;

            for (int i = 0; i < cuotas.Length - 1; i++)
            {
                var fila = cuotas[i].Split('|');
                if (fila[0].Substring(0, 7) != "Inicial")
                {
                    totalpagar   += decimal.Parse(fila[5].Replace("S/.", ""));
                    interestotal += decimal.Parse(fila[4].Replace("S/.", ""));
                    ncuotas++;
                    if (interruptor != 1)
                    {
                        interruptor               = 1;
                        importefinanciado         = decimal.Parse(fila[2].Replace("S/.", ""));
                        Session["financedAmount"] = importefinanciado;
                    }
                }
            }
            porcefinanciado = (importefinanciado * 100) / decimal.Parse(datosMem[0]);


            using (Document document = new Document(PageSize.A4, 10, 10, 10, 10))
            {
                string ruta = HttpContext.Current.Server.MapPath("~/Resources/PoliticsPdf/") + $"CRO{username}{correlativo}.pdf";

                string datecur = DateTime.Now.ToString("yyyy;MM;dd;hh;mm;ss;fff");
                string destin  = HttpContext.Current.Server.MapPath("~/Resources/trash/") + "CRO" + username + correlativo + datecur + ".pdf";

                if (File.Exists(ruta))
                {
                    File.Move(ruta, destin);
                }

                FileStream stream = new FileStream(ruta, FileMode.Create);
                PdfWriter.GetInstance(document, stream);


                document.Open();

                string cadenfinal = string.Empty;
                cadenfinal += "<div style='text-align: center;font-family:cambria;font-size: 12pt;font-weight: bold;'>CRONOGRAMA DE PAGOS</div>";
                cadenfinal += "<p style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Número de Membresia: AR" + _nAfiliate.ToString("00000") + " </p>";
                cadenfinal += "<p style='font-family:cambria;font-size: 10pt;line-height: 13px;'>Código: " + username + " </p>";
                //cadenfinal += "<p style='font-family:cambria;font-size: 10pt;line-height: 13px;'><b>Nombre:</b>" + datosMem[0] + "</p>";
                //cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Importe Membresia: S/. " + datosMem[0] + "</p>";
                cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Nombre del Cliente: " + nombre + " </p>";
                cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Documento de Identidad: " + dni + "</p>";
                cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Correo Electronico: " + correo + " </p>";
                cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Telefono de Contacto: " + telefono + " </p>";
                cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Producto: Membresia " + codemem + "</p>";
                cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'> </p>";


                //
                cadenfinal += "<br/> <table ><tr>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Importe de la Membresia </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> " + mf.GetAmountCurrency(datosMem[0], _cc, typeChange) + " " + _cc + "</td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>% Financiamiento </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> " + porcefinanciado.ToString("0.00") + "% </td></tr>";

                cadenfinal += "<tr><td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Importe Financiado </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> " + mf.GetAmountCurrency(importefinanciado.ToString(), _cc, typeChange) + " " + _cc + " </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Cuotas a Pagar </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>" + ncuotas + " </td></tr>";

                cadenfinal += "<tr><td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Cantidad Total a Pagar </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> " + mf.GetAmountCurrency(totalpagar.ToString(), _cc, typeChange) + " " + _cc + " </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Tasa Efectiva Anual </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> " + mc.AmountInteresAnual.ToString() + " %</td></tr>";

                cadenfinal += "<tr><td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Monto total de Interes </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> " + mf.GetAmountCurrency(interestotal.ToString(), _cc, typeChange) + " " + _cc + " </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Periodicidad </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> Mensual </td></tr>";

                cadenfinal += "<tr><td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Fecha Emision Cronograma</td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> " + fecha + " </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> </td>";
                cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> </td></tr>";
                cadenfinal += "</tr></table>";


                cadenfinal += "<table border='1' height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>";
                cadenfinal += "<tr height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>";
                cadenfinal += "<th height='100' bgcolor='#858282' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>N°</th>";
                cadenfinal += "<th height='100' bgcolor='#858282' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Vencimiento</th>";
                cadenfinal += "<th height='100' bgcolor='#858282' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Capital</th>";
                cadenfinal += "<th height='100' bgcolor='#858282' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Amortizacion</th>";
                cadenfinal += "<th height='100' bgcolor='#858282' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Interes</th>";
                cadenfinal += "<th height='100' bgcolor='#858282' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>Cuota</th>";
                cadenfinal += "</tr>";

                for (int i = 0; i < cuotas.Length - 1; i++)
                {
                    var fila = cuotas[i].Split('|');
                    cadenfinal += "<tr height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>";
                    cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'> " + fila[0] + "</td>";
                    cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>" + DateTime.Parse(fila[1]).ToString("dd-MM-yyyy") + " </td>";
                    cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>" + mf.GetAmountCurrency(fila[2].Replace("S/.", ""), _cc, typeChange) + " " + _cc + "</td>";
                    cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>" + mf.GetAmountCurrency(fila[3].Replace("S/.", ""), _cc, typeChange) + " " + _cc + "</td>";
                    cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>" + mf.GetAmountCurrency(fila[4].Replace("S/.", ""), _cc, typeChange) + " " + _cc + "</td>";
                    cadenfinal += "<td height='100' style='font-family:cambria;font-size: 10pt;line-height: 8px;'>" + mf.GetAmountCurrency(fila[5].Replace("S/.", ""), _cc, typeChange) + " " + _cc + "</td>";

                    cadenfinal += "</tr>";
                }

                cadenfinal += "</table>";
                cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Este Cronograma se elabora bajo el supuesto cumpliento de pagos de las cuotas en las fechas indicadas.Cualquier alteracion en los pagos o en las condiciones del financiamiento,deja sin efecto este documento.</p>";
                cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>El atraso de una cuota mensual por mas de 8 días generará una penalidad de S/.30 soles.</p>";
                cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Si tuviera alguna consulta sirvase comunicarse con su asesor de membresías o a la línea de atención al cliente (01)-434-9481.</p>";

                cadenfinal += "<br />";
                cadenfinal += "<br />";
                cadenfinal += "<br />";

                cadenfinal += "<div style='text-align: right;'>";

                cadenfinal += "<div style='text-align: left;width: 200px;margin-left:100px' >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_____________________________</div>";
                cadenfinal += "<div style='text-align: left;width: 200px;margin-left:100px'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Omar Urteaga Cabrera</div>";
                cadenfinal += "<div style='text-align: left;width: 200px;margin-left:100px'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gerente General</div>";
                cadenfinal += "<div style='text-align: left;width: 200px;margin-left:100px'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ribera del Rio Club Resort</div>";
                cadenfinal += "</div>";


                var parsehtml = HTMLWorker.ParseToList(new StringReader(cadenfinal), null);

                foreach (var htmlElement in parsehtml)
                {
                    document.Add(htmlElement as IElement);
                }
                document.Close();
            }
        }
Exemple #22
0
        private void GeneratePDF(string path, string fileName, bool download, string text)//download set to false in calling method
        {
            var document = new Document();

            FileStream FS = new FileStream(path + fileName, FileMode.Create);


            try
            {
                if (download)
                {
                    Response.Clear();
                    Response.ContentType = "application/pdf";
                    PdfWriter.GetInstance(document, Response.OutputStream);
                }
                else
                {
                    PdfWriter.GetInstance(document, FS);
                }

                // generates the grid first
                StringBuilder strB = new StringBuilder();

                // now read the Grid html one by one and add into the document object

                using (TextReader sReader = new StringReader(text))
                {
                    List <IElement> list = HTMLWorker.ParseToList(sReader, new StyleSheet());
                    document.Open();

                    iTextSharp.text.Image logo = iTextSharp.text.Image.GetInstance(Server.MapPath("~/img/Header1.jpg"));
                    logo.SetAbsolutePosition(0f, 650f);
                    PdfPTable table = new PdfPTable(1);
                    table.AddCell(logo);

                    table.WidthPercentage = 110;
                    document.Add(table);

                    foreach (IElement elm in list)
                    {
                        document.Add(elm);
                    }

                    iTextSharp.text.Image logo1 = iTextSharp.text.Image.GetInstance(Server.MapPath("~/img/ma_footer.jpg"));//footer
                    logo1.SetAbsolutePosition(0f, 0f);
                    PdfPTable table1 = new PdfPTable(1);
                    table1.AddCell(logo1);

                    table1.WidthPercentage = 110;

                    document.Add(table1);
                }
            }
            catch (Exception ee)
            {
                //  lblMessage.Text = ee.ToString();
            }
            finally
            {
                if (document.IsOpen())
                {
                    document.Close();
                }
            }
        }
    // *****************
    // save to a file then email
    // *****************

    protected void Button2_Click(object sender, EventArgs e)
    {
        // Create a Document object
        var document = new Document(PageSize.A4, 50, 50, 25, 25);

        // Create a new PdfWrite object, writing the output to a MemoryStream
        var output = new MemoryStream();
        var writer = PdfWriter.GetInstance(document, new FileStream(Server.MapPath("~/Invoices/MikesTrucking - " + ordernumber.Text + ".pdf"), FileMode.Create));

        // Open the Document for writing
        document.Open();

        // Read in the contents of the Receipt.htm HTML template file
        string contents = File.ReadAllText(Server.MapPath("~/HTMLTemplate/invoice.htm"));

        // Replace the placeholders with the user-specified text
        contents = contents.Replace("[ORDERDATE]", ordernumber.Text);
        contents = contents.Replace("[BILLTO]", billto.Text);
        contents = contents.Replace("[BOOKEDBY]", bookedby.Text);
        contents = contents.Replace("[TRUCK]", truck.Text);
        contents = contents.Replace("[DRIVER]", driver.Text);
        contents = contents.Replace("[PICKUPLOCATION]", pickuplocation.Text);
        contents = contents.Replace("[DROPOFFLOCATION]", dropofflocation.Text);
        contents = contents.Replace("[TOTALCHARGES]", totalcharges.Text);
        contents = contents.Replace("[TOTALCHARGES2]", totalcharges.Text);


        // Uses iTextSharp and fills the PDF
        var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(contents), null);

        foreach (var htmlElement in parsedHtmlElements)
        {
            document.Add(htmlElement as IElement);
        }

        // Adds an image in the upper right corner
        var logo = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/trucklogo.jpg"));

        logo.SetAbsolutePosition(40, 680);
        logo.ScalePercent(80);
        document.Add(logo);

        var logo3 = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/line2.png"));

        logo3.SetAbsolutePosition(12, 569);
        logo.ScalePercent(80);
        document.Add(logo3);

        var logo2 = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/line2.png"));

        logo2.SetAbsolutePosition(12, 492);
        logo.ScalePercent(80);
        document.Add(logo2);

        document.Close();



        using (MailMessage mm = new MailMessage("*****@*****.**", txtTo.Text))
        {
            mm.Subject = "Invoice From Mikes Trucking - " + ordernumber.Text;
            mm.Body    = "Please see the attached document";
            string FileName = Server.MapPath("~/Invoices/MikesTrucking - " + ordernumber.Text + ".pdf");
            mm.Attachments.Add(new Attachment(FileName));
            mm.IsBodyHtml = false;
            SmtpClient smtp = new SmtpClient();
            smtp.Host      = "smtp.gmail.com";
            smtp.EnableSsl = true;
            NetworkCredential NetworkCred = new NetworkCredential("*****@*****.**", MainClass.MyPassword);
            smtp.UseDefaultCredentials = true;
            smtp.Credentials           = NetworkCred;
            smtp.Port = 587;
            smtp.Send(mm);
            ClientScript.RegisterStartupScript(GetType(), "alert", "alert('Email sent.');", true);
        }
    }
Exemple #24
0
        public void Pagares2(string _correlativo, string _cc)
        {
            string[] arrayLogin = HttpContext.Current.User.Identity.Name.Split('¬');
            //Session["cronogramaya"] = "6857.5|6142.5|0|11/2/2018¬89.57|24|10|Mensual^Inicial nro: 1|11/2/2018|S/. 6857.5|S/. 715|S/. 0|S/. 715¬Inicial nro: 2|12/2/2018|S/. 6142.5|S/. 800|S/. 0|S/. 800¬Inicial nro: 3|1/2/2018|S/. 5342.5|S/. 1000|S/. 0|S/. 1000¬Cuota nro: 1|11/1/2018|S/. 4342.5|S/. 164.89|S/. 34.63|S/. 199.52¬Cuota nro: 2|12/1/2018|S/. 4177.61|S/. 166.21|S/. 33.31|S/. 199.52¬Cuota nro: 3|1/1/2019|S/. 4011.4|S/. 167.53|S/. 31.99|S/. 199.52¬Cuota nro: 4|2/1/2019|S/. 3843.87|S/. 168.87|S/. 30.65|S/. 199.52¬Cuota nro: 5|3/1/2019|S/. 3675|S/. 170.22|S/. 29.3|S/. 199.52¬Cuota nro: 6|4/1/2019|S/. 3504.78|S/. 171.57|S/. 27.95|S/. 199.52¬Cuota nro: 7|5/1/2019|S/. 3333.21|S/. 172.94|S/. 26.58|S/. 199.52¬Cuota nro: 8|6/1/2019|S/. 3160.27|S/. 174.32|S/. 25.2|S/. 199.52¬Cuota nro: 9|7/1/2019|S/. 2985.95|S/. 175.71|S/. 23.81|S/. 199.52¬Cuota nro: 10|8/1/2019|S/. 2810.24|S/. 177.11|S/. 22.41|S/. 199.52¬Cuota nro: 11|9/1/2019|S/. 2633.13|S/. 178.52|S/. 21|S/. 199.52¬Cuota nro: 12|10/1/2019|S/. 2454.61|S/. 179.95|S/. 19.57|S/. 199.52¬Cuota nro: 13|11/1/2019|S/. 2274.66|S/. 181.38|S/. 18.14|S/. 199.52¬Cuota nro: 14|12/1/2019|S/. 2093.28|S/. 182.83|S/. 16.69|S/. 199.52¬Cuota nro: 15|1/1/2020|S/. 1910.45|S/. 184.29|S/. 15.23|S/. 199.52¬Cuota nro: 16|2/1/2020|S/. 1726.16|S/. 185.76|S/. 13.76|S/. 199.52¬Cuota nro: 17|3/1/2020|S/. 1540.4|S/. 187.24|S/. 12.28|S/. 199.52¬Cuota nro: 18|4/1/2020|S/. 1353.16|S/. 188.73|S/. 10.79|S/. 199.52¬Cuota nro: 19|5/1/2020|S/. 1164.43|S/. 190.24|S/. 9.29|S/. 199.52¬Cuota nro: 20|6/1/2020|S/. 974.19|S/. 191.75|S/. 7.77|S/. 199.52¬Cuota nro: 21|7/1/2020|S/. 782.44|S/. 193.28|S/. 6.24|S/. 199.52¬Cuota nro: 22|8/1/2020|S/. 589.16|S/. 194.82|S/. 4.7|S/. 199.52¬Cuota nro: 23|9/1/2020|S/. 394.34|S/. 196.38|S/. 3.14|S/. 199.52¬Cuota nro: 24|10/1/2020|S/. 197.96|S/. 197.94|S/. 1.58|S/. 199.52¬~446.01~4788.5";
            //Session["datos"] = "Jorge Samir|Pazo Torres|birthDay|M|DocumentType|73680055$NombreC|ApellidoC|1|313231c$bankName|nombreBankAccount|TypeAccount|nroAccount|nroTaxer|SocialReason|fiscalAdress|UserType$email|nroCell|nroCell2|country|State|City|Calle comercio 715 El Agustino";
            //Session["carrito"] = "6000.00|descripcionDB|60|9750.00|3.25|10|TOP";
            string[] datos      = Session["datos"].ToString().Split('$');
            string[] carrito    = Session["carrito"].ToString().Split('|');
            string[] cronograma = Session["cronogramaYa"].ToString().Split('|');

            string[] arrayperson    = datos[0].Split('|');
            string[] arraycontacto  = datos[3].Split('|');
            string   totaldolares   = cronograma[0];
            string   primeracuota   = carrito[3];
            string   tipocambio     = carrito[4];
            decimal  typeChange     = decimal.Parse(tipocambio);
            string   numerodecuotas = carrito[2];
            string   codemem        = carrito[6];


            Numalet     numalet = new Numalet();
            MyFunctions mf      = new MyFunctions();
            MyConstants mc      = new MyConstants();


            //string fechaActual = DateTime.Now.ToLongDateString();
            var dateCurrent = DateTime.Now.ToString("yyyy-MM-dd").Split('-');;

            string fechaActual = dateCurrent[2] + " de " + mf.GetMonth(dateCurrent[1]) + " del " + dateCurrent[0];


            var bankAccount = mc.BankAccount;

            string codigo    = "";
            string nombre    = "";
            string dni       = "";
            string domicilio = "";
            string username  = "";


            nombre   = arrayperson[0].ToUpper() + " " + arrayperson[1].ToUpper();
            dni      = arrayperson[5];
            username = (arrayperson[0].Substring(0, 1).ToUpper() + arrayperson[1].Substring(0, 1).ToUpper() + dni).ToUpper();

            dni = arrayperson[5];
            string userName = (arrayperson[0].Substring(0, 1) + arrayperson[1].Substring(0, 1) + dni).ToUpper();

            domicilio = arraycontacto[6];
            string distrito = arraycontacto[5];
            string correo   = arraycontacto[0];
            string telefono = arraycontacto[1];

            string fecha = DateTime.Now.ToString("dd-MM-yyyy");

            string[] array1   = Session["cronogramaYa"].ToString().Split('^');
            string[] datosMem = array1[0].Split('|');
            string[] array2   = array1[1].Split('~');

            string[] cuotas = array2[0].Split('¬');

            decimal totalpagar = 0, interestotal = 0, importefinanciado = 0, porcefinanciado = 0, valorcuotas = 0;
            int     ncuotas = 0, interruptor = 0;
            string  fechacuotas = "";

            List <Pagare> listPagare = new List <Pagare>();

            for (int i = 0; i < cuotas.Length - 1; i++)
            {
                var fila = cuotas[i].Split('|');
                if (fila[0].Substring(0, 7) != "Inicial")
                {
                    if (fila[0].Substring(0, 7) != "Upgrade")
                    {
                        totalpagar   += decimal.Parse(fila[5].Replace("S/.", ""));
                        interestotal += decimal.Parse(fila[4].Replace("S/.", ""));
                        ncuotas++;

                        if (interruptor != 1)
                        {
                            interruptor       = 1;
                            importefinanciado = decimal.Parse(fila[2].Replace("S/.", ""));
                            fechacuotas       = DateTime.Parse(fila[1]).ToString("dd/MM/yyyy");
                            valorcuotas       = decimal.Parse(fila[5].Replace("S/.", ""));
                        }
                    }
                }
                else
                {
                    if (i != 0)
                    {
                        listPagare.Add(new Pagare
                        {
                            Id               = 1,
                            Codigo           = codigo,
                            NombreCompleto   = nombre,
                            Dni              = dni,
                            Domicilio        = domicilio,
                            Fecha            = fechaActual,
                            FechaCuotas      = DateTime.Parse(fila[1]).ToString("dd/MM/yyyy"),
                            MontoSoles       = decimal.Parse(fila[5].Replace("S/.", "")),
                            MontoSolesLetras = numalet.ToCustomCardinal(decimal.Parse(mf.GetAmountCurrency(fila[5].Replace("S/.", ""), _cc, typeChange))),
                            NCuotas          = 1,
                            ValorCuotas      = decimal.Parse(fila[5].Replace("S/.", ""))
                        });
                    }
                }
            }
            porcefinanciado = (importefinanciado * 100) / decimal.Parse(datosMem[0]);

            listPagare.Add(new Pagare
            {
                Id               = 1,
                Codigo           = codigo,
                NombreCompleto   = nombre,
                Dni              = dni,
                Domicilio        = domicilio,
                Fecha            = fechaActual,
                FechaCuotas      = fechacuotas,
                MontoSoles       = importefinanciado,
                MontoSolesLetras = numalet.ToCustomCardinal(double.Parse(mf.GetAmountCurrency(importefinanciado.ToString(), _cc, typeChange))),
                NCuotas          = ncuotas,
                ValorCuotas      = valorcuotas
            });


            using (Document document = new Document(PageSize.A4, 10, 10, 10, 10))
            {
                string datecur = DateTime.Now.ToString("yyyy;MM;dd;hh;mm;ss;fff");
                string ruta    = HttpContext.Current.Server.MapPath("~/Resources/PoliticsPdf/") + "PAG" + username + _correlativo + ".pdf";
                this.RutaUrlPagare = "~/Resources/PoliticsPdf/" + "PAG" + username + _correlativo + ".pdf";
                string destin = HttpContext.Current.Server.MapPath("~/Resources/trash/") + "PAG" + username + _correlativo + datecur + ".pdf";
                if (File.Exists(ruta))
                {
                    File.Move(ruta, destin);
                }

                FileStream stream = new FileStream(ruta, FileMode.Create);
                PdfWriter.GetInstance(document, stream);

                document.Open();
                string cadenfinal = string.Empty;

                for (int i = 0; i < listPagare.Count; i++)
                {
                    cadenfinal += "<div style='text-align: center;font-family:cambria;font-size: 12pt;font-weight: bold;'>PAGARÉ CODIGO: " + userName.ToUpper() + "-" + (i + 1).ToString() + "</div>";
                    cadenfinal += "<div style='text-align: center;font-family:cambria;font-size: 10pt;font-weight: bold;'>POR UN VALOR DE( " + listPagare[i].MontoSolesLetras.ToUpper() + " " + _cc + " )</div>";
                    cadenfinal += "<div style='text-align: center;font-family:cambria;font-size: 10pt;font-weight: bold;'>( " + mf.GetAmountCurrency(listPagare[i].MontoSoles.ToString(), _cc, typeChange) + " " + _cc + " )ESTE VALOR ES EL SALDO A FINANCIAR</div>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Yo <b>" + listPagare[i].NombreCompleto + "</b> identificado(a) con DNI Nº <b>" + listPagare[i].Dni + "</b> con domicilio y residencia en <b>" + listPagare[i].Domicilio + "</b>.</p>" +
                                  "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Me comprometo a pagar incondicionalmente a VALLE ENCANTADO S.A.C " +
                                  "la suma de <b>" + listPagare[i].MontoSolesLetras + " " + _cc + " ( " + mf.GetAmountCurrency(listPagare[i].MontoSoles.ToString(), _cc, typeChange) + " " + _cc + " ) </b> pagadero en <b>" + listPagare[i].NCuotas + "</b> cuotas mensuales y consecutivas con vencimiento la primera " +
                                  "de ella el día <b>" + listPagare[i].FechaCuotas + "</b>, por valor de <b>( " + mf.GetAmountCurrency(listPagare[i].ValorCuotas.ToString(), _cc, typeChange) + " " + _cc + ")</b>.El pago de dichas cuotas se realizará en Soles a razón del cambio oficial vigente" +
                                  " a la fecha en que se efectúe éste. En caso de mora y mientras ella subsista pagaré intereses moratorios a la tasa máxima establecida para" +
                                  " el periodo correspondiente. De igual manera me obligo a pagar todos los gastos y costos de la cobranza judicial. </p>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>En el evento en que el deudor no pague en el plazo" +
                                  " estipulado una o más cuotas, el tenedor de este título podrá declarar vencidos todos los plazos de esta obligación y pedir su inmediato" +
                                  " pago total o el pago del saldo.</p>";

                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>También acepto que <b>VALLE ENCANTADO S.A.C</b>, declare de plazo vencido la obligación a la que se refiere este pagaré y exigir su pago total en el evento en que sea perseguido judicialmente. El recibo de abono de parciales no implica novación y cualquier pago que se efectúe se imputará primero a gastos, penalidades, y por último a capital. El suscriptor de este pagaré hace constatar que la obligación de pagarla indivisiblemente y solidariamente subsiste en caso de prórroga o prórrogas o de cualquier modificación a lo estipulado. El deudor declara que la suma que debe conforme a este pagaré, no estará sujeta ni a deducción ni a descuentos de cualquier naturaleza, incluyendo sin limitación cualquier impuesto que pueda gravar su pago, por lo tanto, en caso de existir alguna de estas deducciones o descuentos, el deudor deberá aumentar la suma a pagar de tal manera que el tenedor reciba siempre el valor estipulado del pagaré. El deudor acepta desde ahora el endoso, cesión o transferencia que de este pagaré a VALLE ENCANTADO S.A.C. todos los gastos e impuestos relacionados con la suscripción de este pagaré serán por cuenta del deudor.</p>";
                    cadenfinal += $"<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Todos los pagos que deban hacerse según este pagaré serán hechos exclusivamente en Soles, a la<b> Cuenta Recaudadora Soles BCP N° {bankAccount}</b>, en su oficina central ubicada en Av. Guardia Civil 1321 oficina 602 – Surquillo o en Ribera del Río Club Resort ubicada en Mz. B Lt. 72. Tercera Etapa - Cieneguilla.</p>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Todos los cálculos de intereses se efectuarán sobre la base de un año de trescientos sesenta (360) días, en cada caso por el número de días efectivamente transcurridos (incluyendo el primer día, pero excluyendo el último día) durante el pazo por el cual deban pagarse tale intereses. Si cualquiera de las fechas de pago de principal o intereses antes indicadas coincidiera con un día no hábil, se entenderá que el pago respectivo deberá ser efectuado el día hábil inmediatamente siguiente." +
                                  "Cualquier referencia en este pagaré al agente deberá entenderse efectuada a cualquier tenedor del mismo, sea que lo adquiera por endoso o de otro modo.</p>";

                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>En caso de mora, no será necesario requerimiento alguno para que el Cliente incurra en la misma, de acuerdo a lo establecido en el artículo 1333 inciso 1 del Código Civil Peruano. En dicho caso, durante todo el periodo de incumplimiento el cliente pagara a una tasa equivalente al máximo de interés permitido por la ley, por concepto de interés moratorio.</p>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>De conformidad con lo establecido por el artículo 158.2 concordante con el artículo 52° de la Ley de Títulos Valores, este pagaré no requerirá ser protestado por la falta de pago de cualquiera de las cuotas para ejercitar las acciones derivadas del mismo.</p>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Adicionalmente, el cliente se obliga incondicionalmente a pagar al Agente todos los gastos en que éste incurra en razón de su incumplimiento, obligándose a pagar sobre éstos el mismo interés moratorio pactado en este pagaré.</p>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Asimismo, el cliente acepta las renovaciones y prórrogas de vencimiento de este pagaré que el agente considere conveniente efectuar, ya sea por su importe parcial o total, aun cuando no hayan sido comunicadas al cliente. Dichas modificaciones serán anotadas en este mismo instrumento o en hoja anexa, sin que sea necesaria la suscripción de tal instrumento.</p>";

                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Este pagare se devolverá a su cancelación total. Queda expresamente establecido que el domicilio del cliente es <b>" + listPagare[i].Domicilio + " - Lima Perú</b>, lugar a donde se dirigirán todas las comunicaciones y notificaciones derivadas de este pagaré.</p>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Queda establecido que las obligaciones contenidas en este pagaré, constituyendo el presente acuerdo pacto en contrario a lo dispuesto por el artículo 1233° del Código Civil.</p>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Este pagaré se regirá bajo las leyes de la República del Perú.</p>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>Cualquier acción o procedimiento legal relacionado con y derivado del presente pagaré podrá ser iniciado ante los órganos judiciales del Cercado de Lima, Lima, Perú. El cliente renuncia a la jurisdicción de cualquier otro tribunal que pudiere corresponderle por cualquier otra razón.</p>";
                    cadenfinal += "<p style='text-align: justify;font-family:cambria;font-size: 10pt;line-height: 13px;'>En constancia de lo anterior, se firma el presente pagaré el día <b>" + listPagare[i].Fecha + "</b> en la ciudad de Lima,El Deudor.</p>";

                    cadenfinal += "<br /><br /><br /><br />";
                    cadenfinal += "<div style='text-align: center;font-family:cambria;font-size: 10pt;line-height: 13px;'>______________________________</div>";
                    cadenfinal += "<div style='text-align: center;font-family:cambria;font-size: 10pt;line-height: 13px;'>FIRMA</div>";
                    cadenfinal += "<div style='text-align: center;font-family:cambria;font-size: 10pt;line-height: 13px;'>DNI:<b>" + listPagare[i].Dni + "</b></div>";
                    if (listPagare[i].Domicilio.Length < 30)
                    {
                        cadenfinal += "<br />";
                    }
                    cadenfinal += "<br />";
                }
                StyleSheet styleSheet = new StyleSheet();

                Dictionary <string, string> stylep = new Dictionary <string, string>()
                {
                    { "font-family", "Calibri" },
                    { "text-align", "justify" },
                    { "line-height", "normal" },
                    { "font-size", "10pt" }
                };

                styleSheet.ApplyStyle("p", stylep);


                var parsehtml = HTMLWorker.ParseToList(new StringReader(cadenfinal), styleSheet);

                foreach (var htmlElement in parsehtml)
                {
                    document.Add(htmlElement as IElement);
                }
                document.Close();
            }
        }
Exemple #25
0
        /// <summary>
        /// Actually convert HTMl to PDF and return byte[]...
        /// </summary>
        /// <param name="html"></param>
        /// <returns></returns>
        public dynamic HtmlToPdfbytes(string html, bool loadByte)
        {
            StringWriter   sw         = new StringWriter();
            HtmlTextWriter htmlWriter = new HtmlTextWriter(sw);

            string htmlContent = "";

            if (ctx.GetIsRightToLeft())
            {
                htmlContent = @"<html dir='rtl'>
                <body>";
            }
            else
            {
                htmlContent = @"<html>
                <body>";
            }

            htmlContent += html;
            html        += "</html></body>";
            string[] htmls = html.Split('~');

            byte[]     docArray = null;
            StyleSheet style    = new StyleSheet();

            using (var memoryStream = new MemoryStream())
            {
                var document = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4);
                {
                    PdfWriter writer = PdfWriter.GetInstance(document, memoryStream);
                    writer.CloseStream = false;

                    if (ctx.GetIsRightToLeft())
                    {
                        writer.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
                    }

                    // Write PDF here.

                    document.Open();

                    for (int i = 0; i < htmls.Count(); i++)
                    {
                        var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(htmls[i]), style);
                        foreach (var htmlElement in parsedHtmlElements)
                        {
                            //(((htmlElement as iTextSharp.text.pdf.PdfPTable).Rows[0] as iTextSharp.text.pdf.PdfPRow).GetCells())
                            //bool firstRow = true;
                            if ((htmlElement is iTextSharp.text.pdf.PdfPTable) && (htmlElement as iTextSharp.text.pdf.PdfPTable).Rows != null &&
                                (htmlElement as iTextSharp.text.pdf.PdfPTable).Rows.Count > 0)
                            {
                                (htmlElement as iTextSharp.text.pdf.PdfPTable).SpacingBefore = 5;
                                //(htmlElement as iTextSharp.text.pdf.PdfPTable).DefaultCell.PaddingBottom = 5;
                                foreach (var row in (htmlElement as iTextSharp.text.pdf.PdfPTable).Rows)
                                {
                                    PdfPCell[] cells = (row as iTextSharp.text.pdf.PdfPRow).GetCells();

                                    if (cells.Length > 0)
                                    {
                                        foreach (var cell in cells)
                                        {
                                            if (cell != null)
                                            {
                                                //if (firstRow)
                                                //{
                                                //    cell.Table. = 5;
                                                //    firstRow = false;
                                                //}
                                                cell.BorderColor = new BaseColor(150, 150, 150);
                                                cell.BorderWidth = 1;
                                            }
                                        }
                                    }
                                }
                            }

                            document.Add(htmlElement as IElement);
                        }

                        document.NewPage();
                    }
                    document.Close();
                }


                if (loadByte)
                {
                    docArray = memoryStream.ToArray();
                    return(docArray);
                }
                else
                {
                    string filePath = System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath + "TempDownload";

                    if (!Directory.Exists(filePath))
                    {
                        Directory.CreateDirectory(filePath);
                    }

                    filePath = filePath + "\\temp_" + CommonFunctions.CurrentTimeMillis() + ".pdf";
                    File.WriteAllBytes(filePath, memoryStream.ToArray());
                    filePath = filePath.Substring(filePath.IndexOf("TempDownload"));
                    return(filePath);
                }

                //docArray = memoryStream.ToArray();
            }

            //}
            if (loadByte)
            {
                return(docArray);
            }
            else
            {
                return("");
            }
        }
Exemple #26
0
        /* ****************************************************************************/

        /* Metodo que genera el Certificado Laboral en una ventana Externa
         * /* ****************************************************************************/
        public void generarCertificado(string id_Empleado)
        {
            string          Cn       = ConfigurationManager.ConnectionStrings["trabajadoresConnectionString"].ConnectionString.ToString();
            string          bd2      = ConfigurationManager.AppSettings["BD2"].ToString();
            CnMysql         Conexion = new CnMysql(Cn);
            MySqlDataReader reader   = null;
            MySqlCommand    cmd      = new MySqlCommand();
            Document        document = new Document(PageSize.LETTER);

            try
            {
                Conexion.AbrirCnMysql();
                cmd             = new MySqlCommand(bd2 + ".sp_GenCertificado", Conexion.ObtenerCnMysql());
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@NumCed", id_Empleado);

                reader = cmd.ExecuteReader();

                Response.ContentType = "application/pdf";
                Response.AddHeader("content-disposition", "inline;filename=CertificadoLaboral.pdf");
                Response.Cache.SetCacheability(HttpCacheability.NoCache);

                // Read in the contents of the Receipt.htm file...
                string contents = File.ReadAllText(Server.MapPath("~/Html/Aliados.html"));

                PdfWriter.GetInstance(document, Response.OutputStream);

                //open Document
                document.Open();

                iTextSharp.text.Image logo = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Img/Aliados.jpg"));
                logo.ScaleAbsolute(205, 44);
                logo.SetAbsolutePosition(205, 675);
                //logo.Alignment = iTextSharp.text.Image.ALIGN_CENTER;
                document.Add(logo);

                reader.Read();

                string   FechaInicial    = reader["Fecha_Ingreso_Empleado"].ToString();
                DateTime dt              = new DateTime(Convert.ToInt16(FechaInicial.Substring(0, 4)), Convert.ToInt16(FechaInicial.Substring(4, 2)), Convert.ToInt16(FechaInicial.Substring(6, 2)));
                string   fechaGeneracion = reader["Gen_Nomina"].ToString();

                string   d = DateTime.Now.ToString("yyyyMMdd");
                DateTime dt2;

                if (fechaGeneracion == "")
                {
                    dt2 = DateTime.ParseExact(d, "yyyyMMdd", CultureInfo.InvariantCulture);
                }
                else
                {
                    dt2 = new DateTime(Convert.ToInt16(fechaGeneracion.Substring(0, 4)), Convert.ToInt16(fechaGeneracion.Substring(4, 2)), Convert.ToInt16(fechaGeneracion.Substring(6, 2)));
                }

                // Replace the placeholders with the user-specified text
                contents = contents.Replace("[NOMBRE_EMPLEADO]", reader["Nombres_Completos_Empleado"].ToString());
                contents = contents.Replace("[TIPOID_EMPLEADO]", reader["Nombre_TipoID"].ToString());
                contents = contents.Replace("[ID_EMPLEADO]", reader["Id_Empleado"].ToString());
                contents = contents.Replace("[LUGAR_EXPEDICION_DOC]", reader["Lugar_expediccion_IdEmpleado"].ToString());

                if (reader["Marcacion_Descripcion"].ToString() == "1")
                {
                    contents = contents.Replace("[NOMBRE_COMPANIA]", reader["Descripcion_Compania2"].ToString());
                }
                else
                {
                    contents = contents.Replace("[NOMBRE_COMPANIA]", reader["Descripcion_compania"].ToString());
                }

                contents = contents.Replace("[CARGO_EMPLEADO]", reader["Nombre_Cargo_Empleado"].ToString());
                contents = contents.Replace("[FECHA_INI_CONTRATO]", dt.ToString("MMMM dd/yyyy"));
                contents = contents.Replace("[VALOR_CONTRATO_LETRAS]", enLetras(reader["Salario_Empleado"].ToString()) + " PESOS MCTE");
                contents = contents.Replace("[VALOR_CONTRATO_NUM]", String.Format(CultureInfo.CreateSpecificCulture("es-CO"), "{0:0,0.00}", reader["Salario_Empleado"]).ToString());

                contents = contents.Replace("[DIA_ACTUAL]", DateTime.Now.Day.ToString());
                contents = contents.Replace("[MES_ACTUAL]", mesLetras(DateTime.Now.Month));
                contents = contents.Replace("[ANIO_ACTUAL]", DateTime.Now.Year.ToString());
                contents = contents.Replace("[FECHA_ACTUALIZACION]", dt2.ToString("MMMM dd/yyyy"));

                if (reader["Fecha_terminacion_empleado"].ToString() == "" || reader["Fecha_terminacion_empleado"].ToString() == " ")
                {
                    contents = contents.Replace("[ESTADO_VINCULACION]", "está actualmente vinculado(a)");
                    contents = contents.Replace("[FECHA_FIN_CONTRATO]", ",");
                }
                else
                {
                    contents = contents.Replace("[ESTADO_VINCULACION]", "estuvo vinculado(a)");
                    string FechaFinal = reader["fecha_terminacion_empleado"].ToString();
                    dt       = new DateTime(Convert.ToInt16(FechaFinal.Substring(0, 4)), Convert.ToInt16(FechaFinal.Substring(4, 2)), Convert.ToInt16(FechaFinal.Substring(6, 2)));
                    contents = contents.Replace("[FECHA_FIN_CONTRATO]", " hasta " + dt.ToString("MMMM dd/yyyy") + ",");
                }

                iTextSharp.text.Image firma = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Img/Firma.png"));
                firma.ScaleAbsolute(180, 53);
                firma.SetAbsolutePosition(38, 242);
                document.Add(firma);

                contents = contents.Replace("[NOMBRE_DIRECTOR]", reader["Nombre_Firma"].ToString());
                contents = contents.Replace("[CARGO_DIRECTOR]", reader["Cargo_Firma"].ToString());

                // Step 4: Parse the HTML string into a collection of elements...
                var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(contents), null);

                // Enumerate the elements, adding each one to the Document...
                foreach (var htmlElement in parsedHtmlElements)
                {
                    document.Add(htmlElement as IElement);
                }
            }
            catch (Exception E)
            {
                Paragraph paragraph = new Paragraph();
                paragraph.Add("Ha ocurrido el siguiente error: " + E.Message + " _Metodo: " + System.Reflection.MethodBase.GetCurrentMethod().Name);
                document.Add(paragraph);
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
                cmd.Dispose();
                Conexion.CerrarCnMysql();
                //Finish Write PDF
                document.Close();
                Response.Write(document);
                Response.End();
            }
        }
Exemple #27
0
    public void GeneratePDFNew(string Imagepath, string fileName, string HeaderName, GridView GridReport, Page oPage, string text)
    {
        var document = new Document(PageSize.A4, 50, 50, 25, 25);

        //  document.SetMargins(20, 20, 20, 20);
        try
        {
            // oPage.Response.Clear();
            PdfWriter.GetInstance(document, oPage.Response.OutputStream);
            // generates the grid first
            StringBuilder strB  = new StringBuilder();
            StringBuilder strB1 = new StringBuilder();
            string        str   = string.Empty;

            #region [pdf]
            //str = "<font size='12px' face='arial'><table width='70%' align='left'><tr><td colspan='5' ></td></tr>";
            //str = str + "<tr><td colspan='5' width='30%' align='center'><b>Estimate Details</b></td></tr> <tr><td align='right' >Estimate No:</td><td><b>" + Obj_Comm.ToTitleCase(lblEstimateNo.Text) + "</b></td></tr>";
            //str = str + "<tr><td align='right' >Estimate Date:</td><td><b>" + Obj_Comm.ToTitleCase(lblEstimateDate.Text) + "</b></td></tr>";
            //str = str + "<tr><tr><td align='right' >Order By:</td><td><b>" + Obj_Comm.ToTitleCase(lblOrderBy.Text) + "</b></td></tr>";
            //str = str + "<tr><tr><td align='right' >Customer:</td><td><b>" + Obj_Comm.ToTitleCase(lblCustName.Text) + "</b></td></tr>";
            //str = str + "<tr><tr><td align='right' >Site:</td><td><b>" + Obj_Comm.ToTitleCase(lblSite.Text) + "</b></td></tr>";
            //str = str + "<tr><tr><td align='right' >Exp Delivery Date:</td><td><b>" + Obj_Comm.ToTitleCase(lblExpDelDate.Text) + "</b></td></tr>";
            //str = str + "<tr><tr><td align='right' >Order Status:</td><td><b>" + Obj_Comm.ToTitleCase(lblOrderStatus.Text) + "</b></td></tr>";

            str = "<font size='12px' face='arial'><table width='100%' align='left'><tr><td colspan='4' ></td></tr>";

            str = str + "<tr><td colspan='4' align='left'><b>" + lblCompanyName.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='left'><b>" + lblCompanyAddress.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='left'><b>Phone No:" + lblPhnNo.Text + "</b></td></tr>";
            str = str + "<tr><td colspan='4' align='left'><b>Fax No:" + lblFaxNo.Text + "</b></td></tr>";

            str = str + "<tr><td colspan='4' align='center'><b>Damage Details</b></td></tr>";
            str = str + "<tr><td colspan='4' ></td></tr>";
            str = str + "<tr><td><b>DamageNo :</b><b>" + lblDamageNo.Text + "</b></td><td><b>DamageDate :</b><b>" + lblDamageDate.Text + "<b></td><td colspan='2'></td></tr>";
            str = str + "<tr><td><b>Prepared By :</b><b>" + lblPreparedBy.Text + "<b></td><td colspan='3'></td></tr>";
            if (Damagethrough == true)
            {
                str = str + "<tr><td><b>InwardNo :</b><b>" + lblInwardNo.Text + "</b></td><td><b>InwardDate :</b><b>" + lblInwardDate.Text + "<b></td><td colspan='2'></td></tr>";
                str = str + "<tr><td><b>PONo :</b><b>" + lblPONo.Text + "</b></td><td><b>SuppName :</b><b>" + lblSuppName.Text + "<b></td><td colspan='2'></td></tr>";
            }
            str = str + "<tr><td colspan='4' align='Left'><b>" + "" + "</b></td></tr>";

            document.SetMargins(10, 10, 10, 10);
            document.Open();
            str = str + "<br><tr><td colspan='4' align='right'>" + GridViewToHtml(GrdDamage) + "</td></tr><br>";
            str = str + "<br><tr><td colspan='4'><table><tr><td>Prepared By</td><td></td><td>Accepted By</td><td></td><td>Authorised By</td></tr>";
            str = str + "<tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>";
            str = str + "<tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>";
            str = str + "<tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>";
            str = str + "<tr><td width='100%'><b>Name &amp; Designation<b></td><td></td><td width='100%'><b>Name &amp; Designation<b></td><td></td><td width='100%'><b>Name &amp; Designation<b></td></tr>";
            str = str + "<br><tr><td>Store Incharge</td><td></td><td>Unit Head/Operation Manager</td><td></td><td>Store Incharge</td></tr></br>";
            str = str + "</table></td></tr>";
            str = str + "</table></font>";
            #endregion

            strB.Append(str);

            document.SetMargins(20, 20, 20, 20);
            document.Open();
            if (text.Length.Equals(0)) // export the text
            {
                //  BindMyGrid();
                using (StringWriter sWriter = new StringWriter(strB))
                {
                    using (HtmlTextWriter htWriter = new HtmlTextWriter(sWriter))
                    {
                        //grdPrice.RenderControl(htWriter);
                    }
                }
            }
            else // export the grid
            {
                strB.Append(text);
            }
            // now read the Grid html one by one and add into the document object
            using (TextReader sReader = new StringReader(strB.ToString()))
            {
                iTextSharp.text.Image gif = iTextSharp.text.Image.GetInstance(Server.MapPath("~/Images/MasterPages/MayurLogo.png"));
                document.Add(gif);
                List <IElement> list = HTMLWorker.ParseToList(sReader, new StyleSheet());
                foreach (IElement elm in list)
                {
                    document.Add(elm);
                }
            }
            // oPage.Response.ContentType = "application/pdf";
            // oPage.Response.AddHeader("content-disposition", "attachment; filename=" + fileName);
            //  oPage.Response.Flush();
            //  oPage.Response.End();
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
        finally
        {
            document.Close();
        }
    }
Exemple #28
0
        public Documento NacimientosExportarPDF(NacimientoFilter filter)
        {
            FileStream fs;
            Document   doc = null;
            PdfWriter  writer;

            try
            {
                doc = new Document();
                // Verifico el directorio
                string filePath = System.IO.Path.Combine(HttpRuntime.AppDomainAppPath, "Archivos\\");
                if (!Directory.Exists(filePath))
                {
                    Directory.CreateDirectory(filePath);
                }

                var fecha = DateTime.Now.ToString("dd-MM-yyyyHHmm");
                // Nombre del archivo
                string fileName = string.Format("{0}-{1}-{2}.pdf", "Nacimientos", filter.campo, fecha);
                // Generación del PDF
                fs = new FileStream(System.IO.Path.Combine(filePath, fileName), FileMode.Create, FileAccess.Write, FileShare.None);

                writer = PdfWriter.GetInstance(doc, fs);
                doc.Open();
                string pathImg1 = System.IO.Path.Combine(HttpRuntime.AppDomainAppPath, "Archivos\\logo_farmix.jpg");
                Image  image1;
                if (Image.GetInstance(pathImg1) != null)
                {
                    image1 = Image.GetInstance(pathImg1);
                    image1.ScalePercent(24F);
                    image1.Alignment = Element.ALIGN_CENTER;
                    doc.Add(image1);
                }
                //añadimos linea negra abajo de las imagenes para separar.
                doc.Add(new Paragraph(new Chunk(new iTextSharp.text.pdf.draw.LineSeparator(2.0F, 100.0F, BaseColor.BLACK, Element.ALIGN_LEFT, 1))));
                doc.Add(new Paragraph(" "));
                //Inicio datos
                var             lista   = GetNacimientos(filter);
                Font            fuente1 = new Font(FontFamily.TIMES_ROMAN, 12.0f, Font.BOLD, BaseColor.BLACK);
                Font            fuente2 = new Font(FontFamily.TIMES_ROMAN, 14.0f, Font.BOLD, BaseColor.BLACK);
                Rectangle       rect    = PageSize.LETTER;
                List <IElement> ie;
                float           pageWidth = rect.Width;
                string          html      = "";
                fecha = DateTime.Now.ToString("dd-MM-yyyy HH:mm");
                html  = @"
                            <html><head></head><body>
                            <table>
                            <tr><td><b>Nacimientos</b></td></tr>
                            <tr><td>Campo: <b>" + filter.campo + @"</b></td></tr>
                            <tr><td>Generado por: <b>" + filter.usuario + @"</b></td></tr>
                            <tr><td>Fecha: <b>" + fecha + @"</b></td></tr>
                            <tr><td>Período: <b>" + filter.periodo + @"</b></td></tr>                    
                            </table>
                            </body></html>";
                ie    = HTMLWorker.ParseToList(new StringReader(html), null);
                foreach (IElement element in ie)
                {
                    PdfPTable table1 = element as PdfPTable;

                    if (table1 != null)
                    {
                        table1.SetWidthPercentage(new float[] { (float)1 * pageWidth }, rect);
                    }
                    doc.Add(element);
                }
                doc.Add(new Paragraph(" "));
                if (lista.Count() > 0)
                {
                    string caravanaMadre, caravanaPadre;
                    if (filter.numCaravanaMadre == 0)
                    {
                        caravanaMadre = "Sin filtro";
                    }
                    else
                    {
                        caravanaMadre = filter.numCaravanaMadre.ToString();
                    }
                    if (filter.numCaravanaPadre == 0)
                    {
                        caravanaPadre = "Sin filtro";
                    }
                    else
                    {
                        caravanaPadre = filter.numCaravanaPadre.ToString();
                    }
                    html = @"
                            <html><head></head><body>
                            <table>
                            <tr><td><b>Filtro Aplicado</b></td><td></td><td></td><td></td></tr>                
                            </table>
                            <table border='1'>
                            <thead>
                            <tr>
                            <th>Caravana Madre</th>
                            <th>Caravana Padre</th>       
                            <th>Fecha Desde</th>    
                            <th>Fecha Hasta</th>           
                            </tr>               
                            </thead>
                            <tbody>
                            <tr><td>" + caravanaMadre + @"</td><td>" + caravanaPadre + @"</td><td>" + (filter.fechaDesde == null ? "Sin filtro" : filter.fechaDesde) + @"</td><td>" + (filter.fechaHasta == null ? "Sin filtro" : filter.fechaHasta) + @"</td><td></tr>
                            </tbody></table></body></html>";
                    ie   = HTMLWorker.ParseToList(new StringReader(html), null);
                    foreach (IElement element in ie)
                    {
                        PdfPTable table = element as PdfPTable;

                        if (table != null)
                        {
                            table.SetWidthPercentage(new float[] { (float).2 * pageWidth, (float).2 * pageWidth, (float).2 * pageWidth, (float).2 * pageWidth }, rect);
                        }
                        doc.Add(element);
                    }
                    doc.Add(new Paragraph(" "));
                    html = @"
                            <html><head></head><body>
                            <table border='1'>
                            <thead>
                            <tr>
                            <th>Caravana Madre</th>
                            <th>Caravana Padre</th>       
                            <th>Fecha Nacimiento</th>              
                            </tr>               
                            </thead>
                            <tbody>";
                    foreach (var item in lista)
                    {
                        html += @"<tr><td>" + (item.numCaravanaMadre == "" ? "Sin datos" : item.numCaravanaMadre) + @"</td><td>" + (item.numCaravanaPadre == "" ? "Sin datos" : item.numCaravanaPadre) + @"</td><td>" + item.fechaNacimiento + @"</td></tr>";
                    }
                    html += @"</tbody></table>
                            </body></html> ";
                    ie    = HTMLWorker.ParseToList(new StringReader(html), null);
                    foreach (IElement element in ie)
                    {
                        PdfPTable table = element as PdfPTable;

                        if (table != null)
                        {
                            table.SetWidthPercentage(new float[] { (float).2 * pageWidth, (float).2 * pageWidth, (float).2 * pageWidth }, rect);
                        }
                        doc.Add(element);
                    }
                }
                doc.Close();
                return(new Documento()
                {
                    nombre = fileName
                });
            }
            catch (Exception ex)
            {
                doc.Close();
                throw ex;
            }
            finally
            {
                fs     = null;
                doc    = null;
                writer = null;
            }
        }
Exemple #29
0
        //Print Button or Print Payslip
        public void itemcommand(object sender, CommandEventArgs c)
        {
            //string payroll_id = Session["payroll_id"].ToString();
            //string emp_id = Session["emp_id"].ToString();

            Button btn        = (Button)(sender);
            string payroll_id = btn.CommandArgument;

            string sql = "select  B.Emp_BasicSalary ,(convert(varchar, A.Payroll_fromDate, 107) + ' - ' + convert(varchar, A.Payroll_toDate, 107)) AS PAYPERIOD, (UPPER(LEFT(cast(B.Emp_lname as nvarchar(max)),1)) + LOWER(SUBSTRING(cast(B.Emp_lname as nvarchar(max)),2,LEN(cast(B.Emp_lname as nvarchar(max))))) + ', ' + UPPER(LEFT(cast(B.Emp_fname as nvarchar(max)),1)) + LOWER(SUBSTRING(cast(B.Emp_fname as nvarchar(max)),2,LEN(cast(B.Emp_fname as nvarchar(max)))))+ ' ' + UPPER(LEFT(cast(B.Emp_mname as nvarchar(max)),1)) + LOWER(SUBSTRING(cast(B.Emp_mname as nvarchar(max)),2,LEN(cast(B.Emp_mname as nvarchar(max)))))) AS EmployeeFullName , A.* from db_owner.Payroll A left join db_owner.Employee B on A.Emp_ID = B.Emp_ID where Payroll_ID =" + payroll_id;

            objCommon.LoadDataTable(sql, dt);

            //Data
            string fullname       = dt.Rows[0]["EmployeeFullName"].ToString();
            string payperiod      = dt.Rows[0]["PAYPERIOD"].ToString();
            string basicsalary    = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["Emp_BasicSalary"].ToString()));
            string totalhourpay   = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["TotalHourPay"].ToString()));
            string totaltardiness = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["TotalTardinessPay"].ToString()));
            string totalovertime  = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["TotalOvertimePay"].ToString()));
            string totalleave     = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["Leave"].ToString()));
            string SSS            = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["SSS"].ToString()));
            string pagibig        = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["Pagibig"].ToString()));
            string philhealth     = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["Philhealth"].ToString()));
            string totaldecutions = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["OtherDeductions"].ToString()));
            string grosspay       = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["GrossPay"].ToString()));
            string netpay         = String.Format("{0:n}", Decimal.Parse(dt.Rows[0]["NetPay"].ToString()));


            Document  pdoc    = new Document(PageSize.A4, 20f, 20f, 30f, 30f);
            PdfWriter pWriter = PdfWriter.GetInstance(pdoc, new FileStream("C:\\Test\\Payslip.pdf", FileMode.Create));

            pdoc.Open();

            // Read in the contents of the Receipt.htm file...
            string contents = File.ReadAllText(Server.MapPath("~/HTMLPage1.htm"));

            // Replace the placeholders with the user-specified text
            contents = contents.Replace("[EmployeeFullName]", fullname);
            contents = contents.Replace("[PAYPERIOD]", payperiod);
            contents = contents.Replace("[Emp_BasicSalary]", basicsalary);
            contents = contents.Replace("[TotalHours]", totalhourpay);
            contents = contents.Replace("[TotalTardiness]", totaltardiness);
            contents = contents.Replace("[TotalOvertimePay]", totalovertime);
            contents = contents.Replace("[Leave]", totalleave);
            contents = contents.Replace("[SSS]", SSS);
            contents = contents.Replace("[Pagibig]", pagibig);
            contents = contents.Replace("[Philhealth]", philhealth);
            contents = contents.Replace("[OtherDeductions]", totaldecutions);
            contents = contents.Replace("[GrossPay]", grosspay);
            contents = contents.Replace("[NetPay]", netpay);

            // Step 4: Parse the HTML string into a collection of elements...
            var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(contents), null);

            // Enumerate the elements, adding each one to the Document...
            foreach (var htmlElement in parsedHtmlElements)
            {
                pdoc.Add(htmlElement as IElement);
            }

            pdoc.Close();
            System.Diagnostics.Process.Start("C:\\Test\\Payslip.pdf");
        }
Exemple #30
0
    protected void print(string hid)
    {
        try
        {
            string   filepath = System.AppDomain.CurrentDomain.BaseDirectory.ToString() + "tc\\tcpdf\\TransferCertificate.pdf";
            Document doc      = new Document();
            PdfWriter.GetInstance(doc, new FileStream(filepath.ToString(), FileMode.Create));
            StringBuilder strB = new StringBuilder();
            doc.Open();
            doc.NewPage();
            string strMsg = " <br /><br /> <br />";
            string url    = System.AppDomain.CurrentDomain.BaseDirectory.ToString() + "media\\images\\reportcard.png";

            strMsg = strMsg + "<div style='width:100%;text-align:center'><img src='" + url + "' alt='' style='align:center' /></div><br />";
            strB   = new StringBuilder(strMsg);
            using (TextReader sReader = new StringReader(strB.ToString()))
            {
                ArrayList list = HTMLWorker.ParseToList(sReader, new StyleSheet());
                for (int k = 0; k < list.Count; k++)
                {
                    doc.Add((IElement)list[k]);
                }
            }

            DataAccess da  = new DataAccess();
            DataSet    ds  = new DataSet();
            string     str = "select a.*,CONVERT(varchar(11),a.stradmitdate,103) as admissiondate,a.strfirstname+' '+a.strmiddlename+' '+strlastname as name,CONVERT(varchar(11),a.strdateofbirth,103) as dateofbirth,";
            str = str + " a.stridentification1+' '+a.stridentification2 as identificationmark,YEAR(a.stradmitdate) as year,b.strStandardSec,c.*,convert(varchar(11),c.dt_dateOf_TCissued,103) as tcissued,convert(varchar(11),c.dt_dateOf_studentleft,103) as dtleft,convert(varchar(11),c.dt_dateOf_requestOfwithdrawal,103) as dtrequest ";
            str = str + " from tblstudent a,dbo.tblPromoted b,tblstudentwithdrawal c where a.intschool=" + Session["SchoolID"].ToString() + " and b.intschool=" + Session["SchoolID"].ToString() + " and a.intadmitno=b.strAdmissionNo and c.int_studentid=a.intid and a.intadmitno='" + hid.ToString() + "'";
            ds  = new DataSet();
            ds  = da.ExceuteSql(str);
            if (ds.Tables[0].Rows.Count > 0)
            {
                strMsg = "";
                strMsg = strMsg + "<table border='1'>";
                strMsg = strMsg + "<tr >";
                strMsg = strMsg + "<td  colspan=\"4\" valign=\"bottom\" align=\"center\"><font face=\"Verdana\" style=\"font-size:12px;\" color=\"#000000\"><b>TRANSFER CERTIFICATE</b></font></td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + " <font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Admission No :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["intadmitno"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Admission Date :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["admissiondate"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Student Name :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["name"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Father/Guardian Name :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["strfatherorguardname"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Standard :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["strstandard"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Section :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["strsection"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Date of birth :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["dateofbirth"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Gender :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["strgender"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Nationality :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["strnationality"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Religion :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["strreligion"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Second Language :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"11px\">" + ds.Tables[0].Rows[0]["strsecondlanguage"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Third Language :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["strthirdlanguage"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr  width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Previous Standard :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["strstandardsec"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Personal Identification Marks :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["identificationmark"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Original documents submitted at the time of admission :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["stroriginaldocuments"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Whether student qualified for promotion :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                if (int.Parse(ds.Tables[0].Rows[0]["int_qualified_Forpromotion"].ToString()) == 0)
                {
                    lblpromotion.Text = "No";
                    strMsg            = strMsg + "<font size=\"9px\">" + lblpromotion.Text + "</font>";
                }
                else
                {
                    lblpromotion.Text = "Yes";
                    strMsg            = strMsg + "<font size=\"9px\">" + lblpromotion.Text + "</font>";
                }
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Scholarship if any :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                if (int.Parse(ds.Tables[0].Rows[0]["int_scholarship_ifany"].ToString()) == 0)
                {
                    lblscholarship.Text = "No";
                    strMsg = strMsg + "<font size=\"9px\">" + lblscholarship.Text + "</font>";
                }
                else
                {
                    lblscholarship.Text = "Yes";
                    strMsg = strMsg + "<font size=\"9px\">" + lblscholarship.Text + "." + "<br />" + " Details :" + ds.Tables[0].Rows[0]["str_scholarshipDetails"].ToString() + "</font>";
                }
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Concession if any :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                if (int.Parse(ds.Tables[0].Rows[0]["int_concession_ifany"].ToString()) == 0)
                {
                    lblconcession.Text = "No";
                    strMsg             = strMsg + "<font size=\"9px\">" + lblconcession.Text + "</font>";
                }
                else
                {
                    lblconcession.Text = "Yes";
                    strMsg             = strMsg + "<font size=\"9px\">" + lblscholarship.Text + "." + "<br />" + " Details :" + ds.Tables[0].Rows[0]["str_ConcessionDetails"].ToString() + "</font>";
                }
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Conduct and Character :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["str_conduct_andCharecter"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Date on which transfer certificate is requested :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["dtrequest"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Date on which student left or leaving the school :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["dtleft"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Date on which transfer certificate is issued :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["tcissued"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Transfer certificate number :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["str_TcNumber"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Reason for leaving the school :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["str_Reason"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Other remarks :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                strMsg = strMsg + "<font size=\"9px\">" + ds.Tables[0].Rows[0]["str_remarks"].ToString() + "</font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "<tr width='100%' style='margin:0px;padding:0px;height:70px'>";
                strMsg = strMsg + "<td colspan=\"3\" align=\"left\">";
                strMsg = strMsg + "<font face=\"Verdana\" style=\"font-size:11px;\" color=\"#000000\"><b>Status :</b></font>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "<td align=\"left\">";
                if (ds.Tables[0].Rows[0]["intapprove"].ToString() == "1")
                {
                    lblstatus.Text = "Approved";
                    strMsg         = strMsg + "<font size=\"9px\">" + lblstatus.Text + "</font>";
                }

                if (ds.Tables[0].Rows[0]["intapprove"].ToString() == "2")
                {
                    lblstatus.Text = "Rejected";
                    strMsg         = strMsg + "<font size=\"9px\">" + lblstatus.Text + "." + "<br />" + " Reason for rejected :" + ds.Tables[0].Rows[0]["str_ReasonForRejecting"].ToString() + "</font>";
                }
                if (ds.Tables[0].Rows[0]["intapprove"].ToString() == "0")
                {
                    lblstatus.Text = "WaitList";
                    strMsg         = strMsg + "<font size=\"9px\">" + lblstatus.Text + "</font>";
                }
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "</td>";
                strMsg = strMsg + "</tr>";
                strMsg = strMsg + "</table>";
            }
            strB = new StringBuilder(strMsg);
            using (TextReader sReader = new StringReader(strB.ToString()))
            {
                ArrayList list = HTMLWorker.ParseToList(sReader, new StyleSheet());
                for (int k = 0; k < list.Count; k++)
                {
                    doc.Add((IElement)list[k]);
                }
            }
            doc.Close();
            Response.Write("<script type=\"text/javascript\">window.open(\"printtc.aspx?id=1\",\"_blank\", \"status=1,toolbar=1\");</script>");
        }
        catch { }
    }