public void Guardar(DatoTecnicoGeotermico datoTecnicoGeotermico) { OracleCommand cmd = null; string sql = string.Empty; if (datoTecnicoGeotermico.EsNuevo) { Pista p = PistaMgr.Instance.Info("DALProyectos", datoTecnicoGeotermico.GetEstadoString()); datoTecnicoGeotermico.SecLog = (long)p.PK_SecLog; datoTecnicoGeotermico.PkDatoTecGeotermico = GetIdAutoNum("SQ_F_PR_DATO_TEC_GEOTERMICO"); sql = "INSERT INTO {0} ({1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11})" + "VALUES(:{1},:{2},:{3},:{4},:{5},:{6},:{7},:{8},:{9},:{10},:{11})"; } else { sql = "UPDATE {0} SET " + "{2}=:{2} ," + "{3}=:{3} ," + "{4}=:{4} ," + "{5}=:{5} ," + "{6}=:{6} ," + "{7}=:{7} ," + "{8}=:{8} ," + "{9}=:{9} ," + "{10}=:{10} ," + "{11}=:{11} WHERE {1}=:{1} "; } sql = string.Format(sql, DatoTecnicoGeotermico.NOMBRE_TABLA, DatoTecnicoGeotermico.C_PK_DATO_TEC_GEOTERMICO, DatoTecnicoGeotermico.C_FK_PROYECTO, DatoTecnicoGeotermico.C_POTENCIA_INSTALADA, DatoTecnicoGeotermico.C_NRO_UNIDADES, DatoTecnicoGeotermico.C_D_COD_TECNOLOGIA_GEOTERMICA, DatoTecnicoGeotermico.C_GENERACION_MEDIA_ANUAL, DatoTecnicoGeotermico.C_PODER_CALORIFICO, DatoTecnicoGeotermico.C_PRODUCTIVIDAD, DatoTecnicoGeotermico.C_OBSERVACIONES, DatoTecnicoGeotermico.C_FECHA_REGISTRO, DatoTecnicoGeotermico.C_SEC_LOG); cmd = CrearCommand(); cmd.CommandText = sql; cmd.BindByName = true; cmd.Parameters.Add(DatoTecnicoGeotermico.C_PK_DATO_TEC_GEOTERMICO, OracleDbType.Int64, datoTecnicoGeotermico.PkDatoTecGeotermico, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_FK_PROYECTO, OracleDbType.Int64, datoTecnicoGeotermico.FkProyecto, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_POTENCIA_INSTALADA, OracleDbType.Double, datoTecnicoGeotermico.PotenciaInstalada, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_NRO_UNIDADES, OracleDbType.Int64, datoTecnicoGeotermico.NroUnidades, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_D_COD_TECNOLOGIA_GEOTERMICA, OracleDbType.Int64, datoTecnicoGeotermico.DCodTecnologiaGeotermica, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_GENERACION_MEDIA_ANUAL, OracleDbType.Double, datoTecnicoGeotermico.GeneracionMediaAnual, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_PODER_CALORIFICO, OracleDbType.Double, datoTecnicoGeotermico.PoderCalorifico, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_PRODUCTIVIDAD, OracleDbType.Double, datoTecnicoGeotermico.Productividad, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_OBSERVACIONES, OracleDbType.Varchar2, datoTecnicoGeotermico.Observaciones, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_FECHA_REGISTRO, OracleDbType.Date, datoTecnicoGeotermico.FechaDeRegistro, System.Data.ParameterDirection.Input); cmd.Parameters.Add(DatoTecnicoGeotermico.C_SEC_LOG, OracleDbType.Int64, datoTecnicoGeotermico.SecLog, System.Data.ParameterDirection.Input); if (Actualizar(cmd)) { datoTecnicoGeotermico.EsNuevo = false; } }
public DatoTecnicoGeotermico GetPorPkProyecto(long pkProyecto) { string sql = "SELECT {0}.* FROM {0},F_PR_PROYECTO WHERE {1}={2} AND F_PR_PROYECTO.PK_PROYECTO ={0}.{1} AND F_PR_PROYECTO.ESTADO=1"; sql = string.Format(sql, DatoTecnicoGeotermico.NOMBRE_TABLA, DatoTecnicoGeotermico.C_FK_PROYECTO, pkProyecto); DataTable tabla = EjecutarSql(sql); DatoTecnicoGeotermico res = null; if (tabla.Rows.Count > 0) { DataRow row = tabla.Rows[0]; res = new DatoTecnicoGeotermico(row); } return(res); }
public void SetParametros(bool esEditable, Proyecto proyecto) { _esEditable = esEditable; _proyecto = proyecto; _seGuardo = true; LimpiarControles(); _datoTecnicoGeotermico = OraDalDatoTecnicoGeotermicoMgr.Instancia.GetPorPkProyecto(_proyecto.PkProyecto); if (_datoTecnicoGeotermico == null) { _datoTecnicoGeotermico = new DatoTecnicoGeotermico(); _datoTecnicoGeotermico.EsNuevo = true; } else { _datoTecnicoGeotermico.EsNuevo = false; CargarDatos(); } ActivarDesActivarControles(); }
private void _btnCopiar_Click(object sender, EventArgs e) { if (!DatosSonValidos()) { return; } if (_cmbEtapa.SelectedItem == null) { DialogResult = DialogResult.No; } else { string prefijoEtapa = GetPrefijoDeTipoDominio((int)_proyectoNuevo.DCodEtapa); string prefijoTipoProy = GetPrefijoDeTipoDominio((int)_proyectoMaestro.DTipoProyecto); _proyectoSeleccionado.DCodEtapa = _proyectoNuevo.DCodEtapa; _proyectoSeleccionado.FechaDeRegistro = _dtpFechaRegistro.Value.Date; _proyectoSeleccionado.EsNuevo = true; GeneradorCodigoProyecto.Instancia.AsignarCodigo(_proyectoSeleccionado, prefijoEtapa, prefijoTipoProy); OraDalProyectoMgr.Instancia.Guardar(_proyectoSeleccionado); _proyectoNuevo = _proyectoSeleccionado; if (_proyectoMaestro.DTipoProyectoPadre == (long)D_COD_TIPO_PROYECTO.PROYECTOS_DE_GENERACIÓN) { LocalizacionProyectosGeneracion localizacion = OraDalLocalizacionProyectosGeneracionMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (localizacion != null) { localizacion.EsNuevo = true; localizacion.FkProyecto = _proyectoNuevo.PkProyecto; OraDalLocalizacionProyectosGeneracionMgr.Instancia.Guardar(localizacion); } } else if (_proyectoMaestro.DTipoProyectoPadre == (long)D_COD_TIPO_PROYECTO.PROYECTOS_DE_TRANSMISIÓN) { List <LocalizacionProyectosTransmision> listaLocal = OraDalLocalizacionProyectosTransmisionMgr.Instancia.GetListPorPkProyecto(_pkProyecto); foreach (LocalizacionProyectosTransmision local in listaLocal) { local.EsNuevo = true; local.FkProyecto = _proyectoNuevo.PkProyecto; OraDalLocalizacionProyectosTransmisionMgr.Instancia.Guardar(local); } } switch (_proyectoMaestro.DTipoProyecto) { case (long)D_COD_TIPO_PROYECTO.HIDROELÉCTRICO: //hidrologico DatoTecnicoHidroelectrico datoTec = OraDalDatoTecnicoHidroelectricoMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoTec != null) { long pkDatoTecnico = datoTec.PkDatoTecHidroelectrico; datoTec.EsNuevo = true; datoTec.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoHidroelectricoMgr.Instancia.Guardar(datoTec); List <VolumenVsArea> listaVolumenArea = OraDalVolumenVsAreaMgr.Instancia.GetListPorPkDatoTecnico(pkDatoTecnico); foreach (VolumenVsArea item in listaVolumenArea) { item.EsNuevo = true; item.FkDatoTecHidroelectrico = datoTec.PkDatoTecHidroelectrico; OraDalVolumenVsAreaMgr.Instancia.Guardar(item); } List <VolumenVsFactorDeProduccion> listaVolumenProduccion = OraDalVolumenVsFactorDeProduccionMgr.Instancia.GetListPorPkDatoTecnico(pkDatoTecnico); foreach (VolumenVsFactorDeProduccion item in listaVolumenProduccion) { item.EsNuevo = true; item.FkDatoTecHidroelectrico = datoTec.PkDatoTecHidroelectrico; OraDalVolumenVsFactorDeProduccionMgr.Instancia.Guardar(item); } } List <SerieHidrologica> listaSerie = OraDalSerieHidrologicaMgr.Instancia.GetSeriesDePkProyecto(_pkProyecto); foreach (SerieHidrologica item in listaSerie) { item.EsNuevo = true; item.FkProyecto = _proyectoNuevo.PkProyecto; OraDalSerieHidrologicaMgr.Instancia.Guardar(item); } CopiarDatosEconomicos(); CopiarDatosTransAsociadaAlProyecto(); CopiarDatosReduccionEmisiones(); break; case (long)D_COD_TIPO_PROYECTO.TURBINAS: //turbina case (long)D_COD_TIPO_PROYECTO.TÉRMICO_CICLO_COMBINADO: //ciclo combinado DatoTecnicoTurbina dato = OraDalDatoTecnicoTurbinaMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (dato != null) { dato.EsNuevo = true; dato.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoTurbinaMgr.Instancia.Guardar(dato); } CopiarDatosEconomicos(); CopiarDatosTransAsociadaAlProyecto(); CopiarDatosReduccionEmisiones(); break; case (long)D_COD_TIPO_PROYECTO.MOTORES: case (long)D_COD_TIPO_PROYECTO.TÉRMICO_A_DIESEL: //motores y diesel DatoTecnicoMotorDiesel datoDiesel = OraDalDatoTecnicoMotorDieselMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoDiesel != null) { datoDiesel.EsNuevo = true; datoDiesel.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoMotorDieselMgr.Instancia.Guardar(datoDiesel); } CopiarDatosEconomicos(); CopiarDatosTransAsociadaAlProyecto(); CopiarDatosReduccionEmisiones(); break; case (long)D_COD_TIPO_PROYECTO.TÉRMICO_A_DUAL_FUEL: //dual fuel DatoTecnicoDualFuel datoDual = OraDalDatoTecnicoDualFuelMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoDual != null) { datoDual.EsNuevo = true; datoDual.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoDualFuelMgr.Instancia.Guardar(datoDual); } CopiarDatosEconomicos(); CopiarDatosTransAsociadaAlProyecto(); CopiarDatosReduccionEmisiones(); break; case (long)D_COD_TIPO_PROYECTO.GEOTÉRMICO: //Geotermico DatoTecnicoGeotermico datoGeo = OraDalDatoTecnicoGeotermicoMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoGeo != null) { datoGeo.EsNuevo = true; datoGeo.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoGeotermicoMgr.Instancia.Guardar(datoGeo); } CopiarDatosEconomicos(); CopiarDatosTransAsociadaAlProyecto(); CopiarDatosReduccionEmisiones(); break; case (long)D_COD_TIPO_PROYECTO.BIOMASA: //Biomasa DatoTecnicoBiomasa datoBio = OraDalDatoTecnicoBiomasaMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoBio != null) { datoBio.EsNuevo = true; datoBio.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoBiomasaMgr.Instancia.Guardar(datoBio); } CopiarDatosEconomicos(); CopiarDatosTransAsociadaAlProyecto(); CopiarDatosReduccionEmisiones(); break; case (long)D_COD_TIPO_PROYECTO.EÓLICO: //Eolico -solar case (long)D_COD_TIPO_PROYECTO.SOLAR: DatoTecnicoEolicoSolar datoEolico = OraDalDatoTecnicoEolicoSolarMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoEolico != null) { datoEolico.EsNuevo = true; datoEolico.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoEolicoSolarMgr.Instancia.Guardar(datoEolico); List <GeneracionProbableEolicoSolar> lista = OraDalGeneracionProbableEolicoSolarMgr.Instancia.GetListPorPkProyecto(_pkProyecto); foreach (GeneracionProbableEolicoSolar item in lista) { item.EsNuevo = true; item.FkProyecto = _proyectoNuevo.PkProyecto; OraDalGeneracionProbableEolicoSolarMgr.Instancia.Guardar(item); } } CopiarDatosEconomicos(); CopiarDatosTransAsociadaAlProyecto(); CopiarDatosReduccionEmisiones(); break; case (long)D_COD_TIPO_PROYECTO.LINEA_DE_TRANSMISIÓN: //linea transmision DatoTecnicoLineaTransmision datoLinea = OraDalDatoTecnicoLineaTransmisionMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoLinea != null) { datoLinea.EsNuevo = true; datoLinea.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoLineaTransmisionMgr.Instancia.Guardar(datoLinea); } CopiarDatosEconomicos(); break; case (long)D_COD_TIPO_PROYECTO.TRANSFORMADOR: // transformador DatoTecnicoTransformador datoTrans = OraDalDatoTecnicoTransformadorMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoTrans != null) { datoTrans.EsNuevo = true; datoTrans.FkCodProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoTransformadorMgr.Instancia.Guardar(datoTrans); } CopiarDatosEconomicos(); break; case (long)D_COD_TIPO_PROYECTO.CAPACITOR: // capacitor DatoTecnicoCapacitor datoCap = OraDalDatoTecnicoCapacitorMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoCap != null) { datoCap.EsNuevo = true; datoCap.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoCapacitorMgr.Instancia.Guardar(datoCap); } CopiarDatosEconomicos(); break; case (long)D_COD_TIPO_PROYECTO.REACTOR: // reactor DatoTecnicoReactor datoReac = OraDalDatoTecnicoReactorMgr.Instancia.GetPorPkProyecto(_pkProyecto); if (datoReac != null) { datoReac.EsNuevo = true; datoReac.FkProyecto = _proyectoNuevo.PkProyecto; OraDalDatoTecnicoReactorMgr.Instancia.Guardar(datoReac); } CopiarDatosEconomicos(); break; default: break; } DialogResult = DialogResult.OK; } }