SAP Process på värde & process på hjälp-förfrågan
Först, till att börja med om du inte vet något om Screen Flow-logik och deras användningsområden SAP , rekommenderar vi att du kollar vår handledning om dialogprogrammet
Låt oss nu titta på POH och POV i detalj
Process på hjälp-begäran (POH): F1 Hjälp
- När F1 trycks in exekveras POH-händelsen för det angivna dataelementet.
- Om händelsen PROCESS ON HELP-REQUEST inte finns i processlogiken på en skärm, tas dokumentationen för fältet i ABAP-ordboken som grund och visas. Även om det inte avslutas visas ingen hjälp.
- För att visa fälthjälpdokumentation måste du koda följande skärmflödeslogik i POH-händelsen:
PROCESS ON HELP-REQUEST FIELD <f> [MODULE <mod>] WITH <num>
- Om det finns skärmspecifik dataelementdokumentation för fältet , kan du visa den genom att ange dess nummer .
- Numret kan vara en bokstavlig eller en variabel. Variabeln måste deklareras och fyllas i i motsvarande ABAP-program.
- Observera att FIELD-satsen inte överför innehållet i skärmfältet till ABAP-programmet i händelsen PROCESS ON HELP-REQUEST. Det visar bara hjälpdokumentation. Det är allt.
Modulen definieras i ABAP-programmet som en vanlig PAI-modul. Bearbetningslogiken för modulen måste säkerställa att adekvat hjälp visas för fältet i fråga. Istället för att anropa en extra skärm med textfält bör du använda någon av följande funktionsmoduler för att visa en lämplig SAPmanusdokument
HELP_OBJECT_SHOW_FOR_FIELD
- Denna funktionsmodul visar dataelementdokumentationen för komponenter i valfri struktur eller databastabell från ABAP Dictionary.
- Du skickar namnet på komponenten och strukturen eller tabellen till importparametrarna FIELD och TABLE.
HELP_OBJECT_SHOW
- Använd denna funktionsmodul för att visa någon SAPmanusdokument.
- Du måste skicka dokumentklassen (till exempel TX för allmänna texter, DE för dataelementdokumentation) och namnet på dokumentet till importparametrarna DOKCLASS och DOKNAME.
- Av tekniska skäl måste du även skicka en tom intern tabell med linjetypen TLINE till funktionsmodulens tabellparameter.
Process on Value (POV): F4
- När användaren väljer funktionen Möjliga poster (F4) visar systemet de möjliga indatavärdena för ett fält (värden, kontrolltabell, matchningskod), förutsatt att de lagrats av utvecklaren.
- Händelsen PROCESS ON VALUE-REQUEST behandlas alltid om användaren har anropat "Möjliga poster".
- För att definiera möjliga värden för ett fält på skärmen måste du definiera följande i POV-händelse för skärmflödeslogik:
PROCESS ON VALUE-REQUEST FIELD field name MODULE module name
- För Möjliga värden, inom den ovan definierade modulen, bör du använda den allmänna funktionsmodulen HELP_VALUES_GET_WITH_TABLE för att få möjliga värden från ABAP Dictionary.
Det finns några andra funktioner som också kan användas för inmatningshjälp:
F4IF_FIELD_VALUE_REQUEST
- Anropar inmatningshjälpen för ABAP Dictionary dynamiskt.
- Du kan skicka komponentnamnen för en struktur eller databastabell i ABAP Dictionary till funktionsmodulen i importparametrarna TABNAME och FIELDNAME.
- Funktionsmodulen startar ABAP ordbok ingångshjälp för denna komponent. Alla relevanta skärmfält läses.
- Om du anger importparametrarna DYNPPROG, DYNPNR och DYNPROFIELD, återgår användarens val till motsvarande fält på skärmen.
- Om du anger tabellparametern RETURN_TAB, returneras urvalet till tabellen istället.
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
- Denna funktionsmodul visar en värdelista som du skapat i en ABAP-program.
- Värdelistan skickas till funktionsmodulen som tabellparametern VALUE_TAB.
- Om du anger importparametrarna DYNPPROG, DYNPNR och DYNPROFIELD, återgår användarens val till motsvarande fält på skärmen.
- Om du anger tabellparametern RETURN_TAB, returneras urvalet till tabellen istället.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST' EXPORTING RETFIELD = 'CONNID' DYNPPROG = PROGNAME DYNPNR = DYNNUM DYNPROFIELD = 'CONNECTION' VALUE_ORG = 'S' TABLES VALUE_TAB = VALUES_TAB.
Det är allt för POH och POV. Lämna dina kommentarer om du är tveksam.