SAP Function REUSE_ALV_GRID_DISPLAY - Output of a simple list (single-line)

Parameter Reference Type Length Default Optional Text
IR_SALV_FULLSCREEN_ADAPTER REF TO CL_SALV_FULLSCREEN_ADAP 0 X Adapter Fullscreen -> Table
IS_LAYOUT SLIS_LAYOUT_ALV 0 X List layout specifications
IS_PRINT SLIS_PRINT_ALV 0 X Print information
IS_REPREP_ID SLIS_REPREP_ID 0 X Initialization key for Re/Re interface
IS_SEL_HIDE SLIS_SEL_HIDE_ALV 0 X Selection information modification
IS_VARIANT DISVARIANT u 122 X Variant information
IT_ADD_FIELDCAT SLIS_T_ADD_FIELDCAT 0 X Additional Field Catalog Options
IT_ALV_GRAPHICS DTC_T_TC h 120 X Parameter for ALV graphic
IT_EVENTS SLIS_T_EVENT 0 X Table of events to perform
IT_EVENT_EXIT SLIS_T_EVENT_EXIT 0 X Standard fcode exit requests table
IT_EXCEPT_QINFO SLIS_T_QINFO_ALV 0 X
IT_EXCLUDING SLIS_T_EXTAB 0 X Table of inactive function codes
IT_FIELDCAT SLIS_T_FIELDCAT_ALV 0 X Field catalog with field descriptions
IT_FILTER SLIS_T_FILTER_ALV 0 X Filter criteria for first list output
IT_HYPERLINK LVC_T_HYPE h 2052 X Hyperlinks
IT_SORT SLIS_T_SORTINFO_ALV 0 X Sort criteria for first list display
IT_SPECIAL_GROUPS SLIS_T_SP_GROUP_ALV 0 X Grouping fields for column selection
I_BACKGROUND_ID SDYDO_KEY 0 SPACE X Object ID of wallpaper
I_BUFFER_ACTIVE 0 SPACE X Buffering active
I_BYPASSING_BUFFER CHAR01 C 1 SPACE X Ignore all buffers
I_CALLBACK_HTML_END_OF_LIST SLIS_FORMNAME 0 SPACE X EXIT routine for HTML END-OF-LIST
I_CALLBACK_HTML_TOP_OF_PAGE SLIS_FORMNAME 0 SPACE X EXIT routine for HTML TOP-OF-PAGE
I_CALLBACK_PF_STATUS_SET SLIS_FORMNAME 0 SPACE X Set EXIT routine to status
I_CALLBACK_PROGRAM SYST-REPID C 40 SPACE X Name of the calling program
I_CALLBACK_TOP_OF_PAGE SLIS_FORMNAME 0 SPACE X EXIT routine for handling TOP-OF-PAGE
I_CALLBACK_USER_COMMAND SLIS_FORMNAME 0 SPACE X EXIT routine for command handling
I_DEFAULT 0 'X' X Initial variant active/inactive logic
I_GRID_SETTINGS LVC_S_GLAY u 6 X Grid settings
I_GRID_TITLE LVC_TITLE C 70 X Control title
I_HTML_HEIGHT_END I I 4 0 X HTML_END_OF_PAGE Height
I_HTML_HEIGHT_TOP I I 4 0 X HTML_TOP_OF_PAGE Height
I_INTERFACE_CHECK 0 SPACE X Interface consistency check log output
I_SAVE 0 SPACE X Variants can be saved
I_SCREEN_END_COLUMN 0 0 X Coordinates for list in dialog box
I_SCREEN_END_LINE 0 0 X Coordinates for list in dialog box
I_SCREEN_START_COLUMN 0 0 X Coordinates for list in dialog box
I_SCREEN_START_LINE 0 0 X Coordinates for list in dialog box
I_STRUCTURE_NAME DD02L-TABNAME C 30 X Internal output table structure name

Parameter Reference Type Length Text
ES_EXIT_CAUSED_BY_USER SLIS_EXIT_BY_USER 0 How the user left the list
E_EXIT_CAUSED_BY_CALLER 0 Delete list in CALLBACK_USER_COMMAND

Parameter Reference Length Optional Text
T_OUTTAB 0 Table with data to be displayed

Exception Text
PROGRAM_ERROR Program errors

Functionality
The function module outputs an internal table with whatever structurein the form of a formatted single- oder multi-line list.
Process:

  • Passing an internal table with the set of information to be output

  • Passing a structure with general layout specifications for list layout

  • Passing a field catalog in the form of an internal table

  • The field catalog describes the fields to be output in the list.

    Notes

    • All interactions performed on the list refer directly to the internal
    • output table. Sorting the list, for example, also involves a resortingof the internal output table passed (since it was passed by reference).
      • An important factor determining the usability of the tool or of various
      • generic functions (totals, subtotals) is the expected amount of data tobe displayed.
        The application is responsible for critically testing this aspect andconsider it when it comes to decision-making.

        Further information

        Description
        If one of the default ALV function codes for 'Back', 'Cancel' or 'Exit'is triggered, the system destroys the current list and quits the ALVfunction module. In this case, exporting structureES_EXIT_CAUSED_BY_USER is filled accordingly:

        • ES_EXIT_CAUSED_BY_USER-BACK = 'X' Function 'Back' triggered

        • ES_EXIT_CAUSED_BY_USER-CANCEL = 'X' Function 'Cancel' triggered

        • ES_EXIT_CAUSED_BY_USER-EXIT = 'X' Function 'Exit' triggered

        • Knowing which function was triggered, the application can thendetermine further navigation.

          Description
          Parameter that specifies if the caller in CALLBACK USER_COMMAND hasforced the system to exit the list (SELFIELD-EXIT = 'X')

          Description
          Internal: Do not use!!!!

          Description
          Structure for describing the list to be output.
          The parameters are described and grouped based on the followingcategories:

          • Display options

          • Exceptions

          • Totals

          • Interaction

          • Detail screen

          • Color

          • Other

          • Note the section on pre-defined settings.
            Display options
            • colwidth_optimize

            • Value range: SPACE, 'X'
              'X' = Optimizes the column width to ensure that the content isdisplayed completely.
              • no_colhead

              • Value range: SPACE, 'X'
                'X' = Do not output column headings.
                • zebra

                • Value range: SPACE, 'X'
                  'X' = Striped pattern (for wide lists, for example)
                  • no_vline

                  • Value range: SPACE, 'X'
                    'X' = Separate columns by SPACE.
                    Exceptions
                    • lights_fieldname

                    • Value range: SPACE, field name of the internal output table
                      Field of the internal output table that contains the coding of theexceptions to be output
                      Coding in the field of the output table:
                      '1' = red traffic light
                      '2' = yellow traffic light
                      '3' = green traffic light
                      • lights_tabname

                      • Value range: SPACE, table name of the internal output table
                        Table name of the internal output table that contains the specifiedfield in parameter LIGHTS_FIELDNAME.
                        • lights_rollname

                        • Value range: SPACE, data element name
                          The documentation defined for this data element is displayed when theF1 help for an exception column is called.
                          • lights_condense

                          • Value range: SPACE, 'X'
                            'X' = The system outputs the 'maximum' exception of the items includedin the total at subtotal level.
                            Example: If a list row is output with a 'red traffic light', eachsubtotal included in this list row is also displayed with a 'redtraffic light'.
                            Totals
                            • no_sumchoice

                            • Value range: SPACE, 'X'
                              'X' = Value fields for which totals are calculated are communicated bythe calling program (FIELDCAT-DO_SUM = 'X'). The user should not beallowed to change this pre-defined setting interactively.
                              • no_totalline

                              • Value range: SPACE, 'X'
                                'X' = No overall totals line should be displayed. If required,subtotals can nevertheless be calculated and displayed. The fieldswhich are used for calculating subtotals are to be marked with DO_SUM ='X' in the field catalog.
                                • no_subchoice

                                • Value range: SPACE, 'X'
                                  'X' = Characteristics at whose control level subtotals should becalculated are communicated by the calling program.
                                  The user should not be allowed to change this pre-defined settinginteractively.
                                  See also the documentation on IMPORTING parameterIT_SORT.
                                  • no_subtotals

                                  • Value range: SPACE, 'X'
                                    'X' = Calculating subtotals should not be allowed.
                                    • totals_only

                                    • Value range: SPACE, 'X'
                                      'X' = Data is output in compressed format only at totals line level.
                                      Prerequisite: IMPORTING parameter IT_SORT is filled accordingly withthe sort criteria and the subtotals indicator.
                                      See also the documentation on IMPORTING parameterIT_SORT.
                                      • totals_text

                                      • Value range: SPACE, string (not more than 60)
                                        ' ' = In the first column, the standard system indicates the totalslevel by displaying an adequate number of '*' for the overall total.After the asterisks, the system displays the string 'total' providedthat the column width of the first output column is large enough. Ifthe column width is not sufficient, only the asterisks are displayed.
                                        'string' = After the totals level indicated visually by means of '*',the system displays the string passed provided that the column width issufficient.
                                        • subtotals_text

                                        • Value range: SPACE, string (not more than 60)
                                          ' ' = In the first column, the standard system indicates the totalslevel by displaying an adequate number of '*' for the subtotals line.After the asterisks, the system displays the string *total* providedthat the column width of the first output column is large enough andthe characteristic of the first column is not a subtotal criterion. Ifthe column width is not sufficient, only the asterisks are displayed.
                                          'string' = After the totals level indicated visually by means of '*',the system displays the string passed provided that the column width issufficient and the characteristic of the first column is not a subtotalcriterion.
                                          If the characteristic is a subtotal criterion, the system repeats thecharacteristic value for which subtotals were calculated after thetotals level provided that the column width is sufficient.
                                          • numc_sum

                                          • Value range: SPACE, 'X'
                                            ' ' = In the standard system, it is not possible to calculate totalsfor NUMC fields.
                                            'X' = It is generally possible to calculate totals for NUMC fields. Ifthis indicator is set, you can use parameter FIELDCAT-NO_SUM to controlfor each NUMC column whether totals can be calculated or not.
                                            Interaction
                                            • box_fieldname

                                            • Value range: SPACE, field name of the internal output table
                                              If the list should have checkboxes at the beginning of each list row(to allow the user to select multiple rows at once), you must fill thisparameter with the field name of the internal output table thatrepresents the selection column for selecting rows with the help ofcheckboxes.
                                              The field is always displayed as a checkbox at the beginning of eachlist row without a list heading.
                                              • box_tabname

                                              • Value range: SPACE, table name of the internal output table
                                                • f2code

                                                • Value range: SPACE, function code
                                                  Meaning when the ALV standard interface is used:
                                                  If you want to assign a standard ALV function code to a double-click(F2), you must assign this function code to this parameter.
                                                  Example: You want to assign the standard ALV function 'Detail' ('&ETA')to F2.
                                                  => LAYOUT-F2CODE = '&ETA'
                                                  Meaning if a self-defined interface is used:
                                                  Case 1:
                                                  You leave the standard ALV function code for F2 '&IC1' in the copiedinterface of the application. However, you want to have a functionexecuted with F2 that is not assigned to F2 in the interface (standardALV function or application function). You must communicate thisfunction code to the ALV using parameter F2CODE.
                                                  Case 2:
                                                  You remove the standard ALV function code for F2 '&IC1' from theinterface of the application and use another function code instead(standard ALV function or application function). You must communicatethis function code to the ALV using parameter F2CODE. This is requiredif you want to allow columns to be selected.
                                                  • confirmation_prompt

                                                  • Value range: SPACE, 'X'
                                                    'X' = If one of the functions 'Back(F03)', 'Exit(F15)' or 'Cancel(F12)'is triggered, the system asks the user if he wants to leave the list.
                                                    • key_hotspot

                                                    • Value range: SPACE, 'X'
                                                      The columns defined as key fields in the field catalog
                                                      (FIELDCAT-KEY = 'X') are output as a hotspot. This means thatsingle-clicking a key field (highlighted in color in the list) triggersthe function assigned to F2.
                                                      • reprep

                                                      • Value range: SPACE, 'X'
                                                        'X' = Enable report/report interface
                                                        Prerequisite: Application system (=> report RKKBRSTI exists).
                                                        The list module acts as a potential sender in the report/reportinterface (interface initialization, if required).
                                                        The calling report/module pool entered in I_CALLBACK_PROGRAM isdeclared to the report/report interface as the sender report with typeRT=Report.
                                                        If the sender report is assigned to receiver reports in table TRSTI,function code BEBx is set to active.
                                                        ( x = function code class)
                                                        Example:
                                                        If sender RKTFGS15 has a receiver assignment for Report Writer reportgroup 7KOI with function code class '3' (SAP setting), this receiverreport group is called through the report/report interface at functioncode 'BEB3'. The selections passed to the report/report interface arethe report selections and the key information of the selected row.
                                                        For more information on the report/report interface, see thedocumentation on function group 'RSTI'.
                                                        Detail screen
                                                        • detail_initial_lines

                                                        • Value range: SPACE, 'X'
                                                          ' ' = In the detail view, the system displays only fields whose contentis not set to initial.
                                                          'X' = Initial field contents are also displayed on the detail screen.
                                                          • detail_titlebar

                                                          • Value range: SPACE, string (not more than 30)
                                                            ' ' = The system displays 'Detail: Display' as the title of the detailscreen.
                                                            'string' = The system displays the string passed as the title of thedetail screen.
                                                            Color
                                                            • info_fieldname

                                                            • Value range: SPACE, field name of the internal output table
                                                              You can color an entire list row individually by using a color codethat is set for each row in a column of the internal output table. Youmust assign the field name of the field with the color code to thisparameter.
                                                              The field of the internal output table must be of type CHAR(3).
                                                              The code must comply with the following syntax:
                                                              'Cxy':
                                                              C = Color (each code must begin with 'C')
                                                              x = Color number ('1'-'9')
                                                              y = Intensified ('0' = off, '1' = on)
                                                              Note: The color of the key column is not affected. If you also want tocolor the key column at row or cell level, you can use complex coloringwhich is described below for parameter COLTAB_FIELDNAME.
                                                              For information on coloring columns, see the documentation on fieldcatalog parameter FIELDCAT-EMPHASIZE of IMPORTING parameterIT_FIELDCAT.
                                                              • coltab_fieldname

                                                              • Value range: SPACE, field name of the internal output table
                                                                You can color cells individually by using a color code that is set forthe row of the cells in a column of the internal output table.
                                                                You must assign the field name of the field with the color code to thisparameter.
                                                                The field of the internal output table must be of typeSLIS_T_SPECIALCOL_ALV.
                                                                Principle: The field for the color code is filled in the row in whichthe cells to be colored are located. The field then contains aninternal table of the above structure that includes the field names ofthe cells to be colored with the color code. The cell coordinates aretherefore derived from the row position in which the color code iswritten and the column information contained in the color table.
                                                                The row structure of the internal color table of typeSLIS_T_SPECIALCOL_ALV is as follows:
                                                                Farbtabelle-NAME = Field name of cell to be colored
                                                                Farbtabelle-COLOR-COL = Color number (1 - 9)
                                                                Farbtabelle-COLOR-INT = Intensified (0 = off, 1 = on)
                                                                Farbtabelle-COLOR-INV = Inverse (0 = off, 1 = on)
                                                                Farbtabelle-NOKEYCOL = Ignore key coloring ('X' = yes, ' ' = no)
                                                                If parameter Farbtabelle-NAME is not filled, all color specificationsrefer to all fields. As a result, the entire row is colored.

                                                                Default
                                                                In many cases, the default layout settings can be kept so that youfrequently do not need to pass this structure with modified flags.
                                                                Note:
                                                                All other fields not specified here explicitly are not relevant for usewith REUSE_ALV_GRID_DISPLAY or are not released.

                                                                Description
                                                                Control parameters relevant for printing

                                                                • PRINT

                                                                • Value range: SPACE, 'X'
                                                                  'X' = Print list and do not display it on the screen. Further settingscan be made on the print parameter screen.
                                                                  • NO_PRINT_SELINFOS

                                                                  • Value range: SPACE, 'X'
                                                                    'X' = Do not print existing selection information (see alsoLAYOUT-GET_SELINFOS)
                                                                    • NO_COVERPAGE

                                                                    • Value range: SPACE, 'X'
                                                                      'X' = Print selection information and list status, if available, on aseparate page.
                                                                      • NO_NEW_PAGE

                                                                      • Value range: SPACE, 'X'
                                                                        Internal use only
                                                                        • RESERVE_LINES

                                                                        • Value range: 0, n
                                                                          n = Number of lines output in the footer by the user during printout atEND_OF_PAGE in the corresponding callback event.
                                                                          • NO_PRINT_LISTINFOS

                                                                          • Value range: SPACE, 'X'
                                                                            'X' = Do not print list status (sort information, subtotals informationand filter information).
                                                                            • NO_CHANGE_PRINT_PARAMS

                                                                            • Value range: SPACE, 'X'
                                                                              SPACE = (default) The output format (number of columns) is dynamicallyadjusted depending on the list width (255 at most).
                                                                              'X' = The current print parameters are always used. If the list iswider, the output width is not adjusted dynamically.
                                                                              This parameter is currently not supported!
                                                                              Only relevant if layout parameter
                                                                              LAYOUT-GET_SELINFOS of IMPORTING structureIS_LAYOUT is set.
                                                                              Complex type for modifying information displayed on the selectiondialog box:
                                                                              • mode: 'R' = Only entries passed in internal table

                                                                              • IS_SEL_HIDE-T_ENTRIES are output on
                                                                                the dialog box. Selection information
                                                                                obtained by the list tool by reading the
                                                                                selection screen again (only if the report
                                                                                is called with selection screen) are
                                                                                replaced by the entries passed.
                                                                                'S' = The selection information obtained by the
                                                                                list tool by reading the selection screen
                                                                                of the calling report again, are modified
                                                                                by the entries of table
                                                                                IS_SEL_HIDE-T_ENTRIES.
                                                                                • t_entries: Table with selection information

                                                                                  • t_entries-mode: 'A' = Display selection information of the current

                                                                                  • table row on the information dialog box.
                                                                                    'D' = Do not display selection information of the
                                                                                    the Select option or of parameter SELNAME
                                                                                    on the dialog box.
                                                                                    • t_entries-selname: (required only if t_entries-mode = 'D')

                                                                                    • name of Select option or parameter
                                                                                      The following table fields are only required if t_entries-mode = 'A'.They contain the selection information to be added.
                                                                                      • t_entries-field: DDIC field name of the field for which selection

                                                                                      • information is to be displayed
                                                                                        • t_entries-table: DDIC table name of t_entries-field.

                                                                                          • t_entries-stext: Field description on the information dialog box.

                                                                                          • If t_entries-field and t_entries-table were
                                                                                            filled, this text is taken from the DDIC.
                                                                                            • t_entries-valuf: Selection condition from-value (external format)

                                                                                              • t_entries-valut: Selection condition to-value (external format)

                                                                                                • t_entries-sign0: (I)nclusive (E)xclusive

                                                                                                  • t_entries-optio: All values of the option field of the Select

                                                                                                  • option are allowed.
                                                                                                    The remaining fields are used internally and are irrelevant to thecaller.

                                                                                                    Description
                                                                                                    This structure is only relevant if display variants are to be savedand/or read.
                                                                                                    Variant information including the name of the list variant that is usedto output the list.
                                                                                                    To allow display variants to be read within the ALV, you must specifythe acess path using fields REPORT (required field), HANDLE (optionalfield) and/or LOG_GROUP (optional field).
                                                                                                    If you also want to allow display variants to be saved, you mustadditionally fill parameter I_SAVE accordingly.
                                                                                                    See also the documentation on IMPORTING parameterI_SAVE.
                                                                                                    A variant is uniquely described through:

                                                                                                    • The program to which the variant is assigned (REPORT)

                                                                                                      • The handle (HANDLE), if, for example, multiple lists with different
                                                                                                      • structures and data are called in a program (I_CALLBACK_PROGRAM).
                                                                                                        The handle is a CHAR(4) field that must be uniquely defined anddescribes the assignment of the call to the current structure of theinternal output table.
                                                                                                        Example:
                                                                                                        Depending on the user interaction, several types of lists can be outputin program x.
                                                                                                        The user should be able to define display variants for each type oflist.
                                                                                                        You provide this function to the user by assigning a HANDLE to eachlist. If variants for the program and the handle are saved, the handlemust not be modified any more.
                                                                                                        • The logical group, if, for example, the same list is created with
                                                                                                        • different settings through various transactions (LOG_GROUP).
                                                                                                          The logical group is a CHAR(4) that must be uniquely defined andspecifies the assignment.
                                                                                                          Example:
                                                                                                          Program x is called through transactions T1 and T2. Depending on thetransaction code, the fields available to the user through the fieldcatalog differ in their assignment to different logical groups.
                                                                                                          If variants for the program and the logical group are saved, thelogical group must not be modified any more.
                                                                                                          • The user name, if user-specific variants are saved (USERNAME).

                                                                                                          • You do not have to fill this parameter manually since the variant nameis unique.
                                                                                                            • The variant name (VARIANT).

                                                                                                            • You only have to fill this parameter if this structure is to be used toread a concrete variant and the list is to be output with this variant.

                                                                                                              Value range
                                                                                                              To call a list with a variant, you must specify the above fields.

                                                                                                              Default
                                                                                                              If the structure is initial, but saving is active (I_SAVE is notinitial), then IS_VARIANT-REPORT = I_CALLBACK_PROGRAM is set.
                                                                                                              For a possible entries help for variants, function module REUSE_ALV_VARIANT_F4 is available.

                                                                                                              Description
                                                                                                              This table is used to notify the ALV of all events that are processedby means of a CALLBACK through the caller.
                                                                                                              You can initialize the table containing the possible events for eachlist type using function module REUSE_ALV_EVENTS_GET .
                                                                                                              Using function module REUSE_ALV_EVENT_NAMES_GET, you can display the name of the constantsof type pool SLIS that represent each event. To do this, you use thesingle test function. Only events that have a form routine nameassigned to them are processed.
                                                                                                              The table structure includes the following two fields:

                                                                                                              • IT_EVENTS-NAME

                                                                                                              • Name of callback event
                                                                                                                The following callback events exist:
                                                                                                                Interaction
                                                                                                                USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
                                                                                                                RS_SELFIELD TYPE SLIS_SELFIELD
                                                                                                                Processing interactions on the list
                                                                                                                Since this is a frequently used callback event, you can also pass thecorresponding form routine directly in the interface using IMPORTINGparameter I_CALLBACK_USER_COMMAND.
                                                                                                                PF_STATUS_SET USING RT_EXTAB TYPE SLIS_T_EXTAB
                                                                                                                If you want to set a specific status for the list, you must do this inthe form routine that is assigned to this event. Parameter RT_EXTABcontains the ALV-specific function codes that must currently not beactive. You must pass this table at command SET PF-STATUS (if required,with caller-specific inactive function codes).
                                                                                                                In order to copy a user-specific status, you should use status STANDARDof function group SALV as a template.
                                                                                                                Since this is a callback event used very frequently, you can pass thecorresponding form routine directly in the interface using IMPORTINGparameterI_CALLBACK_PF_STATUS_SET.
                                                                                                                Time of list processing
                                                                                                                IMPORTANT NOTE: You must not manipulate the internal output tableand/or its header in the callback routines of the application. Thisrestriction applies to all callbacks that are called within list outputand are listed below.
                                                                                                                TOP_OF_LIST No USING parameters
                                                                                                                Possibility to display information at the beginning of the list
                                                                                                                END_OF_LIST No USING parameters
                                                                                                                Possibility to display information at the end of the list
                                                                                                                TOP_OF_PAGE No USING parameters
                                                                                                                Corresponds to TOP-OF-PAGE during list processing
                                                                                                                END_OF_PAGE No USING parameters
                                                                                                                Not available for hierarchical-sequential lists.
                                                                                                                Possibility to display information at the beginning of a page. Thiscall is only executed during the printout process.
                                                                                                                TOP_OF_COVERPAGE No USING parameters
                                                                                                                In the standard system, the selection information and the list status(if available) are output together on a separate page. For moreinformation, see also the documentation on the following parameters:
                                                                                                                IS_PRINT-NO_COVERPAGE
                                                                                                                IS_PRINT
                                                                                                                -NO_PRINT_SELINFOS
                                                                                                                IS_PRINT
                                                                                                                -NO_PRINT_LISTINFOS
                                                                                                                IS_LAYOUT
                                                                                                                -GET_SELINFOS
                                                                                                                Specifying a callback routine for this event allows the user tocustomize the header of the 'cover page'.
                                                                                                                END_OF_COVERPAGE No USING parameters
                                                                                                                As with TOP_OF_COVERPAGE, the user can append additional information atthis event to the information output by the ALV (selection information,list status).
                                                                                                                FOREIGN_TOP_OF_PAGE No USING parameters
                                                                                                                Event Top-of-page is always processed within the ALV and passed throughto the user by means of the callback mechanism only. This is also trueif the caller, based on a user interaction, for example, processes adetails list (such as a dialog box with additional information on theselected list line displayed by the ALV) not formatted by the ALV.
                                                                                                                In this case, Top-of-page must not be formatted by the ALV like thebasic list, but must entirely be handled by the caller. EventTop-of-page is nevertheless located in the ALV. If the ALV recognizesthat a Top-of-page event is processed which is not triggered by an ALVoutput, the form routine specified in FOREIGN_TOP_OF_PAGE is accessed.
                                                                                                                FOREIGN_END_OF_PAGE No USING parameters
                                                                                                                Event End-of-page is always processed within the ALV and passed throughto the user by means of the callback mechanism only. This is also trueif the caller, based on a user interaction, for example, processes adetails list (such as a dialog box with additional information on theselected list line displayed by the ALV) not formatted by the ALV.
                                                                                                                In this case, End-of-page must not be formatted by the ALV like thebasic list, but must entirely be handled by the caller. EventEnd-of-page is nevertheless located in the ALV. If the ALV recognizesthat an End-of-page event is processed which is not triggered by an ALVoutput, the form routine specified in FOREIGN_END_OF_PAGE is accessed.
                                                                                                                • IT_EVENTS-FORM

                                                                                                                • Name of the form routine that is to be executed in the calling programfor the corresponding event.

                                                                                                                  Description
                                                                                                                  This table is used to pass the standard ALV function codes for whichthe user wants to get control before and/or after their execution bymeans of the USER_COMMAND callback event.
                                                                                                                  See also the documentation on IMPORTING parameterI_CALLBACK_USER_COMMAND.
                                                                                                                  Therefore, it makes only sense to pass this table if the applicationalso wants to respond to the execution of standard functions inwhatever form.
                                                                                                                  This could be the case, for example, if authorizations for a standardfunction are to be verified or if new data is to be selected based onthe current display variant.
                                                                                                                  Note: Functions 'Back (F3)', 'Exit (F15)' and 'Cancel (F12)' are NO ALVstandard functions, but system functions. If the application wants torespond to these functions (for example, to perform a confirmationprompt before leaving the list), these functions must be assignedapplication-specific function codes.
                                                                                                                  You must fill the fields of the table as follows:

                                                                                                                  • ucomm

                                                                                                                  • Standard function code that should also be passed on by means ofcallback event USER_COMMAND.
                                                                                                                    Example:
                                                                                                                    ucomm = '&OL0' means that the application also gets control for thefunction code to define the display variant.
                                                                                                                    • before

                                                                                                                    • 'X' = The application gets control before the ALV executes thefunction.
                                                                                                                      • after

                                                                                                                      • 'X' = The application gets control after the ALV has executed thefunction, but before the list is output.
                                                                                                                        Example:
                                                                                                                        ucomm = '&OL0' and after = 'X'.
                                                                                                                        The application gets control after the user has left the dialog box fordefining the display variant.
                                                                                                                        In the corresponding form routine for processing the function codescommunicated to the ALV through parameter I_CALLBACK_USER_COMMAND, theapplication could now use function module REUSE_ALV_LIST_LAYOUT_INFO_GET to obtain the field catalog that may have been modified as a resultof the user interaction and then select the data for the newly addedoutput fields into the internal output table.
                                                                                                                        If, after the selection, the application sets the SELFIELD-REFRESH ='X' indicator (reference parameter of the USER_COMMAND form routineinterface), the list is output again. The system then displays theoutput fields added by the user and the newly selected data.

                                                                                                                        Description
                                                                                                                        Optional IMPORTING parameter IT_EXCLUDING is an internal table. Youmust only fill this table if the caller uses the standard interface ofthe list tool but does not need certain interface functions andtherefore wants to disable them.
                                                                                                                        In this case, you must enter the function codes of these standardfunctions into the table.

                                                                                                                        Description
                                                                                                                        Field catalog containing the field descriptions of the fields to beconsidered for the list output (usually, this is a subset of the fieldsin the internal output table).
                                                                                                                        Basically, you need a field catalog for each list output that uses theALV.
                                                                                                                        The field catalog associated with the output table is generated in thecode of the caller. You can generate the field catalog automatically orsemi-automatically by calling function moduleREUSE_ALV_FIELDCATALOG_MERGE.
                                                                                                                        See also the documentation on function module REUSE_ALV_FIELDCATALOG_MERGE.
                                                                                                                        The minimum values required for the field catalog are documented in the'Default' section. The caller can optionally use all other parametersto assign non-standard output attributes to a field.
                                                                                                                        It is only in the following cases that you are not required to generatethe field catalog and pass it explicitly:

                                                                                                                        • The structure of the internal table to be output corresponds to a
                                                                                                                        • structure stored in the Data Dictionary and is referenced with LIKE orINCLUDE STRUCTURE in the declaration of the internal table.
                                                                                                                          • All fields of this structure should be output in the list.

                                                                                                                          • The structure name is declared to the ALV using parameter
                                                                                                                          • I_STRUCTURE_NAME.
                                                                                                                            See also the documentation on IMPORTNG parameter I_STRUCTURE_NAME
                                                                                                                            .
                                                                                                                            Positioning
                                                                                                                            • col_pos (column position)

                                                                                                                            • Value range: 0, 1 - 60
                                                                                                                              Only relevant if the relative column positions should by default not beidentical to the sequence of the fields in the field catalog.
                                                                                                                              The parameter determines the relative column position of the field inthe list output. The column sequence can interactively be changed bythe user. If this parameter is set to its initial value for each fieldcatalog entry, the columns are arranged in the order of the fields inthe field catalog.
                                                                                                                              Identification
                                                                                                                              • fieldname (field name)

                                                                                                                              • Value range: Field name of the internal output table (requiredparameter)
                                                                                                                                Field name of the field in the internal output table that is describedby this field catalog entry.
                                                                                                                                Reference to the Data Dictionary
                                                                                                                                • ref_fieldname (field name of the reference field)

                                                                                                                                • Value range: SPACE, name of a field in the Data Dictionary
                                                                                                                                  Name of the referenced field in the Data Dictionary.
                                                                                                                                  This parameter is only required if the field in the internal outputtable that is described by the current entry in the field catalog has areference to the Data Dictionary (that is, is not a program field) andif the field name in the internal output table is not identical to thefield name of the field in the Data Dictionary. If both field names areidentical, it is sufficient to specify the Data Dictionary structure ortable in parameter FIELDCAT-REF_TABNAME.
                                                                                                                                  • ref_tabname (field name of the reference table/structure)

                                                                                                                                  • Value range: SPACE, name of a structure or table in the Data Dictionary
                                                                                                                                    Structure or table name of the referenced field in the Data Dictionary.
                                                                                                                                    This parameter is only required if the field in the internal outputtable that is described by the current entry in the field catalog has areference to the Data Dictionary (that is, is not a program field).
                                                                                                                                    Reference to fields with currency units/units of measure
                                                                                                                                    Each amount or quantity field of the internal output table whosedecimal places are to be displayed with the proper unit in the listoutput, must comply with the following conventions:
                                                                                                                                    The field is of data type QUAN or CURR (internal type P).
                                                                                                                                    (Physically, the field must actually belong to this data type.Overriding the physical data type with parameter FIELDCAT-DATATYPE hasno effect.)
                                                                                                                                    There is one field in the internal output table that contains therelevant unit.
                                                                                                                                    There is also an entry for the unit field in the field catalog.
                                                                                                                                    (If the unit should not be displayed as a column in the list and theuser should not be able to show the unit interactively, for example,because the unit is always unique and therefore explicitly output bythe caller in the list header, then you can assign parameterFIELDCAT-TECH = 'X' to the field catalog entry for the unit field.
                                                                                                                                    If a value field has a reference to a unit, this has the followingeffects when the list is output:
                                                                                                                                    The decimal places are displayed with the proper unit.
                                                                                                                                    An initial value field with reference to a non-initial unit isdisplayed as '0' (provided that FIELDCAT-NO_ZERO is initial). Ifunit-specific totals are calculated for this value field, the unit isconsidered in the analysis of whether homogeneous units exist.
                                                                                                                                    An initial value field with reference to an initial unit is displayedas SPACE. If unit-specific totals are calculated for this value field,the unit SPACE has no effect on the homogeneity of the unit if thevalue field is initial.
                                                                                                                                    For non-initial value fields with initial unit, the unit SPACE isconsidered as a unit when unit-specific totals are calculated.
                                                                                                                                    Reference to the currency unit
                                                                                                                                    • cfieldname (field name of the currency unit field)

                                                                                                                                    • Value range: SPACE, name of a field of the output table
                                                                                                                                      Only relevant to amount columns with unit reference.
                                                                                                                                      Field name of the field in the internal output table that contains thecurrency unit for the amount field FIELDCAT-FIELDNAME.
                                                                                                                                      There must be a separate field catalog entry for the field specified inFIELDCAT-CFIELDNAME.
                                                                                                                                      Reference to the unit of measure
                                                                                                                                      • qfieldname (field name of the unit of measure field)

                                                                                                                                      • Value range: SPACE, name of a field of the output table
                                                                                                                                        Only relevant to quantity columns with unit reference.
                                                                                                                                        Field name of the field in the internal output table that contains theunit of measure for the amount field FIELDCAT-FIELDNAME.
                                                                                                                                        There must be a separate field catalog entry for the field specified inFIELDCAT-QFIELDNAME.
                                                                                                                                        Output options for a column
                                                                                                                                        • outputlen (column width)

                                                                                                                                        • Value range: 0 (initial), n
                                                                                                                                          For fields with reference to the Data Dictionary you can leave thisparameter set to initial.
                                                                                                                                          For fields without reference to the Data Dictionary (program fields)you must set the parameter to the desired field output length on thelist (column width).
                                                                                                                                          initial = The column width is derived from the output length of thereferenced field (domain) in the Data Dictionary.
                                                                                                                                          n = The column width is n characters.
                                                                                                                                          • key (key column)

                                                                                                                                          • Value range: SPACE, 'X'
                                                                                                                                            'X' = Key field (colored output for key fields)
                                                                                                                                            Key fields cannot be hidden interactively by the user.
                                                                                                                                            Parameter FIELDCAT-NO_OUT must be left set to initial.
                                                                                                                                            For exceptions, see the documentation on parameter FIELDCAT-KEY_SEL.
                                                                                                                                            • key_sel (key column that can be hidden)

                                                                                                                                            • Value range: SPACE, 'X'
                                                                                                                                              Only relevant if FIELDCAT-KEY = 'X'
                                                                                                                                              Key field that can be hidden interactively by the user.
                                                                                                                                              The user cannot interactively change the sequence of the key columns.
                                                                                                                                              As with non-key fields, output control is performed using parameterFIELDCAT-NO_OUT.
                                                                                                                                              • no_out (field in the available fields list)

                                                                                                                                              • Value range: SPACE, 'X'
                                                                                                                                                'X' = Field is not displayed on the current list.
                                                                                                                                                The field is available to the user in the field list and can beinteractively selected as a display field.
                                                                                                                                                At row level, the user can use the detail function to display thecontent of these fields.
                                                                                                                                                See also the documentation on the 'Detail screen' section of parameterIS_LAYOUT.
                                                                                                                                                • tech (technical field)

                                                                                                                                                • Value range: SPACE, 'X'
                                                                                                                                                  'X' = Technical field
                                                                                                                                                  The field cannot be output on the list and cannot be showninteractively by the user.
                                                                                                                                                  The field may only be used in the field catalog (not in IT_SORT, ...).
                                                                                                                                                  • emphasize (highlight column in color)

                                                                                                                                                  • Value range: SPACE, 'X' or 'Cxyz' (x:'1'-'9'; y,z: '0'=off '1'=on)
                                                                                                                                                    'X' = The column is highlighted in the default color for colorhighlighting.
                                                                                                                                                    'Cxyz' = The column is highlighted in the coded color:
                                                                                                                                                    C: Color (coding must start with C)
                                                                                                                                                    x: Color number
                                                                                                                                                    y: Intensified
                                                                                                                                                    z: Inverse
                                                                                                                                                    • hotspot (column as hotspot)

                                                                                                                                                    • Value range: SPACE, 'X'
                                                                                                                                                      'X' = The cells of the column are output as a hotspot.
                                                                                                                                                      • do_sum (calculate totals for column)

                                                                                                                                                      • Value range: SPACE, 'X'
                                                                                                                                                        'X' = Totals are calculated for this field of the internal outputtable.
                                                                                                                                                        This function can also be used interactively by the user.
                                                                                                                                                        • no_sum (totals calculation not allowed)

                                                                                                                                                        • Value range: SPACE, 'X'
                                                                                                                                                          'X' = No totals may be calculated for this field although the data typeof the field allows totalling.
                                                                                                                                                          Formatting column contents
                                                                                                                                                          • icon (icon)

                                                                                                                                                          • Value range: SPACE, 'X'
                                                                                                                                                            'X' = The column contents are displayed as an icon.
                                                                                                                                                            The column contents of the internal output table must consist of validicon strings (@xx@).
                                                                                                                                                            The caller should consider the problem of printing icons.
                                                                                                                                                            • symbol (symbol)

                                                                                                                                                            • Value range: SPACE, 'X'
                                                                                                                                                              'X' = The column contents are output as a symbol.
                                                                                                                                                              The column contents of the internal output table must consist of validsymbol characters.
                                                                                                                                                              The caller should consider the problem of printing symbols.
                                                                                                                                                              Although symbols can generally be printed, they are not always showncorrectly depending on the printer configuration.
                                                                                                                                                              • just (justification)

                                                                                                                                                              • Value range: SPACE, 'R', 'L', 'C'
                                                                                                                                                                Only relevant to fields of data type CHAR or NUMC
                                                                                                                                                                ' ' = Default justification according to data type
                                                                                                                                                                'R' = Right-justified output
                                                                                                                                                                'L' = Left-justified output
                                                                                                                                                                'C' = Centered output
                                                                                                                                                                The justification of the column header depends on the justification ofthe column contents. You cannot justify the column header independentlyof the column contents.
                                                                                                                                                                • lzero (leading zeros)

                                                                                                                                                                • Value range: SPACE, 'X'
                                                                                                                                                                  Only relevant to fields of data type NUMC
                                                                                                                                                                  By default, NUMC fields are output in the ALV right-justified withoutleading zeros.
                                                                                                                                                                  'X' = Output with leading zeros
                                                                                                                                                                  • no_sign (no +/- sign)

                                                                                                                                                                  • Value range: SPACE, 'X'
                                                                                                                                                                    Only relevant to value fields
                                                                                                                                                                    'X' = Value output without +/- signs.
                                                                                                                                                                    • no_zero (suppress zeros)

                                                                                                                                                                    • Value range: SPACE, 'X'
                                                                                                                                                                      Only relevant to value fields
                                                                                                                                                                      'X' = Supress zeros
                                                                                                                                                                      • edit_mask (field formatting)

                                                                                                                                                                      • Value range: SPACE, mask
                                                                                                                                                                        mask = See documentation on the WRITE formatting option
                                                                                                                                                                        USING EDIT MASK mask
                                                                                                                                                                        Using mask = '== conv' you can force an output conversion conv.
                                                                                                                                                                        Texts
                                                                                                                                                                        The following parameters for texts are always required for programfields without reference to the Data Dictionary.
                                                                                                                                                                        For fields with reference to the Data Dictionary, the texts areretrieved from the Data Dictionary. If you do not want this, you canfill the text parameters also for fields with reference to the DataDictionary. If you do this, the corresponding texts from the DataDictionary will be ignored.
                                                                                                                                                                        If the user changes the column width interactively, the text with theappropriate length is always used as the column header.
                                                                                                                                                                        If the user optimizes the column width interactively, both the fieldcontents and the column headings are considered for the list output:
                                                                                                                                                                        If all field contents are shorter than the shortest column heading, thecolumn width is set based on the column heading.
                                                                                                                                                                        The long field label is also used in the dialog boxes for defining thedisplay variant, the sort order, and so on.
                                                                                                                                                                        • seltext_l (long field label)

                                                                                                                                                                          • seltext_m (medium field label)

                                                                                                                                                                            • seltext_s (short field label)

                                                                                                                                                                              • reptext_ddic (heading)

                                                                                                                                                                              • Same as the 'heading' for data element maintenance.
                                                                                                                                                                                When the list is output, the system does not necessarily retrieve thetext stored here, but uses the text that fits best.
                                                                                                                                                                                • ddictxt (determine text)

                                                                                                                                                                                • Value range: SPACE, 'L', 'M', 'S', 'R'
                                                                                                                                                                                  Using possible values 'L', 'M', 'S', 'R' you can predefine the keywordthat should always be retrieved as the column header. If the columnwidth is changed, the system tries to find a heading that fits the newoutput width.
                                                                                                                                                                                  Parameter for program fields without reference to the Data Dictionary
                                                                                                                                                                                  See also the parameter in the 'Texts' section.
                                                                                                                                                                                  • datatype (data type)

                                                                                                                                                                                  • Value range: SPACE, data type from the Data Dictionary (CHAR, NUMC,...)
                                                                                                                                                                                    Only relevant to fields without reference to the Data Dictionary.
                                                                                                                                                                                    Data type of program field
                                                                                                                                                                                    • ddic_outputlen (external output length)

                                                                                                                                                                                    • Value range: 0 (initial), n
                                                                                                                                                                                      Only relevant to fields without reference to the Data Dictionary whoseoutput should nevertheless be modified using a conversion exit.
                                                                                                                                                                                      Prerequisites:
                                                                                                                                                                                      FIELDCAT-EDIT_MASK = '==conv'
                                                                                                                                                                                      See also the documentation on parameter FIELDCAT-EDIT_MASK
                                                                                                                                                                                      FIELDCAT-INTLEN = n
                                                                                                                                                                                      See documentation on parameter FIELDCAT-INTLEN
                                                                                                                                                                                      n = Field output length of the external display
                                                                                                                                                                                      The column width FIELDCAT-OUTPUTLEN must not be equivalent to theoutput length of the external display (FIELDCAT-DDIC_OUTPUTLEN).
                                                                                                                                                                                      • intlen (internal output length)

                                                                                                                                                                                      • Value range: 0 (initial), n
                                                                                                                                                                                        Only relevant to fields without reference to the Data Dictionary whoseoutput should nevertheless be modified using a conversion exit.
                                                                                                                                                                                        Prerequisites:
                                                                                                                                                                                        FIELDCAT-EDIT_MASK = '==conv'
                                                                                                                                                                                        See also the documentation on parameter FIELDCAT-EDIT_MASK
                                                                                                                                                                                        FIELDCAT-DDIC_OUTPUTLEN = n
                                                                                                                                                                                        See also the documentation on parameter FIELDCAT-DDIC_OUTPUTLEN
                                                                                                                                                                                        n = Field output length of the internal display
                                                                                                                                                                                        • rollname (data element)

                                                                                                                                                                                        • Value range: SPACE, name of a data element from the Data Dictionary
                                                                                                                                                                                          You can use this parameter to provide an F1 help for a program fieldwithout reference to the Data Dictionary or to provide an F1 help otherthan that of the Data Dictionary for a field with reference to the DataDictionary.
                                                                                                                                                                                          When the F1 help is called for this field, the documentation for thedata element assigned is displayed.
                                                                                                                                                                                          If, for fields with reference to the Data Dictionary, FIELDCAT-ROLLNAMEis initial, the documentation for the data element of the referencedfield in the Data Dictionary is displayed.
                                                                                                                                                                                          Other
                                                                                                                                                                                          • sp_group (field group key)

                                                                                                                                                                                          • Value range: SPACE, CHAR(1)
                                                                                                                                                                                            Key for grouping fields
                                                                                                                                                                                            You assign the key to the group description using parameterIT_SPECIAL_GROUPS (see also the documentation on parameterIT_SPECIAL_GROUPS).
                                                                                                                                                                                            If you define such an assignment in the field catalog usingIT_SPECIAL_GROUPS, the fields in the field list of the display variantdialog box are grouped accordingly.
                                                                                                                                                                                            • reprep (selection criterion of the report/report interface)

                                                                                                                                                                                            • Value range: SPACE, 'X'
                                                                                                                                                                                              Prerequisites:
                                                                                                                                                                                              The report/report interface exists in the system.
                                                                                                                                                                                              (function group RSTI, table TRSTI)
                                                                                                                                                                                              Parameter LAYOUT-REPREP = 'X'
                                                                                                                                                                                              (See also the documentation on parameter
                                                                                                                                                                                              LAYOUT-REPREP of IMPORTING parameter
                                                                                                                                                                                              IS_LAYOUT)
                                                                                                                                                                                              'X' = If the report/report interface is called, the value of this fieldis passed as a selection criterion in the selected branch line of theinterface.

                                                                                                                                                                                              Default

                                                                                                                                                                                              • For internal table fields with reference to a field defined in the Data
                                                                                                                                                                                              • Dictionary, it is normally sufficient to make the followingspecifications:
                                                                                                                                                                                                fieldname
                                                                                                                                                                                                ref_tabname
                                                                                                                                                                                                Note:
                                                                                                                                                                                                All fields not explicitly mentioned here are either not relevant inthis context or are not released!
                                                                                                                                                                                                All other information is retrieved by the ALV from the Data Dictionary.
                                                                                                                                                                                                If you do not specify the relative column position (COL_POS), thefields are output in the list in the order in which they were added tothe field catalog.
                                                                                                                                                                                                REF_FIELDNAME must only be specified if the field name of the internaltable field is not identical to the field name of the referenced fieldin the Data Dictionary.
                                                                                                                                                                                                Priority rule:
                                                                                                                                                                                                Specifications made in the field catalog take priority overspecifications in the Data Dictionary.
                                                                                                                                                                                                • For internal table fields without reference to the Data Dictionary
                                                                                                                                                                                                • (program fields), it is normally sufficient to make the followingspecifications:
                                                                                                                                                                                                  fieldname
                                                                                                                                                                                                  outputlen
                                                                                                                                                                                                  datatype (without data type, character is the default)
                                                                                                                                                                                                  seltext_s
                                                                                                                                                                                                  seltext_l
                                                                                                                                                                                                  Note:
                                                                                                                                                                                                  If you assign a data element to parameter ROLLNAME, you can, forexample, implement an F1 help for program fields.

                                                                                                                                                                                                  Description
                                                                                                                                                                                                  Table with filter criteria
                                                                                                                                                                                                  Using this parameter, you can pass on filter criteria resulting fromexplicitly loading a display variant in advance, for example, to listoutput.
                                                                                                                                                                                                  This table should never be set up 'manually'.

                                                                                                                                                                                                  Description
                                                                                                                                                                                                  Using internal table IT_SORT, the caller determines the sort orderand/or the subtotalling of the basic list.
                                                                                                                                                                                                  The following fields of this internal table must be filled:

                                                                                                                                                                                                  • spos

                                                                                                                                                                                                  • Sort order
                                                                                                                                                                                                    • fieldname

                                                                                                                                                                                                    • Field name in the internal output table
                                                                                                                                                                                                      • up

                                                                                                                                                                                                      • 'X' = Sorted in ascending order
                                                                                                                                                                                                        • down

                                                                                                                                                                                                        • 'X' = Sorted in descending order
                                                                                                                                                                                                          subtot
                                                                                                                                                                                                          'X' = Subtotals for control level changes
                                                                                                                                                                                                          • comp (INTERNAL USE ONLY)

                                                                                                                                                                                                            • expa

                                                                                                                                                                                                            • Prequisite:
                                                                                                                                                                                                              IT_SORT-SUBTOT = 'X', that is, the sort criterion is also the subtotalscriterion.
                                                                                                                                                                                                              If no complete breakdown but only a breakdown to totals level n thatcan be further expanded by the user should be displayed when the listis output for the first time, you must set the indicator for the totalslevel criterion of level n.

                                                                                                                                                                                                              Description
                                                                                                                                                                                                              If fields were grouped in the field catalog based on a commom value forparameter SP_GROUP, an assignment is made in this internal tablebetween the technical key of the group (FIELDCAT-SP_GROUP) and theassociated field group text.
                                                                                                                                                                                                              See also the documentation on field catalog parameter
                                                                                                                                                                                                              FIELDCAT-SP_GROUP of IMPORTING parameterIT_FIELDCAT.

                                                                                                                                                                                                              Description
                                                                                                                                                                                                              You can use this parameter to pass a wallpaper for the output inTop-of-Page.
                                                                                                                                                                                                              Caution: Since wallpaper-based formatting does not ensure astandards-based display of the page area in the new design, you shouldonly use this parameter in exceptional cases.
                                                                                                                                                                                                              Description
                                                                                                                                                                                                              In this parameter, you can pass a form for the online handling ofend-of-list. The form must have the followiong format:
                                                                                                                                                                                                              form end_of_list using cl_dd type ref to cl_dd_document.

                                                                                                                                                                                                              Description
                                                                                                                                                                                                              If function module REUSE_ALV_COMMENTARY_WRITE is not used in the formfor I_CALLBACK_TOP_OF_PAGE, the form routine must be passed inparameter I_CALLBACK_HTML_TOP_OF_PAGE for the online mode. The formshould then have the following format:
                                                                                                                                                                                                              form top_of_page using cl_dd type ref to cl_dd_document.
                                                                                                                                                                                                              In the form, you can, for example, use methods of class CL_DD_DOCUMENTto display text in HTML format.
                                                                                                                                                                                                              Passing an EXIT routine indicates to the ALV that the caller wants toset a self-defined user status.
                                                                                                                                                                                                              As a result, the default status of the ALV is not set.
                                                                                                                                                                                                              The interface of the form routine specified must be defined as follows:
                                                                                                                                                                                                              FORM set_pf_status USING rt_extab TYPE slis_t_extab
                                                                                                                                                                                                              Table RT_EXTAB contains the function codes that would be hidden on thestandard user interface.
                                                                                                                                                                                                              If the caller wants to use a self-defined user interface (for example,in order to provide additional list functions or use existing functions)
                                                                                                                                                                                                              , we recommend that you copy standard status STANDARD_FULLSCREEN fromfunction group SLVC_FULLSCREEN and modify it accordingly. ALV standardfunction codes always start with '&'.
                                                                                                                                                                                                              See also the documentation on parameterI_CALLBACK_USER_COMMAND.
                                                                                                                                                                                                              If a self-defined user interface is used that includes function codes ofthe standard user interface, the function codes of the excluding tablepassed should be taken into account.
                                                                                                                                                                                                              This means that the user status should generally be set as follows:
                                                                                                                                                                                                              SET PF-STATUS user status EXCLUDING rt_extab.
                                                                                                                                                                                                              Application functions can be added to excluding table rt_extab if theyare to be disabled.
                                                                                                                                                                                                              The routine is called whenever the standard user interface would be setwith SET PF-STATUS.

                                                                                                                                                                                                              Default
                                                                                                                                                                                                              If no EXIT routine is specified, the ALV sets a status that correspondsto status STANDARD_FULLSCREEN of function group SLVC_FULLSCREEN.

                                                                                                                                                                                                              Description
                                                                                                                                                                                                              Program from which the function module is called and that contains theexit routines.The program should always be a report, function group,module pool or form routine pool (it should not be an include).
                                                                                                                                                                                                              Caution: Never pass SY-REPID directly at the interface. If fieldSY-REPID contains the desired program name, you must absolutely assignthis name to an auxiliary variable and pass this variable to theinterface.
                                                                                                                                                                                                              Value range

                                                                                                                                                                                                              Description
                                                                                                                                                                                                              If the caller specifies an EXIT routine, this routine must have thefollowing form:
                                                                                                                                                                                                              FORM top_of_page.
                                                                                                                                                                                                              Module REUSE_ALV_COMMENTARY_WRITE can then be called within the EXITroutine. This module is responsible for formatting the headerinformation and also ensures online HTML formatting. In the printpreview or in batch mode, the text passed is then output in the normalformat.
                                                                                                                                                                                                              If module REUSE_ALV_COMMENTARY_WRITE cannot be used, you must use twoparameters instead. In I_CALLBACK_TOP_OF_PAGE you pass the form routinethat is responsible for normal formatting in batch mode or in the printpreview mode. The form routine that is responsible for onlineformatting, is passed in parameter I_CALLBACK_HTML_TOP_OF_PAGE. If oneof these parameters is not filled, top-of-page is not output in therespective mode.

                                                                                                                                                                                                              Description
                                                                                                                                                                                                              Passing an EXIT routine indicates to the ALV that the application wantsto respond to certain function codes.
                                                                                                                                                                                                              Generally, these are function codes that are unknown to the ALV (thatis, are not standard ALV functions) and that were defined and set by auser status.
                                                                                                                                                                                                              See also the documentation on parameterI_CALLBACK_PF_STATUS_SET.
                                                                                                                                                                                                              The interface of the form routine specified must be defined as follows:
                                                                                                                                                                                                              FORM user_command USING r_ucomm LIKE sy-ucomm
                                                                                                                                                                                                              rs_selfield TYPE slis_selfield.
                                                                                                                                                                                                              Parameter R_UCOMM contains the function code triggered.
                                                                                                                                                                                                              Structure RS_SELFIELD contains the following information:

                                                                                                                                                                                                              • tabname : Name of the internal output table

                                                                                                                                                                                                              • tabindex : Index of the internal output table

                                                                                                                                                                                                              • fieldname: Field name

                                                                                                                                                                                                              • endsum : Cursor is located on the totals line

                                                                                                                                                                                                              • sumindex : If >0, the cursor is located on a subtotals line

                                                                                                                                                                                                              • value : Value of the field on the list

                                                                                                                                                                                                              • refresh : (Exporting) List should be set up again

                                                                                                                                                                                                              • col_stable:(Exporting) Keep column position when list is set up again

                                                                                                                                                                                                              • row_stable:(Exporting) Keep row position when list is set up again

                                                                                                                                                                                                              • exit :(Exporting) Exit list (and ALV)

                                                                                                                                                                                                              • before_action: Call before standard action execution

                                                                                                                                                                                                              • after_action : Call after standard action execution, before list setup

                                                                                                                                                                                                              • ignore_multi : Internal use

                                                                                                                                                                                                              • sel_tab_field: Internal use

                                                                                                                                                                                                              • The EXIT routine is called whenever a function unknown to the ALV istriggered or if the routine call before/after the execution of astandard function code has been defined by interface parameterIT_EVENT_EXIT.
                                                                                                                                                                                                                See also the documentation on parameterIT_EVENT_EXIT.
                                                                                                                                                                                                                The function code and the current cursor position are then passed on tothe calling program through the EXIT routine.
                                                                                                                                                                                                                If the user has selected multiple rows by selecting checkboxes, theoutput table field designated as the checkbox contains the currentstate of the checkbox in the list.

                                                                                                                                                                                                                Description
                                                                                                                                                                                                                Initial variant maintenance active/inactive. .
                                                                                                                                                                                                                Prerequisite:
                                                                                                                                                                                                                Parameter IS_VARIANT is filled accordingly.
                                                                                                                                                                                                                See also the documentation on the IMPORTING parameterIS_VARIANT.

                                                                                                                                                                                                                Value range
                                                                                                                                                                                                                SPACE = Definition of initial variants not allowed
                                                                                                                                                                                                                'X' = Definition of initial variants allowed

                                                                                                                                                                                                                Default
                                                                                                                                                                                                                SPACE

                                                                                                                                                                                                                Description
                                                                                                                                                                                                                If Top-of-Page or End-of-List are output online, these areas aredisplayed in a splitter above or below the list. Using I_GRID_SETTINGSyou can reduce the default size to 0%. To do this, you use two fields:
                                                                                                                                                                                                                COLL_TOP_P: Sets Top-of-Page to 0%
                                                                                                                                                                                                                COLL_END_L: Sets End-of-List to 0%

                                                                                                                                                                                                                Description
                                                                                                                                                                                                                Specifies the title of the control. This text is displayed above thegrid.

                                                                                                                                                                                                                Description
                                                                                                                                                                                                                So that the performance of the list output is not reduced due tointerface consistency checks, these checks are performed in a specialcall mode.
                                                                                                                                                                                                                If this parameter is set to 'X', interface consistency is checked whenthe function module is called and an error log is displayed.
                                                                                                                                                                                                                You should only set this parameter for testing purposes during thedevelopment process (for example, for debugging).
                                                                                                                                                                                                                You can also perform the interface check on the result list by enteringfunction code &SOS.
                                                                                                                                                                                                                THIS PARAMETER IS CURRENTLY NOT SUPPORTED IN FULLSCREEN MODE! As aworkaround, go to the print preview from within the list and enterfunction code &SOS there.

                                                                                                                                                                                                                Default
                                                                                                                                                                                                                SPACE

                                                                                                                                                                                                                Description
                                                                                                                                                                                                                Controls the save mode
                                                                                                                                                                                                                Prerequisite:
                                                                                                                                                                                                                Parameter IS_VARIANT is filled accordingly.
                                                                                                                                                                                                                See also the documentation on IMPORTING parameterIS_VARIANT.

                                                                                                                                                                                                                Value range

                                                                                                                                                                                                                • ' ' = Display variants cannot be saved

                                                                                                                                                                                                                • Defined display variants (such as delivered display variants) can beselected for presentation regardless of this indicator. However,changes cannot be saved.
                                                                                                                                                                                                                  • 'X' = Standard save mode

                                                                                                                                                                                                                  • Display variants can be saved as standard display variants.
                                                                                                                                                                                                                    Saving display variants as user-specific is not possible.
                                                                                                                                                                                                                    • 'U' = User-specific save mode

                                                                                                                                                                                                                    • Display variants can only be saved as user-specific.
                                                                                                                                                                                                                      • 'A' = Standard and user-specific save mode

                                                                                                                                                                                                                      • Display variants can be saved both as user-specific and as standard
                                                                                                                                                                                                                        variants. Users make their choice on the dialog box for saving the
                                                                                                                                                                                                                        display variant.

                                                                                                                                                                                                                        Default
                                                                                                                                                                                                                        SPACE

                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                        Only required if the list is to be output in a dialog box.
                                                                                                                                                                                                                        X coordinate of the bottom right corner of the dialog box.

                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                        Only required if the list is to be output in a dialog box.
                                                                                                                                                                                                                        Y coordinate of the bottom right corner of the dialog box.

                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                        Only required if the list is to be output in a dialog box.
                                                                                                                                                                                                                        X Coordinate of the top left corner of the dialog box.

                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                        Only required if the list is to be output in a dialog box.
                                                                                                                                                                                                                        Y coordinate of the top left corner of the dialog box.

                                                                                                                                                                                                                        Description
                                                                                                                                                                                                                        If the internal output table is defined through an ABAP Dictionarystructure (INCLUDE STRUCTURE struct or LIKE struct), you canautomatically set up the field catalog by passing the structure name.
                                                                                                                                                                                                                        The field catalog is then internally set up for this structure asfollows:

                                                                                                                                                                                                                        • All fields are on the list (NO_OUT = SPACE) except fields of data type
                                                                                                                                                                                                                        • CLNT.
                                                                                                                                                                                                                          • The key fields of the Dictionary structure are adopted in the field
                                                                                                                                                                                                                          • catalog as key fields.
                                                                                                                                                                                                                            • References to unit fields stored in the Dictionary are adopted provided
                                                                                                                                                                                                                            • that the reference fields are contained in the structure.
                                                                                                                                                                                                                              • If you additionally pass a field catalog as parameter, the structure
                                                                                                                                                                                                                              • information is merged with this field catalog.
                                                                                                                                                                                                                                For more information on how to set up the field catalog automatically,see the documentation on function module REUSE_ALV_FIELDCATALOG_MERGE.

                                                                                                                                                                                                                                Description
                                                                                                                                                                                                                                Internal table of whatever structure that contains the data to bedisplayed as a list.
                                                                                                                                                                                                                                This table can contain more fields than are relevant for the listoutput (display fields and field list).
                                                                                                                                                                                                                                Only the fields specified in the field catalog and in the layoutstructure (if applicable) are used for the list output. All otherfields of the internal table are ignored.
                                                                                                                                                                                                                                In the field catalog, you can then use field FIELDCAT-NO_OUT todetermine if a field should be output directly on the list or if thefield is initially put in the field list.
                                                                                                                                                                                                                                From this field list, users can interactively select more displayfields for the list (or hide display lists from the list)
                                                                                                                                                                                                                                If the internal table is defined in the calling program without aheader line, no F1 help is available for the list body.

1693607ALV view: Checking XLSX/XLSM templates in or out
1760176ALV-Export: Display of XLSM and XLSX templates
1448353ALV export: Signed template as standard template
1686797ALV Excel: Signed SAP standard templates
1522778ALV View: Templates with XLSX extension cannot be selected
1495868COGI: runtime error LIST_TOO_MANY_LPROS
1359922Status handling ALV (full screen)
1275534WD ABAP ALV Short dump when exporting to Excel
1338452ALV toolbar: Activating functions in WebGui
888631ALV filter: Empty cells cause F4 help to dump
870135ALV filter: Cannot filter columns of the type 'String'
619525Display Product Allocation Group using ALV list Grid
306882VL10: 'Save display variant' can be activated
365546ALV buffer: you cannot select variants
215327Shared-buffer buffering deactivation in 4.6B