Buenas a todos saper@s, hoy vamos a hablarles sobre las Bases de Datos Lógicas PNP y PAP. Pues bueno, SAP tiene algunas bases de datos lógica de las cuales hablaremos durante esta entrada de las siguientes:
- PNP que se refiere a los datos de empleado ( o PNPCE)
- PAP que se refiere a los datos de candidatos.
De forma general, la BD que más se utiliza es la PNP. En esta entrada les facilitaré varios ejemplos para la utilización de las bases de datos PNP y PNPCE, de forma que ustedes ya puedan generar por medios propios los programas que requieran realizar en el mundo de SAP HCM.
Cuando ejecutamos un report que accede a la base de datos lógica, esta carga los datos de personal de cada empleado en memoria para su tratamiento. La información recopilada es la información del historial completo del empleado, de forma que cuando un empleado nuevo es cargado en memoria, la información del anterior se elimina, liberando el espacio para el nuevo empleado.
Cada vez que se usa la base de datos lógica se realizan dos verificaciones una de personal y otra de datos.
- La primera se verifica que el usuario tiene acceso al empleado siguiendo los criterios de asignación organizacional. Si el usuario no tiene acceso al empleado, este no se evalúa.
- La segunda verifica que el usuario tiene acceso a los infotipos especificados en el report.
Para seguir el ejemplo, es recomendable descargar el siguiente ZIP donde muestro los pasos a realizar para la creación del programa y un documento TXT del programa a generar:
La pantalla de selección que nos saldría al usar la base de datos lógica PNP sería la siguiente:
Los campos de la selección de datos están definidos en la estructura QPPNP , mientras que los campos de selección de personal están definidos en el programa include DBPNPSEL (Tablas internas que se completan mediante APPEND).
Cuando se usa la base de datos lógica PNP hay que declarar en el programa la estructura PERNR , en esta estructura se guardarán los números de personal seleccionados mediante la pantalla de selección.
En la estructura PERNR solo hay que el leer el campo PERNR, que contiene el número de empleado, el resto de campos se encuentran allí por motivos internos.
Si se usa la base de lógica PAP habrá que declarar la tabla APPLICANT, para obtener el numero de candidato.
Cuando se realiza el GET re rellenan la tablas internas (el nombre de la tabla interna es Pnnnn , nnnn es el número del infotipo) de los infotipos (declarados en la sentencia INFOTYPES) con los registros, desde los datos inferior hasta los datos superiores, del numero de personal leído en el GET .
Espero que les sea de ayuda y ya saben, siempre es bueno que quien te aporte tu también le aportes!
Muchas gracias!!