Beispiel #1
0
        private void Window_Loaded_1(object sender, RoutedEventArgs e)
        {
            //Mostrando los Textos
            FTextos ofTextos = new FTextos();

            txtRutaDescarga.Text = ofTextos.FGetValorApp("CarpetaRaiz") + ofTextos.FGetValorApp("Temporal_Detectta");
        }
Beispiel #2
0
        private void Window_Loaded_1(object sender, RoutedEventArgs e)
        {
            FTextos ofTextos = new FTextos();
            string  Usuario  = ofTextos.fGetUsuario();

            txtUsuario.Text = Usuario;
            txtPass.Focus();
        }
Beispiel #3
0
        private void Window_Loaded_1(object sender, RoutedEventArgs e)
        {
            FTextos oFTexto = new FTextos();

            txtUser.Text   = oFTexto.fGetUsuario();
            txtPc.Text     = oFTexto.fGetNombPC();
            CorreoEnviar   = oFTexto.FGetValorApp("CorreosEnviarError");
            CorreoEnviarCc = oFTexto.FGetValorApp("CorreosEnviarErrorCc");
        }
Beispiel #4
0
        //Boton que se encarga de ejectuar el Proceso de carga a la temporal
        private void btnEjecutar_Click_1(object sender, RoutedEventArgs e)
        {
            Stopwatch contarTiempo = new Stopwatch();

            try
            {
                FTextos      oFTextos = new FTextos();
                Paquetes_DTS oPaqDts  = new Paquetes_DTS(CorreoEnviar, CorreoEnviarCc);
                //DateTime dFechaIni;
                //DateTime dFechaFin;
                DateTime dFechaActual = DateTime.Now;
                string   UbicacionPaquete;
                bool     proceso;

                if (MessageBox.Show("Desea realizar la ejecución del ETL Temporal", "ETL", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                {
                    //Proceso
                    lblMensaje.Visibility  = Visibility.Visible;
                    imgTemporal.Visibility = Visibility.Hidden;
                    contarTiempo.Start();
                    UbicacionPaquete = oFTextos.FGetValorApp("CarpetaRaiz") + oFTextos.FGetValorApp("Temporal_Detectta");
                    proceso          = oPaqDts.ProcesoEtl(UbicacionPaquete);
                    string MensajeError = oPaqDts.Error;
                    contarTiempo.Stop();
                    imgTemporal.Visibility = Visibility.Visible;
                    if (proceso == true)
                    {
                        string Mensaje = String.Format("Proceso Temporal ejecutado con éxito!", "ETL", MessageBoxButton.OK, MessageBoxImage.Information);
                        establecer_imagen(imgTemporal, "Imagenes/Correcto.png");
                        btnEjecutar.IsEnabled = false;
                        MessageBox.Show(Mensaje, "ETL", MessageBoxButton.OK, MessageBoxImage.Information);
                        lblMensaje.Visibility = Visibility.Hidden;
                    }
                    else
                    {
                        establecer_imagen(imgTemporal, "Imagenes/incorrecto.png");
                        MessageBox.Show("Error al realizar el proceso!", "ETL", MessageBoxButton.OK, MessageBoxImage.Information);
                        MessageBox.Show(MensajeError, "ETL", MessageBoxButton.OK, MessageBoxImage.Warning);
                        lblMensaje.Visibility = Visibility.Hidden;
                    }
                }
                else
                {
                    MessageBox.Show("Operación Cancelada por el Usuario!", "ETL", MessageBoxButton.OK, MessageBoxImage.Stop);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
                CorreoEnvio oCorreo = new CorreoEnvio();
                oCorreo.EnvioCorreo(CorreoEnviar, CorreoEnviarCc, ex.ToString(), "Error Proceso ETL", 1);
            }
        }
Beispiel #5
0
        /// <summary>
        /// Metodo que se encarga de realizar la Ejecución del Paquete
        /// </summary>
        /// <param name="Ruta"></param>
        /// <returns></returns>
        public bool ProcesoEtl(string Ruta)
        {
            string  RutaDts;
            Package Paquete;

            Microsoft.SqlServer.Dts.Runtime.Application Aplicacion;
            DTSExecResult Ejecucion;

            try
            {
                RutaDts    = Ruta;
                Aplicacion = new Microsoft.SqlServer.Dts.Runtime.Application();
                Paquete    = Aplicacion.LoadPackage(RutaDts, null);
                //Parámetros del ETL (Si tuviera)
                //Parameters par = Paquete.Parameters;
                //par["dFecInicio"].Value = dFechaIni;
                //par["dFecFin"].Value = dFechaFin;

                Ejecucion = Paquete.Execute();

                //Validando si el proceso es correcto
                if (Ejecucion == DTSExecResult.Success)
                {
                    return(true);
                }
                else
                {
                    foreach (DtsError error in Paquete.Errors)
                    {
                        Error = String.Concat(Error, " ", error.Description.ToString());
                    }
                    CorreoEnvio oCorreo = new CorreoEnvio();
                    oCorreo.EnvioCorreo(CorreoEnviar, CorreoEnviarCc, Error, "Error Proceso ETL", 1);
                    return(false);
                }
            }
            catch (Exception ex)
            {
                FTextos ofTextos = new FTextos();
                string  Usuarios = ofTextos.fGetUsuario();
                string  Fecha    = DateTime.Now.ToString();
                string  Asunto;
                Asunto = "ETL - Error [Helpdesk] [" + Usuarios + "] [" + Fecha + "]";
                CorreoEnvio oCorreo = new CorreoEnvio();
                oCorreo.EnvioCorreo(CorreoEnviar, CorreoEnviarCc, ex.ToString(), "Error Proceso ETL", 1);
                throw;
            }
        }
Beispiel #6
0
        /// <summary>
        /// Proceso que se encarga de realizar el envio de correo Electronico
        /// </summary>
        /// <param name="Correo"></param>
        /// <param name="CorreoCc"></param>
        /// <param name="Mensaje"></param>
        /// <param name="Asunto"></param>
        /// <param name="Prioridad"></param>
        /// <returns></returns>
        public void EnvioCorreo(string Correo, string CorreoCc, string Mensaje, string Asunto, int Prioridad)
        {
            FTextos oFTextos             = new FTextos();
            string  EmailEnviadode       = ""; //De
            string  EmailEnviadodeNombre = ""; //Nombre
            string  Servidor             = ""; //Servidor de correo
            string  Contraseña           = ""; //Clave

            string Usuario = oFTextos.fGetUsuario();
            string PC      = oFTextos.fGetNombPC();
            string IP      = oFTextos.FGetIP();

            string[] CorreoEnviar;
            string[] CorreoEnviarCc;

            //Cuerpo HTML
            string HTML = "<html> <head> <body>  <table> <tr> <td> <p style='font-family: Arial, Helvetica, sans-serif'>Usuario: «Usuario» </td> </tr> <tr> <td> <p style='font-family: Arial, Helvetica, sans-serif'>PC: «Pc» </td> </tr> <tr> <td> <p style='font-family: Arial, Helvetica, sans-serif'>IP: «IP» </td> </tr> <tr> <td> <p style='font-family: Arial, Helvetica, sans-serif'>Se ha producido un error en el aplicativo ETL, el cual se detalla a continuación </p> </td> </tr> <tr> <td> <p style='font-family: Arial, Helvetica, sans-serif'>«Error»</p> </td> </tr> </table> </body> </html>";

            //Reemplazando los Caracteres en el HTML a Enviar en el Correo
            HTML = HTML.Replace("«Usuario»", Usuario.ToUpper());
            HTML = HTML.Replace("«Pc»", PC);
            HTML = HTML.Replace("«IP»", IP);
            HTML = HTML.Replace("«Error»", Mensaje);
            //Realizando el Proceso
            try
            {
                MailMessage correo    = new MailMessage();
                MailAddress enviadode = new MailAddress(EmailEnviadode, EmailEnviadodeNombre);
                correo.From    = enviadode;
                correo.Subject = Asunto;
                correo.Body    = HTML;
                CorreoEnviar   = Regex.Split(Correo, ";");
                CorreoEnviarCc = Regex.Split(CorreoCc, ";");
                //Validando que la lista de correos a enviar sea diferente a nulo
                #region  Destinatarios
                if (CorreoEnviar != null)
                {
                    for (int i = 0; i < CorreoEnviar.Length; i++)
                    {
                        correo.To.Add(CorreoEnviar[i]);
                    }
                }

                if (CorreoEnviarCc != null)
                {
                    for (int i = 0; i < CorreoEnviarCc.Length; i++)
                    {
                        correo.CC.Add(CorreoEnviarCc[i]);
                    }
                }
                #endregion

                #region Prioridad
                switch (Prioridad)
                {
                case 1:
                    correo.Priority = MailPriority.High;
                    break;

                case 2:
                    correo.Priority = MailPriority.Normal;
                    break;

                case 3:
                    correo.Priority = MailPriority.Low;
                    break;
                }
                #endregion
                correo.IsBodyHtml = true;
                SmtpClient smtp = new SmtpClient();
                smtp.Host = Servidor;
                System.Net.NetworkCredential credenciales = new System.Net.NetworkCredential(EmailEnviadode, Contraseña);
                smtp.Credentials = credenciales;
                smtp.Send(correo);
            }
            catch (Exception ex)
            {
            }
        }