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.

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.
- 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.
- 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.
- 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.
- 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.
- 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.
