Example #1
0
        private void CargaReferenciales()
        {
            ReaderPath objReader = new ReaderPath();

            // ruta del archivo fuente de datos


            if (this.RutaXmlFuente.Length == 0 && this.IdRutaXmlFuente.Length == 0)
            {
                this.listaArchivosFuente = objReader.getRutaXmlSalida();
                this.RutaXmlFuente       = this.listaArchivosFuente["1"]; // Se inicializa la primera ocurrencia de archivo
                this.IdRutaXmlFuente     = "1";
            }


            if (!File.Exists(this.RutaXmlFuente))
            {
                MessageBox.Show(String.Format("El archivo fuente Xml {0} no existe. Debe verificar la configuración de rutas", this.RutaXmlFuente), "Error en lectura", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            // Construyo menu


            // Ruta de salida del archivo PDF
            this.RutaSalidaCertificados = objReader.getRutaGeneracionCertificados();

            if (string.IsNullOrWhiteSpace(this.RutaSalidaCertificados))
            {
                MessageBox.Show(String.Format("La ruta de salida de certificados no esta configurada."));
                return;
            }


            //Creacion de carpeta de salida
            if (!Directory.Exists(this.RutaSalidaCertificados))
            {
                Directory.CreateDirectory(this.RutaSalidaCertificados);
            }



            if (!File.Exists(this.rutaXmlCLiente))
            {
                MessageBox.Show(String.Format("El archivo fuente Xml  de clientes {0} no existe.", this.rutaXmlCLiente));
                return;
            }
            else
            {
                xDocCliente = new XmlDocument();
                xDocCliente.Load(rutaXmlCLiente);
            }
        }
Example #2
0
        /// <summary>
        /// Permit le generacion del documento y llamado a componentes
        /// </summary>
        private void PdfGenerator()
        {
            // Extraemos el Id del Cliente
            var ItemSelected = cmb_especificacion_cliente.SelectedItem;

            string IdCliente = ((ListItemCombo)ItemSelected).Value;
            string TextNombreEspecificacion = ((ListItemCombo)ItemSelected).Text;


            // Obtenemos informacion del cliente
            DataTable especficacionCliente = _repository.GetInfoClientesById(IdCliente);

            String LoteAnalizado = dataGridVisor.CurrentRow.Cells["Lote"].Value.ToString();

            DataTable TablaAnalisQuimico = this.GetInfoTablaAnalisis(dataGridVisor.CurrentRow, especficacionCliente);

            ReaderPath objReader = new ReaderPath();

            this.RutaSalidaCertificados = objReader.getRutaGeneracionCertificados();

            FileGenerator objGenerator = new FileGenerator(this.RutaSalidaCertificados, LoteAnalizado);

            try
            {
                Cursor = Cursors.WaitCursor;

                //objGenerator.setData();
                if (this.IdRutaXmlFuente == "1") // Solo aplica para base de datos de puros
                {
                    TextNombreEspecificacion = "súper Puro";
                }


                objGenerator.ToMake(TablaAnalisQuimico, TextNombreEspecificacion);
            }
            catch (Exception exc)
            {
                MessageBox.Show(String.Format("Error: {0}", exc.Message),
                                "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);

                addlog(exc.ToString() + exc.Message);
                return;

                throw;
            }
            finally {
                Cursor = Cursors.Arrow;
            }


            // open generated pdf
            try
            {
                System.Diagnostics.Process.Start(objGenerator.RutaSalidaArchivosPDF);
            }
            catch (Exception exc)
            {
                MessageBox.Show("No se puede abrir el PDF , instale un software para visualizar",
                                "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                addlog(exc.ToString() + exc.Message);
            }

            /// Si la opcion de enviar correo esta habilitada
            if (chk_send_email.Checked)
            {
                List <String> archivoAdjuntos = new List <string>
                {
                    objGenerator.RutaSalidaArchivosPDF
                };

                try
                {
                    MailManager mailManager = new MailManager
                    {
                        ArchivosAdjunto = archivoAdjuntos
                    };

                    mailManager.SendMail();
                }
                catch (Exception exc)
                {
                    MessageBox.Show("Ha ocurrido un error al enviar el correo, revise configuración de servidor");
                    addlog(exc.ToString() + exc.Message);
                }
            }
        }