ドキュメントMapper/変数Mapper(詳細)
オペレーション名
-
ドキュメントMapper
-
マッピング
-
-
変数Mapper
-
変数代入
-
機能概要
-
ドキュメントMapper
-
入力データの変換を行います。
-
-
変数Mapper
-
変数に値を代入します。
-
詳細については、「ドキュメントMapper/変数Mapper(基本)」を参照してください。
プロパティ(プロパティインスペクタ)
基本設定
項目名 |
必須/省略可 |
変数の使用 |
説明 |
備考 |
---|---|---|---|---|
名前 |
必須 |
使用不可 |
スクリプトキャンバス上での名前を入力します。 |
|
入力データ |
必須 |
使用不可 |
変換対象となるデータを出力するコンポーネントを選択します。 |
注意
変数Mapperでは表示されません。 |
コメント
項目名 |
必須/省略可 |
変数の使用 |
説明 |
備考 |
---|---|---|---|---|
コメント |
省略可 |
使用不可 |
任意のコメントを記述できます。 |
|
大容量データ処理
ドキュメントMapperでは、大容量データ処理を行ったコンポーネントが入力元で、かつ入力スキーマ・出力スキーマがともにテーブルモデル型のスキーマ構造の場合のみ、大容量データ処理を行います。
変数Mapperでは、大容量データ処理を行ったコンポーネントが入力元で、かつ入力スキーマがテーブルモデル型のスキーマの場合に、大容量データ処理を行います。
XML型 でも<table><row><column>というテーブルモデル型のスキーマ構造を持っていた場合には、テーブルモデル型とみなされます。
入出力スキーマ
Mapperでは、データフローでつながれたコンポーネントのスキーマを入力元または出力先に表示します。スキーマの要素をマッピングリンクでつなぐことにより、データの受け渡しを行うことができます。
コンポーネントの種類によって、スキーマが自動で設定される場合と、手動で設定が必要な場合があります。
詳細については、「コネクターのスキーマについて」を参照してください。
PSPでの使用について
ドキュメントMapperは、PSPで使用できます。
変数Mapperは、PSPでは使用できません。
PSPについては、「パラレルストリーミング処理」を参照してください。
使用できるコンポーネント変数
コンポーネント変数名 |
説明 |
備考 |
---|---|---|
message_category |
エラー発生時、発生したエラーに対応するメッセージコードのカテゴリが格納されます。 |
|
message_code |
エラー発生時、発生したエラーに対応するメッセージコードのコードが格納されます。 |
|
message_level |
エラー発生時、発生したエラーに対応するメッセージコードの重要度が格納されます。 |
|
error_type |
エラー発生時、発生したエラーの種類が格納されます。 |
|
error_message |
エラー発生時、発生したエラーのメッセージが格納されます。 |
|
error_trace |
エラー発生時、発生したエラーのトレース情報が格納されます。 |
|
-
スクリプト変数への代入は、出力先コンポーネントへの書き込みよりも先に一度だけ行われます。
-
入力スキーマに繰り返しロジックを使用している場合でも、スクリプト変数に代入されるのは最初の行のみとなります。
-
コントロールコードなどのXML文書中に格納することができない文字を持つCSV、固定長可変長、データベースなどのテーブルモデル型データからXML型データに変換することはできません。
-
コンポーネントアイコン名に「&」を含むコンポーネントのコンポーネント変数から、XML型の出力スキーマにマッピングを行うことはできません。
= 備考 =そのほかの文字制約については、「HULFT Square使用禁止文字について」を参照してください。
-
Mapperは、トランザクションをサポートしていません。トランザクション内でのMapperの挙動は以下のとおりです。
-
変数に代入した場合、失敗しても変数値はロールバックされません。
-
Mapperより前の処理で変更したデータベースやファイルの内容を参照することはできません。
-
-
XML型の入力スキーマからスクリプト変数へ代入処理を行った場合、テーブルモデル型と比べてパフォーマンスが低下します。
-
Mapperでは、データフローが直接引かれているコンポーネントのスキーマの変更通知のみを受け取り、スキーマの同期を行います。
たとえば、Mapperの入力元が繰り返し(データ件数)処理の場合、繰り返し(データ件数)処理の入力元であるコンポーネントのスキーマを(別のテーブルを選択するなどして)変更しても、Mapperの入力スキーマは同期されません。
手動でのスキーマの読み込みを行ってください。
-
複数のMapperを出力先とするMapperを開いた状態で、出力先のMapperで入力スキーマを読み込んでも、ほかの出力先のMapperにスキーマの通知は行われません。その場合、プロジェクトを開き直し、複数のMapperを出力先とするMapperを閉じた状態でスキーマの読み込みを行ってください。
-
ドキュメントMapperの出力先にXML型のスクリプト出力変数を設定し、プロジェクトエクスプローラでスクリプト変数名を変更しても、出力先スキーマに反映されません。その場合、プロジェクトを開き直すと変更が反映されます。
-
ドキュメントMapperの出力先に編集可能なスキーマを持つコンポーネントを設定し、変数MapperでそのドキュメントMapperのスキーマを変更しても、ドキュメントMapperの出力先スキーマには反映されません。その場合、ドキュメントMapperの出力先スキーマから変更してください。
-
スキーマが定義されている状態で、属性を持つ別のスキーマを読み込むと、要素の順序が保たれない場合があります。その場合、手動で編集するか、再度スキーマの読み込みを行ってください。
-
マッピングキャンバス上で、ショートカットキーによるロジックアイコンの切り取り、コピーおよび貼り付けができない場合があります。その場合、右クリックメニューやデザイナーのメニューを使用してください。
-
マッピングキャンバス上の複数のロジックアイコンを選択して移動した際に、ロジックアイコンが画面外に配置されてしまうことがあります。その場合、マッピングキャンバス上のロジックアイコンを全選択状態にして画面内に移動させてください。
注意事項
-
複数のMapperエディターを起動している場合、タブの切り替えではリアルタイム実行のビューが切り替わりません。
-
プロセスフローが引かれていないコンポーネントのコンポーネント変数をマッピングした場合、実行時にエラーが発生します。
-
ドキュメントMapperの出力データに含まれる改行コードについて
-
改行コードは「LF」です。
= 備考 =データモデルの詳細については、「データモデル 」を参照してください。
-
該当するスクリプトのキャンバスで、リアルタイム実行するMapperのアイコンを選択し、フォーカスを合わせてください。