SAP Wertprozess & Hilfeanfrageprozess
โก Intelligente Zusammenfassung
Prozessieren bei Wertanforderung und Prozessieren bei Hilfeanforderung sind die Bildschirmereignisse hinter F4 und F1 in SAP ABAP. Diese Seite erlรคutert beide Ereignisse, die FIELD-Anweisungen, die sie auslรถsen, und die Funktionsbausteine, die Dokumentation oder mรถgliche Eintrรคge anzeigen.

Was sind POH und POV?
Zunรคchst einmal, falls Sie keinerlei Kenntnisse รผber die Logik von Screen Flow und deren Verwendung haben, SAPWir empfehlen Ihnen, sich unser Tutorial anzusehen. Dialogprogramm.
POH und POV sind zwei Bildschirmereignisse, die auf eine Hilfeanfrage des Benutzers reagieren. POH reagiert auf die Taste F1 und erklรคrt die Bedeutung eines Feldes, wรคhrend POV auf die Taste F4 reagiert und die zulรคssigen Werte des Feldes auflistet. Beide sind in der Ablauflogik des Bildschirms neben PBO und PAI deklariert.
| Eigenschaften | POH (Prozess auf Hilfeanfrage) | POV (Prozess bei Wertanforderung) |
|---|---|---|
| Ausgelรถst durch | Die F1-Taste | Die F4-Taste oder die Schaltflรคche โMรถgliche Eintrรคgeโ |
| Zweck | Erlรคutert die Bedeutung des Feldes | Bietet die vom Feld akzeptierten Werte an. |
| Standardquelle | Datenelementdokumentation im ABAP Dictionary | Feste Werte, Prรผftabelle oder Suchhilfe |
| Datentransport | Keine, das Feld wird nur angezeigt | Der ausgewรคhlte Wert wird zurรผck in das Bildschirmfeld geschrieben. |
| Typisches Funktionsmodul | HELP_OBJECT_SHOW_FOR_FIELD | F4IF_INT_TABLE_VALUE_REQUEST |
Schauen wir uns nun POH und POV im Detail an
Prozess bei Hilfeanfrage (POH): F1-Hilfe
- Immer wenn die Taste F1 gedrรผckt wird, wird das POH-Ereignis fรผr das angegebene Datenelement ausgefรผhrt.
- Existiert das Ereignis PROCESS ON HELP-REQUEST in der Prozesslogik eines Bildschirms nicht, wird die Dokumentation des Felds im ABAP Dictionary als Grundlage verwendet und angezeigt. Auch wenn diese Dokumentation nicht existiert, wird keine Hilfe angezeigt.
- Um die Feldhilfedokumentation anzuzeigen, mรผssen Sie die folgende Bildschirmflusslogik im POH-Ereignis codieren:
PROCESS ON HELP-REQUEST FIELD <f> [MODULE <mod>] WITH <num>
- Wenn fรผr das Feld eine bildschirmspezifische Datenelementdokumentation vorhanden ist , kรถnnen Sie es anzeigen, indem Sie seine Nummer angeben .
- Die Nummer kann ein Literal oder eine Variable sein. Die Variable muss im entsprechenden ABAP-Programm deklariert und gefรผllt werden.
- Beachten Sie, dass die FIELD-Anweisung nicht den Inhalt des Bildschirmfelds รผbertrรคgt an das ABAP-Programm im Ereignis PROCESS ON HELP-REQUEST รผbergeben. Es wird nur die Hilfedokumentation angezeigt. Das ist es.
Das Modul Das Modul ist im ABAP-Programm wie ein normales PAI-Modul definiert. Die Verarbeitungslogik des Moduls muss sicherstellen, dass fรผr das betreffende Feld eine geeignete Hilfe angezeigt wird. Anstatt einen zusรคtzlichen Bildschirm mit Textfeldern aufzurufen, sollten Sie eines der folgenden Funktionsbausteine โโverwenden, um eine passende Hilfe anzuzeigen. SAPSkriptdokument
HELP_OBJECT_SHOW_FOR_FIELD
- Dieser Funktionsbaustein zeigt die Datenelementdokumentation fรผr Komponenten einer beliebigen Struktur oder Datenbanktabelle aus dem ABAP Dictionary an.
- Den Namen der Komponente und Struktur bzw. Tabelle รผbergeben Sie an die Importparameter FIELD und TABLE.
HELP_OBJECT_SHOW
- Mit diesem Funktionsbaustein kรถnnen Sie SAPSkriptdokument.
- Sie mรผssen die Dokumentklasse (z. B. TX fรผr allgemeine Texte, DE fรผr Datenelementdokumentation) und den Namen des Dokuments an die Importparameter DOKCLASS und DOKNAME รผbergeben.
- Aus technischen Grรผnden mรผssen Sie auรerdem eine leere interne Tabelle mit dem Zeilentyp T รผbergeben.LINE zum Tabellenparameter des Funktionsbausteins.
Die Formel 1 erklรคrt das Teilnehmerfeld. Die nรคchste Veranstaltung listet die Fahrzeuge auf, an denen teilgenommen werden kann.
Wertprozess (POV): F4
- Wenn der Benutzer die Funktion Mรถgliche Eingaben (F4) wรคhlt, zeigt das System die mรถglichen Eingabewerte fรผr ein Feld (Werte, Prรผftabelle, Matchcode) an, sofern diese vom Entwickler hinterlegt wurden.
- Das Ereignis PROCESS ON VALUE-REQUEST wird immer dann abgearbeitet, wenn der Benutzer โMรถgliche Eingabenโ aufgerufen hat.
- Um mรถgliche Werte fรผr ein Feld auf dem Bildschirm zu definieren, mรผssen Sie Folgendes im POV-Ereignis der Bildschirmflusslogik definieren:
PROCESS ON VALUE-REQUEST FIELD field name MODULE module name
- Fรผr mรถgliche Werte innerhalb des oben definierten Moduls sollten Sie das allgemeine Funktionsmodul verwenden HELP_VALUES_GET_WITH_TABLE um mรถgliche Werte aus dem ABAP Dictionary zu erhalten.
Es gibt noch einige weitere Funktionen, die auch als Eingabehilfe genutzt werden kรถnnen:
F4IF_FIELD_VALUE_REQUEST
- Ruft die Eingabehilfe des ABAP Dictionary dynamisch auf.
- In den Importparametern TABNAME und FIELDNAME kรถnnen Sie dem Funktionsbaustein die Komponentennamen einer Struktur oder Datenbanktabelle des ABAP Dictionary รผbergeben.
- Der Funktionsbaustein startet die ABAP-Wรถrterbuch Eingabehilfe fรผr diese Komponente. Es werden alle relevanten Bildschirmfelder gelesen.
- Wenn Sie die Importparameter DYNPPROG, DYNPNR und DYNPROFIELD angeben, wird die Auswahl des Benutzers in das entsprechende Feld auf dem Bildschirm zurรผckgegeben.
- Wenn Sie den Tabellenparameter RETURN_TAB angeben, wird die Auswahl stattdessen in die Tabelle zurรผckgegeben.
MODULE VALUE_CARRIER INPUT. CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST' EXPORTING TABNAME = 'DEMOF4HELP' FIELDNAME = 'CARRIER1' DYNPPROG = PROGNAME DYNPNR = DYNNUM DYNPROFIELD= 'CARRIER'. ENDMODULE.
F4IF_INT_TABLE_VALUE_REQUEST
- Dieser Funktionsbaustein zeigt eine Werteliste an, die Sie in einem erstellt haben ABAP-Programm.
- Die Werteliste wird als Tabellenparameter VALUE_TAB an den Funktionsbaustein รผbergeben.
- Wenn Sie die Importparameter DYNPPROG, DYNPNR und DYNPROFIELD angeben, wird die Auswahl des Benutzers in das entsprechende Feld auf dem Bildschirm zurรผckgegeben.
- Wenn Sie den Tabellenparameter RETURN_TAB angeben, wird die Auswahl stattdessen in die Tabelle zurรผckgegeben.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST' EXPORTING RETFIELD = 'CONNID' DYNPPROG = PROGNAME DYNPNR = DYNNUM DYNPROFIELD = 'CONNECTION' VALUE_ORG = 'S' TABLES VALUE_TAB = VALUES_TAB.
Das ist alles fรผr POH und POV. Hinterlassen Sie im Zweifelsfall Ihre Kommentare.
Wie man eine F4-Hilfe aus einer internen Tabelle erstellt
Eine Werteliste, die nicht im ABAP Dictionary existiert, wird innerhalb des Programms erstellt und an F4IF_INT_TABLE_VALUE_REQUEST รผbergeben. Die folgenden Schritte erzeugen eine funktionierende F4-Hilfe fรผr ein Bildschirmfeld.
- Wertetabelle deklarieren: Erstellen Sie eine interne Tabelle, deren erste Spalte den Wert enthรคlt, der auf dem Bildschirm ausgegeben wird. Fรผllen Sie diese Tabelle in einem PBO-Modul oder direkt im Wertanforderungsmodul.
- Registrieren Sie das Feld in der Ablauflogik: Fรผgen Sie PROCESS ON VALUE-REQUEST zum Bildschirm hinzu und verbinden Sie das Feld mit FIELD โฆ MODULE โฆ, damit das Modul beim Drรผcken von F4 ausgefรผhrt wird.
- Rufen Sie das Funktionsmodul auf: รbergeben Sie RETFIELD mit dem Spaltennamen, DYNPROFIELD mit dem Bildschirmfeldnamen und VALUE_ORG = 'S', da die Liste als strukturierte Tabelle รผbergeben wird.
- Gib den Wert zurรผck: DYNPPROG und DYNPNR identifizieren das Programm und den Bildschirm, sodass die ausgewรคhlte Zeile ohne weiteren Code direkt in das Bildschirmfeld geschrieben wird.
- Probier es aus: Aktivieren Sie den Bildschirm, drรผcken Sie F4 auf dem Feld und prรผfen Sie, ob die Liste angezeigt wird und die Auswahl im Feld erscheint.
* Flow logic of the screen PROCESS ON VALUE-REQUEST. FIELD spfli-connid MODULE f4_connid. * Module in the ABAP program MODULE f4_connid INPUT. DATA: lt_values TYPE STANDARD TABLE OF spfli. SELECT * FROM spfli INTO TABLE lt_values WHERE carrid = spfli-carrid. CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST' EXPORTING retfield = 'CONNID' dynpprog = sy-repid dynpnr = sy-dynnr dynprofield = 'SPFLI-CONNID' value_org = 'S' TABLES value_tab = lt_values. ENDMODULE.
๐ก Tipp: Lesen Sie vor dem Fรผllen der Liste den Wert eines anderen Bildschirmfelds mit dem Funktionsbaustein DYNP_VALUES_READ. So wird eine abhรคngige F4-Hilfe erstellt, beispielsweise Verbindungen fรผr die bereits eingegebene Fluggesellschaft.
