🔥
Actualizaciones
2023-08-08
Gracias colegas por los comentarios. Según nuestra discusión, podríamos simplificar aún más esta guía utilizando una implementación RAP gestionada con un "guardado no gestionado". La solución ya no requiere un búfer de espacio de trabajo personalizado, sino que utiliza la implementación predeterminada de RAP.
Introducción
Durante los últimos meses, a menudo recibimos la pregunta de cómo envolver los BAPI de SAP S/4HANA para su uso en escenarios de lado a lado, por ejemplo, desde el Modelo de Programación de Aplicaciones en la Nube de SAP (CAP).
Hay múltiples formas de lograrlo a nivel técnico, básicamente habilitando el módulo para ser llamado a través de HTTPS. Pero la abrumadora interfaz solo llevó a reuniones tras reuniones para aclarar el propósito de campos de los cuales el 90% no son necesarios para el caso de uso empresarial.
Para evitar eso, ideamos el enfoque de modelar fachadas en el Modelo de Programación Restful de ABAP (RAP) que reducen la superficie de la API al mínimo y se dividen según el principio de necesidad de saber. Los expertos funcionales en el sistema empresarial SAP S/4HANA podrían decir fácilmente qué entrada espera del usuario final / consumidor. Todo lo demás estaba oculto en la fachada de RAP.
Esta es una guía de "cómo hacerlo" de principio a fin con fragmentos de código centrados en las principales características necesarias para lograr esto.
-
Modelado + implementación de RAP
-
Llamando al BAPI
-
Manejo de errores
-
Pruebas en ABAP + POSTMAN
-
Observaciones sobre el manejo de transacciones
Créditos
Esta publicación se basa en "
Usando BAPIs en RAP
" y fue escrita con el apoyo de
marcel.hermanns
y
renzo.colle
. Muchas gracias por las ideas.
Caso de Uso de Ejemplo
Este es un caso de uso real de un pago de incentivos/bonificación para gerentes utilizado en los ciclos de revisión de desempeño.
Los gerentes solo quieren especificar el monto y el empleado para el que es.
Los expertos financieros en el backend saben que tienen que crear una contabilización financiera con débito en el fondo de dinero de beneficios corporativos y crédito en una cuenta de pago de empleado.
Resumen de la Solución
Resumen de la Solución
Modelo de Entidad
El pago de bonificación se modela de la manera más simple posible sobre el documento de contabilidad estándar de SAP.
La estructura del ítem de un documento de contabilidad está oculta al utilizar una proyección de ítem principal única.
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'RAP Facade: Bonus Payment main item'
@Metadata.ignorePropagatedAnnotations: true
define view entity ZDemo_BonusPaymentItem
as select from I_OperationalAcctgDocItem
association [1] to I_OperationalAcctgDocItem as _AcctDocItem on _AcctDocItem.CompanyCode = $projection.CompanyCode
and _AcctDocItem.FiscalYear = $projection.FiscalYear
and _AcctDocItem.AccountingDocument =
Pedro Pascal
Se unió el 07/03/2018