public bool getValorTerreno(clsActivoFijo auxi)
        {
            oTerreno.idCodActivoFijo = oActivoFijo.Codigo;

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

            oTerreno.observacion = rtbObservacion.Text;
            oTerreno.dimenAncho = Convert.ToDouble(txtDimAncho.Text);
            oTerreno.dimenLargo = Convert.ToDouble(txtDimLargo.Text);
            oTerreno.CodigoCatrastal = Convert.ToString(txtCodigoCatastral.Text);
            oTerreno.fechaLegalizacion = Convert.ToDateTime(dtFechaLegalizacion.EditValue);
            oTerreno.direccion = Convert.ToString(txtUbicacion.Text);
            oTerreno.observacion = Convert.ToString(rtbObservacion.Text);

            auxi.Fecha_Adquisicion = Convert.ToDateTime(dtFechaAdquisicion.EditValue);
            auxi.Cantidad = 1;
            auxi.proveedor = datoActivosFijos.getIdSegunDescripcionComprasProveedor(cbxProveedor.Text);
            auxi.ano_vidautil = 0;
            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);

            auxiTerreno = oTerreno;
            return true;
        }
        public Boolean guardarTerreno(clsTerreno Terreno, int id)
        {
            try
            {
                Terreno.idCodActivoFijo = clas.Codigo ;//Se copiara el mismo codigo del AxtivoFijo para ingresar el terreno
                using (ActivoFijoEntities ent = new ActivoFijoEntities())
                {
                    Terreno Terren = new Terreno()
                    {
                        IdActivoFijo = Terreno.idCodActivoFijo,
                        direccion = Terreno.direccion,
                        observacion= Terreno.observacion,
                        codigoCatatral = Terreno.CodigoCatrastal,
                        DimensionAncho =Convert.ToDecimal( Terreno.dimenAncho),
                        DimensionLargo =Convert.ToDecimal( Terreno.dimenLargo),
                        FechaLegalizacion =Convert.ToDateTime ( Terreno .fechaLegalizacion),
                    };

                    ent.AddToTerreno(Terren);
                    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 clsTerreno consultaTerreno(int id)
        {
            try
             {

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

                     clsTerreno Terren = new clsTerreno();
                     Terren.idCodActivoFijo = Convert.ToInt32(q.IdActivoFijo);
                     Terren.direccion=Convert.ToString( q.direccion);
                     Terren.observacion =Convert.ToString (q.observacion);
                     Terren.CodigoCatrastal =Convert.ToString(q.codigoCatatral);
                     Terren.dimenAncho=Convert.ToDouble(q.DimensionAncho);
                     Terren.dimenLargo=Convert.ToDouble(q.DimensionLargo );
                     Terren.fechaLegalizacion = Convert.ToDateTime(q.FechaLegalizacion);

                 return Terren;
             }
             catch (Exception)
             {
                 return null;
             }
        }
        public Boolean modificarTerreno(clsTerreno Terreno)
        {
            try
            {
                using (ActivoFijoEntities ent = new ActivoFijoEntities())
                {
                    //Se hace un primary key codigo
                    var x = (from q in ent.Terreno 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.direccion = Terreno.direccion;
                        x.observacion= Terreno.observacion;
                        x.codigoCatatral = Terreno.CodigoCatrastal;
                        x.DimensionAncho =Convert.ToDecimal( Terreno.dimenAncho);
                        x.DimensionLargo =Convert.ToDecimal( Terreno.dimenLargo);
                        x.FechaLegalizacion = Convert.ToDateTime(Terreno.fechaLegalizacion);

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

                return false;
            }
        }
        public void setTerreno(clsActivoFijo auxi)
        {
            oTerreno = datoActivosFijos.consultaTerreno(auxi.Codigo);//Consulta de sincronizacion

            rtbObservacion.Text = oTerreno.observacion;
            txtDimAncho.Text = Convert.ToString(oTerreno.dimenAncho);
            txtDimLargo.Text = Convert.ToString(oTerreno.dimenLargo);
            txtCodigoCatastral.Text = Convert.ToString(oTerreno.CodigoCatrastal);
            dtFechaLegalizacion.EditValue = Convert.ToDateTime(oTerreno.fechaLegalizacion);
            txtUbicacion.Text = Convert.ToString(oTerreno.direccion);
            rtbObservacion.Text = Convert.ToString(oTerreno.observacion);

            dtFechaAdquisicion.EditValue = Convert.ToDateTime(auxi.Fecha_Adquisicion);
            cbxProveedor.Text = datoActivosFijos.getDescripcionSegunIdComprasProveedor(auxi.proveedor);
            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);
        }