SAX ADD XML ELEMENT VALUE
SAX ADD XML ELEMENT VALUE ( document ; data {; *} )
引数 | 型 | 説明 | |
---|---|---|---|
document | Time | → | 開いたドキュメントの参照 |
data | Text, Variable | → | ドキュメントに挿入するテキストまたは変数 |
* | 演算子 | → | 指定時: 特別文字をエンコード 省略時: エンコードしない |
説明
SAX ADD XML ELEMENT VALUE コマンドは、document で参照されるXMLドキュメントにdata を変換せずに直接追加します。このコマンドは例えば電子メールのボディに添付ファイルを挿入するのと同等です。
data には、直接文字列を、または4D変数を渡せます。変数の内容はXMLドキュメントに挿入される前にテキストに変換されます。data がundefined に評価されてしまった場合、4D は空の文字列を使用します。
data の内容をエンコードしたい場合BASE64 ENCODE コマンドを使用しなければなりません。この場合もちろんBLOB をdata に渡します。
XML SET OPTIONSコマンドのXML String encoding オプションにをXML Raw data 渡すことでカレントプロセスにおいてこのメカニズムを無効にしない限り、デフォルトでコマンドはdata 引数に含まれる特別文字 (< > ” ’...) をエンコードします。例:
XML SET OPTIONS($docRef;XML string encoding;XML raw data)
この設定を行ったあと、SAX ADD XML ELEMENT VALUE を呼び出したとき文字のエンコーディングを強制したい場合、オプションの***引数を渡します。
このコマンドが正しく実行するには、要素が開かれていなければなりません。そうでなければエラーが生成されます。
例題
この例題は開かれたXML要素にwhitepaper.pdfファイルを挿入します:
var vBMyBLOB : Blob
DOCUMENT TO BLOB("c:\\whitepaper.pdf";vBMyBLOB)
SAX ADD XML ELEMENT VALUE($DocRef;vBMyBLOB)
システム変数およびセット
コマンドが正しく実行されるとシステム変数OKに1が設定され、そうでなければ0が設定されてエラーが生成されます。