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); } }
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); } }