Skip to content

ABAP Keyword Documentation →  ABAP - Reference →  Program structure →  Introductory Statements for Programs 

PROGRAM

Short Reference

Other versions: 7.31 | 7.40 | 7.54

Syntax


PROGRAM prog [list_options] 
             [MESSAGE-ID mid]
             [REDUCED FUNCTIONALITY].

Addition

... REDUCED FUNCTIONALITY

Effect

The statement PROGRAM initiates a module pool or a subroutine pool. It must be the first statement of a standalone program after the triggering of possible include programs. The name prog must be specified directly. The following applies for the additions:

  • In module pools, the additions list_options and MESSAGE-ID of the PROGRAM statement have the same meaning as the additions of the same name in the statement REPORT. The REDUCED FUNCTIONALITY addition has an effect only in subroutine pools, otherwise it is ignored.
  • In subroutine pools, the specification of MESSAGE-ID has the same meaning as with the statement REPORT.. The possible additions list_options for the basic list are ignored, since subroutine pools do not have a separate list buffer. Output statements in subroutine pools write to the current list of the calling main program. The addition REDUCED FUNCTIONALITY only works in subroutine pools..


Notes

  • In the above statement, the key word PROGRAM can be replaced by the key word REPORT. In module pools or subroutine pools, REPORT has the same meaning as PROGRAM and can be used with its additions. As a rule, module pools and subroutine pools should only be introduced by using PROGRAM.
  • The name prog is not absolutely necessary, but the name of the ABAP program from the repository should always be used.
  • The name of a module pool is not fixed, but should follow the naming conventions in ABAP Workbench. These specify that the name of module pools should start with "SAPM".

Addition

... REDUCED FUNCTIONALITY

Effect

This addition only has an effect in programs of program type subroutines pool. In other program types, the syntax check raises a warning. In a subroutine pool initiated with the addition REDUCED FUNCTIONALITY, not all components that are usually loaded with an ABAP program are loaded. This leads to a reduction in the program load and to a lower memory in the roll area. This means that the full ABAP language range is not available.

If none of the missing functionality is required, the REDUCED FUNCTIONALITY addition can be used to avoid the unnecessary resources being consumed by subroutine pools.


Notes

  • The REDUCED FUNCTIONALITY addition also works in subroutine pools which were created with GENERATE SUBROUTINE POOL.
  • The use of REDUCED FUNCTIONALITY is especially recommended for small subroutine pools which only contain simple help procedures
  • The use of REDUCED FUNCTIONALITY in a subroutine pool leads to a warning from the syntax check, pointing out that the entire ABAP range is not available. If functionality which is not present is used, corresponding syntax errors occur.