Vista previa formato entrega desde SDK

Estimados colegas.
Estoy realizando un desarrollo para crear la lista de empaque de una entrega de ventas, mediante la lectura de códigos de barras EAN14, manejando unidades de empaque INNER y MASTER, etc. donde el documento de entrega existe previamente y desde un formulario creado mediante el sdk realizo el embalaje. tengo todo funcionando menos un punto.

Por lo cual mi pregunta es, como puedo generar la vista previa de un formato para una entrega de ventas desde el sdk. Necesito desde un formulario creado mediante el sdk, poder previsualizar un formato en crystal report relacionado a una transaccion del estandar. hasta el momento solo he logrado poder imprimirlo sin poder visualizarlo mediante el siguiente método.


        private void imprimirFormato(int docEntry, string layoutId = "PKG10011")
        {
            try
            {
                SAPbobsCOM.CompanyService oCmpSrv = oCompany.GetCompanyService();
                SAPbobsCOM.ReportLayoutsService oReportLayoutService = (SAPbobsCOM.ReportLayoutsService)oCmpSrv.GetBusinessService(SAPbobsCOM.ServiceTypes.ReportLayoutsService);
                SAPbobsCOM.ReportLayoutPrintParams oPrintParam = (SAPbobsCOM.ReportLayoutPrintParams)oReportLayoutService.GetDataInterface(SAPbobsCOM.ReportLayoutsServiceDataInterfaces.rlsdiReportLayoutPrintParams);

                oPrintParam.LayoutCode = layoutId; //codigo del formato importado en SAP
                oPrintParam.DocEntry = docEntry; //parametro que se envia al crystal, DocEntry de la transaccion

                oReportLayoutService.Print(oPrintParam);

            }
            catch (Exception ex)
            {
                StackTrace stackTrace = new StackTrace();
                gestionarExcepcion(ex, stackTrace);
            }
        }

Muchas gracias

Andres Ramirez Jaramillo :colombia:

2 Me gusta

Hola!

Mira este post:

h_tps://archive.sap.com/discussions/thread/2080936

Saludos.

2 Me gusta

Hola @GabrielGS
Esta opción funciona para generar la vista previa de un reporte que existe como menú en SAP. donde lo que se hace es abrir el menu e ingresar los parametro y simular el evento clic sobre el boton. Pero no permite generar la vista previa de un formato asociado a un layout de una transacción. De igual manera. gracias

Estimados colegas
Les comparto la solución que encontré después de muchas pruebas.

  1. En el OnCustomInitialize asigno el ReportType al formulario, con base al tipo de transacción donde necesito visualizar el crystal. Los valores están almacenados en la tabla RTYP, donde puedo crear nuevos tipos mediante el objeto ReportTypesService y ReportLayoutsService
SAPbouiCOM.Form formActual = (SAPbouiCOM.Form)this.UIAPIRawForm;
formActual.ReportType = "PKG1";
  1. Habilito el evento LayoutKeyBefore para enviar el DocEntry al formato de crystal
        private void Form_LayoutKeyBefore(ref SAPbouiCOM.LayoutKeyInfo eventInfo, out bool BubbleEvent)
        {
            BubbleEvent = true;
            try
            {
                eventInfo.LayoutKey = ((SAPbouiCOM.EditText)this.GetItem("txtEntrega").Specific).Value;
            }
            catch (Exception ex)
            {
                BubbleEvent = false;
                StackTrace stackTrace = new StackTrace();
                gestionarExcepcion(ex, stackTrace);
            }
            
        }

Saludos,
Andres Ramirez Jaramillo :colombia:

5 Me gusta