Etiquetas

20111212

Macros en ABAP HR

La utilización de macros en el código de un objeto, consigue encapsular ciertas sentencias y mejora la modularización. Originariamente, una macro (o macroinstrucción) se puede definir con un conjunto de sentencias más sencillas que quedan alojadas en memoria cuando se ejecuta el programa (a diferencia de una función, que es llamada de forma dinámica).


Para ver el código de una macro en SAP, se debe acceder a la transacción SE11 y visualizar el contenido de la tabla TRMAC. Una vez visualizado el código, es frecuente que dentro se hagan llamadas a rutinas de programa estándar (perform f_rutina (programa_estandard) ).
 

RP-READ-INFOTYPE: Todos los registros de un empleado para un determinado periodo de tiempo del infotipo indicado en la función  son puestas en una tabla interna del infotipo. No necesita de PNP, por lo que suele usarse cuando no hay base de datos lógica asociada al programa.


RP-PROVIDE-FROM-LAST: El último registro del periodo seleccionado es tomado de la tabla interna del infotipo y llevado a la cabecera de la tabla. Necesita, al igual que la anterior, que la tabla correspondiente al infotipo (por ejemplo p0002) esté rellena, por lo que suele usarse cuando hay PNP declarada en el programa.


RP-UPDATE: Permite la actualización de la base de datos de gestión de personal desde el programa. Puede usarse con o sin PNP.


RP-PROVIDE-FROM-FRST: El primer registro del periodo seleccionado es tomado de la tabla interna del infotipo y llevado a la cabecera de la tabla. Necesita que la tabla correspondiente al infotipo (por ejemplo p0002) esté rellena, por lo que suele usarse cuando hay PNP declarada en el programa.


RP-INIT-WITH-SYDATUM: Inicia las variables del sistema PN-BEGDA y PN-ENDDA y las variables PNBEGPS y PNPENDPS con la fecha que hay en el campo del sistema SY-DATUM (la fecha de hoy).


RP-LOWDATE-HIGHDATE: Define las constantes LOW-DATE y HIGH-DATE que representan el instante más antiguo y más reciente en la línea del tiempo. Estas fechas sólo se pueden usar en comparaciones y no en cálculos.


RP-SEL-EIN-AUS-INIT: Esta función se usa para evitar que la Base de Datos tome aquellos empleados con estatus de operación cero durante el periodo de selección PN-BEGDA y PN-ENDDA.


RP-SET-NAME-FORMAT: Permite editar en los reports y los programas RP los nombres de los empleados según un formato predefinido en la tabla T522N.


RP-FETCH-ALTER-PERID: Incluye el número de identificación personal del infotipo de datos personales (0002) en todas las evaluaciones estándar RP.


RP-SET-KEY-DATE: Si el usuario no introduce un periodo de selección en la pantalla de selección los datos de fecha se inician según el contenido de las variables LOW-DATE y HIGH-DATE.


RP-SEL-EIN-AUS: Esta función se usa después del GET PERNR para evitar que la Base de Datos tome aquellos empleados con estatus de operación cero durante el periodo de selección PN-BEGDA y PN-ENDDA.


RP-SEL-CALC: Esta función selecciona aquellos números de personal en que la nómina ha sido también completada en el periodo de selección seleccionado. Por tanto, se debería usar en todas las evaluaciones de nómina.


RP-MAKE-ADDRESS: Enlaza las RP con edición de las direcciones de empleados de acuerdo con las regulaciones internacionales de cada país.


RP-EDIT-ADDRESS: Edita las direcciones de los empleados de acuerdo con las regulaciones internacionales de cada país.


RP-READ-ALL-TIME-ITY: Toma todos los registros de tiempo (2000-2999) de la persona que está siendo procesada dentro del periodo dado y lo pone en las correspondientes tablas internas de los infotipos.


RP-EDIT-NAME: Esta función edita los nombres de los empleados en todas las evaluaciones estándar RP de acuerdo con las regulaciones de cada país.


RP-READ-T001P: Se accede a la tabla T001P usando la clave entera. El resultado se muestra en la cabecera de la tabla T001P.


RP-READ-PAYROLL-DIR: Lee un directorio de un cluster donde se guardan los resultados de nómina
 

No hay comentarios:

Publicar un comentario