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); } }
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); }
public DataTable GetMagnitudesElectricas(MC_RMedidorFto rMedFto) { return(GetMagnitudesElectricas(rMedFto.PkCodMedidor, rMedFto.PkCodFormato)); }