Пример #1
0
        public void Guardar(DatoTecnicoMotorDiesel datoTecnicoMotorDiesel)
        {
            OracleCommand cmd = null;
            string        sql = string.Empty;

            if (datoTecnicoMotorDiesel.EsNuevo)
            {
                Pista p = PistaMgr.Instance.Info("DALProyectos", datoTecnicoMotorDiesel.GetEstadoString());
                datoTecnicoMotorDiesel.SecLog = (long)p.PK_SecLog;
                datoTecnicoMotorDiesel.PkDatoTecGasMotorDiesel = GetIdAutoNum("SQ_F_PR_DATO_TEC_MOTOR_DIESEL");
                sql = "INSERT INTO {0} ({1},{2},{3},{4},{5},{6},{7},{8},{9},{10})" +
                      "VALUES(:{1},:{2},:{3},:{4},:{5},:{6},:{7},:{8},:{9},:{10})";
            }
            else
            {
                sql = "UPDATE {0} SET " +
                      "{2}=:{2} ," +
                      "{3}=:{3} ," +
                      "{4}=:{4} ," +
                      "{5}=:{5} ," +
                      "{6}=:{6} ," +
                      "{7}=:{7} ," +
                      "{8}=:{8} ," +
                      "{9}=:{9} ," +
                      "{10}=:{10}  WHERE {1}=:{1}";
            }

            sql = string.Format(sql, DatoTecnicoMotorDiesel.NOMBRE_TABLA, DatoTecnicoMotorDiesel.C_PK_DATO_TEC_GAS_MOTOR_DIESEL,
                                DatoTecnicoMotorDiesel.C_FK_PROYECTO,
                                DatoTecnicoMotorDiesel.C_MODELO,
                                DatoTecnicoMotorDiesel.C_CAPACIDAD_INSTALADA,
                                DatoTecnicoMotorDiesel.C_HEAT_RATE100,
                                DatoTecnicoMotorDiesel.C_HEAT_RATE75,
                                DatoTecnicoMotorDiesel.C_HEAT_RATE50,
                                DatoTecnicoMotorDiesel.C_OBSERVACIONES,
                                DatoTecnicoMotorDiesel.C_FECHA_REGISTRO,
                                DatoTecnicoMotorDiesel.C_SEC_LOG);
            cmd             = CrearCommand();
            cmd.CommandText = sql;
            cmd.BindByName  = true;
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_PK_DATO_TEC_GAS_MOTOR_DIESEL, OracleDbType.Int64, datoTecnicoMotorDiesel.PkDatoTecGasMotorDiesel, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_FK_PROYECTO, OracleDbType.Int64, datoTecnicoMotorDiesel.FkProyecto, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_MODELO, OracleDbType.Varchar2, datoTecnicoMotorDiesel.Modelo, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_CAPACIDAD_INSTALADA, OracleDbType.Double, datoTecnicoMotorDiesel.CapacidadInstalada, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_HEAT_RATE100, OracleDbType.Int64, datoTecnicoMotorDiesel.HeatRate100, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_HEAT_RATE75, OracleDbType.Int64, datoTecnicoMotorDiesel.HeatRate75, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_HEAT_RATE50, OracleDbType.Int64, datoTecnicoMotorDiesel.HeatRate50, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_OBSERVACIONES, OracleDbType.Varchar2, datoTecnicoMotorDiesel.Observaciones, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_FECHA_REGISTRO, OracleDbType.Date, datoTecnicoMotorDiesel.FechaDeRegistro, System.Data.ParameterDirection.Input);
            cmd.Parameters.Add(DatoTecnicoMotorDiesel.C_SEC_LOG, OracleDbType.Int64, datoTecnicoMotorDiesel.SecLog, System.Data.ParameterDirection.Input);

            if (Actualizar(cmd))
            {
                datoTecnicoMotorDiesel.EsNuevo = false;
            }
        }
Пример #2
0
        public DatoTecnicoMotorDiesel 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, DatoTecnicoMotorDiesel.NOMBRE_TABLA, DatoTecnicoMotorDiesel.C_FK_PROYECTO, pkProyecto);
            DataTable tabla            = EjecutarSql(sql);
            DatoTecnicoMotorDiesel res = null;

            if (tabla.Rows.Count > 0)
            {
                DataRow row = tabla.Rows[0];
                res = new DatoTecnicoMotorDiesel(row);
            }
            return(res);
        }
Пример #3
0
        public void SetParametros(bool esEditable, Proyecto proyecto)
        {
            _esEditable = esEditable;
            _proyecto   = proyecto;
            _seGuardo   = true;

            LimpiarControles();
            _datoTecnicoMotorDiesel = OraDalDatoTecnicoMotorDieselMgr.Instancia.GetPorPkProyecto(_proyecto.PkProyecto);

            if (_datoTecnicoMotorDiesel == null)
            {
                _datoTecnicoMotorDiesel         = new DatoTecnicoMotorDiesel();
                _datoTecnicoMotorDiesel.EsNuevo = true;
            }
            else
            {
                _datoTecnicoMotorDiesel.EsNuevo = false;
                CargarDatos();
            }

            ActivarDesActivarControles();
        }
Пример #4
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;
            }
        }