Ansicht
Dokumentation

REPLACE_SET_VALUE - Ersetzen eines Feldinhaltes in einem Tabellenfeld

REPLACE_SET_VALUE - Ersetzen eines Feldinhaltes in einem Tabellenfeld

CL_GUI_FRONTEND_SERVICES - Frontend Services   PERFORM Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Über die Funktionsbausteine REPLACE_GET_FIELD und REPLACE_SET_VALUE wird eine Ersetzfunktion realisiert.

In REPLACE_GET_FIELD werden über ein Dialogfenster alle Felder der mit TABLE spezifizierten Tabelle zur Auswahl angeboten. Die in EXCLUDE_FIELDS definierten Felder werden dabei ignoriert.
Nach erfolgter Auswahl eines Feldes wird dieses Feld zur Eingabe angeboten. Der eingegebene Wert wird intern gespeichert und für die Funktion REPLACE_SET_VALUE bereitgestellt.
Dieser Funktion übergeben Sie mit OLD_TABLE einen Datenbereich, der mit der mit TABLE spezifizierten Tabelle übereinstimmen muß. Nach der Länge dieser Struktur können beliebige Felder angehängt werden, die aber nicht von den Funktionsbausteinen erkannt werden. In NEW_TABLE werden die geänderten Daten wieder bereitgestellt.
Ein Anwendungsbeispiel für diese beiden Funktionsbausteine ist die Funktion Korrigieren in der erweiterten Tabellenpflege.

Beispiel:
DATA: BEGIN OF T001_TAB OCCURS 10.
INCLUDE STRUCTURE T001.
DATA: MARK(1) TYPE C,
END OF T001_TAB.
DATA: BEGIN OF EXCLUDE_TAB OCCURS 10,
FIELD LIKE DD03P-FIELDNAME,
END OF EXCLUDE_TAB.
...
EXCLUDE_TAB = 'BUTXT'.
APPEND EXCLUDE_TAB.
...
CALL FUNCTION 'REPLACE_GET_FIELD'
EXPORTING
TABLE = 'T001'
TABLES
EXCLUDE_FIELDS = EXCLUDE_TAB
EXCEPTIONS
CANCELLED_BY_USER = 0004.
CHECK SY-SUBRC EQ 0.
LOOP AT T001_TAB WHERE MARK NE SPACE.
CALL FUNCTION 'REPLACE_SET_VALUE'
EXPORTING
OLD_TABLE = T001_TAB
IMPORTING
NEW_TABLE = T001_TAB.
T001_TAB-MARK = ' '.
MODIFY T001_TAB.
ENDLOOP.





Parameter

NEW_TABLE
OLD_TABLE

Ausnahmen

Funktionsgruppe

SVIX

ABAP Short Reference   Addresses (Business Address Services)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 2265 Date: 20240523 Time: 062912     sap01-206 ( 39 ms )