SAP Process on Value & Process On Help-Request

โšก Okos รถsszefoglalรณ

Process On Value-Request and Process On Help-Request are the screen events behind F4 and F1 in SAP ABAP. This page explains both events, the FIELD statements that trigger them, and the function modules that display documentation or possible entries.

  • โ“ POH Purpose: PROCESS ON HELP-REQUEST reacts to F1 and shows the field documentation stored in the ABAP Dictionary.
  • ???? POV Purpose: PROCESS ON VALUE-REQUEST reacts to F4 and shows the possible entries defined by values, a check table, or a search help.
  • ๐Ÿงพ Fallback Rule: When the POH event is missing, the system falls back to the data element documentation, and displays nothing when that is missing too.
  • ???? Transport Limit: The FIELD statement in POH does not transport the screen field to the program, because it only displays help.
  • ???? Help Modules: HELP_OBJECT_SHOW_FOR_FIELD displays data element documentation, and HELP_OBJECT_SHOW displays any SAPscript dokumentum.
  • ๐Ÿ“‹ Value Modules: F4IF_FIELD_VALUE_REQUEST starts the dictionary input help, and F4IF_INT_TABLE_VALUE_REQUEST displays a list built inside the program.
  • โ†ฉ๏ธ Return Path: DYNPPROG, DYNPNR, and DYNPROFIELD return the chosen value to the screen field, while RETURN_TAB returns it into a table.

SAP Process On Value and Process On Help Request

What are POH and POV?

First, to begin with if you know nothing about Screen Flow logic and their uses in SAP, we recommend you check our tutorial on Pรกrbeszรฉdprogram.

POH and POV are the two screen events that answer a help request from the user. POH reacts to the F1 key and explains what a field means, while POV reacts to the F4 key and lists the values that the field accepts. Both are declared in the flow logic of the screen, next to PBO and PAI.

Kritรฉriumai POH (Process On Help-Request) POV (Process On Value-Request)
Kivรกltva valami รกltal The F1 key The F4 key, or the Possible entries button
Cรฉl Explains the meaning of the field Offers the values the field accepts
Default source Data element documentation in the ABAP Dictionary Fixed values, check table, or search help
Data transport None, the field is only displayed The selected value is written back to the screen field
Typical function module HELP_OBJECT_SHOW_FOR_FIELD F4IF_INT_TABLE_VALUE_REQUEST

Most nรฉzzรผk meg rรฉszletesen a POH-t รฉs a POV-t

Folyamat segรญtsรฉgkรฉrรฉskor (POH): F1 Sรบgรณ

  • Whenever F1 is pressed the POH event for the specified data element is executed.
  • If the PROCESS ON HELP-REQUEST event does not exist in the process logic of a screen, the documentation of the field in the ABAP Dictionary is taken as a basis and displayed. Even if that does not exit no help is displayed.
  • A mezล‘sรบgรณ dokumentรกciรณjรกnak megjelenรญtรฉsรฉhez a kรถvetkezล‘ kรฉpernyล‘folyamat logikรกt kell kรณdolnia a POH esemรฉnyben:
PROCESS ON HELP-REQUEST
FIELD <f> [MODULE <mod>] WITH <num>
  • Ha a mezล‘hรถz van kรฉpernyล‘specifikus adatelem-dokumentรกciรณ szรกmรกnak megadรกsรกval jelenรญtheti meg .
  • A szรกm lehet literรกl vagy vรกltozรณ. A vรกltozรณt deklarรกlni รฉs kitรถlteni kell a megfelelล‘ ABAP programban.
  • Megjegyzรฉs: a FIELD utasรญtรกs nem adja รกt a kรฉpernyล‘mezล‘ tartalmรกt az ABAP programhoz a FEJLESZTร‰S SEGรTSร‰GKร‰Rร‰SRE esemรฉnyben. Csak a sรบgรณdokumentรกciรณt mutatja. Ez az.

The module <mod> is defined in the ABAP program like a normal PAI module. The processing logic of the module must ensure that adequate help is displayed for the field in question. Instead of calling an extra screen with text fields, you should use one of the following function modules to display a suitable SAPscript dokumentum

HELP_OBJECT_SHOW_FOR_FIELD

  • Ez a funkciรณmodul az ABAP szรณtรกrbรณl bรกrmely szerkezet vagy adatbรกzistรกbla รถsszetevล‘inek adatelem-dokumentรกciรณjรกt jelenรญti meg.
  • A komponens รฉs a struktรบra vagy a tรกbla nevรฉt รกtadja a FIELD รฉs TABLE importparamรฉtereknek.

HELP_OBJECT_SHOW

  • Ezzel a funkciรณmodullal bรกrmelyiket megjelenรญtheti SAPscript dokumentum.
  • A DOKCLASS รฉs DOKNAME importparamรฉtereknek รกt kell adnia a dokumentumosztรกlyt (pรฉldรกul TX az รกltalรกnos szรถvegeknรฉl, DE az adatelem dokumentรกciรณnรกl) รฉs a dokumentum nevรฉt.
  • Technikai okokbรณl egy รผres belsล‘ tรกblรกzatot is รกt kell adni T sortรญpussal.LINE a fรผggvรฉnymodul tables paramรฉterรฉhez.

F1 explains the field. The next event lists what may be entered into it.

Process on Value (POV): F4

  • Amikor a felhasznรกlรณ a Lehetsรฉges bejegyzรฉsek (F4) funkciรณt vรกlasztja, a rendszer megjelenรญti egy mezล‘ lehetsรฉges bemeneti รฉrtรฉkeit (รฉrtรฉkek, ellenล‘rzล‘ tรกblรกzat, matchcode), feltรฉve, hogy azokat a fejlesztล‘ tรกrolta.
  • A PROCESS ON VALUE-REQUEST esemรฉny mindig feldolgozรกsra kerรผl, ha a felhasznรกlรณ meghรญvta a โ€žLehetsรฉges bejegyzรฉseketโ€.
  • Egy mezล‘ lehetsรฉges รฉrtรฉkeinek meghatรกrozรกsรกhoz a kรฉpernyล‘n a kรถvetkezล‘ket kell megadnia a kรฉpernyล‘ รกramlรกsi logikรกjรกnak POV esemรฉnyรฉben:
PROCESS ON VALUE-REQUEST

FIELD field name MODULE module name
  • A fent definiรกlt modulon belรผli lehetsรฉges รฉrtรฉkeknรฉl az รกltalรกnos fรผggvรฉnymodult kell hasznรกlni HELP_VALUES_GET_WITH_TABLE hogy az ABAP szรณtรกrbรณl lehessen lekรฉrni a lehetsรฉges รฉrtรฉkeket.

Vannak mรกs funkciรณk is, amelyek szintรฉn hasznรกlhatรณk beviteli segรญtsรฉgkรฉnt:

F4IF_FIELD_VALUE_REQUEST

  • Dinamikusan meghรญvja az ABAP szรณtรกr beviteli sรบgรณjรกt.
  • Az ABAP szรณtรกr szerkezetรฉnek vagy adatbรกzistรกblรกjรกnak รถsszetevล‘neveit a TABNAME รฉs FIELDNAME importparamรฉterekben adhatja รกt a fรผggvรฉnymodulnak.
  • A funkciรณmodul elindรญtja a ABAP szรณtรกr beviteli sรบgรณ ehhez az รถsszetevล‘hรถz. Az รถsszes vonatkozรณ kรฉpernyล‘mezล‘ beolvasรกsra kerรผl.
  • Ha megadja a DYNPPROG, DYNPNR รฉs DYNPROFIELD importparamรฉtereket, a felhasznรกlรณ kijelรถlรฉse visszakerรผl a kรฉpernyล‘ megfelelล‘ mezล‘jรฉbe.
  • Ha megadja a RETURN_TAB tรกblรกzatparamรฉtert, akkor a kijelรถlรฉs visszakerรผl a tรกblรกzatba.
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

  • Ez a funkciรณmodul egy รฉrtรฉklistรกt jelenรญt meg, amelyet egy ABAP program.
  • Az รฉrtรฉklista VALUE_TAB tรกblaparamรฉterkรฉnt kerรผl รกtadรกsra a fรผggvรฉnymodulnak.
  • Ha megadja a DYNPPROG, DYNPNR รฉs DYNPROFIELD importparamรฉtereket, a felhasznรกlรณ kijelรถlรฉse visszakerรผl a kรฉpernyล‘ megfelelล‘ mezล‘jรฉbe.
  • Ha megadja a RETURN_TAB tรกblรกzatparamรฉtert, akkor a kijelรถlรฉs visszakerรผl a tรกblรกzatba.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING

RETFIELD         =  'CONNID'
DYNPPROG         =  PROGNAME
DYNPNR           =  DYNNUM
DYNPROFIELD      =  'CONNECTION'
VALUE_ORG        = 'S'
TABLES
VALUE_TAB        = VALUES_TAB.

Ez minden a POH-nak รฉs a POV-nak. Hagyja รฉszrevรฉteleit, ha kรฉtsรฉgei vannak.

How to Build an F4 Help from an Internal Table

A value list that does not exist in the ABAP Dictionary is built inside the program and handed to F4IF_INT_TABLE_VALUE_REQUEST. The steps below produce a working F4 help for a screen field.

  1. Declare the value table: Build an internal table whose first column holds the value that is written back to the screen. Fill it in a PBO module or in the value request module itself.
  2. Register the field in the flow logic: Add PROCESS ON VALUE-REQUEST to the screen and connect the field with FIELD โ€ฆ MODULE โ€ฆ so the module runs when F4 is pressed.
  3. Call the function module: Pass RETFIELD with the column name, DYNPROFIELD with the screen field name, and VALUE_ORG = โ€˜Sโ€™ because the list is passed as a structured table.
  4. Return the value: DYNPPROG and DYNPNR identify the program and the screen, so the selected row is written directly into the screen field without further code.
  5. Prรณbรกld ki: Activate the screen, press F4 on the field, and check that the list appears and that the selection reaches the field.
* 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: Read the value of another screen field with the function module DYNP_VALUES_READ before filling the list. That is how a dependent F4 help, such as connections for the airline already entered, is built.

GYIK

Neither. F1 and F4 interrupt the screen and run their own event, then return to the same screen. Regular PAI processing only starts when the user triggers a normal function code.

A search help attached to the data element or the check table already produces the F4 list. POV coding is only needed when the values are calculated at runtime or depend on another field of the screen.

Pass DYNPROFIELD with the name of the column and use GET CURSOR LINE to find the row. The function module then writes the value into the correct row of the control on the next PBO.

Yes. AI assistants in ABAP development tools write the POV flow logic, the SELECT that fills the value table, and the call of F4IF_INT_TABLE_VALUE_REQUEST with the correct RETFIELD and DYNPROFIELD parameters.

No. F1 still reads the documentation stored in the ABAP Dictionary. AI assistants such as SAP Joule answer questions in plain language beside the screen, which complements the field documentation rather than replacing it.

Foglald รถssze ezt a bejegyzรฉst a kรถvetkezล‘kรฉppen: