SAP Process On Value & Process On Help-Request

โšก Chytrรฉ shrnutรญ

Process On Value-Request a Process On Help-Request jsou udรกlosti obrazovky za klรกvesami F4 a F1 v SAP ABAP. Tato strรกnka vysvฤ›tluje jak udรกlosti, tak i pล™รญkazy FIELD, kterรฉ je spouลกtฤ›jรญ, a funkฤnรญ moduly, kterรฉ zobrazujรญ dokumentaci nebo moลพnรฉ poloลพky.

  • โ“ รšฤel POH: PROCESS ON HELP-REQUEST reaguje na F1 a zobrazuje dokumentaci k polรญm uloลพenou ve slovnรญku ABAP.
  • ๐Ÿ”Ž รšฤel pohledu: Pล™รญkaz PROCESS ON VALUE-REQUEST reaguje na klรกvesu F4 a zobrazuje moลพnรฉ poloลพky definovanรฉ hodnotami, kontrolnรญ tabulku nebo nรกpovฤ›du k vyhledรกvรกnรญ.
  • ๐Ÿงพ Zรกloลพnรญ pravidlo: Pokud chybรญ udรกlost POH, systรฉm se vrรกtรญ k dokumentaci datovรฉho prvku a pokud i tato chybรญ, nic se nezobrazรญ.
  • ๐Ÿšซ Pล™epravnรญ limit: Pล™รญkaz FIELD v POH nepล™enรกลกรญ pole obrazovky do programu, protoลพe zobrazuje pouze nรกpovฤ›du.
  • ???? Moduly nรกpovฤ›dy: HELP_OBJECT_SHOW_FOR_FIELD zobrazรญ dokumentaci k datovรฝm prvkลฏm a HELP_OBJECT_SHOW zobrazรญ veลกkerรฉ SAPskriptovรฝ dokument.
  • ???? Hodnotovรฉ moduly: F4IF_FIELD_VALUE_REQUEST spustรญ nรกpovฤ›du pro vstup do slovnรญku a F4IF_INT_TABLE_VALUE_REQUEST zobrazรญ seznam vytvoล™enรฝ v programu.
  • โ†ฉ๏ธ Zpรกteฤnรญ cesta: Funkce DYNPPROG, DYNPNR a DYNPROFIELD vracรญ vybranou hodnotu do pole obrazovky, zatรญmco funkce RETURN_TAB ji vracรญ do tabulky.

SAP Proces na zรกkladฤ› hodnoty a proces na zรกkladฤ› ลพรกdosti o pomoc

Co je POH a POV?

Zaprvรฉ, pokud nic nevรญte o logice Screen Flow a jejรญm pouลพitรญ v SAP, doporuฤujeme vรกm podรญvat se na nรกลก tutoriรกl na Dialogovรฝ program.

POH a POV jsou dvฤ› udรกlosti na obrazovce, kterรฉ reagujรญ na poลพadavek uลพivatele o pomoc. POH reaguje na klรกvesu F1 a vysvฤ›tluje vรฝznam pole, zatรญmco POV reaguje na klรกvesu F4 a vypรญลกe hodnoty, kterรฉ pole akceptuje. Obฤ› jsou deklarovรกny v logice toku obrazovky vedle PBO a PAI.

Kritรฉria POH (Proces na ลพรกdost o pomoc) POV (Proces na zรกkladฤ› poลพadavku na hodnotu)
Spuลกtฤ›no Klรกvesa F1 Klรกvesa F4 nebo tlaฤรญtko Moลพnรฉ poloลพky
รšฤel Vysvฤ›tluje vรฝznam pole Nabรญzรญ hodnoty, kterรฉ pole akceptuje
Vรฝchozรญ zdroj Dokumentace datovรฝch prvkลฏ ve slovnรญku ABAP Pevnรฉ hodnoty, kontrola tabulky nebo nรกpovฤ›da k vyhledรกvรกnรญ
Pล™enos dat ลฝรกdnรฉ, pole se pouze zobrazuje Vybranรก hodnota se zapรญลกe zpฤ›t do pole obrazovky.
Typickรฝ funkฤnรญ modul HELP_OBJECT_SHOW_FOR_FIELD F4IF_INT_TABLE_VALUE_REQUEST

Nynรญ se podรญvejme na POH a POV podrobnฤ›

Proces na ลพรกdost o pomoc (POH): Nรกpovฤ›da F1

  • Kdykoli je stisknuta klรกvesa F1, provede se udรกlost POH pro zadanรฝ datovรฝ prvek.
  • Pokud udรกlost PROCESS ON HELP-REQUEST v logice procesu obrazovky neexistuje, je jako zรกklad pouลพita a zobrazena dokumentace pole ve slovnรญku ABAP. I kdyลพ se tato udรกlost neukonฤรญ, nรกpovฤ›da se nezobrazรญ.
  • Chcete-li zobrazit dokumentaci nรกpovฤ›dy k poli, musรญte v udรกlosti POH nakรณdovat nรกsledujรญcรญ logiku toku obrazovky:
PROCESS ON HELP-REQUEST
FIELD <f> [MODULE <mod>] WITH <num>
  • Pokud pro pole existuje dokumentace datovรฉho prvku specifickรก pro obrazovku , mลฏลพete jej zobrazit zadรกnรญm jeho ฤรญsla .
  • ฤŒรญslo mลฏลพe bรฝt doslovnรฝ nebo promฤ›nnรฝ. Promฤ›nnรก musรญ bรฝt deklarovรกna a vyplnฤ›na v odpovรญdajรญcรญm programu ABAP.
  • Vลกimnฤ›te si, ลพe pล™รญkaz FIELD nepล™enรกลกรญ obsah pole obrazovky do programu ABAP v akci PROCES NA POMOC-ลฝรDOST. Zobrazuje pouze dokumentaci nรกpovฤ›dy. A je to.

Modul je v programu ABAP definovรกn jako normรกlnรญ modul PAI. Logika zpracovรกnรญ modulu musรญ zajistit zobrazenรญ odpovรญdajรญcรญ nรกpovฤ›dy pro danรฉ pole. Mรญsto volรกnรญ dalลกรญ obrazovky s textovรฝmi poli byste mฤ›li k zobrazenรญ vhodnรฉho nรกpovฤ›dy pouลพรญt jeden z nรกsledujรญcรญch funkฤnรญch modulลฏ. SAPskriptovรฝ dokument

HELP_OBJECT_SHOW_FOR_FIELD

  • Tento funkฤnรญ modul zobrazuje dokumentaci datovรฝch prvkลฏ pro komponenty libovolnรฉ struktury nebo databรกzovรฉ tabulky ze slovnรญku ABAP.
  • Parametrลฏm importu FIELD a TABLE pล™edรกte nรกzev komponenty a struktury nebo tabulky.

HELP_OBJECT_SHOW

  • Tento funkฤnรญ modul pouลพijte k zobrazenรญ libovolnรฉho SAPskriptovรฝ dokument.
  • Parametrลฏm importu DOKCLASS a DOKNAME musรญte pล™edat tล™รญdu dokumentu (napล™รญklad TX pro obecnรฉ texty, DE pro dokumentaci datovรฝch prvkลฏ) a nรกzev dokumentu.
  • Z technickรฝch dลฏvodลฏ je nutnรฉ takรฉ pล™edat prรกzdnou internรญ tabulku s typem ล™รกdku T.LINE k parametru tables funkฤnรญho modulu.

F1 vysvฤ›tluje pole. Nรกsledujรญcรญ udรกlost vypรญลกe, co do nฤ›j lze zadat.

Proces na hodnotฤ› (POV): F4

  • Kdyลพ uลพivatel zvolรญ funkci Moลพnรฉ zรกznamy (F4), systรฉm zobrazรญ moลพnรฉ vstupnรญ hodnoty pro pole (hodnoty, kontrolnรญ tabulka, matchcode), pokud byly uloลพeny vรฝvojรกล™em.
  • Udรกlost PROCESS ON VALUE-REQUEST je zpracovรกna vลพdy, pokud uลพivatel zavolal โ€žMoลพnรฉ zรกznamyโ€œ.
  • Chcete-li definovat moลพnรฉ hodnoty pro pole na obrazovce, musรญte v pล™รญpadฤ› POV logiky toku obrazovky definovat nรกsledujรญcรญ:
PROCESS ON VALUE-REQUEST

FIELD field name MODULE module name
  • Pro Moลพnรฉ hodnoty v rรกmci modulu definovanรฉho vรฝลกe byste mฤ›li pouลพรญt obecnรฝ funkฤnรญ modul HELP_VALUES_GET_WITH_TABLE zรญskat moลพnรฉ hodnoty ze slovnรญku ABAP.

Existujรญ nฤ›kterรฉ dalลกรญ funkce, kterรฉ lze takรฉ pouลพรญt pro nรกpovฤ›du k zadรกvรกnรญ:

F4IF_FIELD_VALUE_REQUEST

  • Dynamicky volรก vstupnรญ nรกpovฤ›du slovnรญku ABAP.
  • Jmรฉna komponent struktury nebo databรกzovรฉ tabulky slovnรญku ABAP mลฏลพete pล™edat funkฤnรญmu modulu v parametrech importu TABNAME a FIELDNAME.
  • Funkฤnรญ modul spustรญ Slovnรญk ABAP vstupnรญ nรกpovฤ›du pro tuto komponentu. Naฤtou se vลกechna pล™รญsluลกnรก pole obrazovky.
  • Pokud zadรกte parametry importu DYNPPROG, DYNPNR a DYNPROFIELD, vrรกtรญ se uลพivatelskรฝ vรฝbฤ›r do odpovรญdajรญcรญho pole na obrazovce.
  • Pokud zadรกte parametr tabulky RETURN_TAB, vรฝbฤ›r se mรญsto toho vrรกtรญ do tabulky.
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

  • Tento funkฤnรญ modul zobrazuje seznam hodnot, kterรฝ jste vytvoล™ili v program ABAP.
  • Seznam hodnot je pล™edรกn funkฤnรญmu modulu jako parametr tabulky VALUE_TAB.
  • Pokud zadรกte parametry importu DYNPPROG, DYNPNR a DYNPROFIELD, vrรกtรญ se uลพivatelskรฝ vรฝbฤ›r do odpovรญdajรญcรญho pole na obrazovce.
  • Pokud zadรกte parametr tabulky RETURN_TAB, vรฝbฤ›r se mรญsto toho vrรกtรญ do tabulky.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING

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

To je vลกe k POH a POV. V pล™รญpadฤ› jakรฝchkoli pochybnostรญ zanechte svรฉ komentรกล™e.

Jak vytvoล™it nรกpovฤ›du F4 z internรญ tabulky

Seznam hodnot, kterรฝ neexistuje ve slovnรญku ABAP, je vytvoล™en uvnitล™ programu a pล™edรกn funkci F4IF_INT_TABLE_VALUE_REQUEST. Nรกsledujรญcรญ kroky vytvoล™รญ funkฤnรญ nรกpovฤ›du F4 pro pole obrazovky.

  1. Deklarujte tabulku hodnot: Vytvoล™te internรญ tabulku, jejรญลพ prvnรญ sloupec bude obsahovat hodnotu, kterรก se zapรญลกe zpฤ›t na obrazovku. Naplลˆte ji v modulu PBO nebo v samotnรฉm modulu poลพadavku na hodnotu.
  2. Zaregistrujte pole v logice toku: Na obrazovku pล™idejte PROCESS ON VALUE-REQUEST a propojte pole s FIELD โ€ฆ MODULE โ€ฆ, aby se modul spustil po stisknutรญ klรกvesy F4.
  3. Zavolejte funkฤnรญ modul: Pล™edejte RETFIELD s nรกzvem sloupce, DYNPROFIELD s nรกzvem pole obrazovky a VALUE_ORG = 'S', protoลพe seznam je pล™edรกvรกn jako strukturovanรก tabulka.
  4. Vrรกtit hodnotu: Funkce DYNPPROG a DYNPNR identifikujรญ program a obrazovku, takลพe vybranรฝ ล™รกdek se zapรญลกe pล™รญmo do pole obrazovky bez dalลกรญho kรณdu.
  5. Vyzkouลกejte: Aktivujte obrazovku, stisknฤ›te klรกvesu F4 v poli a zkontrolujte, zda se zobrazรญ seznam a zda vรฝbฤ›r dosรกhl pole.
* 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.

๐Ÿ’ก Tip: Pล™ed vyplnฤ›nรญm seznamu pล™eฤtฤ›te pomocรญ funkฤnรญho modulu DYNP_VALUES_READ hodnotu jinรฉho pole obrazovky. Takto se vytvoล™รญ zรกvislรก nรกpovฤ›da F4, napล™รญklad spojenรญ pro jiลพ zadanou leteckou spoleฤnost.

Nejฤastฤ›jลกรญ dotazy

Ani jedno. Klรกvesy F1 a F4 pล™eruลกรญ obrazovku a spustรญ vlastnรญ udรกlost, potรฉ se vrรกtรญ na stejnou obrazovku. Bฤ›ลพnรฉ zpracovรกnรญ PAI se spustรญ pouze tehdy, kdyลพ uลพivatel spustรญ normรกlnรญ funkฤnรญ kรณd.

Vyhledรกvacรญ nรกpovฤ›da pล™ipojenรก k datovรฉmu prvku nebo kontrolnรญ tabulce jiลพ vytvรกล™รญ seznam F4. Kรณdovรกnรญ z pohledu prvnรญ osoby je potล™eba pouze tehdy, kdyลพ jsou hodnoty vypoฤรญtรกvรกny za bฤ›hu nebo zรกvisรญ na jinรฉm poli obrazovky.

Pล™edejte DYNPROFIELD s nรกzvem sloupce a pouลพijte GET CURSOR. LINE najรญt ล™รกdek. Funkฤnรญ modul potรฉ zapรญลกe hodnotu do sprรกvnรฉho ล™รกdku ovlรกdacรญho prvku na dalลกรญm PBO.

Ano. Asistenti umฤ›lรฉ inteligence v nรกstrojรญch pro vรฝvoj ABAP pรญลกรญ logiku toku POV, pล™รญkaz SELECT, kterรฝ vyplลˆuje tabulku hodnot, a volรกnรญ F4IF_INT_TABLE_VALUE_REQUEST se sprรกvnรฝmi parametry RETFIELD a DYNPROFIELD.

ฤŒ. F1 stรกle ฤte dokumentaci uloลพenou ve slovnรญku ABAP. Asistenti umฤ›lรฉ inteligence, jako napล™รญklad SAP Joule odpovรญdรก na otรกzky srozumitelnรฝm jazykem vedle obrazovky, coลพ spรญลกe doplลˆuje dokumentaci z terรฉnu, neลพ aby ji nahrazovalo.

Shrลˆte tento pล™รญspฤ›vek takto: