ステップ5. ファンクションiiiFN18の作成 - 社員用PDF出力をテストする

LANSA Integrator

ステップ5. ファンクションiiiFN18の作成 - 社員用PDF出力をテストする


1. プロセスiiiPRO10に属するRDMLファンクション「iiiFN18 - 社員用PDF出力をテストする」を作成します。

2. コードを以下に置き換えます。

Function Options(*DIRECT)

Override Field(#STD_FLAG) Label('Report Type')

Group_By Name(#SCREEN) Fields((#STD_FLAG *L004 *P002) (#EMPNO *L007 *P002) (#SURNAME *L008 *P002) (#DEPTMENT *L009 *P002))

Begin_Loop

Request Fields(#SCREEN) Identify(*LABEL) Text((*TMAP001 001 001))

Begincheck

Valuecheck Field(#STD_FLAG) With_List('S' 'D' 'E') Msgtxt('Report Type must be D, E or S')

Case Of_Field(#STD_FLAG)

When Value_Is('= E')

Filecheck Field(#EMPNO) Using_File(pslmst) Msgtxt('Employee not found')

When Value_Is('= D')

Filecheck Field(#DEPTMENT) Using_File(deptab) Msgtxt('Department not found')

When Value_Is('= S')

If Cond('#SURNAME = *blanks')

Set_Error For_Field(#SURNAME)

Message Msgtxt('Surname may not be blank')

Endif

Endcase

Endcheck

Exchange Fields(#EMPNO #DEPTMENT #SURNAME #STD_FLAG)

Call Process(*DIRECT) Function(IIIFN17) Exit_Used(*NEXT) Menu_Used(*NEXT)

End_Loop

3. 呼び出すファンクション名を自分のイニシャルに変えます。

4. IBM i サーバーでファンクションを実行する場合は、サーバーにチェックインし、コンパイルします。

5. ファンクションiiiFN18を実行してファンクションiiiFN17をテストします。

6. 社員番号、社員姓、部門により選択した時にPDFが作成されたかどうかを確認します。