BIND

LANSA Integrator

BIND


BINDコマンドは、指定したサービス・コードを、ロードされたインバウンド・ドキュメントにバインドしたり、新しい空のアウトバウンド・ドキュメントを作成したりします。

コマンドの一部として指定されたサービスは、LANSA IntegratorスタジオのXMLバインディングウィザードを使用して作成されます。

バインドのタイプをアウトバウンドまたはインバウンドとして指定する必要があります。通常、READはインバウンド・タイプに、WRITEはアウトバウンド・タイプに関連付けられます。

                                                          必須

 BIND --------- SERVICE --------値-------------------------->

            >-- TYPE ----------- *INBOUND ----------------------->

                                 *OUTBOUND

                                                          任意

            >-- BINDTRACE ------ *NO ----------------------------|

                                 *YES

キーワード

SERVICE

このキーワードは、service.「値」service.archive.「値」によるXMLBindFileServiceプロパティ検索で使用され、使用するバインディング・クラスやバインディングjarファイルを検索します。ここでの値は、XMLバインディングウィザードで定義された、対応するサービス・クラス名になります。

このキーワードは必須です。

TYPE

このキーワードは、実行するバインドのタイプを指定する場合に使用されます。これは、既存ファイルのREADと新しいファイルのWRITEのどちらを実行するかによって異なります。

以下の2つの値が可能です。

·         *INBOUND - この値を使用する場合、指定のサービス・コードが、先行するREADコマンドの一部としてロードされたインバウンド・ドキュメントにバインドされます。

·         *OUTBOUND - この値を使用する場合、新しい空のアウトバウンド・ドキュメントが作成されます。

このキーワードは必須です。

BINDTRACE

このキーワードは、インバウンド・バインド結果のトレースを有効にする場合に使用されます。

以下の2つのオプションがあります。

·         *YES - トレースを有効にします。

·         *NO - トレースを無効にします。

·         このキーワードは任意です。

コメント/警告

コード内でのBINDコマンドの位置は、既存のXMLドキュメントからデータを読み込むか、新しいXMLドキュメントを作成するかによって異なります。 既存のXMLドキュメントからデータを読み込む場合、コードの流れは以下のようになります。

JSM(X)_OPEN

JSM(X)_COMMAND

     SERVICE_LOAD

          READ

          BIND

          GET (複数回)

          CLOSE

     SERVICE_UNLOAD

JSM(X)_CLOSE

一方、XMLドキュメントに書き込む必要があるアプリケーションは、通常、以下のコマンドを発行します。

JSM(X)_OPEN

JSM(X)_COMMAND

     SERVICE_LOAD

          BIND

          SET (複数回)

          WRITE

          CLOSE

     SERVICE_UNLOAD

JSM(X)_CLOSE

RDML

* Define JSM fields

DEFINE FIELD(#JSMSTS) TYPE(*CHAR) LENGTH(020)

DEFINE FIELD(#JSMMSG) TYPE(*CHAR) LENGTH(256)

DEFINE FIELD(#JSMCMD) TYPE(*CHAR) LENGTH(256)

* Bind

CHANGE FIELD(#JSMCMD) TO('BIND SERVICE(INBOUNDORDER) TYPE(*INBOUND) BINDTRACE(*YES)')

USE BUILTIN(JSM_COMMAND) WITH_ARGS(#JSMCMD) TO_GET(#JSMSTS #JSMMSG)

RDMLX

* Define the fields used by the JSM Commands

Define FIELD(#JSMSTS) TYPE(*CHAR) LENGTH(020)

Define FIELD(#JSMMSG) TYPE(*CHAR) LENGTH(256)

Define FIELD(#JSMCMD) TYPE(*CHAR) LENGTH(256)

Define FIELD(#JSMHND) TYPE(*CHAR) LENGTH(4)

#JSMCMD := 'BIND SERVICE(INBOUNDORDER) TYPE(*INBOUND) BINDTRACE(*YES)'

Use Builtin(JSMX_COMMAND) With_Args(#JSMHND #JSMCMD) To_Get(#JSMSTS #JSMMSG)