Overview Screen Selection Notes

To exclude specified selected entries from the selection-relevant function, the entries must be deselected in the individual routine before the function (e.g. event 03). The entries must be reselected after the function (e.g. event 04), to show the user that these entries were not processed.

Realization

If the user is in the overview screen, the STATUS-MODE field contains the constant LIST_BILD.

  • Activities before calling the requested function: The selection flag of the table record <MARK> or <XMARK>) must be given the constant value UEBERGEHEN (skip) in the individual routine before the function. The selection flag reset should be noted in the variables IGNORED_ENTRIES_EXIST for further processing.
  • Procedure:
    LOOP AT EXTRACT.
    <check entry>.
    IF <cannot be processed>
    <poss. set HyperLink: TX.SM30_EXIT_IGNORE IGNORED_ENTRIES_EXIST v> = 'X'.>
    MOVE UEBERGEHEN TO <XMARK>.
    READ TABLE TOTAL WITH KEY <VIM_EXTRACT_KEY> BINARY SEARCH.
    MOVE UEBERGEHEN TO <MARK>.
    MODIFY TOTAL INDEX SY-TABIX.
    MODIFY EXTRACT.
    endif.
    ENDLOOP.
  • Activities after performing the requested function:

The entries with skip flag are reset to 'Selected' in the standard after performing the function, and the user is informed by message that the function was not performed. If this is the only activity after the event, no user EXIT routine is required, if the variable IGNORED_ENTRIES_EXIST has been set.

If other activities than resetting the selections are required, they must be performed in a user routine (e.g. event 04). This routine must convert the skip flag back into a selection and send a message. The routine 'MARK_IGNORED_ENTRIES' can do this. It can be called at the end of the EXIT routine.

  • Procedure:

LOOP AT TOTAL.
CHECK <MARK> EQ UEBERGEHEN.
<user actions>
ENDLOOP.
PERFORM MARK_IGNORED_ENTRIES CHANGING NUMBER.
<user actions>

NUMBER is of type I and contains the number of records skipped.

Use the internal table EXTRACT. This ensures that only entries which the user has seen are processed.

Entry existence checks should always use the table TOTAL.