private bool RegistrarEntradaBD(ref BD.Sap bdSap, BE.Empresa beEmpresa)
        {
            bool rpta = false;

            try
            {
                var beTipoEntrada = new BD.TipoDocumento().Obtener(ENTRADA);

                var bdEntrada = new BD.EntradaAlmacen();

                foreach (var entradaJson in this.lstWsEntradas)
                {
                    SE.EntradaAlmacen seEntrada = TD.JsonToSe.EntradaAlmacen(entradaJson);

                    seEntrada.Serie = bdSap.ObtenerSerieSalidaAlmacen(this.serie);
                    for (int i = 0; i < seEntrada.Detalle.Count; i++)
                    {
                        seEntrada.Detalle[i].CodAlmacen = bdSap.ObtenerCodigoAlmacen(seEntrada.Detalle[i].Codigo);
                    }

                    var beEntrada = TD.SeToBe.EntradaAlmacen(seEntrada);
                    beEntrada.Empresa       = beEmpresa;
                    beEntrada.TipoDocumento = beTipoEntrada;

                    var flag = bdEntrada.Insertar(ref beEntrada);
                }

                return(rpta);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 2
0
        public static SE.EntradaAlmacen EntradaAlmacen(WE.EntradaAlmacen weEntradaAlmacen)
        {
            SE.EntradaAlmacen seEntradaAlmacen = null;
            try
            {
                if (weEntradaAlmacen != null)
                {
                    seEntradaAlmacen = new SE.EntradaAlmacen();

                    seEntradaAlmacen.Serie         = 0;
                    seEntradaAlmacen.Usuario       = weEntradaAlmacen.usuario;
                    seEntradaAlmacen.Comentario    = weEntradaAlmacen.comentario;
                    seEntradaAlmacen.FechaContable = ParseStringToDatetime(weEntradaAlmacen.FechaContable);
                    seEntradaAlmacen.FechaCreacion = ParseStringToDatetime(weEntradaAlmacen.FechaCreacion);
                    seEntradaAlmacen.DocEntry      = 0;
                    seEntradaAlmacen.refSap        = int.Parse(weEntradaAlmacen.docEntryOrden);

                    seEntradaAlmacen.Detalle = new List <SE.EntradaAlmacenDetalle>();

                    int nroLinea = 1;
                    foreach (var jsDetalle in weEntradaAlmacen.detalle)
                    {
                        var beDetalle = new SE.EntradaAlmacenDetalle();

                        beDetalle.NroLinea          = nroLinea;
                        beDetalle.Codigo            = jsDetalle.codArticulo;
                        beDetalle.Descripcion       = jsDetalle.descripcion;
                        beDetalle.Cantidad          = ParseStringToDouble(jsDetalle.cantidad);
                        beDetalle.Precio            = 0.0;
                        beDetalle.CodAlmacen        = jsDetalle.codAlmacen;
                        beDetalle.CodImpuesto       = jsDetalle.codImpuesto;
                        beDetalle.CodMoneda         = "";
                        beDetalle.CodCuentaContable = "";
                        beDetalle.CodProyecto       = "";
                        beDetalle.CodCentroCosto    = jsDetalle.codCentroCosto;
                        beDetalle.refLineaSap       = int.Parse(jsDetalle.lineNumSap);

                        seEntradaAlmacen.Detalle.Add(beDetalle);

                        nroLinea++;
                    }
                }

                return(seEntradaAlmacen);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 3
0
        public static BE.EntradaAlmacen EntradaAlmacen(SE.EntradaAlmacen sapEntradaAlmacen)
        {
            BE.EntradaAlmacen bdEntradaAlmacen = null;
            try
            {
                if (sapEntradaAlmacen != null)
                {
                    bdEntradaAlmacen = new BE.EntradaAlmacen();

                    bdEntradaAlmacen.Serie         = sapEntradaAlmacen.Serie;
                    bdEntradaAlmacen.Usuario       = sapEntradaAlmacen.Usuario;
                    bdEntradaAlmacen.Comentario    = sapEntradaAlmacen.Comentario;
                    bdEntradaAlmacen.FechaContable = sapEntradaAlmacen.FechaContable;
                    bdEntradaAlmacen.FechaCreacion = sapEntradaAlmacen.FechaCreacion;
                    bdEntradaAlmacen.Total         = 0.0;
                    bdEntradaAlmacen.CodSap        = sapEntradaAlmacen.DocEntry;
                    bdEntradaAlmacen.refSap        = sapEntradaAlmacen.refSap;

                    bdEntradaAlmacen.Detalle = new List <BE.EntradaAlmacenDetalle>();

                    foreach (var sapDetalle in sapEntradaAlmacen.Detalle)
                    {
                        var bdDetalle = new BE.EntradaAlmacenDetalle();

                        bdDetalle.NroLinea          = sapDetalle.NroLinea;
                        bdDetalle.Codigo            = sapDetalle.Codigo;
                        bdDetalle.Descripcion       = sapDetalle.Descripcion;
                        bdDetalle.Cantidad          = sapDetalle.Cantidad;
                        bdDetalle.CodAlmacen        = sapDetalle.CodAlmacen;
                        bdDetalle.CodImpuesto       = sapDetalle.CodImpuesto;
                        bdDetalle.CodMoneda         = sapDetalle.CodMoneda;
                        bdDetalle.CodCuentaContable = sapDetalle.CodCuentaContable;
                        bdDetalle.CodProyecto       = sapDetalle.CodProyecto;
                        bdDetalle.CodCentroCosto    = sapDetalle.CodCentroCosto;
                        bdDetalle.refLineaSap       = sapDetalle.refLineaSap;

                        bdEntradaAlmacen.Detalle.Add(bdDetalle);
                    }
                }

                return(bdEntradaAlmacen);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 4
0
        public static SE.EntradaAlmacen EntradaAlmacen(BE.EntradaAlmacen beEntradaAlmacen)
        {
            SE.EntradaAlmacen seEntradaAlmacen = null;
            try
            {
                if (beEntradaAlmacen != null)
                {
                    seEntradaAlmacen = new SE.EntradaAlmacen();

                    seEntradaAlmacen.Serie         = beEntradaAlmacen.Serie;
                    seEntradaAlmacen.Usuario       = beEntradaAlmacen.Usuario;
                    seEntradaAlmacen.Comentario    = beEntradaAlmacen.Comentario;
                    seEntradaAlmacen.FechaContable = beEntradaAlmacen.FechaContable;
                    seEntradaAlmacen.FechaCreacion = beEntradaAlmacen.FechaCreacion;
                    seEntradaAlmacen.DocEntry      = beEntradaAlmacen.CodSap;
                    seEntradaAlmacen.refSap        = beEntradaAlmacen.refSap;

                    seEntradaAlmacen.Detalle = new List <SE.EntradaAlmacenDetalle>();

                    foreach (var beDetalle in beEntradaAlmacen.Detalle)
                    {
                        var seDetalle = new SE.EntradaAlmacenDetalle();

                        seDetalle.NroLinea          = beDetalle.NroLinea;
                        seDetalle.Codigo            = beDetalle.Codigo;
                        seDetalle.Descripcion       = beDetalle.Descripcion;
                        seDetalle.Cantidad          = beDetalle.Cantidad;
                        seDetalle.CodAlmacen        = beDetalle.CodAlmacen;
                        seDetalle.CodImpuesto       = beDetalle.CodImpuesto;
                        seDetalle.CodMoneda         = beDetalle.CodMoneda;
                        seDetalle.CodCuentaContable = beDetalle.CodCuentaContable;
                        seDetalle.CodProyecto       = beDetalle.CodProyecto;
                        seDetalle.CodCentroCosto    = beDetalle.CodCentroCosto;
                        seDetalle.refLineaSap       = beDetalle.refLineaSap;

                        seEntradaAlmacen.Detalle.Add(seDetalle);
                    }
                }

                return(seEntradaAlmacen);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public string Enviar(BE.EntradaAlmacen beEntradaAlmacen, out int errCode, out string errMessage)
        {
            string docEntry = "";

            int    errCod = 0;
            string errMsg = "";

            try
            {
                /*
                 * Documents oOrdenCompra = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oPurchaseOrders);
                 *
                 * int docNumOC = beEntradaAlmacen.refSap;
                 * if(oOrdenCompra.GetByKey(docNumOC))
                 * {
                 *
                 *  Documents oEntradaAlmacenPorCompra = oCompany.GetBusinessObject(BoObjectTypes.oPurchaseDeliveryNotes);
                 *
                 *  oEntradaAlmacenPorCompra.CardCode = oOrdenCompra.CardCode;
                 *  oEntradaAlmacenPorCompra.CardName = oOrdenCompra.CardName;
                 *
                 *  oEntradaAlmacenPorCompra.Series = beEntradaAlmacen.Serie;
                 *
                 *  oEntradaAlmacenPorCompra.DocDate = beEntradaAlmacen.FechaContable;
                 *  oEntradaAlmacenPorCompra.TaxDate = beEntradaAlmacen.FechaContable;
                 *  oEntradaAlmacenPorCompra.DocDueDate = beEntradaAlmacen.FechaCreacion;
                 *
                 *  oEntradaAlmacenPorCompra.Comments = beEntradaAlmacen.Comentario;
                 *
                 *  oEntradaAlmacenPorCompra.PaymentGroupCode = -1;
                 *
                 *  oEntradaAlmacenPorCompra.UserFields.Fields.Item("U_EXX_NOMBENEFE").Value = beEntradaAlmacen.Usuario;
                 *
                 *  int linea = 0;
                 *  foreach (var beEntradaAlmacenDetalle in beEntradaAlmacen.Detalle)
                 *  {
                 *      if (linea > 0)
                 *          oEntradaAlmacenPorCompra.Lines.Add();
                 *
                 *      oEntradaAlmacenPorCompra.Lines.ItemCode = beEntradaAlmacenDetalle.Codigo;
                 *      oEntradaAlmacenPorCompra.Lines.ItemDescription = beEntradaAlmacenDetalle.Descripcion;
                 *      oEntradaAlmacenPorCompra.Lines.Quantity = beEntradaAlmacenDetalle.Cantidad;
                 *
                 *      oEntradaAlmacenPorCompra.Lines.BaseType = int.Parse(oOrdenCompra.DocObjectCodeEx); // If I comment out this and the next two lines the document will add
                 *      oEntradaAlmacenPorCompra.Lines.BaseEntry = oOrdenCompra.DocEntry;
                 *      oEntradaAlmacenPorCompra.Lines.BaseLine = beEntradaAlmacenDetalle.refLineaSap;
                 *
                 *      //oEntradaAlmacen.Lines.Price = beEntradaAlmacenDetalle.Precio;
                 *      //oEntradaAlmacen.Lines.UnitPrice = beEntradaAlmacenDetalle.Precio;
                 *
                 *      //oEntradaAlmacen.Lines.TaxCode = beEntradaAlmacenDetalle.CodImpuesto;
                 *      //oEntradaAlmacen.Lines.Currency = beEntradaAlmacenDetalle.CodMoneda;
                 *
                 *      oEntradaAlmacenPorCompra.Lines.WarehouseCode = beEntradaAlmacenDetalle.CodAlmacen;
                 *
                 *      //oEntradaAlmacen.Lines.AccountCode = beEntradaAlmacenDetalle.CodCuentaContable;
                 *
                 *      oEntradaAlmacenPorCompra.Lines.CostingCode = beEntradaAlmacenDetalle.CodCentroCosto;
                 *      //oEntradaAlmacen.Lines.ProjectCode = beEntradaAlmacenDetalle.CodProyecto;
                 *
                 *      linea++;
                 *  }
                 *
                 *
                 *  int retCode = oEntradaAlmacenPorCompra.Add();
                 *  if (retCode == 0)
                 *      docEntry = oCompany.GetNewObjectKey();
                 *  else
                 *      oCompany.GetLastError(out errCod, out errMsg);
                 *
                 * }
                 * else
                 * {
                 *  errCod = -1;
                 *  errMsg = "No existe la orden de compra";
                 * }
                 */

                errCode    = errCod;
                errMessage = errMsg;

                return(docEntry);
                //return new Random().Next(1000, 9999).ToString();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }