[ |../../index.htm#lansa/l4wdev05_0150.htm]
現在地:

4.3.6 複数のファイルを対象とした問い合わせ

注文内容の明細を表示するファンクションを作成します。
処理対象ファイル
物理ファイル「ORDHDR」(注文頭書き)、「ORDLIN」(注文明細)、「CUSMST」(顧客マスター)、「PROMST」(製品マスター)
RDMLプログラム
   GROUP_BY   NAME(#ORDERHEAD) FIELDS(#ORDER #DATDUE #CUSTNO                #NAME #ADDL1)    DEF_LIST   NAME(#ORDERLINE) FIELDS(#ORDLIN #PRODNO #DESC                #QTY #VALUE)    BEGIN_LOOP    << Get order number and fetch header and customer details >> L10    REQUEST     FIELDS(#ORDER)    FETCH       FIELDS(#ORDERHEAD) FROM_FILE(ORDHDR)                WITH_KEY(#ORDER) NOT_FOUND(L10) ISSUE_MSG(*YES)    FETCH       FIELDS(#ORDERHEAD) FROM_FILE(CUSTMST)                 WITH_KEY(#CUSTNO) NOT_FOUND(L10) ISSUE_MSG(*YES)    << Build list of associated lines and product details >>    CLR_LIST    NAMED(#ORDERLINE)    SELECT      FIELDS(#ORDERLINE) FROM_FILE(ORDLIN)                 WITH_KEY(#ORDER)    FETCH       FIELDS(#ORDERLINE) FROM_FILE(PROMST)                  WITH_KEY(#PRODNO)    ADD_ENTRY   TO_LIST(#ORDERLINE)    ENDSELECT    << Display full details of the order >>    DISPLAY     FIELDS(#ORDERHEAD) BROWSELIST(#ORDERLINE)    END_LOOP
 
[ |../../index.htm#lansa/l4wdev05_0150.htm]