Authorization Checks During Dynamic Program Processing



Note

Besides developing programs using the ABAP Workbench, you may also create and generate ABAP programs at runtime. This type of program creation is called dynamic program development.

The required statements INSERT REPORT, GENERATE SUBROUTINE POOL, and EDITOR-CALL_FOR_REPORT do not perform any authorization or system checks. You must therefore program these checks yourself. The following cases are possible:

Examples

The function module RS_ACCESS_PERMISSION performs all checks that take place in the ABAP Editor. You must call the function module for the object class PROG.

If you only want to check the system change option, use the function module TR_SYS_PARAMS. You can use the following parameters:

  1. SYSTEMEDIT to determine the general system change option
  2. SYS_CLIINDDEP_EDIT to determine the system change option of cross-client Customizing
  3. SYSTEM_CLIENT_EDIT to determine the system change option of client-specific Customizing data


If, however, you want to check the ABAP change authorization, use the following authorization check:

AUTHORITY-CHECK OBJECT 'S_DEVELOP'
               ID     'OBJTYPE'   FIELD 'PROG'
               ID     'DEVCLASS'         DUMMY
               ID     'P_GROUP'          DUMMY
               ID     'OBJNAME'          DUMMY
               ID     'ACTVT'     FIELD '02'.