ステップ1. RDMLXファンクションiiiFN12を作成する
これは高度な演習であるため、詳しい説明は行いません。
1. 新しいプロセスiiiPRO09 - Excel Exampleを作成します。ExcelReadServiceのテンプレートJSMXSKELを使用して、RDMLXファンクションiiiFN12 - Create Employee Excelを作成します。
2. 以前の演習で示したように、このテンプレートはサブルーチンKEYWRDを使用してフィールドJSMXCMDを構築します。RDMLXコーディング技術を使用する場合、1つのステートメント(ASSIGNコマンド)で各JSMコマンド(JSMXCMD)に必要とされる複雑な文字列を作成できるため、この方法は実際に必要ありません。
3. KEYWRDサブルーチンを削除します。ASSIGNコマンドを使用し、SERVICE_LOADロジックを変更してコマンドを作成します。例えば以下のようになります。
* BUILD THE SERVICE LOAD COMMAND
#jsmxcmd := 'SERVICE_LOAD SERVICE(ExcelReadService)'
USE BUILTIN(jsmx_command) WITH_ARGS(#jsmxhdle1 #jsmxcmd) TO_GET(#jsmsts #jsmmsg)
EXECUTE SUBROUTINE(CHECK_STS)
不要なコードを削除します。jsmx_command組み込み関数を実行するたびにこの構造を使用する必要があります。
4. このファンクションでは1つのサービスをロードするため、CHECK_STSサブルーチンからPARMS(#W_HDLE)を削除します。
5. EMPNO、GIVENAME、SURNAME、STARTDTER、PHONEHME、SALARYなどの社員データの作業リストを定義します。
6. 『LANSA Integrator ガイド』の「Java Service Managerサービス」の「ExcelReadService」を参照してください。これらの注意事項を読めば、ファンクションによって社員のリストが作成されると、以下の操作が必要になることが分かります。
· FILEパラメータとMODEパラメータが指定されたOPENコマンドを使用してExcelファイルを開きます。
· SHEETパラメータとR1C1パラメータが指定されたWRITEコマンドを使用してExcelファイルに書き込みます。作業リスト名はJSMX_COMMANDで渡されます。Sheet1とR1C1(1,1)は省略値です。
· CLOSEコマンドを使用してExcelファイルを閉じます。