Exemplo n.º 1
0
 internal void ComunicarFinalizacion()
 {
     if (TrabajoSometido.ComunicarFin)
     {
         GestorDeCorreos.CrearCorreoPara(ContextoDelEntorno
                                         , new List <string> {
             Sometedor.eMail
         }
                                         , $"Trabajo {TrabajoSometido.Nombre} finalizado{(TrabajoDeUsuario.Estado == enumEstadosDeUnTrabajo.conErrores.ToDtm() ? " con errores" : "")}"
                                         , $"El trabajo {TrabajoSometido.Nombre} de fecha {TrabajoDeUsuario.Encolado} ha finalizado, acceda a la traza{(TrabajoDeUsuario.Estado == enumEstadosDeUnTrabajo.conErrores.ToDtm() ? " y a los errores" : "")} para ver el resultado"
                                         , new List <TipoDtoElmento> {
             new TipoDtoElmento {
                 TipoDto = typeof(TrabajoDeUsuarioDto).FullName, IdElemento = TrabajoDeUsuario.Id, Referencia = TrabajoSometido.Nombre
             }
         }
                                         , null);
     }
 }
Exemplo n.º 2
0
 internal void ComunicarError(Exception e)
 {
     AnotarError(e);
     if (TrabajoSometido.ComunicarError)
     {
         GestorDeCorreos.CrearCorreoPara(ContextoDelEntorno
                                         , new List <string> {
             Sometedor.eMail
         }
                                         , $"Error al ejecutar el trabajo {TrabajoSometido.Nombre}"
                                         , $"Error en la ejecución del trabajo {TrabajoSometido.Nombre} de fecha {TrabajoDeUsuario.Encolado}, acceda al mantenimiento de trabajos de usuario para visualizar los errores"
                                         , new List <TipoDtoElmento> {
             new TipoDtoElmento {
                 TipoDto = typeof(TrabajoDeUsuarioDto).FullName, IdElemento = TrabajoDeUsuario.Id, Referencia = TrabajoSometido.Nombre
             }
         }
                                         , null);
     }
 }
Exemplo n.º 3
0
        public static Task ProcesarCola(this GestorDeTrabajosDeUsuario gestorDelEntorno, UsuarioDtm usuario)
        {
            CumplimentarDatosDeConexion(gestorDelEntorno, usuario);

            var trabajosPorEjecutar = LeerTrabajoPendiente();

            if (trabajosPorEjecutar.Count == 1)
            {
                bool trazar = CacheDeVariable.Cola_Trazar;
                if (trazar)
                {
                    gestorDelEntorno.Contexto.IniciarTraza(trabajosPorEjecutar[0].Nombre);
                }
                try
                {
                    GestorDeTrabajosDeUsuario.Iniciar(gestorDelEntorno.Contexto, trabajosPorEjecutar[0].Id, true);
                    if (trazar)
                    {
                        gestorDelEntorno.Contexto.CerrarTraza("Trabajo finalizado correctamente");
                    }
                }
                catch
                {
                    if (trazar)
                    {
                        gestorDelEntorno.Contexto.CerrarTraza("Trabajo finalizado con errores");
                    }
                }
            }


            var gestorDeCorreos = GestorDeCorreos.Gestor(gestorDelEntorno.Contexto, gestorDelEntorno.Contexto.Mapeador);

            gestorDeCorreos.EnviarCorreoPendientesAsync();

            TrabajosDeEntorno.SometerBorrarTrazas(gestorDelEntorno.Contexto);

            return(Task.FromResult(new ResultadoDelProceso(true)));
        }