SAP WRITE LIST ELEMENTS ABAP Statements

Get Example source ABAP code based on a different SAP table
  



WRITE - list_elements

Short Reference


ABAP Syntax ABAP_KEY ... {AS CHECKBOX}

| {AS ICON}
| {AS SYMBOL}
| {AS LINE} ... .

ABAP_ALTERNATIVES:
1 ... AS CHECKBOX
2 ... AS ICON
3 ... AS SYMBOL
4 ... AS LINE

What does it do? These additions are used to represent special list elements.

The data object dobj in the output must have certain properties. The additions cannot be used together. If they are used with the additions for internal formats and external formats, they can only be used to a limited extent.
• AS CHECKBOX WRITE

ABAP Alternative 1 ... AS CHECKBOX

What does it do? The output of this addition is a single-character checkbox that is ready for input. dobj expects a character-like data type of length 1. If the first character in dobj is 'X' or 'x', the checkbox is shown as selected. If the first character is not 'X' or 'x', the checkbox is shown as empty. If dobj is an empty data object of the type string, the checkbox is not in the output.

The user can select and deselect the checkbox in the list displayed on the screen. If the user selects the checkbox, the first character of the assigned field in the list is set to 'X'. If the user deselects it, it is set to blank. The change is stored in the list buffer and can be evaluated during a list event.

If the addition AS CHECKBOX is used, no list output len is allowed after AT. Except for INPUT, NO-GAP, and UNDER, the other additions specified at the same time for internal formats and external formats are ignored.

The addition AS CHECKBOX has the same effect as specifying the addition INPUT ON simultaneously. The standard settings or a format INPUT OFF set by a FORMAT statement are overridden for the current WRITE statement. To make the checkbox not ready for input, the addition INPUT OFF must be used simultaneously.



Latest notes:If a list line contains only a checkbox with a blank, it is
displayed only if the statement SET BLANK LINES ON is executed beforehand.



Example ABAP Coding
Displays two checkbox fields and evaluates the user
input in the event AT LINE-SELECTION. REPORT test NO STANDARD PAGE HEADING.

DATA: check1 TYPE c LENGTH 1 VALUE 'X',
check2 TYPE c LENGTH 1 VALUE ' '.

START-OF-SELECTION.
WRITE: / check1 AS CHECKBOX, 'Checkbox 1',
/ check2 AS CHECKBOX, 'Checkbox 2'.

AT LINE-SELECTION.
READ: LINE 1 FIELD VALUE check1,
LINE 2 FIELD VALUE check2.
• AS ICON WRITE

ABAP Alternative 2 ... AS ICON

What does it do? This addition produces icons. Be aware that not all icons are suitable for spool lists. dobj expects data objects of the type c whose initial characters can be interpreted as the internal ID of an icon by the runtime environment.

In the type group ICON, a constant is declared for each icon that can be displayed. The names of the constants can be taken from the type group or the output of the SHOWICON program. This program also shows the corresponding output length and whether an icon can be spooled or not.

If the content of dobj cannot be interpreted as an icon or the content is changed by concurrent use of other additions for internal formats or external formats, blanks are produced instead of icons.

Latest notes:None of the additions from the internal formats and external formats are forbidden. When using these additions, care must be taken that the content of dobj can be interpreted as an icon. The output length is determined, as usual, either implicitly using the data type of dobj or by being specified explicitly. Characters in the output area that do not have the icon are set to blanks. The internal representation of icons has the format '@xx@', where 'xx' is a two-character hexadecimal number. Even if AS ICON is not specified, unexpected list output can be produced if the character combination '@xx@' occurs at the start of a character string.



Example ABAP Coding
Displays a traffic light icon.
WRITE icon_green_light AS ICON.
• AS SYMBOL WRITE

ABAP Alternative 3 ... AS SYMBOL

What does it do? This addition produces all the characters of the data object dobj as symbols. The type group SYM declares constants with a length of 1 for each character that can be displayed as a symbol, and whose name reflects the meaning of the symbol. The names of the constants and the meaning and length of the symbols can be taken from the type group or from the output of the program SHOWSYMB.



Latest notes:The output length is
determined, as usual, either implicitly using the data type of dobj or by being specified explicitly.



Example ABAP Coding
Displays a hand symbol.
WRITE sym_left_hand AS SYMBOL.
• AS LINE WRITE

ABAP Alternative 4 ... AS LINE

What does it do? This addition produces line elements with the output length 1. Line elements are corners, crosses, lines, and T sections. dobj expects data objects of the type c whose content can be interpreted as line elements by the runtime environment. The type group LINE declares the line element constants displayed in the following table. ConstantMeaning line_spaceBlank line_top_left_cornerTop left corner line_bottom_left_cornerBottom left corner line_top_right_cornerTop right corner line_bottom_right_cornerBottom right corner line_horizontal_lineHorizontal line line_vertical_lineVertical line line_left_middle_cornerT section turned to the left line_right_middle_cornerT section turned to the right line_bottom_middle_cornerReversed T section line_top_middle_cornerT section line_crossCross

If dobj has different content or the content is changed by concurrent use of other additions for internal formats, a blank is produced instead of a line element. The addition FRAMES OFF must not be specified simultaneously. The other additions for external formats and QUICKINFO are ignored in the output of line elements.

Latest notes:The characters '-' and '|' and produced using ULINE are joined with each other by default, if no other characters exist between them. Here the system replaces the characters by the above line elements. A standalone character '|' is always replaced by a vertical line. The '-' characters from sy-uline are always replaced by a horizontal line. The default behavior can be switched off using the addition FRAMES OFF. The addition AS LINE produces line elements in the exact way they are defined. Links are produced only where line elements actually meet each other. The system does not, however, create any automatic extensions between the characters '-' or '|' and line elements produced explicitly using AS LINE.



Example ABAP Coding
Produces four adjoining rectangles.
WRITE: /10 line_top_left_corner AS LINE NO-GAP,
line_top_middle_corner AS LINE NO-GAP,
line_top_right_corner AS LINE,
/10 line_left_middle_corner AS LINE NO-GAP,
line_cross AS LINE NO-GAP,
line_right_middle_corner AS LINE,
/10 line_bottom_left_corner AS LINE NO-GAP,
line_bottom_middle_corner AS LINE NO-GAP,
line_bottom_right_corner AS LINE.

Return to menu