public void SetParametros(bool esEditable, Proyecto proyecto)
        {
            _esEditable = esEditable;
            _proyecto   = proyecto;
            LimpiarControles();
            _seGuardo = true;

            _datoTecnicoReactor = OraDalDatoTecnicoReactorMgr.Instancia.GetPorPkProyecto(_proyecto.PkProyecto);
            List <LocalizacionProyectosTransmision> lista = OraDalLocalizacionProyectosTransmisionMgr.Instancia.GetListPorPkProyecto(_proyecto.PkProyecto);

            if (lista.Count > 0)
            {
                _txtSubestacionOrigen.Text = lista[0].Subestacion;
            }
            if (_datoTecnicoReactor == null)
            {
                _datoTecnicoReactor         = new DatoTecnicoReactor();
                _datoTecnicoReactor.EsNuevo = true;
            }
            else
            {
                _datoTecnicoReactor.EsNuevo = false;
                CargarDatos();
            }
            ActivarDesActivarControles();
        }
        public DatoTecnicoReactor 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, DatoTecnicoReactor.NOMBRE_TABLA, DatoTecnicoReactor.C_FK_PROYECTO, pkProyecto);
            DataTable          tabla = EjecutarSql(sql);
            DatoTecnicoReactor res   = null;

            if (tabla.Rows.Count > 0)
            {
                DataRow row = tabla.Rows[0];
                res = new DatoTecnicoReactor(row);
            }

            return(res);
        }
Exemple #3
0
        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;
            }
        }
        public void Guardar(DatoTecnicoReactor 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.PkDatoTecReactor = GetIdAutoNum("SQ_F_PR_DATO_TEC_REACTOR");
                sql = "INSERT INTO {0} ({1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16})" +
                      "VALUES(:{1},:{2},:{3},:{4},:{5},:{6},:{7},:{8},:{9},:{10},:{11},:{12},:{13},:{14},:{15},:{16})";
            }
            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} ," +
                      "{12}=:{12} ," +
                      "{13}=:{13} ," +
                      "{14}=:{14} ," +
                      "{15}=:{15} ," +
                      "{16}=:{16}  WHERE {1}=:{1} ";
            }

            sql = string.Format(sql, DatoTecnicoReactor.NOMBRE_TABLA, DatoTecnicoReactor.C_PK_DATO_TEC_REACTOR,
                                DatoTecnicoReactor.C_FK_PROYECTO,
                                DatoTecnicoReactor.C_TENSION_NOMINAL,
                                DatoTecnicoReactor.C_POT_NOMINAL_TRIFASICA_REACTIVO,
                                DatoTecnicoReactor.C_NODO_CONEXION,
                                DatoTecnicoReactor.C_OBSERVACIONES,
                                DatoTecnicoReactor.C_D_COD_TIPO_REACTOR,
                                DatoTecnicoReactor.C_LINEA,
                                DatoTecnicoReactor.C_SEC_LOG,
                                DatoTecnicoReactor.C_FECHA_REGISTRO,
                                DatoTecnicoReactor.C_FACTOR_CALIDAD,
                                DatoTecnicoReactor.C_TENSION_NOMINAL_RN,
                                DatoTecnicoReactor.C_POT_NOMINAL_TRIFASICA_RN,
                                DatoTecnicoReactor.C_FACTOR_CALIDAD_RN,
                                DatoTecnicoReactor.C_NODO_CONEXION_RN,
                                DatoTecnicoReactor.C_OBSERVACIONES_RN);
            cmd             = CrearCommand();
            cmd.CommandText = sql;
            cmd.BindByName  = true;
            cmd.Parameters.Add(DatoTecnicoReactor.C_PK_DATO_TEC_REACTOR, OracleDbType.Int64, obj.PkDatoTecReactor, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_FK_PROYECTO, OracleDbType.Int64, obj.FkProyecto, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_TENSION_NOMINAL, OracleDbType.Double, obj.TensionNominal, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_POT_NOMINAL_TRIFASICA_REACTIVO, OracleDbType.Double, obj.PotNominalTrifasicaReactivo, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_NODO_CONEXION, OracleDbType.Varchar2, obj.NodoConexion, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_OBSERVACIONES, OracleDbType.Varchar2, obj.Observaciones, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_D_COD_TIPO_REACTOR, OracleDbType.Int64, obj.DCodTipoReactor, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_LINEA, OracleDbType.Varchar2, obj.Linea, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_SEC_LOG, OracleDbType.Int64, obj.SecLog, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_FECHA_REGISTRO, OracleDbType.Date, obj.FechaRegistro, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_FACTOR_CALIDAD, OracleDbType.Double, obj.FactorCalidad, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_TENSION_NOMINAL_RN, OracleDbType.Double, obj.TensionNominalRn, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_POT_NOMINAL_TRIFASICA_RN, OracleDbType.Double, obj.PotNominalTrifasicaRn, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_FACTOR_CALIDAD_RN, OracleDbType.Double, obj.FactorCalidadRn, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_NODO_CONEXION_RN, OracleDbType.Varchar2, obj.NodoConexionRn, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoReactor.C_OBSERVACIONES_RN, OracleDbType.Varchar2, obj.ObservacionesRn, System.Data.ParameterDirection.Input);

            if (Actualizar(cmd))
            {
                obj.EsNuevo = false;
            }
        }