示例#1
0
        public void Guardar(MC_RMedidorFto obj)
        {
            OracleCommand cmd = null;
            string        sql = string.Empty;

            if (obj.EsNuevo)
            {
                Pista p = PistaMgr.Instance.Info("DALSisFalla", obj.GetEstadoString());
                obj.SecLog           = (long)p.PK_SecLog;
                obj.PrioridadLectura = GetPrioridad(obj);
                sql = "INSERT INTO {0} ({1},{2},{3},{4},{5},{6},{7})" +
                      "VALUES(:{1},:{2},:{3},:{4},:{5},:{6},:{7})";
            }
            else
            {
                sql = "UPDATE {0} SET " +
                      "{3}=:{3} ," +
                      "{4}=:{4} ," +
                      "{5}=:{5} ," +
                      "{6}=:{6} ," +
                      "{7}=:{7}  WHERE {1}=:{1} AND {2}=:{2} ";
            }

            sql = string.Format(sql, MC_RMedidorFto.NOMBRE_TABLA, MC_RMedidorFto.C_PK_COD_MEDIDOR,
                                MC_RMedidorFto.C_PK_COD_FORMATO,
                                MC_RMedidorFto.C_NOMBRE_ARCHIVO,
                                MC_RMedidorFto.C_PRIORIDAD_LECTURA,
                                MC_RMedidorFto.C_D_COD_ESTADO,
                                MC_RMedidorFto.C_SEC_LOG,
                                MC_RMedidorFto.C_CONTIENE_FIN_INTERVALO);
            cmd             = CrearCommand();
            cmd.CommandText = sql;
            cmd.BindByName  = true;
            cmd.Parameters.Add(MC_RMedidorFto.C_PK_COD_MEDIDOR, OracleDbType.Int64, obj.PkCodMedidor, ParameterDirection.Input);
            cmd.Parameters.Add(MC_RMedidorFto.C_PK_COD_FORMATO, OracleDbType.Int64, obj.PkCodFormato, ParameterDirection.Input);
            cmd.Parameters.Add(MC_RMedidorFto.C_NOMBRE_ARCHIVO, OracleDbType.Varchar2, obj.NombreArchivo, ParameterDirection.Input);
            cmd.Parameters.Add(MC_RMedidorFto.C_PRIORIDAD_LECTURA, OracleDbType.Int16, obj.PrioridadLectura, ParameterDirection.Input);
            cmd.Parameters.Add(MC_RMedidorFto.C_D_COD_ESTADO, OracleDbType.Varchar2, obj.DCodEstado, ParameterDirection.Input);
            cmd.Parameters.Add(MC_RMedidorFto.C_SEC_LOG, OracleDbType.Int64, obj.SecLog, ParameterDirection.Input);
            cmd.Parameters.Add(MC_RMedidorFto.C_CONTIENE_FIN_INTERVALO, OracleDbType.Int16, obj.ContieneFinIntervalo, ParameterDirection.Input);

            try
            {
                cmd.ExecuteNonQuery();
                obj.EsNuevo = false;
            }
            catch (Exception exception)
            {
                PistaMgr.Instance.Error("DALSisFalla", exception);
            }
            finally
            {
                DisposeCommand(cmd);
            }
        }
示例#2
0
        private short GetPrioridad(MC_RMedidorFto obj)
        {
            short  resultado = 1;
            string sql       =
                @"SELECT MAX(prioridad_lectura) FROM F_MC_RMEDIDOR_FTO
            WHERE pk_cod_medidor=:pk_cod_medidor";
            OracleCommand cmd = CrearCommand(sql);

            cmd.Parameters.Add("pk_cod_medidor", OracleDbType.Int64, obj.PkCodMedidor, ParameterDirection.Input);

            DataTable tabla = EjecutarCmd(cmd);

            resultado = (short)ObjetoDeNegocio.GetValor <decimal>(tabla.Rows[0][0]);
            resultado++;
            return(resultado);
        }
示例#3
0
 public DataTable GetMagnitudesElectricas(MC_RMedidorFto rMedFto)
 {
     return(GetMagnitudesElectricas(rMedFto.PkCodMedidor, rMedFto.PkCodFormato));
 }