Example #1
0
        /// <summary>
        /// Verifica si existe en la tabla una entidad: EAlerta
        ///      Retorno: p_smResult.Stat= BllAvisos.KeyExists   - La clave existe
        ///               p_smResult.Stat= BllAvisos.KeyNotFound - La clave no existe
        ///               p_smResult.Stat= BllAvisos.KeyDisabled - La clave está deshabilitada
        /// </summary>
        /// <param name="p_dbcAccess">Conexion a la base de datos</param>
        /// <param name="p_iNroconfig">Nro Config Alerta</param>
        /// <param name="p_iNroalerta">Nro Alerta</param>
        /// <param name="p_smResult">Estado final de la operacion</param>
        internal static void AleVKey(DBConn p_dbcAccess,
                                     int p_iNroconfig,
                                     int p_iNroalerta,
                                     StatMsg p_smResult)
        {
            // No hay errores aun
            DataSet l_dsTemp = new DataSet();

            Dal.Alertas.Search(p_dbcAccess,
                               p_iNroconfig,
                               p_iNroalerta,
                               false,
                               ref l_dsTemp,
                               "Temporal",
                               p_smResult);
            if (p_smResult.NOk)
            {
                return;
            }

            try {
                // Verificamos si vino algun registro
                p_smResult.BllICode(BllCodes.KeyDsntFound);
                if (l_dsTemp.Tables["Temporal"].Rows.Count == 0)
                {
                    return;
                }

                // Verificamos si el registro que vino esta habilitado
                p_smResult.BllICode(BllCodes.KeyDisabled);
                if ((decimal)l_dsTemp.Tables["Temporal"].Rows[0]["deleted"] == 1)
                {
                    return;
                }

                // La clave existia y estaba habilitada
                p_smResult.BllICode(BllCodes.KeyExists);
            }
            finally {
                // Terminamos
                l_dsTemp.Dispose();
            }
        }