ステップ4. iiiFN10クライアントのラッパー・ファンクションをコード化する

LANSA Integrator

ステップ4. iiiFN10クライアントのラッパー・ファンクションをコード化する


このステップでは、クライアント用のRDML (非RDMLX)ラッパー・ファンクションを作成します。これにより、簡単なWindowsプログラムでサーバーとのやり取りを行うことができます。

1.   iiiPRO07 JSM XML Employees Clientという新しいLANSAプロセスを作成します。iiiは一意の3文字です(プロセスがすでにある場合は、iiiに対して別の文字セットを選択します)。

2.   プロセスiiiPRO07に属するiiiFN10 Display Department & Employee Clientという新しいファンクションを作成します。テンプレートでファンクションを作成しないでください。ファンクションをRDMLX対応ファンクションにしないでください。

3.   このプログラムの基本構造では、ユーザーからの部門コード入力を受け入れ、RDMLXファンクションiiiFN10を呼び出し、結果の社員リストを表示します。参照リストと、このデータを入れる作業リストが必要です。

a.   WL_EMPSKLを、FULLNAMEとSKILDESCの作業リストとして定義します。

b.   BL_EMPSKLを、FULLNAMEとSKILDESCの参照リストとして定義します。

4.   表示ファンクションの入力、ファンクション呼び出し、出力をコード化します。

a.   BEGIN_LOOPコマンドとEND_LOOPコマンドを挿入します。

b.   ループ内に、DEPTMENTを要求して参照リストBL_EMPSKLを表示するREQUESTコマンドを挿入します。

c.   作業リストと参照リストの両方を消去します。

d.   フィールドDEPTMENTを交換します。

e.   ファンクションiiiFN09を呼び出し、作業リストWL_EMPSKLを渡します(投入されたデータを返すことができます)。

f.   作業リストをループして、反復ごとにエントリーを参照リストに追加します。

          終了したコードは以下のようになります。

FUNCTION OPTIONS(*DIRECT)
DEF_LIST NAME(#WL_EMPSKL) FIELDS(#FULLNAME #SKILDESC) TYPE(*WORKING) ENTRYS(9999)
DEF_LIST NAME(#BL_EMPSKL) FIELDS(#FULLNAME #SKILDESC) ENTRYS(9999)

BEGIN_LOOP
REQUEST FIELDS(#DEPTMENT) BROWSELIST(#BL_EMPSKL)

CLR_LIST NAMED(#WL_EMPSKL)
CLR_LIST NAMED(#BL_EMPSKL)

EXCHANGE FIELDS(#DEPTMENT)
CALL PROCESS(*DIRECT) FUNCTION(IIIFN09) PASS_LST(#WL_EMPSKL)

SELECTLIST NAMED(#WL_EMPSKL)
ADD_ENTRY TO_LIST(#BL_EMPSKL)
ENDSELECT

END_LOOP
 

5.   ファンクションを保存し、コンパイルして閉じます。