WRITEコマンドは、指定したファイルにドキュメント・オブジェクトをシリアライズします。これは、プログラム内に設定されたフィールドからXMLドキュメントを作成する最終ステップとして使用されます。WRITEコマンドを使用する前に、SETコマンドを複数回使用してドキュメントのデータを設定します。
必須
WRITE ---------- FILE ---------------ファイル・パス------------->
任意
>-- INDENT ------------- *NO ---------------------->
*YES
>-- IDENT-AMOUNT -------値------------------------->
>-- DOCTYPE ------------値------------------------->
>-- PUBLIC -------------値------------------------->
>-- OMIT-DECLARATION --- *NO ---------------------->
*YES
>-- BINDTRACE ---------- *NO ---------------------->
*YES
>-- ENCODING -----------値--------------------------|
キーワード
FILE |
このキーワードは、作成するXMLドキュメントのファイル名とパスを指定する場合に使用されます。 パスの区切り文字にはフォワード・スラッシュを使用し、DOSドライブ指定子を使用しないことをお勧めします。 パスの形式は以下のようにします。 Windowsの場合、以下のように指定できます。
IBM i の場合、以下のように指定できます。
注:ディレクトリ構造が存在しなければなりません。 このキーワードは必須です。 |
INDENT |
このキーワードは、XML内容をインデントするかどうかを指定する場合に使用されます。 以下の2つのオプションがあります。
このキーワードは、INDENT-AMOUNTキーワードと一緒に使用されます。 このキーワードは任意です。 |
INDENT-AMOUNT |
このキーワードは、インデントに使用するスペースの数を指定する場合に使用されます。 省略値は0です(インデントが無効な場合と同様)。 INDENTキーワードを*NOに設定する場合、このキーワードによる影響はありません。 このキーワードは任意です。 |
DOCTYPE |
このキーワードは、ドキュメント・タイプ宣言のシステム・コンポーネントを指定する場合に使用されます。 ここで指定する値がどのような値でも、ドキュメント・タイプ宣言としてドキュメントに配置されます。これはXML宣言の直後に配置されます(挿入される場合)。 このキーワードは任意です。 |
PUBLIC |
条件付。DOCTYPE宣言のオプションの公開コンポーネント |
OMIT-DECLARATION |
このキーワードは、XML宣言を含めるかどうかを指定する場合に使用されます。 以下の2つのオプションがあります。
このキーワードは任意です。 |
BINDTRACE |
このキーワードは、アウトバウンド・バインド結果のトレースを有効にする場合に使用されます。 以下の2つのオプションがあります。
このキーワードは任意です。 |
ENCODING |
任意。「ENCODING 」を参照してください。 |
例
RDML
* 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)
CHANGE FIELD(#JSMCMD) TO('WRITE FILE(response/rsp_order.xml) INDENT(*YES) INDENT-AMOUNT(1)')
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 := 'WRITE FILE(response/rsp_order.xml) INDENT(*YES) INDENT-AMOUNT(1)'
Use BUILTIN(JSMX_COMMAND) WITH_ARGS(#JSMHND #JSMCMD) TO_GET(#JSMSTS #JSMMSG)