Obtener archivo pdf de un documento PEDIDO creado

Buenas tardes.
Pido su apoyo nuevamente para lo siguiente, tengo la siguiente funcion en c#, que genera PEDIDOS para proveedores, el código funciona correctamente, pero ahora necesito obtener el PDF del documento generado, me podrian apoyar para darme alguna idea,

Muchas gracias de antemano.

public RespuestaSAP crearPedidoMP(pedidoSAP datoPedido)
        {
            RespuestaSAP respuesta = new RespuestaSAP();
            string idInterno;
            int error;
            try
            {
                SAPbobsCOM.Documents solicitudCOMPRA = company.GetBusinessObject(BoObjectTypes.oPurchaseOrders);
                solicitudCOMPRA.DocDate = DateTime.Now;
                solicitudCOMPRA.DocDueDate = datoPedido.FechaEntrega;
                solicitudCOMPRA.TaxDate = DateTime.Now;
                solicitudCOMPRA.CardCode = datoPedido.CardCode;
                solicitudCOMPRA.Comments = datoPedido.Comentarios;
                solicitudCOMPRA.DocType = SAPbobsCOM.BoDocumentTypes.dDocument_Items;
                int i = 0;
                foreach( itemDetallePedidoSAP fila in datoPedido.DetallePedido)
                {
                    if( i != 0)
                    {
                        solicitudCOMPRA.Lines.Add();
                    }
                    solicitudCOMPRA.Lines.ItemCode = fila.ItemCode;
                    solicitudCOMPRA.Lines.Quantity = fila.Cantidad;
                    //solicitudCOMPRA.Lines.UoMEntry = fila.UMedida;
                    //solicitudCOMPRA.Lines.UoMCode = "CJ";
                    solicitudCOMPRA.Lines.COGSCostingCode = fila.COGSCostingCode;
                    solicitudCOMPRA.Lines.COGSCostingCode2 = fila.COGSCostingCode2;
                    solicitudCOMPRA.Lines.COGSCostingCode3 = fila.COGSCostingCode3;
                    solicitudCOMPRA.Lines.WarehouseCode = fila.Almacen;
                    solicitudCOMPRA.Lines.UnitPrice = fila.PrecioUnitario;
                    solicitudCOMPRA.Lines.TaxCode = fila.TaxCode;//poner el iva que corresponda
                }
                error = solicitudCOMPRA.Add();
                if (error != 0)
                {
                    respuesta.Error = true;
                    respuesta.Mensaje = company.GetLastErrorDescription();
                    return respuesta;
                }
                else
                {
                    idInterno = company.GetNewObjectKey();
                    SAPbobsCOM.Documents pedido = company.GetBusinessObject(BoObjectTypes.oPurchaseOrders);
                    respuesta.Error = false;
                    //res.Mensage = idInternoPedido;
                    string invoicePdfPath = Path.Combine(Path.GetTempPath(), $"{pedido.DocNum}.pdf");
                    if (pedido.GetByKey(Int32.Parse(idInterno)))
                    {
                        respuesta.Docnum = pedido.DocNum.ToString();
                    }
                    return respuesta;
                }


            }
            catch (Exception ex)
            {
                respuesta.Error = true;
                respuesta.Mensaje = ex.Message.ToString();
                return respuesta;
            }
        }

Muy facil, con el formato de CR que tienes en tu sap para la impresion de estos mismos te puede servir. solo valida que acepte entrada de parametros, guardalo en una carpeta donde tengas acceso. Posterior a ello, al momento de crear el documento por codigo, utiliza la siguiente función

PurchaseOrderNew = int.Parse(oCompany.GetNewObjectKey());

con esto obtendras el DocKey del documento creado y puedes pasarlo como parametro al formato crystal report que guardaste en la carpeta y solo lo guardas y listo.

saludos

1 me gusta