| 4D v15 R2PROCESS 4D TAGS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v15 R2
 PROCESS 4D TAGS 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| PROCESS 4D TAGS ( inputData ; outputData {; param}{; param2 ; ... ; paramN} ) | ||||||||
| 引数 | 型 | 説明 | ||||||
| inputData | テキスト, BLOB |   | 処理する4Dタグを格納しているデータ | |||||
| outputData | テキスト, BLOB |   | 処理されたデータ | |||||
| param | テキスト, Number, 日付, 時間, ポインター |   | 実行されるテンプレートへと渡される引数 | |||||
PROCESS 4D TAGSコマンドを使用すると、inputTemplate 引数に格納されている4D変換タグ(フィールド、若しくはBLOBまたはテキスト型の変数)の処理が開始されます。param 引数を使用して値を挿入し(任意)、その結果がoutputResult に返されます。 これらのタグの完全な詳細については、4D 変換タグ の章を参照して下さい。
このコマンドにより、タグや、4D式や変数への参照を含んだ"テンプレート"型のテキストを実行でき、それにより実行コンテキストや引数に渡された値に応じた異なる結果を生成することができます。
例 えば、このコマンドにより、4D変換タグを含んだセミダイナミックページに基づいたHTMLページを生成する事ができます(このとき4D  Webサーバーを起動する必要はありません)。このコマンドを使用して、データベース内のデータへの参照の処理を(4D  Internetコマンド経由で)含んだHTMLフォーマットのEメールを送信する事ができます。テキストに基づいたデータタイプであれば、XML、 SVG、マルチスタイルテキストなど、どんなデータタイプでも処理することができます。
処理されるタグを格納しているデータを引数 inputTemplate に渡します。この引数はBLOBまたはテキスト型の変数やフィールドです。テキスト型の使用が推奨されます(引数は2GB までのテキストを受け取ることができます)。
互換性に関する注意: 4D v12より、BLOB型の引数を使用すると、コマンドは自動でBlobに使用されている文字セットをMacRomanとして扱います。効率化のために、Unicodeモードで処理が実行されるテキスト型の引数を使用することを強く推奨します。
4Dの全ての変換タグがサポートされます (4DTEXT、4DHTML、4DSCRIPT、4DLOOP、4DEVALなど) 。
注: Webサーバー (Webプロセス) のフレームワーク以外で 4DINCLUDE タグを使用する場合:
PROCESS 4D TAGS コマンドは、実行されたコードに不定数のparam 引数を挿入する事をサポートします。プロジェクトメソッド同様、これらの引数は様々なタイプのスカラー値を格納することができます(テキスト、日付、時 間、倍長整数、実数、等)。また、配列ポインターによって配列を使用することもできます。4Dタグによって処理されるコードの中では、これらの引数は4D メソッド同様、標準の引数($1、$2等)を通じてアクセス可能です(例題を参照して下さい)。
PROCESS 4D TAGS コマンドの実行コンテキストにおいて、専用のローカル変数のセットが定義されます。これらの変数は処理中、読み出し・書き込みともに可能です。
互換性に関する注意: 以前のバージョンの4Dでは、インタープリタモードのPROCESS 4D TAGS 実行コンテキスト内であれば、呼び出しコンテキストで定義されたローカル変数にアクセス可能でした。4D v14 R4以降、これはできなくなりました。
コマンドの実行後引数 outputResult には、inputTemplate 引数の結果とともに、そこに含まれる4Dタグが処理された結果が返されます。もしinputTemplate 引数が4Dタグを含まない場合、引数 outputResult の内容は引数inputTemplate の内容と一致します。
引数 outputResult はフィールドまたは変数です。ただし引数 inputTemplate と同じ型でなくてはなりません。
注: このコマンドはOn Web Authenticationデータベースメソッドを呼び出しません。
この例題ではテンプレートドキュメントをロードし、そこに含まれるタグを処理し、ファイルとして書き出します:
 C_BLOB($Blob_x)
 C_BLOB($blob_out)
 C_TEXT($inputText_t)
 C_TEXT($outputText_t)
 
 DOCUMENT TO BLOB("mytemplate.txt";$Blob_x)
 $inputText_t:=BLOB to text($Blob_x;UTF8 text without length)
 PROCESS 4D TAGS($inputText_t;$outputText_t)
 TEXT TO BLOB($outputText_t;$blob_out;UTF8 text without length)
 BLOB TO DOCUMENT($document;$blob_out)以下の例は、配列のデータを使用してテキストを生成します:
 ARRAY TEXT($array;2)
 $array{1}:="hello"
 $array{2}:="world"
 $input:="<!--#4DEVAL $1-->"
 $input:=$input+"<!--#4DLOOP $2-->"
 $input:=$input+"<!--#4DEVAL $2->{$2->}--> "
 $input:=$input+"<!--#4DENDLOOP-->"
 PROCESS 4D TAGS($input;$output;"elements = ";->$array)
  // $output = "elements = hello world"
	プロダクト: 4D
	テーマ: ツール
	番号: 
        816
        
        
        
	
	初出: 4D 2004
	変更: 4D v11 SQL  
	変更: 4D v12
	名称変更: 4D v13
	変更: 4D v14 R4
	
	ランゲージリファレンス ( 4D v15)
	
	ランゲージリファレンス ( 4D v15 R2)
	
	ランゲージリファレンス ( 4D v15.4)
	
	
	ランゲージリファレンス ( 4D v15.3)
 コメントを追加
コメントを追加