Report basado en LDB PNP

A continuación se detalla un ejemplo de programa ABAP del módulo HCM basado en la BDL PNP, maestro de personal.

Requerimientos: En los atributos del report se establece como Base de datos Lógica, la PNP.
Descripción: Este report muestra los datos de empleados más importantes del IT 1.
Filtro: En el filtrado estándar en base a la BDL PNP marcamos año actual, ponemos status de ocupación 3 y un valor para nuestra sociedad. De ésta forma nos aseguramos que seleccionamos a los empleados activos del año actual para la sociedad definida.
Características: Uso de macroinstrucciones y base de datos lógica PNP.




REPORT ZEJEMPLO_PNP.

TABLES: PERNR.
INFOTYPES00000001.  "Definición de los infotipos a utilizar

DATA: L_NUM TYPE I.

START-OF-SELECTION.

GET PERNR.


 
* Lectura del infotipo 1 atendiendo a las fechas de selección
  RP-PROVIDE-FROM-LAST P0001 SPACE PN-BEGDA PN-ENDDA.

  IF PNP-SW-FOUND = '1'.


    ADD 1 TO L_NUM.
* Escribir datos del empleado seleccionado, a saber:
* Nr. de personal, nombre completo, código de sociedad, grupo de personal, área
* de personal y división de personal
    WRITE: / 'P0001', P0001-PERNR, P0001-ENAME, P0001-BUKRS, P0001-PERSG, 

              P0001-PERSK, P0001-WERKS.

  ELSE.
* Pasar al siguiente empleado
    REJECT.
  ENDIF.

END-OF-SELECTION.


 
* Detalle del número de empleados seleccionados
  WRITE: SY-ULINE.
  WRITE: / 'NR. DE EMPLEADOS SELECCIONADOS: ', L_NUM.

TOP-OF-PAGE.


 
* Escribir cabeceras
  WRITE: SY-ULINE.
  WRITE: / 'IT 1''PERNR''NOMBRE Y APEL.''SOCIEDAD''GRP.PERS.''ÁREA PERS.''DIV.PERS.'.
  WRITE: SY-ULINE.

No hay comentarios:

Publicar un comentario