You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

7.8.2 BROWSE の使用例

例1:指定された注文のすべての行をブラウズし、個々の明細行を選択できるようにします。
ROUP_BY   NAME(#BRWLIN) FIELDS(#ORDLIN #PRODUCT #QUANTITY)
REQUEST    FIELDS(#ORDNUM)
BROWSE     FIELDS(#BRWLIN) FROM_FILE(ORDLIN) WITH_KEY(#ORDNUM) RETURN_RRN(#RRNFLD)
これは、機能的に以下の例と似ています。
DEF_LIST   NAME(#BRWLIN) FIELDS((#SELECTOR *SELECT) #ORDLIN #PRODUCT #QUANTITY #RRNFLD)   REQUEST    FIELDS(#ORDNUM) CLR_LIST   NAMED(#BRWLIN) SELECT     FIELDS(#BRWLIN) FROM_FILE(ORDLIN) WITH_KEY(#ORDNUM) RETURN_RRN(#RRNFLD) ADD_ENTRY  TO_LIST(#BRWLIN) ENDSELECT DISPLAY    BROWSELIST(#BRWLIN) SELECTLIST NAMED(#BRWLIN) GET_ENTRYS(*SELECT) FETCH      FIELDS(#BRWLIN) FROM_FILE(ORDLIN) WITH_RRN(#RRNFLD) ENDSELECT  
例2:状態が NSW、与信限度が $100,000 の顧客を名前で総称的にブラウズします。
BROWSE     FIELDS(#NAME #ADD1 #ADD2 #POSTCD #CRDLIM) FROM_FILE(CUSTMAS) WHERE('(#POSTCD > 1999) *AND (#POSTCD < 3000) *AND (#CRDLIM = 100000)') WITH_KEY(#NAME) GENERIC(*YES)  
例3:例 2 を拡張し、レコードがブラウズ画面で唯一のレコードの場合に、そのレコードを自動的に選択します。
BROWSE     FIELDS(#NAME #ADD1 #ADD2 #POSTCD #CRDLIM) FROM_FILE(CUSTMAS) WHERE('(#POSTCD > 1999) *AND (#POSTCD < 3000) *AND (#CRDLIM = 100000)') WITH_KEY(#NAME) GENERIC(*YES) ONE_FOUND(*SELECT)  
例4:ブラウズにより、顧客マスター・ファイルの照会において更新および削除を実行できるようにします。このブラウズでは、顧客名の総称検索がサポートされます。
    GROUP_BY   NAME(#BRWLIN) FIELDS(#NAME #ADD1 #ADD2 #ADD3 #POSTCD)       BEGIN_LOOP L1: REQUEST    FIELDS(#NAME)     SET_MODE   TO(*DISPLAY)     BROWSE     FIELDS(#BRWLIN) FROM_FILE(CUSTMAS) WITH_KEY(#NAME) GENERIC(*YES) NO_SELECT(L1) RETURN_RRN(#FILRRN) CHANGE_KEY(*YES) DELETE_KEY(*YES)     DISPLAY    FIELDS(#BRWLIN)     IF_MODE    IS(*CHANGE)     UPDATE     FIELDS(#BRWLIN) IN_FILE(CUSTMAS) WITH_RRN(#FILRRN)     ENDIF     IF_MODE    IS(*DELETE)     DELETE     FROM_FILE(CUSTMAS) WITH_RRN(#FILRRN)     ENDIF     END_LOOP  

  • No labels