public bool getValorEdificios(clsActivoFijo auxi)
        {
            oEdificio.idCodActivoFijo = oActivoFijo.Codigo;

            if ((cbxProveedor.EditValue == null || dtFechaConstruccion.EditValue == null) || (dtFechaAdquisicion.EditValue == null) ||
               (txtDimAncho.Text == "") || (txtDimLargo.Text == "") || (txtNoPisos.Text == "") || (txtAñosDepreciados.Text == "") || (txtAñosVidaUtil.SelectedText == "") || (txtAvaluo.Text == "") || (txtV_Residual.Text == "") || (txtV_Adquisicion.Text == "") || (txtV_Residual.Text == "" || (txtCodigoCatastral.Text =="") || txtUbicacion.Text==""|| rtbObservacion.Text =="" ))
            {
                return false; // se retorna false para que cuando se haga la oregunta de que si hay espacios vacios
                //bote un error
            }

            oEdificio.fechaConstruccion = Convert.ToDateTime(dtFechaConstruccion.EditValue);
            oEdificio.DimenAncho = Convert.ToDouble(txtDimAncho);
            oEdificio.DimenLargo = Convert.ToDouble(txtDimLargo);
            oEdificio.NumPisos = Convert.ToInt32(txtNoPisos.Text);
            oEdificio.AniosDepreciados = Convert.ToInt32(txtAñosDepreciados);
            oEdificio.codCatrastal = Convert.ToString(txtCodigoCatastral.Text);
            oEdificio.ubicacion = Convert.ToString(txtUbicacion.Text);
            oEdificio.observacion = Convert.ToString(rtbObservacion.Text);

            auxi.Fecha_Adquisicion = Convert.ToDateTime(dtFechaAdquisicion.EditValue);
            auxi.proveedor = datoActivosFijos.getIdSegunDescripcionComprasProveedor(cbxProveedor.Text);
            auxi.ano_vidautil =Convert.ToInt32( txtAñosVidaUtil.Text);
            auxi.valor_nominal = Convert.ToDouble(txtAvaluo.Text);
            auxi.ValorAdquisicion = Convert.ToDouble(txtV_Adquisicion.Text);
            auxi.valor_residual = Convert.ToDouble(txtV_Residual.Text);
            auxi.valor_actualserie = Convert.ToDouble(txtV_Adquisicion.Text);
            auxi.Cantidad = 1;

            auxiEdificio = oEdificio;
            return true;
        }
        public Boolean modificarEdificios(clsEdificio Edificios)
        {
            try
            {
                using (ActivoFijoEntities ent = new ActivoFijoEntities())
                {
                    //Se hace un primary key codigo
                    var x = (from q in ent.Edifico where q.IdActivoFijo == clas.Codigo select q).First();
                    //First obtiene un registro que coincida con el codigo y luego mas a bajo
                    //modifico dicho registro y guardo eso lo modifica en la base
                        x.IdActivoFijo = clas.Codigo;
                        x.FechaConstruccion = Edificios.fechaConstruccion;
                        x.CodigoCatastral = Edificios.codCatrastal;
                        x.NumeroPisos = Edificios.NumPisos;
                        x.AniosDepreciados = Edificios.AniosDepreciados;
                        x.Ubicacion = Edificios.ubicacion;
                        x.DimensionAncho = Convert.ToDecimal(Edificios.DimenAncho);
                        x.DimensionLargo = Convert.ToDecimal(Edificios.DimenLargo);
                        x.observacion = Edificios.observacion;

                    ent.SaveChanges();
                }
                return true;
            }
            catch (Exception)
            {

                return false;
            }
        }
        public Boolean guardarEdificios(clsEdificio Edificios, int id)
        {
            try
            {
                Edificios.idCodActivoFijo = id;//Se copiara el mismo codigo del AxtivoFijo para ingresar el Edificios
                using (ActivoFijoEntities ent = new ActivoFijoEntities())
                {
                    Edifico Edifi = new Edifico()
                    {
                        IdActivoFijo = Edificios.idCodActivoFijo,
                        FechaConstruccion = Edificios.fechaConstruccion,
                        CodigoCatastral = Edificios.codCatrastal,
                        NumeroPisos = Edificios.NumPisos,
                        AniosDepreciados = Edificios.AniosDepreciados,
                        Ubicacion = Edificios.ubicacion,
                        DimensionAncho = Convert.ToDecimal(Edificios.DimenAncho),
                        DimensionLargo = Convert.ToDecimal(Edificios.DimenLargo),
                        observacion = Edificios.observacion,
                    };

                    ent.AddToEdifico(Edifi);
                    ent.SaveChanges();
                }

                return true;
            }
            catch (Exception)
            {

                return false;
            }
        }
        public Boolean guardar(clsActivoFijo activo, clsVehiculos clsVehic,clsEdificio clsEdi,clsTerreno clsTerreno,clsEquipoMaquinariaMebles clsMaquiEqui,clsArticulo_SuministroOfic clasArti,clsEquipoMaquinariaMebles clsMuebles)
        {
            int bandera = 0;
            //auxi = TrasladoActivo;
            try
            {
                int id = getSiguiente();
                activo.Codigo = id;
                using (ActivoFijoEntities ent = new ActivoFijoEntities())
                {

                    ActivoFijo act = new ActivoFijo()
                    {
                        IdActivoFijo = activo.Codigo,
                        cantidad = activo.Cantidad,
                        IdEmpresa = activo.Empresa,
                        //IdDepartamento = activo.departamento,
                        //IdResponsable = activo.responsable,
                        IdUsuario = activo.usuario,
                        //IdArticuloBodega = activo.ArtBodega,
                        IdTipo = activo.tipo,
                        IdGrupo = activo.grupo,
                        IdSubgrupo = activo.subgrupo,
                        //IdArticulo = activo.articulo,
                        IdProveedor = activo.proveedor,
                        EstadoProceso = activo._EstadoProceso,
                        descripcion = activo.descripcion,
                        ValorAdquisicion = Convert.ToDecimal(activo.ValorAdquisicion),
                        valor_nomial = Convert.ToDecimal(activo.valor_nominal),
                        valor_residual = Convert.ToDecimal(activo.valor_residual),
                        valor_actualserie = Convert.ToDecimal(activo.valor_actualserie),
                       // IdCodigoBarra = activo.codigo_barra,
                        fecha_Adquisicion = activo.Fecha_Adquisicion,
                        ano_vidaUtil = activo.ano_vidautil,
                        IdEstado = activo.estado,
                        fecha_registro = activo.fecha_registro,
                    };
                    bandera = activo.Codigo;

                    ent.AddToActivoFijo(act);
                    ent.SaveChanges();

                    funcionLLamada(getDescripcionSegunIdInventarioGrupo(activo.grupo), activo, clsVehic, bandera,clsMaquiEqui, clsMuebles,clsEdi, clsTerreno,clasArti);
                }
                return true;
            }
            catch (Exception)
            {

                return false;
            }
        }
        public void funcionLLamada(string Descripcion,clsActivoFijo activo,clsVehiculos vehiculo,int id,clsEquipoMaquinariaMebles EquipMaqui, clsEquipoMaquinariaMebles Muebles,clsEdificio Edificio, clsTerreno Terreno,clsArticulo_SuministroOfic Articulo )
        {
            bool auxi = true;
            if (Descripcion == "Vehiculos")
            {
                guardarVehiculos(vehiculo, id);
                //return "Vehiculos";
            }
            else
            {
                if (Descripcion == "MueblesyEnseres")
                {
                   guardarEquiposMaquinariasMuebles(Muebles,id);
                    //return "MueblesyEnseres";
                }
                else
                {
                    if (Descripcion == "Equipos")
                    {
                        guardarEquiposMaquinariasMuebles(EquipMaqui,id);
                        //return "Equipos";
                    }
                    else
                    {
                        if (Descripcion == "Maquinarias")
                        {
                            guardarEquiposMaquinariasMuebles(EquipMaqui, id);
                            //return "Maquinarias";
                        }
                        else
                        {
                            if (Descripcion == "Edificio")
                            {
                                guardarEdificios(Edificio,id);
                                //return "Edificio";
                            }
                            else
                            {
                                if (Descripcion == "Terreno")
                                {
                                    guardarTerreno(Terreno,id);
                                    //return "Terreno";
                                }
                                else
                                {
                                    if (Descripcion == "InsumosdeOficina" | Descripcion == "Papeleria")
                                    {
                                        guardarArticulos_Suministros(Articulo,id);
                                        //if (frm.cbxIdentDescripcion.Text == "Insumos de Oficina"){ return "InsumosdeOficina"; }else{
                                        //    if (frm.cbxIdentDescripcion.Text == "Papelería") { return "Papeleria"; }}

                                    }

                                }
                            }
                        }
                    }
                }
            }
        }
        public clsEdificio consultaEdificios(int id)
        {
            try
             {

                 ActivoFijoEntities ent = new ActivoFijoEntities();
                 var q = (from w in ent.Edifico where w.IdActivoFijo==id  select w).First();

                     clsEdificio Edificios = new clsEdificio();
                        Edificios.idCodActivoFijo =Convert.ToInt32( q.IdActivoFijo);
                        Edificios.fechaConstruccion = Convert.ToDateTime( q.FechaConstruccion );
                        Edificios.codCatrastal = Convert.ToString( q.CodigoCatastral );
                        Edificios.NumPisos =Convert.ToInt32( q.NumeroPisos );
                        Edificios.AniosDepreciados =Convert .ToInt32 ( q.AniosDepreciados );
                        Edificios.ubicacion =Convert.ToString ( q.Ubicacion );
                        Edificios.DimenAncho = Convert.ToDouble(q.DimensionAncho);
                        Edificios.DimenLargo = Convert.ToDouble(q.DimensionLargo );
                        Edificios.observacion = Convert.ToString ( q.observacion);

                 return Edificios;
             }
             catch (Exception)
             {
                 return null;
             }
        }
        public void setEdificios(clsActivoFijo auxi)
        {
            oEdificio = datoActivosFijos.consultaEdificios(auxi.Codigo);//Consulta de sincronizacion

            dtFechaConstruccion.EditValue = Convert.ToDateTime(oEdificio.fechaConstruccion);
            txtDimAncho.Text =Convert.ToString( oEdificio.DimenAncho);
            txtDimLargo.Text = Convert.ToString(oEdificio.DimenLargo);
            txtNoPisos.Text = Convert.ToString(oEdificio.NumPisos);
            txtAñosDepreciados.Text = Convert.ToString(oEdificio.AniosDepreciados);
            txtCodigoCatastral.Text = Convert.ToString(oEdificio.codCatrastal);
            txtUbicacion.Text = Convert.ToString(oEdificio.ubicacion);
            rtbObservacion.Text = Convert.ToString(oEdificio.observacion);

            dtFechaAdquisicion.EditValue = Convert.ToDateTime(auxi.Fecha_Adquisicion);
            cbxProveedor.Text = datoActivosFijos.getDescripcionSegunIdComprasProveedor(auxi.proveedor);
            txtAñosVidaUtil.Text = Convert.ToString(auxi.ano_vidautil);
            txtAvaluo.Text = Convert.ToString(auxi.valor_nominal);
            txtV_Adquisicion.Text = Convert.ToString(auxi.ValorAdquisicion);
            txtV_Residual.Text = Convert.ToString(auxi.valor_residual);
            txtV_Adquisicion.Text = Convert.ToString(auxi.valor_actualserie);
        }