예제 #1
0
        private void leerConfiguracionesImpresoras()
        {
            string archivo = Application.StartupPath + @"\MapeoImpresoras.xml";

            try
            {
                XmlDocument docConfig = new XmlDocument();
                docConfig.Load(archivo);

                XmlNode     raiz       = docConfig.SelectSingleNode("Impresoras");
                XmlNodeList impresoras = raiz.SelectNodes("Impresora");
                foreach (XmlNode item in impresoras)
                {
                    MapeoImpresora m = new MapeoImpresora();
                    m.NombreGrupo     = item.SelectSingleNode("nombreGrupo").InnerText;
                    m.NombreImpresora = item.SelectSingleNode("nombreImpresora").InnerText;
                    lstMapeoImpresora.Add(m);
                }
            }
            catch (Exception ex)
            {
                LogManager.Mensaje m =
                    new LogManager.Mensaje("SGECA.ColaDeImpresion",
                                           "leerConfiguracionesImpresoras",
                                           0,
                                           "No pude leer la configuración de mapeo de impresoras. " +
                                           archivo + " exista y sea válido.",
                                           ex.Message,
                                           "",
                                           true,
                                           LogManager.EMensaje.Critico,
                                           ex.StackTrace);

                Notify(m);
            }
        }
예제 #2
0
        private void prepararImpresion()
        {
            richTextBoxPrintCtrl1.Rtf = "";
            try
            {
                if (clbTrabajosPendientes.SelectedValue.ToString().StartsWith(documentos.classId + "_"))
                {
                    this.Cursor = Cursors.WaitCursor;
                    richTextBoxPrintCtrl1.Rtf = documentos.prepararTexto(clbTrabajosPendientes.SelectedValue.ToString(),
                                                                         Application.StartupPath);



                    if (richTextBoxPrintCtrl1.Text.Length > 0)
                    {
                        dynamic descripcion;
                        descripcion = clbTrabajosPendientes.SelectedItem;


                        printDocument1.DocumentName = "SGECA - " + descripcion.desc;

                        MapeoImpresora impre = lstMapeoImpresora.Find(i => i.NombreGrupo == descripcion.impresora);

                        printDocument1.PrinterSettings.PrinterName        = impre.NombreImpresora;
                        printDocument1.PrinterSettings.Copies             = short.Parse(descripcion.copias);
                        printDocument1.DefaultPageSettings.Margins.Bottom = 0;
                        printDocument1.DefaultPageSettings.Margins.Left   = 0;
                        printDocument1.DefaultPageSettings.Margins.Right  = 0;
                        printDocument1.DefaultPageSettings.Margins.Top    = 0;
                    }
                    this.Cursor = Cursors.Default;
                }


                if (clbTrabajosPendientes.SelectedValue.ToString().StartsWith("LIV_"))
                {
                    int         id          = int.Parse(clbTrabajosPendientes.SelectedValue.ToString().Replace("LIV_", ""));
                    FrmLibroIva frmLibroIva = new FrmLibroIva();
                    frmLibroIva.Subscribe(this);
                    frmLibroIva.mostrar(id);
                    if (MessageBox.Show("¿Desea marcar el libro de iva como impreso y quiralo de la cola de impresión?",
                                        "Atención",
                                        MessageBoxButtons.YesNo,
                                        MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
                    {
                        libroDeIva.quitarDocumento(clbTrabajosPendientes.SelectedValue.ToString());
                    }
                }
            }
            catch (Exception ex)
            {
                LogManager.Mensaje m =
                    new LogManager.Mensaje("SGECA.ColaDeImpresion",
                                           "prepararImpresion",
                                           0,
                                           "Se produjo un error al generar la impresión. Verifique la impresora. ",
                                           ex.Message,
                                           "",
                                           true,
                                           LogManager.EMensaje.Critico,
                                           ex.StackTrace);

                Notify(m);
            }
        }