Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Removed |../../index.htm#lansa/browse_e.htm]
現在地:

...

7.8.2 BROWSE の使用例

例1:指定された注文のすべての行をブラウズし、個々の明細行を選択できるようにします。 例1:指定された注文のすべての行をブラウズし、個々の明細行を選択できるようにします。

ROUP   GROUP_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:状態が 例2:状態が NSW、与信限度が $100,000 の顧客を名前で総称的にブラウズします。 BROWSE     FIELDS(#NAME #ADD1 #ADD2 #POSTCD #CRDLIM) FROM

   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:例 例3:2 を拡張し、レコードがブラウズ画面で唯一のレコードの場合に、そのレコードを自動的に選択します。 BROWSE     FIELDS(#NAME #ADD1 #ADD2 #POSTCD #CRDLIM) FROM

   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