En esta oportunidad escribiré esta entrada sobre un proceso quizá sencillo para unos, y complejo para otros. (siéntase libre de comentar en el espacio indicado para tal, al final del post). Comencemos....
En ocasiones extraer datos para determinado proceso o informe puede ser tarea complicada, mas aún cuando entre las posibilidades no haz conseguido usar una mágica BAPI, o de ponerte a lidiar con consultas a tablas de base de datos; y luego te das cuenta que el objetivo es conseguir unos datos que se generan ya sea por una transacción estándar o Z y cuya salida es un ALV. Seamos sinceros en este punto, no vale reinventar la rueda, pero podemos mejorarla...
Bien en esta entrada trataré de plasmar una solución ya sea el caso de obtener datos para procesarlos y obtener otros datos, o si simplemente obtener esos datos y mostrarlos en formato distinto (adaptado al requerimiento).
Para efectos de que sea sencillo de comprender, comenzare planteando una caso práctico, luego ver las opciones, y posterior la solución (es posible no sea el mejor de los ejemplos en cuanto a lo funcional).
Caso Práctico:
Supongamos que requerimos de los datos que nos ofrece la Tx. MB52, de acá tomar los materiales y demás datos para realizar un proceso particular de negocio.
Opciones:
si bien tenemos la opciones de buscar datos en tablas, cruzarlas y obtener una salida deseada; o hacer un submit al report existente con estructura similar a la deseada y tomar los datos que genera como salida (esta es la opción que tomaremos para efectos de esta entrada).
Solución:
He aquí el fin de este post, y comencemos por identificar los elementos necesarios para la construcción del report.
Por tanto, de la tx. MB52 tomamos datos importantes, tal como:
-
Nombre del report: RM07MLBS
-
Variante(
opcional
)
-
Algún Campo de selección que queramos calcular previa llamada del report fuente (
opcional
)
-
Nombre de la estructura de tabla de salida (por lo general busco el método ALV usado y tomo la estructura que tenga la tabla de datos que le es enviada)
Entonces digamos que todo se traduce a este código:
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Recuerden que es un report sencillo y con fines demostrativo; acá puedes ser tan abstracto como quieras y usar las técnicas de programación que desees.
Espero les sea de utilidad.