使用ソフトウェア:DataMagic for Windows Ver.2.2.2(コード変換・オプション for Windows)
今回はXML形式である「流通BMS」をCSV形式に変換します。
※下記バージョンのDataMagicについては、次の記事をご参照ください。
DataMagic 実践!流通BMS-CSV変換編(Ver.3.0.0)
※下記バージョンのDataMagicについては、次の記事をご参照ください。
DataMagic 実践!流通BMS-CSV変換編(Ver.3.0.0)
はじめに
こんにちは、メディアフォースの佐渡です。
突然ですが、流通BMSというデータフォーマットをご存じでしょうか。
これは流通ビジネスメッセージ標準(Business Message Standards)の略称で、電子商取引(EDI)の標準仕様です。
流通BMSが普及すれば、流通業界全体の業務効率化・コスト削減につながると期待されています。
流通BMSでは、メッセージ形式としてXML形式が採用されていますが、データを取り込む側のシステムがXML形式のデータを取り扱えない場合は、取り込める形式に変換しなければなりません。
そこで今回はDataMagicを活用し、XML形式からCSV形式へのフォーマット変換を行う方法をご紹介します。

突然ですが、流通BMSというデータフォーマットをご存じでしょうか。
これは流通ビジネスメッセージ標準(Business Message Standards)の略称で、電子商取引(EDI)の標準仕様です。
流通BMSが普及すれば、流通業界全体の業務効率化・コスト削減につながると期待されています。
流通BMSでは、メッセージ形式としてXML形式が採用されていますが、データを取り込む側のシステムがXML形式のデータを取り扱えない場合は、取り込める形式に変換しなければなりません。
そこで今回はDataMagicを活用し、XML形式からCSV形式へのフォーマット変換を行う方法をご紹介します。

事前準備
フォーマット変換に先立ち、以下2点を準備します。
サンプルデータ[XMLファイル]
上記サンプルデータを「C:\work\SAMPLE_BMS\」に格納してください。("in"というファイル名で保存)

テンプレートはDataMagicのインストールメディアに「tpl.txt」という名前で格納されていますので、使いやすいようにインストールメディアからローカルにコピーしてください。
(※パス:<インストールメディア>\EXPORT\tpl.txt)
<流通BMSのテンプレートの取得について>
流通BMSのデータには「基本形」「商品マスタ」「百貨店」の3種類があり、下記HPでテンプレートファイルやサンプルデータが公開されています。
流通システム標準普及推進協議会
http://www.dsri.jp/ryutsu-bms/index.html
(※テンプレートファイルを取得するには、別途申込みが必要です)
「商品マスタ」や「百貨店」のテンプレートの取得や、流通BMSを詳しく知りたい方はご活用ください。
- 変換元となるサンプルデータ(XMLデータ)
- XMLメッセージテンプレート
1.変換元となるサンプルデータ(XMLデータ)の準備
まずは、変換元となるサンプルデータを用意します。サンプルデータ[XMLファイル]
上記サンプルデータを「C:\work\SAMPLE_BMS\」に格納してください。("in"というファイル名で保存)

2.XMLメッセージテンプレートの準備
DataMagicには標準で流通BMS 基本形Ver.1.3におけるXMLメッセージテンプレートが登録できるため、今回はこのテンプレートを使用します。テンプレートはDataMagicのインストールメディアに「tpl.txt」という名前で格納されていますので、使いやすいようにインストールメディアからローカルにコピーしてください。
(※パス:<インストールメディア>\EXPORT\tpl.txt)
<流通BMSのテンプレートの取得について>
流通BMSのデータには「基本形」「商品マスタ」「百貨店」の3種類があり、下記HPでテンプレートファイルやサンプルデータが公開されています。
流通システム標準普及推進協議会
http://www.dsri.jp/ryutsu-bms/index.html
(※テンプレートファイルを取得するには、別途申込みが必要です)
「商品マスタ」や「百貨店」のテンプレートの取得や、流通BMSを詳しく知りたい方はご活用ください。
手順
データ変換に必要な定義情報を作成します。
データ変換の流れは大きく分けると以下になります。
メニューから「ツール」を選択し、「管理情報ファイル一括登録」を選択します。

※下記画面では、「tpl.txt」をローカルの「C:\work\EXPORT」フォルダに格納しています。
インポートが正常に終了します。

今回は、インポートされたテンプレートの中から「SIS_XML_BMS_13_08」を使用します。

<「SIS_XML_BMS_13_08」の詳細>

これで、「1.テンプレートファイルの取り込み」は完了です。
タブボタンから「アダプタ」を選択し、「ファイル」から「CSV」を選択後、「新規作成」をクリックします。

※下記画面は登録後です。

これで、「2.出力ファイル情報の設定」は完了です。
ここで、データの変換を行うための条件を設定します。
タブボタンから「データ加工」を選択し、「新規作成」をクリックします。

任意のIDを入力し、「入力」アイコンをダブルクリックします。

※ファイル名は、サンプルファイルを指定します。

抽出条件としたい要素を下記例のように選択します。
今回は「取引明細」毎にレコードを分けますので「order.lineItem」を指定しています。

「出力」アイコンをダブルクリックします。


抽出条件と出力ファイルを線でつなぎます。



これで、「3.データ加工情報の設定」は完了です。
データ加工情報設定画面の上部にある実行ボタンをクリックします。

実行するとデータ実行画面が表示されるので、出力ファイル生成モードを確認し、「実行」ボタンをクリックします。

Step11で指定した「C:\work\SAMPLE7\」に"out"というファイルが出力されます。
出力されたファイルをテキストエディタ等で確認します。
XML形式のデータが01~03のレコードに分かれ、CSV形式に変換されたことが確認できます。

データ変換の流れは大きく分けると以下になります。
- テンプレートファイルの取り込み
- 出力ファイル情報の設定
- データ加工情報の設定
Step01
まずは、「1.テンプレートファイルの取り込み」を行いましょう。メニューから「ツール」を選択し、「管理情報ファイル一括登録」を選択します。

Step02
「■事前準備」で用意した「tpl.txt」ファイルを選択し、「インポート」ボタンをクリックします。※下記画面では、「tpl.txt」をローカルの「C:\work\EXPORT」フォルダに格納しています。

インポートが正常に終了します。

Step03
タブボタンから「アダプタ」を選択し、「ファイル」から「XML」を選択します。今回は、インポートされたテンプレートの中から「SIS_XML_BMS_13_08」を使用します。

<「SIS_XML_BMS_13_08」の詳細>

これで、「1.テンプレートファイルの取り込み」は完了です。
Step04
次に、「2.出力ファイル情報の設定」を行います。タブボタンから「アダプタ」を選択し、「ファイル」から「CSV」を選択後、「新規作成」をクリックします。

Step05
CSV情報詳細画面が起動したら、下記画面を参考に「ID」を設定し、「項目名」を1~9まで登録します。※下記画面は登録後です。

これで、「2.出力ファイル情報の設定」は完了です。
Step06
続いて、「3.データ加工情報の設定」を行います。ここで、データの変換を行うための条件を設定します。
タブボタンから「データ加工」を選択し、「新規作成」をクリックします。

Step07
入力ファイルの設定を行います。任意のIDを入力し、「入力」アイコンをダブルクリックします。

Step08
入力設定画面が開いたら、下記例にしたがってID、ファイル名、XMLレコード単位を設定します。※ファイル名は、サンプルファイルを指定します。

Step09
Step08で「OK」ボタンをクリックすると、下記のようにフォーマットの内容が表示されます。抽出条件としたい要素を下記例のように選択します。
今回は「取引明細」毎にレコードを分けますので「order.lineItem」を指定しています。

Step10
続いて、出力ファイルの設定を行います。「出力」アイコンをダブルクリックします。

Step11
出力設定画面が開いたら、下記例にしたがって形式を合わせ、出力ファイルIDとファイル名を指定します。
Step12
次に、抽出条件の設定を行います。抽出条件と出力ファイルを線でつなぎます。

Step13
マッピング情報画面を開き、下記画面を参考に関連する項目をマッピングします。

入力項目 | 出力項目 |
---|---|
order.lineNumber | 取引明細番号(発注・返品) |
order.gtin | 商品コード(GTIN) |
order.orderItemCode | 商品コード(発注用) |
order.supplierItemCode | 商品コード(取引先) |
order.name | 商品名 |
order.name_sbcs | 商品名カナ |
order.unitMultiple | 発注単位 |
order.unitOfMeasure | 発注単位コード |
order.packageIndicator | 発注荷姿コード |
これで、「3.データ加工情報の設定」は完了です。
Step14
全ての設定が完了しましたので実行してみましょう。データ加工情報設定画面の上部にある実行ボタンをクリックします。

実行するとデータ実行画面が表示されるので、出力ファイル生成モードを確認し、「実行」ボタンをクリックします。

Step15
正常終了したら出力ファイルを確認してください。Step11で指定した「C:\work\SAMPLE7\」に"out"というファイルが出力されます。
出力されたファイルをテキストエディタ等で確認します。
XML形式のデータが01~03のレコードに分かれ、CSV形式に変換されたことが確認できます。

さいごに
いかがでしたか?
今回は流通BMSのXML形式をCSV形式へ変換しましたが、DataMagicなら、その他のXML形式であっても目的に合わせ編集が可能です。
ぜひお試しください。
今回は流通BMSのXML形式をCSV形式へ変換しましたが、DataMagicなら、その他のXML形式であっても目的に合わせ編集が可能です。
ぜひお試しください。
サンプルデータ
サンプルデータはzip形式での提供となります。解凍してからご利用ください。
コメント