Example #1
0
 /// <summary>
 /// Agrega o modifica un registro de la tabla: LogClientes
 /// (Código Fijo)
 /// </summary>
 /// <param name="p_dbcAccess">Conexion a la base de datos</param>
 /// <param name="p_entLogCliente">Entidad con los datos a procesar</param>
 /// <param name="p_smResult">Estado final de la operacion</param>
 internal static void LgcSave_f(DBConn p_dbcAccess,
                                ref ELogCliente p_entLogCliente,
                                StatMsg p_smResult)
 {
     // *********
     // Agregar acá los procesos adicionales
     // *********
     if (p_entLogCliente.Nro == 0)
     {
         p_entLogCliente.Nro = AppRuts.TaloGet("nroLogCli", p_smResult).Valor;
     }
 }
Example #2
0
        //---------------------------------------------------------------
        // Metodos públicos de la clase
        //---------------------------------------------------------------

        #region Metodos publicos de la clase


        public static void fCheckCreacionAlertas(EMovil p_entMovil, StatMsg p_smResult)
        {
            DBConn l_dbcAccess = null;

            try{
                // Obtenemos una conexion
                l_dbcAccess = DBRuts.GetConection(Connections.Dat);

                Bel.LEMovilesAlertas configAlertas = Moviles.MvalFSch(l_dbcAccess, p_entMovil.Patente, true, p_smResult);
                if (p_smResult.NOk)
                {
                    return;
                }

                if (configAlertas.Count == 0)
                {
                    return;
                }

                p_entMovil.MovilesKms = Moviles.MvkmFSch(l_dbcAccess, p_entMovil.Patente, true, p_smResult);
                if (p_smResult.NOk)
                {
                    return;
                }

                LEAlertas alertasDelMovil = Alertas.AleGetAlertasFromMovil(p_entMovil.Patente, p_smResult);
                if (p_smResult.NOk)
                {
                    return;
                }

                LEOTItems reparacionesDelMovil = OrdenesTrabajo.OtitGetRealizadosMvl(p_entMovil.Patente, p_smResult);
                if (p_smResult.NOk)
                {
                    return;
                }

                DateTime fechaActual = BllRuts.GetDBNow(l_dbcAccess, p_smResult);
                if (p_smResult.NOk)
                {
                    return;
                }

                // Iteramos por todas las config alertas y si alguna cumple condicion creamos la nueva alerta.
                foreach (EMovilAlerta configAlerta in configAlertas)
                {
                    if (configAlerta.CumpleCondicion(p_entMovil, alertasDelMovil, reparacionesDelMovil, fechaActual))
                    {
                        ETalonario nroAlerta = AppRuts.TaloGet(l_dbcAccess, "ConfAlerta", p_smResult);
                        if (p_smResult.NOk)
                        {
                            return;
                        }

                        Bel.EAlerta nuevaAlerta = configAlerta.crearAlerta(nroAlerta.Valor, fechaActual);
                        Alertas.AleSave(nuevaAlerta, p_smResult);
                        if (p_smResult.NOk)
                        {
                            return;
                        }
                    }
                }
            }
            catch (Exception l_expData) {
                // Error en la operacion
                p_smResult.BllError(l_expData.ToString());
            }
            finally{
                // Si pude abrir la conexion -> la cierro
                if (l_dbcAccess != null)
                {
                    l_dbcAccess.Close();
                }
            }
        }