11.1.6 BAdI de ampliación para herramienta de reproceso de documentos contables
En el programa de reproceso de documentos contables In the accounting document reprogramming program (/EDGE/SII_REPROCESA_DOCS_CONT) se ha creado una BAdI de ampliación de pantalla para poder añadir más campos de select-options en la pantalla de selección del programa. Los valores introducidos serán considerados como filtro durante la ejecución del mismo.
Paso 1. Creación de la ampliación
A través de la transacción SE18 accedemos al punto de ampliación /EDGE/SII_MONITOR_REPROCESO. Dentro del mismo accedemos a la a screen enlargement BAdI has been created to be able to add more fields of select-options in the program selection screen. The entered values will be considered as a filter during the execution of the same.
Step 1. Creating the enhancement
Through transaction SE18 we access the enhancement spot /EDGE/ II_MONITOR_REPROCESO. Within it we access the BAdI /EDGE/BADI_SII_MON_REPROCE_ECC y creamos una implementación de la misma.
Una vez creada, accedemos a la opción "Ampliaciones de imagen" para ver el detalle de la imagen y el área de subscreen generadas. La imagen correspondiente a esta ampliación es la número 3. Junto a estos campos, podemos ver otros dos que se pueden completar llamados "Programa" y "Subscreen" que indicaremos como completar en un paso posterior.
Paso 2. Creación del grupo de funciones
A través de la transacción SE80 creamos un nuevo grupo de funciones y declaramos un subscreen de selección en el correspondiente include.
En el subscreen mencionado se introducen los campos select-options que se van a considerar en el dynpro y en la selección de datos posterior.
A continuación, dentro del grupo de funciones mencionado, se crea una nueva función con el objetivo de recuperar los valores introducidos en los select-options declarados en el subscreen del propio grupo de funciones.
En las BAdIs de Cockpit hay un ejemplo paso a paso muy similar que puede servir como guía.
Paso 3. Referenciación del grupo de funciones y creación de métodos en la ampliación
Una vez realizados los pasos anteriores hay que referenciar en la implementación de la BAdI el grupo de funciones y la subscreen creadas. El grupo de funciones siempre tiene que tener la nomenclatura SAPL* a la hora de indicarlo como programa.
En los métodos de la implementación deberemos programar la recuperación de los valores de los select-options que hayamos declarado y también el filtrado usando los valores recuperados.
En las BAdIs de Cockpit hay un ejemplo paso a paso muy similar que puede servir como guíaand create an implementation of it.
Once created, access the option "Sccreen Implementation" to see the detail of the image and the subscreen area generated. The image corresponding to this extension is number 3. Next to these fields, we can see another two that can be completed called "Program" and "Subscreen" that will indicate how to complete in a later step.
Paso 2. Creating the Function Group
Through transaction SE80 we create a new group of functions and declare a selection subscreen in the corresponding include.
In the subscreen mentioned, you enter the select-options fields to be considered in the dynpro and in the subsequent data selection.
Then, within the aforementioned function group, a new function is created in order to retrieve the values entered in the select-options declared in the subscreen of the function group itself.
In Cockpit BAdIs there is a very similar step-by-step example that can serve as a guide.
Paso 3. Referencing the function group and creating methods in the enhancement
Once the previous steps have been performed, you must reference in the BAdI implementation the function group and subscreen created. The function group always has to have the SAPL * nomenclature when it is indicated as a program.
In the methods of the implementation we will have to program the recovery of the values of the select-options that we have declared and also the filtering using the recovered values.
In Cockpit BAdIs there is a very similar step-by-step example that can serve as a guide.