public void Guardar(MC_IntervaloDetalle obj) { OracleCommand cmd = null; string sql = string.Empty; if (obj.EsNuevo) { sql = "INSERT INTO {0} ({1},{2},{3},{4})" + "VALUES(:{1},:{2},:{3},:{4})"; obj.PkCodIntervalo = GetIdAutoNum("SEC_PK_COD_INTERVALO_D"); } else { sql = "UPDATE {0} SET " + "{1}=:{1} ," + "{2}=:{2} ," + "{3}=:{3} ," + "{4}=:{4} WHERE "; } sql = string.Format(sql, MC_IntervaloDetalle.NOMBRE_TABLA, MC_IntervaloDetalle.C_PK_COD_INTERVALO, MC_IntervaloDetalle.C_HORA_INTERVALO, MC_IntervaloDetalle.C_NUMERO_INTERVALO, MC_IntervaloDetalle.C_FK_COD_INTERVALO_MAESTRO); cmd = CrearCommand(); cmd.CommandText = sql; cmd.BindByName = true; cmd.Parameters.Add(MC_IntervaloDetalle.C_PK_COD_INTERVALO, OracleDbType.Int64, obj.PkCodIntervalo, ParameterDirection.Input); cmd.Parameters.Add(MC_IntervaloDetalle.C_HORA_INTERVALO, OracleDbType.Varchar2, obj.HoraIntervalo, ParameterDirection.Input); cmd.Parameters.Add(MC_IntervaloDetalle.C_NUMERO_INTERVALO, OracleDbType.Int32, obj.NumeroIntervalo, ParameterDirection.Input); cmd.Parameters.Add(MC_IntervaloDetalle.C_FK_COD_INTERVALO_MAESTRO, OracleDbType.Int64, obj.FkCodIntervaloMaestro, ParameterDirection.Input); try { cmd.ExecuteNonQuery(); obj.EsNuevo = false; } catch (Exception exception) { PistaMgr.Instance.Error("DALSisFalla", exception); } finally { DisposeCommand(cmd); } }
public bool Guardar(MC_IntervaloMaestro obj) { bool resultado = true; OracleCommand cmd = null; string sql = string.Empty; if (obj.EsNuevo) { Pista p = PistaMgr.Instance.Info("DALSisFalla", obj.GetEstadoString()); obj.SecLog = (long)p.PK_SecLog; sql = "INSERT INTO {0} ({1},{2},{3},{4},{5},{6},{7})" + "VALUES(:{1},:{2},:{3},:{4},:{5},:{6},:{7})"; obj.PkCodIntervaloMaestro = GetIdAutoNum("SEC_PK_COD_INTERVALO_M"); } else { sql = "UPDATE {0} SET " + "{2}=:{2} ," + "{3}=:{3} ," + "{4}=:{4} ," + "{5}=:{5} ," + "{6}=:{6}, {7}=:{7} WHERE {1}=:{1}"; } sql = string.Format(sql, MC_IntervaloMaestro.NOMBRE_TABLA, MC_IntervaloMaestro.C_PK_COD_INTERVALO_MAESTRO, MC_IntervaloMaestro.C_NOMBRE, MC_IntervaloMaestro.C_PERIODO_TIEMPO, MC_IntervaloMaestro.C_FECHA_DESDE, MC_IntervaloMaestro.C_FECHA_HASTA, MC_IntervaloMaestro.C_D_COD_ESTADO, MC_IntervaloMaestro.C_SEC_LOG); cmd = CrearCommand(); cmd.CommandText = sql; cmd.BindByName = true; cmd.Parameters.Add(MC_IntervaloMaestro.C_PK_COD_INTERVALO_MAESTRO, OracleDbType.Int64, obj.PkCodIntervaloMaestro, ParameterDirection.Input); cmd.Parameters.Add(MC_IntervaloMaestro.C_NOMBRE, OracleDbType.Varchar2, obj.Nombre, ParameterDirection.Input); cmd.Parameters.Add(MC_IntervaloMaestro.C_PERIODO_TIEMPO, OracleDbType.Int32, obj.PeriodoTiempo, ParameterDirection.Input); cmd.Parameters.Add(MC_IntervaloMaestro.C_FECHA_DESDE, OracleDbType.Date, obj.FechaDesde, ParameterDirection.Input); cmd.Parameters.Add(MC_IntervaloMaestro.C_FECHA_HASTA, OracleDbType.Date, obj.FechaHasta, ParameterDirection.Input); cmd.Parameters.Add(MC_IntervaloMaestro.C_D_COD_ESTADO, OracleDbType.Int16, obj.DCodEstado, ParameterDirection.Input); cmd.Parameters.Add(MC_IntervaloMaestro.C_SEC_LOG, OracleDbType.Int64, obj.SecLog, ParameterDirection.Input); try { cmd.ExecuteNonQuery(); if (obj.EsNuevo) { obj.EsNuevo = false; int totalPeriodosDia = MINUTOS_POR_DIA / obj.PeriodoTiempo; int minutos = 0; for (int i = 1; i <= totalPeriodosDia; i++) { minutos += obj.PeriodoTiempo; MC_IntervaloDetalle detalle = new MC_IntervaloDetalle(); detalle.FkCodIntervaloMaestro = obj.PkCodIntervaloMaestro; detalle.EsNuevo = true; detalle.HoraIntervalo = GetHora(minutos); detalle.NumeroIntervalo = i; MC_IntervaloDetalleMgr.Instancia.Guardar(detalle); } } } catch (Exception exception) { PistaMgr.Instance.Error("DALSisFalla", exception); resultado = false; } finally { DisposeCommand(cmd); } return(resultado); }