注文内容の明細を表示するファンクションを作成します。
処理対象ファイル
物理ファイル「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