예제 #1
0
 public bool SuministrosMedidoresUpdate(SuministrosMedidores oSMe)
 {
     try
     {
         Conexion         oConexion = new Conexion();
         OracleConnection cn        = oConexion.getConexion();
         cn.Open();
         ds = new DataSet();
         string strsql = "update Suministros_Medidores " +
                         "SET Sme_FECHA_ALTA=TO_DATE('" + oSMe.SmeFechaAlta.ToString("dd/MM/yyyy") +
                         "','dd/mm/yyyy'), Sme_FECHA_BAJA=" + (oSMe.SmeFechaBaja == null ? "null," : "TO_DATE('" + oSMe.SmeFechaBaja.Value.ToString("dd/MM/yyyy") +
                                                               "','dd/mm/yyyy')") + ", EST_CODIGO='" + oSMe.EstCodigo +
                         "', MED_NUMERO=" + oSMe.MedNumero +
                         ", SUM_NUMERO=" + oSMe.SumNumero +
                         " WHERE Sme_NUMERO=" + oSMe.SmeNumero.ToString();
         cmd      = new OracleCommand(strsql, cn);
         adapter  = new OracleDataAdapter(cmd);
         response = cmd.ExecuteNonQuery();
         cn.Close();
         return(response > 0);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
예제 #2
0
        public List <SuministrosMedidores> SuministrosMedidoresGetAll()
        {
            List <SuministrosMedidores> lstSuministrosMedidores = new List <SuministrosMedidores>();

            try
            {
                ds = new DataSet();
                Conexion         oConexion = new Conexion();
                OracleConnection cn        = oConexion.getConexion();
                cn.Open();
                string sqlSelect = "select * from Suministros_Medidores ";
                cmd     = new OracleCommand(sqlSelect, cn);
                adapter = new OracleDataAdapter(cmd);
                cmd.ExecuteNonQuery();
                adapter.Fill(ds);
                DataTable dt = new DataTable();
                dt = ds.Tables[0];
                if (dt.Rows.Count > 0)
                {
                    for (int i = 0; dt.Rows.Count > i; i++)
                    {
                        DataRow dr = dt.Rows[i];
                        SuministrosMedidores NewEnt = new SuministrosMedidores();
                        NewEnt = CargarSuministrosMedidores(dr);
                        lstSuministrosMedidores.Add(NewEnt);
                    }
                }
                return(lstSuministrosMedidores);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #3
0
 public SuministrosMedidores SuministrosMedidoresGetBySuministro(long Id)
 {
     try
     {
         DataSet          ds        = new DataSet();
         Conexion         oConexion = new Conexion();
         OracleConnection cn        = oConexion.getConexion();
         cn.Open();
         string sqlSelect = "select * from Suministros_Medidores " +
                            "WHERE SME_FECHA_BAJA IS NULL AND SUM_NUMERO=" + Id.ToString();
         cmd     = new OracleCommand(sqlSelect, cn);
         adapter = new OracleDataAdapter(cmd);
         cmd.ExecuteNonQuery();
         adapter.Fill(ds);
         DataTable dt;
         dt = ds.Tables[0];
         SuministrosMedidores NewEnt = new SuministrosMedidores();
         if (dt.Rows.Count > 0)
         {
             DataRow dr = dt.Rows[0];
             NewEnt = CargarSuministrosMedidores(dr);
         }
         return(NewEnt);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
예제 #4
0
        public long SuministrosMedidoresAdd(SuministrosMedidores oSMe)
        {
            try
            {
                Conexion         oConexion = new Conexion();
                OracleConnection cn        = oConexion.getConexion();
                cn.Open();
                // Clave Secuencia Sme_NUMERO
                ds = new DataSet();
                string query =

                    " DECLARE IDTEMP NUMBER(15,0); " +
                    " BEGIN " +
                    " SELECT(PKG_SECUENCIAS.FNC_PROX_SECUENCIA('SME_NUMERO')) into IDTEMP from dual; " +
                    " insert into Suministros_Medidores " +
                    "(SME_NUMERO, SME_FECHA_ALTA, SME_FECHA_BAJA, " +
                    "EST_CODIGO, MED_NUMERO, SUM_NUMERO) " +
                    "values(IDTEMP,'" + oSMe.SmeFechaAlta.ToString("dd/MM/yyyy") + "',";
                if (oSMe.SmeFechaBaja == null)
                {
                    query += "null, '";
                }
                else
                {
                    query += "'" + oSMe.SmeFechaBaja.Value.ToString("dd/MM/yyyy") + "','";
                }
                query += oSMe.EstCodigo + "'," + oSMe.MedNumero + "," + oSMe.SumNumero + ") RETURNING IDTEMP INTO :id;" +
                         " END;";
                //oSMe.SmeFechaBaja == null ? "null, '" : "'" + oSMe.SmeFechaBaja.Value.ToString("dd/MM/yyyy") + "','" +
                cmd = new OracleCommand(query, cn);
                cmd.Parameters.Add(new OracleParameter
                {
                    ParameterName = ":id",
                    OracleDbType  = OracleDbType.Int64,
                    Direction     = ParameterDirection.Output
                });
                adapter = new OracleDataAdapter(cmd);
                cmd.ExecuteNonQuery();
                response = long.Parse(cmd.Parameters[":id"].Value.ToString());
                cn.Close();
                return(response);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #5
0
 private SuministrosMedidores CargarSuministrosMedidores(DataRow dr)
 {
     try
     {
         SuministrosMedidores oObjeto = new SuministrosMedidores();
         oObjeto.SmeNumero = long.Parse(dr["Sme_NUMERO"].ToString());
         if (dr["Sme_FECHA_ALTA"].ToString() != "")
         {
             oObjeto.SmeFechaAlta = DateTime.Parse(dr["Sme_FECHA_ALTA"].ToString());
         }
         if (dr["Sme_FECHA_BAJA"].ToString() != "")
         {
             oObjeto.SmeFechaBaja = DateTime.Parse(dr["Sme_FECHA_BAJA"].ToString());
         }
         oObjeto.EstCodigo = dr["EST_CODIGO"].ToString();
         oObjeto.MedNumero = long.Parse(dr["MED_NUMERO"].ToString());
         oObjeto.SumNumero = long.Parse(dr["SUM_NUMERO"].ToString());
         return(oObjeto);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
예제 #6
0
        public void Guardar()
        {
            long           rtdo;
            Suministros    oSum    = new Suministros();
            SuministrosBus oSumBus = new SuministrosBus();

            //Cargar los datos ingresados al objeto

            oSum.SumNumero          = _vista.Numero;
            oSum.SrvCodigo          = _vista.Servicio.SelectedValue.ToString();
            oSum.TcsCodigo          = _vista.TipoConexion.SelectedValue.ToString();
            oSum.ScaNumero          = long.Parse(_vista.Categoria.SelectedValue.ToString());
            oSum.SumOrdenRuta       = _vista.OrdenRuta;
            oSum.EmpNumero          = _vista.EmpNumero;
            oSum.SumFechaAlta       = _vista.FechaAlta;
            oSum.EstCodigo          = _vista.EstCodigo.SelectedValue.ToString();
            oSum.SumConsumoEstimado = _vista.ConsumoEstimado;
            oSum.SumVoltaje         = _vista.Voltaje;
            oSum.SumConexion        = _vista.Conexion;
            oSum.SumPotenciaL1      = _vista.PotenciaL1;
            oSum.SumPotenciaL2      = _vista.PotenciaL2;
            oSum.SumPotenciaL3      = _vista.PotenciaL3;
            oSum.SumPermiteCorte    = _vista.PermiteCorte;
            oSum.SumMedido          = _vista.Medido;
            oSum.SruNumero          = int.Parse(_vista.Ruta.SelectedValue.ToString());
            oSum.SzoNumero          = int.Parse(_vista.Zona.SelectedValue.ToString());
            oSum.SumPermiteFactura  = _vista.PermiteFactura;
            oSum.SumFechaCarga      = _vista.FechaCarga;
            oSum.SumRegistrador     = _vista.Registrador;

            SuministrosMedidores    oSMe    = new SuministrosMedidores();
            SuministrosMedidoresBus oSMeBus = new SuministrosMedidoresBus();

            DomiciliosEntidades    oDEn    = new DomiciliosEntidades();
            DomiciliosEntidadesBus oDEnBus = new DomiciliosEntidadesBus();

            if (_vista.Numero == 0)
            {
                // Agregar un suministro con el codigo de domicilio y numero de medidor
                //oSum.SumNumero =  oSumBus.SuministrosAdd(oSum);
                oDEn.TdoCodigo = "C";
                //oDEn.DenCodigoRegistro = oSum.SumNumero;
                oDEn.TabCodigo  = "SUM";
                oDEn.DomCodigo  = _vista.numDomicilio;
                oDEn.DenDefecto = "S";
                //oDEnBus.DomiciliosEntidadesAdd(oDEn);
                oSMe.SmeFechaAlta = oSum.SumFechaAlta;
                oSMe.MedNumero    = _vista.numMedidor;
                oSMe.EstCodigo    = oSum.EstCodigo;
                if (oSumBus.SuministrosAddCompleto(oSum, oDEn, oSMe))
                {
                    // Si pude agregar el suministro y todas sus dependencias cambio estado del medidor asignado a Instalado
                    Medidores    oMed    = new Medidores();
                    MedidoresBus oMedBus = new MedidoresBus();
                    oMed           = oMedBus.MedidoresGetById(oSMe.MedNumero);
                    oMed.EstCodigo = "I";
                    oMedBus.MedidoresUpdate(oMed);
                }
                else
                {
                }
                //if (_vista.numMedidor==0)
                //{
                //    oSMe.MedNumero = _vista.numMedidor;
                //    oSMe.SumNumero = oSum.SumNumero;
                //    oSMe.SmeNumero = oSMeBus.SuministrosMedidoresAdd(oSMe);
                //    Medidores oMed = new Medidores();
                //    MedidoresBus oMedBus = new MedidoresBus();
                //    oMed = oMedBus.MedidoresGetById(oSMe.MedNumero);
                //    oMed.EstCodigo = "I";
                //    oMedBus.MedidoresUpdate(oMed);
                //}
            }
            else
            {
                // Si cambia medidor tengo que poner fecha baja al que tenia
                //asignado ese suminstro
                //y agregar un nuevo registro con el medidor actual
                // y la fecha de alta del dia (en suministros_medidores)
                //cambio el estado del medidor o de suministros_medidores?
                // Agrego un nuevo registro a domicilios entidades con el nuevo domicilio o modifico el ya existente??

                //Actualizo registro anterior de domicilios entidades si cambio el domicilio
                // para eso tengo que guardar el domicilio anterior y compararlo con el actual
                //_vista.
                if (_vista.numDomicilio != _vista.numDomicilioAnterior)
                {
                    oDEn            = oDEnBus.DomiciliosEntidadesGetById(_vista.numDomicilio);
                    oDEn.DenDefecto = "N";
                    if (_vista.numDomicilioAnterior != 0)
                    {
                        oDEnBus.DomiciliosEntidadesUpdate(oDEn);
                    }
                    // Creo un nuevo registro de domicilios entidades
                    oDEn.DenCodigoRegistro = oSum.SumNumero;
                    oDEn.DomCodigo         = _vista.numDomicilio;
                    oDEn.TdoCodigo         = "C";
                    oDEn.TabCodigo         = "SUM";
                    oDEn.DenDefecto        = "S";
                    oDEnBus.DomiciliosEntidadesAdd(oDEn);
                }

                if (_vista.numMedidor != _vista.numMedidorAnterior)
                {
                    // Cambio el medidor actual swi cambio el medidor,
                    // para eso tyengo que guardar el medidor anterior en la interfase para poder compararlo con el actual
                    oSMe.SmeFechaBaja = DateTime.Now;
                    oSMe.EstCodigo    = _vista.EstMedidorActual.SelectedValue.ToString();
                    oSMeBus.SuministrosMedidoresUpdate(oSMe);
                    // Cambio el estado del medidor asignado como Instalado
                    Medidores    oMed    = new Medidores();
                    MedidoresBus oMedBus = new MedidoresBus();
                    oMed           = oMedBus.MedidoresGetById(_vista.numMedidor);
                    oMed.EstCodigo = "I";
                    oMedBus.MedidoresUpdate(oMed);
                }
                rtdo = (oSumBus.SuministrosUpdate(oSum)) ? oSum.SumNumero : 0;
            }
        }
예제 #7
0
        public void Inicializar()
        {
            //Obtengo los tipos de contadores
            ServiciosBus oServicios = new ServiciosBus();

            oUtil.CargarCombo(_vista.Servicio, oServicios.ServiciosGetAllDT(), "SRV_CODIGO", "SRV_DESCRIPCION", "SELECCIONE..");

            //// Obtengo las Zonas
            GruposBus oZonas = new GruposBus();

            oUtil.CargarCombo(_vista.Zona, oZonas.GruposGetByFilter("2"), "GRP_CODIGO", "GRP_DESCRIPCION", "SELECCIONE..");

            //// Obtengo los estados de suministros
            EstadosBus oEstados = new EstadosBus();

            oUtil.CargarCombo(_vista.EstCodigo, oEstados.EstadosGetByFilterDT("SUMINISTROS", "EST_CODIGO"), "EST_CODIGO", "EST_DESCRIPCION", "SELECCIONE..");
            oUtil.CargarCombo(_vista.EstMedidorActual, oEstados.EstadosGetByFilterDT("MEDIDORES", "EST_CODIGO"), "EST_CODIGO", "EST_DESCRIPCION", "SELECCIONE..");
            if (_vista.Numero != 0)
            {
                //Edicion de un suministros
                Suministros    oSuministros    = new Suministros();
                SuministrosBus oSuministrosBus = new SuministrosBus();
                //Obtengo datos de la entidad principal que trabajo
                oSuministros = oSuministrosBus.SuministrosGetById(_vista.Numero);
                _vista.Servicio.SelectedValue = oSuministros.SrvCodigo;
                CargarTiposConexiones();
                _vista.TipoConexion.SelectedValue = oSuministros.TcsCodigo;
                CargarCategorias();
                _vista.Categoria.SelectedValue = oSuministros.ScaNumero;
                _vista.EstCodigo.SelectedValue = oSuministros.EstCodigo;
                _vista.OrdenRuta = oSuministros.SumOrdenRuta;
                _vista.EmpNumero = oSuministros.EmpNumero;
                CargarCliente(_vista.EmpNumero);

                Domicilios    oDomicilio    = new Domicilios();
                DomiciliosBus oDomicilioBus = new DomiciliosBus();
                oDomicilio = oDomicilioBus.DomiciliosGetByCodigoRegistroDefecto(oSuministros.SumNumero, "SUM");
                CargarDomicilioSum(oDomicilio.DomCodigo);
                _vista.FechaAlta          = oSuministros.SumFechaAlta;
                _vista.ConsumoEstimado    = oSuministros.SumConsumoEstimado;
                _vista.Voltaje            = oSuministros.SumVoltaje;
                _vista.Conexion           = oSuministros.SumConexion;
                _vista.PotenciaL1         = oSuministros.SumPotenciaL1;
                _vista.PotenciaL2         = oSuministros.SumPotenciaL2;
                _vista.PotenciaL3         = oSuministros.SumPotenciaL3;
                _vista.PermiteCorte       = oSuministros.SumPermiteCorte;
                _vista.Medido             = oSuministros.SumMedido;
                _vista.Zona.SelectedValue = oSuministros.SzoNumero;
                CargarRutas();
                _vista.Ruta.SelectedValue = oSuministros.SruNumero;
                _vista.PermiteFactura     = oSuministros.SumPermiteFactura;
                _vista.FechaCarga         = oSuministros.SumFechaCarga;
                _vista.Registrador        = oSuministros.SumRegistrador;
                SuministrosMedidores    oSMe    = new SuministrosMedidores();
                SuministrosMedidoresBus oSMeBus = new SuministrosMedidoresBus();
                oSMe = oSMeBus.SuministrosMedidoresGetBySuministro(oSuministros.SumNumero);
                _vista.numMedidor = oSMe.MedNumero;
                if (_vista.numMedidor != 0)
                {
                    CargarMedidor(_vista.numMedidor);
                }
                CargarGrilla(_vista.grdSumConceptos, "SCO", "", "");
                CargarGrilla(_vista.grdSumObservaciones, "OBS", "TOB.TOB_CODIGO", "1");
                _vista.numMedidorAnterior   = _vista.numMedidor;
                _vista.numDomicilioAnterior = _vista.numDomicilio;
            }
        }
예제 #8
0
        public bool SuministrosAddCompleto(Suministros oSum, DomiciliosEntidades oDomSum, SuministrosMedidores oMedSum)
        {
            try
            {
                Conexion         oConexion = new Conexion();
                OracleConnection cn        = oConexion.getConexion();
                cn.Open();
                // Clave Secuencia SUM_NUMERO
                ds = new DataSet();
                string query =

                    " DECLARE IDTEMP NUMBER(15,0); " +
                    " BEGIN " +
                    " SELECT(PKG_SECUENCIAS.FNC_PROX_SECUENCIA('SUM_NUMERO')) into IDTEMP from dual; " +
                    " insert into Suministros " +
                    "(SUM_NUMERO, SRV_CODIGO, TCS_CODIGO, " +
                    "SCA_NUMERO, SUM_ORDEN_RUTA, EMP_NUMERO, SUM_FECHA_ALTA, EST_CODIGO," +
                    "SUM_CONSUMO_ESTIMADO, SUM_VOLTAJE, SUM_CONEXION, SUM_POTENCIA_L1, " +
                    "SUM_POTENCIA_L2, SUM_POTENCIA_L3, SUM_REGISTRADOR, SUM_PERMITE_CORTE, " +
                    "SUM_MEDIDO, SRU_NUMERO, SZO_NUMERO, SUM_PERMITE_FACTURACION, SUM_FECHA_CARGA) " +
                    "values(IDTEMP,'" + oSum.SrvCodigo + "', '" + oSum.TcsCodigo + "'," + oSum.ScaNumero + "," +
                    oSum.SumOrdenRuta + "," + oSum.EmpNumero + ", to_date('" + oSum.SumFechaAlta.ToString("dd/MM/yyyy") + "','dd/mm/yyyy'),'" +
                    oSum.EstCodigo + "'," + oSum.SumConsumoEstimado + "," + oSum.SumVoltaje + ",'" +
                    oSum.SumConexion + "'," + oSum.SumPotenciaL1 + "," + oSum.SumPotenciaL2 + "," +
                    oSum.SumPotenciaL3 + "," + oSum.SumRegistrador + ",'" + oSum.SumPermiteCorte + "', '" +
                    oSum.SumMedido + "'," + oSum.SruNumero + "," + oSum.SzoNumero + ", '" +
                    oSum.SumPermiteFactura + "', to_date('" + DateTime.Now.ToString("dd/MM/yyyy") + "','dd/mm/yyyy')) RETURNING IDTEMP INTO :id;" +
                    " END;";
                cmd = new OracleCommand(query, cn);
                cmd.Parameters.Add(new OracleParameter
                {
                    ParameterName = ":id",
                    OracleDbType  = OracleDbType.Int64,
                    Direction     = ParameterDirection.Output
                });
                adapter = new OracleDataAdapter(cmd);
                cmd.ExecuteNonQuery();
                oSum.SumNumero = long.Parse(cmd.Parameters[":id"].Value.ToString());

                //Agrega registro a Domicilios entidades
                oDomSum.DenCodigoRegistro = oSum.SumNumero;
                query =
                    " DECLARE IDTEMP NUMBER(15,0); " +
                    " BEGIN " +
                    " SELECT(PKG_SECUENCIAS.FNC_PROX_SECUENCIA('DEN_NUMERO')) into IDTEMP from dual; " +
                    "INSERT INTO DOMICILIOS_ENTIDADES(DEN_NUMERO,TDO_CODIGO,DEN_CODIGO_REGISTRO, TAB_CODIGO, " +
                    "DOM_CODIGO, DEN_DEFECTO)  VALUES(IDTEMP,'" +
                    oDomSum.TdoCodigo + "'," + oDomSum.DenCodigoRegistro + ", '" + oDomSum.TabCodigo + "'," +
                    oDomSum.DomCodigo + ", '" + oDomSum.DenDefecto + "') RETURNING IDTEMP INTO :id;" +
                    " END;";

                cmd = new OracleCommand(query, cn);
                cmd.Parameters.Add(new OracleParameter
                {
                    ParameterName = ":id",
                    OracleDbType  = OracleDbType.Int64,
                    Direction     = ParameterDirection.Output
                });

                cmd.ExecuteNonQuery();
                oDomSum.DenNumero = long.Parse(cmd.Parameters[":id"].Value.ToString());

                if (oMedSum.MedNumero != 0)
                {
                    oMedSum.SumNumero = oSum.SumNumero;
                    //Agrego registro Suministro Medidores
                    query =
                        " DECLARE IDTEMP NUMBER(15,0); " +
                        " BEGIN " +
                        " SELECT(PKG_SECUENCIAS.FNC_PROX_SECUENCIA('SME_NUMERO')) into IDTEMP from dual; " +
                        " insert into Suministros_Medidores " +
                        "(SME_NUMERO, SME_FECHA_ALTA, SME_FECHA_BAJA, " +
                        "EST_CODIGO, MED_NUMERO, SUM_NUMERO) " +
                        "values(IDTEMP,'" + oMedSum.SmeFechaAlta.ToString("dd/MM/yyyy") + "',";
                    if (oMedSum.SmeFechaBaja == null)
                    {
                        query += "null, '";
                    }
                    else
                    {
                        query += "'" + oMedSum.SmeFechaBaja.Value.ToString("dd/MM/yyyy") + "','";
                    }
                    query += oMedSum.EstCodigo + "'," + oMedSum.MedNumero + "," + oMedSum.SumNumero + ") RETURNING IDTEMP INTO :id;" +
                             " END;";
                    cmd = new OracleCommand(query, cn);
                    cmd.Parameters.Add(new OracleParameter
                    {
                        ParameterName = ":id",
                        OracleDbType  = OracleDbType.Int64,
                        Direction     = ParameterDirection.Output
                    });
                    adapter = new OracleDataAdapter(cmd);
                    cmd.ExecuteNonQuery();
                    oMedSum.SmeNumero = long.Parse(cmd.Parameters[":id"].Value.ToString());
                }
                // Agregar el medidor del suministro si es necesario (numero de medidor != 0)
                cn.Close();
                return(true);
            }
            catch (Exception ex)
            {
                return(false);

                throw ex;
            }
        }
예제 #9
0
        public bool SuministrosAddCompleto(Suministros oSuministros, DomiciliosEntidades oSDE, SuministrosMedidores oSMe)
        {
            SuministrosImpl oSuministrosImpl = new SuministrosImpl();

            return(oSuministrosImpl.SuministrosAddCompleto(oSuministros, oSDE, oSMe));
        }
예제 #10
0
        public long SuministrosMedidoresAdd(SuministrosMedidores oSuministrosMedidores)
        {
            SuministrosMedidoresImpl oSuministrosMedidoresImpl = new SuministrosMedidoresImpl();

            return(oSuministrosMedidoresImpl.SuministrosMedidoresAdd(oSuministrosMedidores));
        }
예제 #11
0
        public bool SuministrosMedidoresUpdate(SuministrosMedidores oSuministrosMedidores)
        {
            SuministrosMedidoresImpl oSuministrosMedidoresImpl = new SuministrosMedidoresImpl();

            return(oSuministrosMedidoresImpl.SuministrosMedidoresUpdate(oSuministrosMedidores));
        }