サンプル: アイテムの反復

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

ホーム >  データソースとターゲット > CSV とテキストファイル >

サンプル: アイテムの反復

ターゲット CSV ファイル内でアイテムの反復 (複数の行) の方法を説明します。このサンプルで使用されるマッピングデザインファイルは、 <マイ ドキュメント>\Altova\MapForce2019\MapForceExamples\Tutorial\ フォルダー内にある Tut-xml2csv.mfd で確認できます。

Tut-xml2csv-ENT

Tut-xml2csv.mfd

このマッピングは、意図的に不完全し作成されています。このサンプルを、メニューコマンド 「ファイル | マッピングの検証]を使用して検証しようと試みると、 検証エラーが生じる可能性があります。また、マッピング出力をプレビューすると、 目的に合った、または合わない単一の行が作成されます。

 

XML ファイル内のアイテムのシーケンスから CSV ファイル 内に複数の行を作成することが目的だと仮定します。これは ターゲット CSV ファイルの Rows アイテムに接続を描くことで達成することができます。

 

全てのオフィスに関するデータを CSV ファイルへ出力するには、Office を行アイテムへ接続する必要があります。MapForce で以下の命令を与えます : Office アイテムを行アイテムへ接続することで、各 Office (とマッピングされたアイテム)がターゲット CSV ファイルに表示されます。

Tut-xml2csv02-ENT

 

 

CSV コンポーネント内の Rows アイテムは、接続されたアイテムのシーケンスのための反復子としての役割を果たします。ですから、 Office  アイテムを接続すると、出力はソース XML 内で見つかる各のために行を作成します。

x2csv-3

 

Department から Rows アイテムへのマッピングを行うことで、ソース内の各 department のために行が作成されます。

Tut-xml2csv03-ENT

 

出力は、以下のようになります:

x2csv-5

 

最後に、PersonRows アイテムにマッピングすると、結果はすべての Person が出力になります。この場合、 MapForce は、記録を以下のように反復します: 各 Department 内の各 Office 内の各 Person.

 


(C) 2019 Altova GmbH