マッピングコンポーネントの処理順序の変更

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  マッピングのデザイン > ノード名のマッピング > マッピングのルールと戦略 >

マッピングコンポーネントの処理順序の変更

MapForce は、複数のターゲットコンポーネントを有するマッピングをサポートします。各ターゲットコンポーネントには、特定のコンポーネントのためのマッピングの結果をプレビューすることのできるプレビューボタンがあります。

 

マッピングがコマンドライン、または、生成されたコードから実行されると、現在のアクティブなレビューに関わりなく、フルマッピングが実行され、各ターゲットコンポーネントのための出力が生成されます。

 

ターゲットコンポーネントが処理される順序は、マッピングウィンドウ内のターゲットコンポーネントの位置を変更することにより直接影響することができます。コンポーネントの位置 は、左上と同じように定義されています。

 

ターゲットコンポーネントは、スクリーン上の Y-X 位置に従い、上から下、左から右に処理されます。

 

2つのコンポーネントが、同じ 垂直方向 位置を持つ場合、左端のコンポーネントが優先されます。
2つのコンポーネントが、同じ 水平方向 位置を持つ場合、一番高い位置のコンポーネントが優先されます。
コンポーネントが、完全に 同じ 位置を持つシナリオは少ないですが、定義されている順序を保証する、変更不可能な、ユニークな内部コンポーネント ID が自動的に使用される場合はあります。

 

下のスクリーンショットは、 <マイ ドキュメント>\Altova\MapForce2019\MapForceExamples\Tutorial\ フォルダー内のチュートリアルサンプル Tut-ExpReport-multi.mfd を表しています。両方の ターゲットコンポーネント (ExpReport-Target) は、同じ 垂直方向 位置を有し、プレビューボタンが右のターゲットコンポーネント上でアクティブ化されています。

Tut-ExpReport-multi-ENT

Tut-ExpReport-multi.mfd (MapForce Enterprise Edition)

XSLT2 を選択して、コードを生成した場合:

 

左端のターゲットコンポーネントが最初に処理され、ExpReport.xml ファイルを生成します。
右のコンポーネントが次に処理され、SecondXML.xml ファイルを生成します。

 

DoTransform.bat ファイル (指定された出力 フォルダー内で) 開いて、生成されるシーケンス出力ファイルを確認することができます。ExpReport-Target.xml が、バッチファイルにより生成される最初の出力で、 SecondXML.xml が2番目の生成される出力です。

 

process2

 

 

処理シーケンスのマッピングの変更:

1.左のターゲットコンポーネントをクリックして、右の1つ下に移動します。

Tut-ExpReport-multi-detail-ENT

2.コードを再生成して、 DoTransform.bat ファイルを確認します。

process4

SecondXML.xml は、バッチファイルにより最初に生成される出力で、 ExpReport-Target.xml は2番目に生成される出力です。

 

チェーンされたマッピング

上記の同じ 処理シーケンスがチェーンされたマッピングのために続きます。チェーンされたマッピンググループは、1つのユニットとしてみなされます。単一のチェーンされたマッピングの中間または、最後の ターゲットコンポーネント位置を変更しても、処理シーケンスに影響を与えません。

 

複数の 「チェーン」または、 複数の ターゲットコンポーネントがマッピング内に存在する場合、各グループの最後の ターゲットコンポーネントの位置が何が最初に処理されるかを決定します。

 

最後2つの ターゲットコンポーネントが 同じ 垂直方向 位置を持つ場合、左端のコンポーネントが優先されます。
最後2つの ターゲットコンポーネントが 同じ 水平方向 位置を持つ場合、一番高い位置にあるコンポーネントが優先されます。
コンポーネントが、完全に 同じ 位置を持つシナリオは少ないですが、定義されている順序を保証する、変更不可能な、ユニークな内部コンポーネント ID が自動的に使用される場合はあります。

(C) 2019 Altova GmbH