/// <summary>
 /// Método desusado para agregar un nuevo objeto al EntitySet TomaFisicaCab. Considere la posibilidad de usar el método .Add de la propiedad ObjectSet&lt;T&gt; asociada.
 /// </summary>
 public void AddToTomaFisicaCab(TomaFisicaCab tomaFisicaCab)
 {
     base.AddObject("TomaFisicaCab", tomaFisicaCab);
 }
 /// <summary>
 /// Crear un nuevo objeto TomaFisicaCab.
 /// </summary>
 /// <param name="nroTomaFisica">Valor inicial de la propiedad NroTomaFisica.</param>
 public static TomaFisicaCab CreateTomaFisicaCab(global::System.Int32 nroTomaFisica)
 {
     TomaFisicaCab tomaFisicaCab = new TomaFisicaCab();
     tomaFisicaCab.NroTomaFisica = nroTomaFisica;
     return tomaFisicaCab;
 }
        public bool guardarTomaFisica(ref clsTomaFisicaCAB dato)
        {
            try
            {
                INVENTARIOEntities enti = new INVENTARIOEntities();
                int numero = 0;
                try
                {
                    numero = (from q in enti.TomaFisicaCab where q.IdEmpresa == 1 select q.NroTomaFisica).Max() + 1;
                }
                catch (Exception)
                {
                    numero = 1;
                }
                dato.NroTomaFisica = numero;
                using (INVENTARIOEntities ent = new INVENTARIOEntities())
                {
                    TomaFisicaCab cab = new TomaFisicaCab()
                    {
                        NroTomaFisica = Convert.ToInt32(dato.NroTomaFisica),
                        IdEmpresa = 1,
                        IdMotivo = dato.IdMotivo,
                        FechaTomaFisica = dato.FechaTomaFisica,
                        FechaModificacion = dato.FechaModificacion,
                        Usuario = dato.Usuario,
                        IdTipoArticulo = dato.IdTipoArticulo,
                        IdBodega = dato.IdBodega,
                        Auditor = dato.Auditor,
                        Observacion = dato.Observacion,
                        IdEstado = dato.IdEstado

                    };
                    ent.AddToTomaFisicaCab(cab);
                    ent.SaveChanges();
                    int linea = 1;

                    foreach (var item in dato.detalle)
                    {
                        TomaFisicaDet det = new TomaFisicaDet()
                        {
                            IdEmpresa = 1,
                            linea = linea,
                            NroTomaFisica = dato.NroTomaFisica,
                            IdArticulo = item.IdArticulo,
                            ExistenciaSistema = item.ExistenciaSistema,
                            ExistenciaFisica = item.ExistenciaFisica,
                            CantidadAjustada = item.CantidadAjustada,
                            FechaAjuste = item.FechaAjuste
                        };
                        linea = linea + 1;
                        ent.AddToTomaFisicaDet(det);
                        ent.SaveChanges();

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