Tabla de contenido general
Introducción
Anteriormente había creado un blog en el cual indicaba como se genera un reporte ABAP usando programación orientada a objetos. El anterior blog puede ser consultado en el siguiente enlace:
https://blogs.sap.com/2015/07/08/programa-tipo-reporte-usando-poo/
En este nuevo blog, la idea es abarcar una arquitectura de desarrollo más robusta, esta
arquitectura tiene como base el patrón de diseño MVC, el principio de diseño separación de intereses y por último pero no menos importante el principio KISS.
Teniendo claridad sobre los anteriores conceptos la propuesta de solución sería la siguiente:
Programa tipo reporte
Para la propuesta para los programas de tipo reporte se considera la creación de las siguientes interfaces:
- ZIF_REPORT
- ZIF_DATA
- ZIF_ALV
Adicionalmente cuando se necesite que el programa muestre la información en un ALV simple, se considera la creación de una clase global llamada ZCL_ALV_TABLE que usa la interfaz ZIF_ALV.
Por último, para la implementación de la lógica propia de cada reporte se usarían las siguientes clases locales:
- LCL_DATA
- LCL_REPORT
- LCL_VIEW