Beispiel #1
0
 public void ActualizarConsecutivo(int numero, string tipoDoc, string sucursal_act, string empresaDB)
 {
     using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
     if (db.ParEmp.Select(p => p.PFactAlm).FirstOrDefault())
     {
         Almacen obj = db.Almacen.FirstOrDefault(a => a.CoAlma == sucursal_act);
         ActualizarNumeroConsecutivoTabla(obj, numero, tipoDoc, empresaDB);
     }
     else
     {
         ParEmp obj = db.ParEmp.FirstOrDefault();
         ActualizarNumeroConsecutivoTabla(obj, numero, tipoDoc, empresaDB);
     }
 }
Beispiel #2
0
        public int BuscarConsecutivo(string tipoDoc, string sucursal_act, string empresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
            int numero = 0;

            #region Verificar si maneja sucursales
            if (db.ParEmp.Select(p => p.PFactAlm).FirstOrDefault())
            {
                Almacen obj = db.Almacen.FirstOrDefault(a => a.CoAlma == sucursal_act);
                numero = BuscarCampoProximoNumeroTabla(obj, tipoDoc);
            }
            else
            {
                ParEmp obj = db.ParEmp.FirstOrDefault();
                numero = BuscarCampoProximoNumeroTabla(obj, tipoDoc);
            }
            #endregion

            #region Buscar consecutivo en tablas
            while (true)
            {
                #region Busqueda movimientos en documentos
                if (tipoDoc != "DEVO" && tipoDoc != "AJUS" && tipoDoc != "COBR" && tipoDoc != "MOVC" && tipoDoc != "MOVB" && tipoDoc != "NREC")
                {
                    DocumCc documcc = DocumCCRepositorio.GetDocumento(numero, tipoDoc, empresaDB);
                    if (documcc != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en ajustes de inventario
                if (tipoDoc == "AJUS")
                {
                    Ajuste ajuste = db.Ajuste.FirstOrDefault(a => a.AjueNum == numero);
                    if (ajuste != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en devoluciones de clientes
                if (tipoDoc == "DEVO")
                {
                    DevCli devCli = db.DevCli.FirstOrDefault(dc => dc.FactNum == numero);
                    if (devCli != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en cobros
                if (tipoDoc == "COBR")
                {
                    //EncabCobro cobro = cobrosRepositorio.Find(numero, empresaDB);
                    Cobros cobro = db.Cobros.FirstOrDefault(c => c.CobNum == numero);
                    if (cobro != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en caja
                if (tipoDoc == "MOVC")
                {
                    MovCaj movcaja = MovCRepositorio.Find(numero, empresaDB);
                    if (movcaja != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en bancos
                if (tipoDoc == "MOVB")
                {
                    MovBan movbanco = MovBRepositorio.Find(numero, empresaDB);
                    if (movbanco != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda notas de recepcion
                if (tipoDoc == "NREC")
                {
                    EncabNotRec notRec = NotRRepositorio.Find(numero, empresaDB);
                    if (notRec != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion
            }
            #endregion

            return(numero);
        }