Пример #1
0
        private void gridCtrl_EKDOSYALAR_Click(object sender, EventArgs e)
        {
            view = null;

            view = new DevExpress.XtraPdfViewer.PdfViewer();

            groupControl1.Visible = false;
            groupControl1.Controls.Clear();
            DataRow  dr = gridView_EKDOSYALAR.GetFocusedDataRow();
            DateTime dt = Convert.ToDateTime(dr["DOKUMAN_TARIHI"]);

            groupControl1.Controls.Add(view);
            view.Dock = DockStyle.Fill;



            try
            {
                view.DocumentFilePath = _GLOBAL_PARAMETERS._FILE_PATH + "_DOKUMAN\\" + _GLOBAL_PARAMETERS._SIRKET_KODU + "\\" + _GLOBAL_PARAMETERS._SIRKET_KODU + "_" + dt.Year.ToString() + "_" + dr["GUID"].ToString() + ".pdf";
                view.Refresh();

                groupControl1.Visible = true;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #2
0
        public ShippingModel PrintRemesa(List <FacturaModel> ord, ShippingModel shipping, PdfPrinterSettings sett)
        {
            try
            {
                shipping.error.HasError = false;
                using (var pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer())
                {
                    PageSettings sets = sett.Settings.DefaultPageSettings;
                    XtraReport   rem  = new RemesaTCC();
                    rem.DataSource            = ord;
                    rem.PrinterName           = "kioskobillprint";
                    rem.ShowPrintStatusDialog = false;
                    rem.PaperKind             = System.Drawing.Printing.PaperKind.Custom;
                    string path = @"C:\Kiosko\temp\invoice\" + shipping.guide.Code + ".pdf";
                    rem.CreateDocument(false);
                    rem.ExportToPdf(path);
                    rem.ExportToPdf(path);
                    pdfViewer.LoadDocument(path);
                    PaperSize paperSize = new PaperSize("Print", (int)(800 / 2.94), (int)(rem.PageHeight / 2.94));
                    paperSize.RawKind = (int)PaperKind.Custom;
                    sets.PaperSize    = paperSize;
                    pdfViewer.ShowPrintStatusDialog = false;
                    pdfViewer.Print(sett);
                    pdfViewer.CloseDocument();
                }
            }catch (SystemException E)
            {
                shipping.error.HasError = true;
                shipping.error.Message  = E.Message;

                return(shipping);
            }
            return(shipping);
        }
Пример #3
0
        private void gridCntrl_LIST_Click(object sender, EventArgs e)
        {
            DataRow dr = gridView_MASTER.GetFocusedDataRow();

            if (dr == null)
            {
                return;
            }
            view = new DevExpress.XtraPdfViewer.PdfViewer();
            DateTime dt = Convert.ToDateTime(dr["IssueDate"]);

            view.ZoomFactor = 60;
            view.CloseDocument();
            groupControl1.Visible = false;
            groupControl1.Controls.Clear();
            groupControl1.Controls.Add(view);
            view.Dock = DockStyle.Fill;
            try
            {
                view.DocumentFilePath = _GLOBAL_PARAMETERS._FILE_PATH + "_INBOX_PRINT\\" + dr["SIRKET_KODU"].ToString() + "\\" + dr["SIRKET_KODU"].ToString() + "_" + dt.Year.ToString() + "_" + dr["GUID"].ToString() + ".pdf";
                view.Refresh();
                BR_FILE.Caption = _GLOBAL_PARAMETERS._FILE_PATH + "_INBOX_PRINT\\" + dr["SIRKET_KODU"].ToString() + "\\" + dr["SIRKET_KODU"].ToString() + "_" + dt.Year.ToString() + "_" + dr["GUID"].ToString() + ".pdf";

                groupControl1.Visible = true;
            }
            catch (Exception ex)
            {
                BR_FILE.Caption = ex.Message.ToString();
            }
        }
Пример #4
0
        public Error Print(int pageHeight)
        {
            Error response = new Error();

            if (!File.Exists(FilePath))
            {
                response.HasError = true;
                response.Message  = "Error: El archivo << " + FilePath + " >> no se encuentra.";
            }


            if (!PrinterExists(PrinterName))
            {
                response.HasError = true;
                response.Message  = "La impresora << " + PrinterName + " >> no está conectada.";
            }

            var printerStatus = CheckPrinterStatus(PrinterName);

            if (printerStatus.HasError)
            {
                return(printerStatus);
            }

            try
            {
                using (var pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer())
                {
                    pdfViewer.LoadDocument(FilePath);

                    PrinterSettings setings = new PrinterSettings();
                    setings.PrinterName = @PrinterName;

                    DevExpress.Pdf.PdfPrinterSettings sett = new DevExpress.Pdf.PdfPrinterSettings(setings);

                    sett.ScaleMode = DevExpress.Pdf.PdfPrintScaleMode.Fit;
                    // sett.PageOrientation = DevExpress.Pdf.PdfPrintPageOrientation.Portrait;
                    sett.Settings.DefaultPageSettings.Margins.Left   = 0;
                    sett.Settings.DefaultPageSettings.Margins.Right  = 0;
                    sett.Settings.DefaultPageSettings.Margins.Bottom = 0;
                    sett.Settings.DefaultPageSettings.Margins.Top    = 0;
                    //sett.Settings.PrintToFile = true;

                    pdfViewer.ShowPrintStatusDialog = true;
                    pdfViewer.Print(sett);
                    pdfViewer.CloseDocument();

                    response.HasError = false;
                }
            }catch (Exception e) {
                response.HasError = true;
                response.Message  = "[PrinterService] " + e.Message;
            }

            return(response);
        }
Пример #5
0
        public void PrintPdf()
        {
            var pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer();
            var settings  = new DevExpress.Pdf.PdfPrinterSettings();

            pdfViewer.DocumentFilePath = Application.StartupPath + "\\Temp\\tmp.pdf";
            settings.PageOrientation   = DevExpress.Pdf.PdfPrintPageOrientation.Landscape;
            pdfViewer.Print(settings);
            pdfViewer.CloseDocument();
        }
Пример #6
0
        public ShippingModel PrintInvoice(ShippingModel shipping)
        {
            try
            {
                PrinterSettings setings = new PrinterSettings();
                setings.PrinterName = "KioskoPrinterBill";
                DevExpress.Pdf.PdfPrinterSettings sett = new DevExpress.Pdf.PdfPrinterSettings(setings);

                sett.ScaleMode       = DevExpress.Pdf.PdfPrintScaleMode.Fit;
                sett.PageOrientation = DevExpress.Pdf.PdfPrintPageOrientation.Portrait;
                sett.Settings.DefaultPageSettings.Margins.Left   = 0;
                sett.Settings.DefaultPageSettings.Margins.Right  = 0;
                sett.Settings.DefaultPageSettings.Margins.Bottom = 0;
                sett.Settings.DefaultPageSettings.Margins.Top    = 0;

                shipping.error.HasError = false;
                using (var pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer())
                {
                    string path = @Properties.Settings.Default.INVOICE_PATH + shipping.guide.Code + ".pdf";
                    pdfViewer.LoadDocument(path);
                    SizeF        pg        = pdfViewer.GetPageSize(1);
                    PageSettings sets      = sett.Settings.DefaultPageSettings;
                    PaperSize    paperSize = new PaperSize("Print", (int)(800 / 2.94), (int)(3000 / 2.94));
                    paperSize.RawKind = (int)PaperKind.Custom;
                    sets.PaperSize    = paperSize;

                    pdfViewer.ShowPrintStatusDialog = false;
                    pdfViewer.Print(sett);
                    pdfViewer.CloseDocument();
                }
            }catch (SystemException E)
            {
                shipping.error.HasError = true;
                shipping.error.Message  = E.Message;

                return(shipping);
            }
            return(shipping);
        }
Пример #7
0
        public ShippingModel SaveInvoice(List <FacturaModel> ord, ShippingModel shipping)
        {
            try
            {
                shipping.error.HasError = false;
                using (var pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer())
                {
                    XtraReport rem = new FacturaCoordinadora();
                    rem.DataSource = ord;

                    rem.ShowPrintStatusDialog = false;
                    rem.PaperKind             = System.Drawing.Printing.PaperKind.Custom;
                    //string path= Properties.Settings.Default.INVOICE_PATH + shipping.guide.Code + ".pdf";

                    string path = @"C:\Kiosko\temp\invoice\" + shipping.guide.Code + ".pdf";
                    rem.CreateDocument(false);
                    rem.ExportToPdf(path);

                    //rem.ExportToPdf(path);
                    //PaperSize paperSize = new PaperSize("Print", (int)(800 / 2.94), (int)(rem.PageHeight / 2.94));
                    //paperSize.RawKind = (int)PaperKind.Custom;
                    //sets.PaperSize = paperSize;
                    //pdfViewer.LoadDocument(path);
                    //pdfViewer.ShowPrintStatusDialog = false;
                    //pdfViewer.Print(sett);
                    //pdfViewer.CloseDocument();
                }
            }
            catch (SystemException E)
            {
                shipping.error.HasError = true;
                shipping.error.Message  = E.Message;

                return(shipping);
            }
            return(shipping);
        }
Пример #8
0
        public ShippingModel GenerateInvoice(ShippingModel shipping, EFacturaKioscoDetalle detalle)
        {
            ///////////////////////////////////

            /*
             * Cuando es mensajería  No se imprimen rótulos Siempre debe llevar la bolsa
             * Cuando es contado en origen Se imprime Factura, para el usuario
             * Remesa (la remesa hay que indicarle al usuario que la meta en la bolsa)
             *
             * Cuando es contado en destino (flete contra entrega)
             * Se imprime 2 remesas , una para el usuario y la otra hay que indicarle que lo meta en la bolsa
             */

            PrinterSettings setings = new PrinterSettings();

            setings.PrinterName = "KioskoPrinterBill";

            DevExpress.Pdf.PdfPrinterSettings sett = new DevExpress.Pdf.PdfPrinterSettings(setings);

            sett.ScaleMode       = DevExpress.Pdf.PdfPrintScaleMode.Fit;
            sett.PageOrientation = DevExpress.Pdf.PdfPrintPageOrientation.Portrait;
            sett.Settings.DefaultPageSettings.Margins.Left   = 0;
            sett.Settings.DefaultPageSettings.Margins.Right  = 0;
            sett.Settings.DefaultPageSettings.Margins.Bottom = 0;
            sett.Settings.DefaultPageSettings.Margins.Top    = 0;
            PageSettings sets = sett.Settings.DefaultPageSettings;

            XtraReport   xtrareport;
            FacturaModel fact;



            xtrareport = new Factura();


            fact = new FacturaModel
            {
                NIT         = "830.051.440-7",
                RazonSocial = "Exxe Logistica S.a.s",
                Model       = shipping,
                BluDetail   = detalle,
                Fecha       = DateTime.Now.ToString("yyyy-MM-dd"),
                Res         = new ResolucionDian()
                {
                    Resolucion = 18762014168428,
                }
            };
            ///MENSAJERIA



            List <FacturaModel> ord = new List <FacturaModel>();

            ord.Add(fact);
            PdfExportOptions opts = new PdfExportOptions();



            try
            {
                /// SE DESCARGA LA GUIA:
                ///
                string path2 = @"C:\Kiosko\temp\guide\";



                if (SaveBase64PdfToLocal(path2, shipping.guide.Code, shipping.guide.PdfGuide))
                {
                    //imprimir guia;

                    using (var pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer())
                    {
                        PrinterSettings settingGuide = new PrinterSettings();
                        settingGuide.PrinterName = "KioskoPrinterBill";

                        DevExpress.Pdf.PdfPrinterSettings settguide = new DevExpress.Pdf.PdfPrinterSettings(settingGuide);

                        pdfViewer.LoadDocument(path2 + shipping.guide.Code + ".pdf");
                        PageSettings setsGG = settguide.Settings.DefaultPageSettings;

                        PaperSize paperSize = new PaperSize("Print", (int)(800 / 2.94), (int)(800 / 2.94));
                        paperSize.RawKind = (int)PaperKind.Custom;

                        setsGG.PaperSize                = paperSize;
                        setsGG.Margins.Left             = 0;
                        setsGG.Margins.Right            = 0;
                        setsGG.Margins.Top              = 0;
                        setsGG.Margins.Bottom           = 0;
                        pdfViewer.ShowPrintStatusDialog = false;
                        pdfViewer.Print(settguide);
                        pdfViewer.CloseDocument();
                    }
                }

                ///SE IMPRIME FACTURA Y ROTULO;
                xtrareport.DataSource            = ord;
                xtrareport.PrinterName           = "KioskoPrinterBill";
                xtrareport.ShowPrintStatusDialog = false;
                xtrareport.PaperKind             = System.Drawing.Printing.PaperKind.Custom;
                xtrareport.CreateDocument(false);

                using (var pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer())
                {
                    string path = @"C:\Kiosko\temp\invoice\" + shipping.guide.Code + ".pdf";
                    xtrareport.ExportToPdf(path);
                    pdfViewer.LoadDocument(path);
                    PaperSize paperSize = new PaperSize("Print", (int)(800 / 2.94), (int)(xtrareport.PageHeight / 2.94));
                    paperSize.RawKind = (int)PaperKind.Custom;
                    sets.PaperSize    = paperSize;
                    pdfViewer.ShowPrintStatusDialog = false;
                    pdfViewer.Print(sett);
                    pdfViewer.CloseDocument();
                }
            }
            catch (Exception E)
            {
                shipping.error.HasError = true;
                shipping.error.Message  = "[SavePDF]" + E.Message;
                return(shipping);
            }



            return(shipping);
        }
Пример #9
0
        public ShippingModel GenerateInvoice(ShippingModel shipping)
        {
            int Weight    = 0;
            int VolWeight = 0;

            foreach (var model in shipping.content.Measures)
            {
                Weight    += (int)Math.Round(model.Weight, 0);
                VolWeight += (int)Math.Round(model.VolumetricWeight, 0);

                model.VolumetricWeight = Math.Round(model.VolumetricWeight, 0);
                model.Weight           = Math.Round(model.Weight, 0);
            }

            int ValorFactura = Weight > VolWeight ? Weight : VolWeight;


            ///////////////////////////////////

            /*
             * Cuando es mensajería  No se imprimen rótulos Siempre debe llevar la bolsa
             * Cuando es contado en origen Se imprime Factura, para el usuario
             * Remesa (la remesa hay que indicarle al usuario que la meta en la bolsa)
             *
             * Cuando es contado en destino (flete contra entrega)
             * Se imprime 2 remesas , una para el usuario y la otra hay que indicarle que lo meta en la bolsa
             */

            PrinterSettings setings = new PrinterSettings();

            setings.PrinterName = "KioskoPrinterBill";

            DevExpress.Pdf.PdfPrinterSettings sett = new DevExpress.Pdf.PdfPrinterSettings(setings);

            sett.ScaleMode       = DevExpress.Pdf.PdfPrintScaleMode.Fit;
            sett.PageOrientation = DevExpress.Pdf.PdfPrintPageOrientation.Portrait;
            sett.Settings.DefaultPageSettings.Margins.Left   = 0;
            sett.Settings.DefaultPageSettings.Margins.Right  = 0;
            sett.Settings.DefaultPageSettings.Margins.Bottom = 0;
            sett.Settings.DefaultPageSettings.Margins.Top    = 0;


            XtraReport   xtrareport;
            FacturaModel fact;
            string       FormaDePago = "";

            if (shipping.payment.PaymentMethod == "COD")
            {
                FormaDePago = "CONTADO EN DESTINO";

                ///CONTADO EN ORIGEN;
            }
            else
            {
                FormaDePago = "CONTADO EN ORIGEN";
            }

            int unidaddenegocio = ReturnUnidadDeNegocio(shipping);

            if (unidaddenegocio == 1)
            {
                ////PAQUETERIA
                xtrareport = new RemesaTCC();


                fact = new FacturaModel
                {
                    NIT          = "860.016.640",
                    RazonSocial  = "TCC S.A.S",
                    Model        = shipping,
                    FormaDePago  = FormaDePago,
                    Fecha        = DateTime.Now.ToString("yyyy-MM-dd"),
                    ValorFactura = ValorFactura,
                    Weight       = Weight,
                    VolWeight    = VolWeight,
                    Res          = new ResolucionDian()
                    {
                        Resolucion = 18762014168428,
                    }
                };
                ///MENSAJERIA
            }
            else
            {
                xtrareport = new Factura();

                fact = new FacturaModel
                {
                    NIT          = "900.053.978-6",
                    RazonSocial  = "GLOBAL MENSAJERIA S.A.S",
                    Model        = shipping,
                    FormaDePago  = FormaDePago,
                    FactNumber   = shipping.payment.Invoice,
                    ValorFactura = ValorFactura,
                    Weight       = Weight,
                    VolWeight    = VolWeight,
                    Fecha        = DateTime.Now.ToString("yyyy-MM-dd"),
                    Res          = new ResolucionDian()
                    {
                        Resolucion = 18762012374330
                    }
                };
            }
            List <FacturaModel> ord = new List <FacturaModel>();

            ord.Add(fact);
            PdfExportOptions opts = new PdfExportOptions();

            unidaddenegocio = ReturnUnidadDeNegocio(shipping);
            if (unidaddenegocio == 1)
            {
                try
                {
                    ////PAQUETERIA CONTADO EN DESTINO Y ORIGEN, IMPRIME REMESA


                    ////PAQUETERIA NO IMPRIME FACTURA



                    /// SE DESCARGA LA GUIA:
                    ///
                    string path2 = @"C:\Kiosko\temp\guide\";

                    if (SavePDF(shipping.guide.Url, path2, shipping.guide.Code))
                    {
                        //imprimir guia;

                        using (var pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer())
                        {
                            PrinterSettings settingGuide = new PrinterSettings();
                            settingGuide.PrinterName = "KioskoPrinterGuide";

                            DevExpress.Pdf.PdfPrinterSettings settguide = new DevExpress.Pdf.PdfPrinterSettings(settingGuide);

                            pdfViewer.LoadDocument(path2 + shipping.guide.Code + ".pdf");
                            PageSettings setsGG = settguide.Settings.DefaultPageSettings;

                            PaperSize paperSize = new PaperSize("Print", (int)(800 / 2.94), (int)(1500 / 2.94));
                            paperSize.RawKind = (int)PaperKind.Custom;

                            setsGG.PaperSize                = paperSize;
                            setsGG.Margins.Left             = 0;
                            setsGG.Margins.Right            = 0;
                            setsGG.Margins.Top              = 0;
                            setsGG.Margins.Bottom           = 0;
                            pdfViewer.ShowPrintStatusDialog = false;
                            pdfViewer.Print(settguide);
                            pdfViewer.CloseDocument();
                        }
                    }


                    shipping = this.PrintRemesa(ord, shipping, sett);
                }
                catch (Exception E)
                {
                    shipping.error.HasError = true;
                    shipping.error.Message  = "[SavePDF]" + E.Message;
                    return(shipping);
                }
            }
            else
            {
                ////MENSAJERIA CONTADO EN ORIGEN, IMPRIME FACTURA Y UNA REMESA


                ////MENSAJERIA CONTADO EN DESTINO, SE IMPRIMEN 2 REMESAS.


                if (fact.FormaDePago == "CONTADO EN DESTINO")
                {
                    shipping = this.PrintRemesa(ord, shipping, sett);
                    if (!shipping.error.HasError)
                    {
                        shipping = this.PrintRemesa(ord, shipping, sett);
                    }
                    else
                    {
                        return(shipping);
                    }
                }
                else
                {
                    shipping = this.PrintRemesa(ord, shipping, sett);

                    if (!shipping.error.HasError)
                    {
                        shipping = this.PrintFactura(ord, shipping, sett);
                    }
                    else
                    {
                        return(shipping);
                    }
                }
            }

            return(shipping);
        }
Пример #10
0
        /**
         * Prints pdf guide Models.CustomerServiceModel.Guide
         *
         */
        public Error PrintGuide(Models.ShippingModel.Guide guide)
        {
            /**
             * Some customers returns the GUIDE (pdf) in URL format.
             * The idea is to keep all as base64
             * */

            log.Debug("test");

            if (string.IsNullOrEmpty(guide.PdfGuide))
            {
                guide.PdfGuide = Helpers.Utilities.UrlPdfToBase64(guide.Url);
            }

            string fileGuide = Properties.Settings.Default.GUIDE_PATH + guide.Code + ".pdf";

            //attempt to save guide locally
            if (!File.Exists(fileGuide))
            {
                if (!Helpers.Utilities.SaveBase64PdfToLocal(Properties.Settings.Default.GUIDE_PATH, guide.Code, guide.PdfGuide))
                {
                    return(new Error()
                    {
                        HasError = true,
                        Message = "Error on SaveBase64PdfToLocal"
                    });
                }
            }


            try
            {
                PrinterSettings setings = new PrinterSettings();
                setings.PrinterName = "KioskoPrinterGuide";

                DevExpress.Pdf.PdfPrinterSettings sett = new DevExpress.Pdf.PdfPrinterSettings(setings);

                sett.ScaleMode = DevExpress.Pdf.PdfPrintScaleMode.ActualSize;
                ////sett.PageOrientation = DevExpress.Pdf.PdfPrintPageOrientation.Landscape;
                sett.Settings.DefaultPageSettings.Margins.Left   = 20;
                sett.Settings.DefaultPageSettings.Margins.Right  = 0;
                sett.Settings.DefaultPageSettings.Margins.Bottom = 80;
                sett.Settings.DefaultPageSettings.Margins.Top    = 0;
                PageSettings sets = sett.Settings.DefaultPageSettings;
                sets.Margins.Top  = 0;
                sets.Margins.Left = 0;

                using (var pdfViewer = new DevExpress.XtraPdfViewer.PdfViewer())
                {
                    string path = @Properties.Settings.Default.GUIDE_PATH + guide.Code + ".pdf";

                    pdfViewer.LoadDocument(path);
                    PaperSize paperSize = new PaperSize("Print", (int)(900 / 2.94), (int)(1800 / 2.94));
                    paperSize.RawKind = (int)PaperKind.Custom;
                    sets.PaperSize    = paperSize;
                    pdfViewer.ShowPrintStatusDialog = false;
                    if (!_printerService.CheckPrinterStatus(setings.PrinterName).HasError)
                    {
                        _printerService.CheckPrinterStatus(setings.PrinterName);
                        pdfViewer.Print(sett);
                        pdfViewer.CloseDocument();
                    }
                    else
                    {
                        return(new Error()
                        {
                            HasError = true,
                            Message = _printerService.CheckPrinterStatus(setings.PrinterName).Message
                        });
                    }
                }
            }catch (Exception E)
            {
                return(new Error()
                {
                    HasError = true,
                    Message = E.Message
                });
            }
            //_printerService.SetPrinterName("KioskoPrinterGuide");
            //_printerService.SetFileName(Properties.Settings.Default.GUIDE_PATH + guide.Code + ".pdf");
            //var printResponse = _printerService.Print(150);


            return(new Error()
            {
                HasError = false,
                Message = ":)"
            });;
        }