8.22.2 WEB_MAPの使用例
以下は、WebRoutineのSearchQueryが、ユーザーが検索の要求を行えるページを表示する例です。このWebroutineに値は返信されないため、フィールドは*OUTPUTのみです。その次のWebroutine(Browse)は#SURNAMEを入力形式で指定します。#SURNAME、#STDRENTRY、および#STD_COUNTが次または前を取得できるようにする必要があります。
WEBROUTINE NAME(SearchQuery) DESC('Search Criteria')
WEB_MAP FOR(*OUTPUT) FIELDS(#SURNAME (#STDRENTRY *HIDDEN))
ENDROUTINE
WebRoutineのBrowseにより、ユーザーは従業員リスト(#EMPLISTPG)を一度に1ページ閲覧することができます。#SURNAME、#STDRENTRY、および#STD_COUNTが次または前を取得できるようにする必要があります。
WEBROUTINE NAME(Browse) DESC('Browse Employees')
WEB_MAP FOR(*BOTH) FIELDS((#SURNAME *HIDDEN) (#STD_COUNT *HIDDEN) (#STDRENTRY *HIDDEN) (#STDPREV *HIDDEN) (#STDMORE *HIDDEN))
WEB_MAP FOR(*OUTPUT) FIELDS(#EMPLISTPG)
ENDROUTINE
最後に、WebRoutineのDetailsでユーザーに表示する従業員の詳細を取得します。#EMPNOおよび#SURNAMEは送信も受信もされますが、表示では出力のみのフィールドとされます。#STDRENTRYフィールドは他のWebroutineとの状況の伝達に使用されます。
WEBROUTINE NAME(Details)
WEB_MAP FOR(*OUTPUT) FIELDS((#GIVENAME *OUTPUT) (#ADDRESS1 *OUTPUT) (#ADDRESS2 *OUTPUT) (#ADDRESS3 *OUTPUT) (#POSTCODE *OUTPUT) (#PHONEHME *OUTPUT) (#PHONEBUS *OUTPUT) (#STARTDTER *OUTPUT) (#TERMDATER *OUTPUT) (#DEPTDESC *OUTPUT) (#SECDESC *OUTPUT) (#SALARY *OUTPUT) (#MNTHSAL *OUTPUT) (#STARTDTE *OUTPUT) (#TERMDATE *OUTPUT))
WEB_MAP FOR(*BOTH) FIELDS((#EMPNO *OUTPUT) (#SURNAME *OUTPUT) (#STDRENTRY *HIDDEN) (#STD_COUNT *HIDDEN))
ENDROUTINE