intra-mart Accel Platform メニュー インポート・エクスポート仕様書 第4版 2018-04-01

6. インポート

メニューのインポートはXML形式で行うことが可能です。
マスタ情報の新規登録、更新を行うことができます。
この章では、インポートがどのように行われるかを説明します。
また、更新モードによる更新方法の違いについて説明します。

更新モード

更新モードを利用することで、インポートの目的にあわせたデータの更新を行うことができます。
更新モードには、mergereplacerevive が提供されています。
update-mode 属性を指定することでモードを設定します。
各更新モードの仕様は次の通りです。
実際の動作や用途については、メニューグループカテゴリの更新モードメニューグループの更新モードを参照してください。
メニューグループカテゴリ、メニューグループのインポートにおいて、削除を行う更新モードは提供されていません。

merge

インポートファイルのデータとデータベース上のデータをマージして更新します。
インポートファイルに存在しない項目は既存のデータをそのまま設定します。

replace

インポートファイルのデータに存在しない情報は未設定の値(デフォルト値)で更新します。
インポートファイルに存在しない項目は既存のデータを未設定に更新します。

revive

インポートファイルのデータと同じキーのデータがデータベースに存在する場合、何もしません。
同じキーのデータがデータベースに存在しない場合、インポートファイルのデータが新規追加されます。
ただし、一部のデータに関しては、インポート対象データの親となるレコードがデータベースに存在する場合、何もしません。

注意

更新モード revive は、intra-mart Accel Platform 2014 Spring(Granada) 以降で利用可能です。

メニューグループカテゴリ

XML

メニューグループカテゴリはメニューグループ とは独立してインポートすることができます。
<menu-group-category-data> タグを1レコードとしてインポートします。
ファイルのフォーマットについては「XMLファイルフォーマット」を参照してください。
インポート時の動作をオプションとして指定が可能です。
インポート時に利用可能なオプションについては、「インポートオプション」を参照してください。

メニューグループカテゴリの更新モード

メニューグループカテゴリの更新モードには mergereplace が提供されています。
update-mode 属性は、<menu-group-category-data> タグに指定します。
特に指定していない場合、merge モードで動作します。

メニューグループ

XML

メニューグループのインポートは、メニューグループをルートとした配下のメニュー階層構造全体を1件のインポートデータとして取り扱います。
メニューグループカテゴリ とは独立してインポートすることができます。
<menu-group-data> タグを1トランザクションとして、以下の情報をインポートします。
ファイルのフォーマットについては「XMLファイルフォーマット」を参照してください。

メニューグループの更新モード

メニューグループの更新モードには mergereplacerevive が提供されています。
update-mode 属性は、<menu-group-data> タグに指定します。
特に指定していない場合、merge モードで動作します。
ただし、テナント環境セットアップ時におけるテナントマスタ情報のインポートで実施されるメニューグループのインポートについては、update-mode 属性を指定しない場合、revive モードで動作します。

merge

既存のメニューを更新したり、メニューを追加したい場合に利用します。

../../_images/merge-11.png

インポートファイルとデータベース上に同じメニューグループIDが存在する場合、配下のメニュー階層をマージします。

../../_images/merge-2.png

replace

既存のメニューを削除して、インポートファイルのメニューで置き換えたい場合に利用します。

../../_images/replace-11.png

インポートファイルとデータベース上に同じメニューグループIDが存在する場合、メニュー階層の子メニューを全て削除してから、インポートファイルのデータを登録します。

../../_images/replace-2.png

revive

既存のメニューは更新せずに、メニューの追加のみを行いたい場合に利用します。

../../_images/revive-1.png
../../_images/revive-2.png

以下のような場合、未登録ロケールの表示名を追加します。

../../_images/revive-3.png

インポートの依存関係

メニューグループをインポートする際、あらかじめメニューグループカテゴリを登録する必要があります。