intra-mart Accel Platform 互換ガイド 第11版 2023-10-31

11. 共通マスタ拡張同期インポートⅠ型

11.1. 概要

共通マスタ拡張同期インポートⅠ型(以下 拡張インポートと称します)は、IM-共通マスタとアプリケーション共通マスタへのインポートを行うジョブを提供します。
標準のIM-共通マスタインポートジョブの同期処理部分に制約をもうけることで簡略化することによりパフォーマンスの改善を図ったインポートです。
簡略化したことにより、使用するにあたっていくつかの制限事項があります。
本ドキュメントでは、共通マスタ拡張同期インポートⅠ型の導入方法と使用方法について説明します。
また、使用する際の制限事項についても記述しています。
これらの制限を踏まえてインポートジョブを使用してください。

11.2. 拡張インポートについて

11.2.1. 拡張インポートの位置づけ

IM-共通マスタのユーザインポート、会社組織インポートのアプリ共通マスタへの同期処理の内容を検討し、想定する利用パターンで省くことのできる処理を省いて、同期処理を再作成しました。
利用できないパターンなどの制限や注意事項がありますが、その代わり処理時間が短くなっています。

11.2.2. 標準インポートとの対比

以下は、標準インポートと拡張インポートの機能比較した表です。
拡張インポートのメリットは、標準インポートと比べて処理速度が速いことです。
デメリットはインポートデータに制限があることです。
項目 標準インポート 拡張インポート 備考
IM-共通マスタインポート  
アプリケーション共通マスタへの同期  
設定ファイル 標準と同じ設定ファイルを使用できます。
ファイルフォーマット xml/csv csv 標準と同じ csv ファイルを使用できます。
分類のインポート × 詳細は 「分類は対象外です」 を参照してください。
インポートデータの制限 制限なし 制限あり 詳細は 「インポート期間と対象エンティティの期間の制限があります」、「関連するエンティティの復帰処理を行いません」、「役職のランク変更について」を参照してください。
処理時間 普通 速い アプリケーション共通マスタへの同期の部分が速くなっています。

11.3. 想定する利用パターン

拡張インポートジョブを適用できる典型的な運用は、定期的に IM-共通マスタのインポートジョブを実行し、IM-共通マスタのマスタメンテナンス画面からの操作は行っていない運用です。
この場合、インポートの対象期間と各エンティティの期間の制限を満たしているので、このインポートジョブを適用できます。
期間の制限については「インポート期間と対象エンティティの期間の制限があります」を参照してください。

11.3.1. インポート可能な期間の例

以下の図は、システムにユーザ A、ユーザ B、ユーザ C がそれぞれの期間を持ち、そこにユーザインポートが可能な期間の例を表しています。
ユーザ A は運用開始日からシステム終了日まで期間は分割されてなく、ユーザ B、ユーザ C は分割されているとします。
この場合、インポート可能な期間はすべてのユーザの分割の日を含まないような期間です。
../../_images/import01_1.png

11.3.2. 想定する利用パターンの例

以下の図は、定期的にインポートを行っている運用の例を表しています。
インポート終了日を固定して、インポート開始日は、前回のインポート開始日より後にずらしながらインポートしている利用パターンの例です。
このパターンであれば、簡単に「インポート可能な期間の例」で示したようなインポート可能な期間に合致させることができます。
../../_images/import01_2.png

11.3.3. チェックリスト

IM-共通マスタ、アプリケーション共通マスタの運用についてのチェックリストです。
以下の項目が全て「YES」の場合、この拡張インポートジョブを適用できます。
  • インポートをcsv 形式で行っている。

  • ユーザ分類、組織分類を使っていない。

  • インポート前の状態で、IM-共通マスタとアプリケーション共通マスタの同期がとれている。

  • インポート期間と対象エンティティの期間が期間の条件を満たしている。
    期間の条件は、「インポート期間と対象エンティティの期間の制限があります」を参照してください。
  • IM-共通マスタ上で無効状態(論理削除状態)のデータを有効化するインポートは行わない。
    有効化への変更については、「関連するエンティティの復帰処理を行いません」を参照してください。
  • 役職インポートで役職のランクを変更しない。

11.4. 使用方法

11.4.1. 設定ファイルとcsv ファイル

設定ファイルとcsv ファイルの内容と配置場所は、IM-共通マスタの標準インポートの設定ファイル同じです。
同じファイルを共有しますので、標準インポートを実行する場合には注意してください。
「IM-共通マスタインポート・エクスポート仕様書」を参照し、設定ファイルとcsv ファイルを配置してください。

11.4.2. バックアップ

「 intra-mart Accel Platform セットアップガイド」の「バックアップ 」を参考に、バックアップを行ってください。

11.4.3. インポートの実行

  1. テナント管理者でログインします。

  2. 「サイトマップ」-「テナント管理」-「ジョブネット設定」をクリックします。

  3. ジョブネット一覧より「ユーザ拡張同期インポート Ⅰ型」および「会社・組織拡張同期インポート Ⅰ型」を選択して、ジョブを実行します。
    ユーザのインポートがある場合、「ユーザ拡張同期インポート Ⅰ型」を先に実行してください。

11.5. 制限事項

このインポートを実行するには、以下の制限があります。
インポートを実行する前に、以下の制限に違反していないことを確認してください。

11.5.1. csv インポートのみ対応しています

データファイルのフォーマットはcsv のみに対応しています。
xml には対応していません。
csv ですので、スナップショットインポートになります。

11.5.2. 分類は対象外です

ユーザのインポートでは、ユーザ分類、ユーザ分類項目、ユーザ分類所属の同期は対象外です。
会社組織のインポートでは、組織分類、組織分類項目、組織分類所属の同期は対象外です。
分類をインポート、同期する場合には、標準のユーザインポート、会社組織インポートを使ってください。

11.5.3. IM-共通マスタとアプリケーション共通マスタの同期がとれている必要があります

IM-共通マスタとアプリケーション共通マスタの同期がとれている状態でインポートを行ってください。

11.5.4. インポート期間と対象エンティティの期間の制限があります

インポート前のエンティティの期間の開始日、または、終了日が、インポート対象期間内にある状態は対象外です。
インポート対象期間内にデータの期間の開始日、または、終了日がない状態であることを確認してください。
これに違反した状態でインポートしますと、データ不整合になります。
期間の条件の詳細については、「期間の条件」を参照してください。

(例) 定期的に IM-共通マスタのインポートを行う運用の場合
この場合、前回のインポート終了日からシステム終了日までは、それぞれのエンティティの期間の開始日、終了日は前回のインポート終了日、システム終了日になっていると思われますので、問題なくインポートできます。
ただし、画面からこの期間の操作(期間分割や開始日を未来方向に移動、終了日を過去方向に移動)をしますと、制限に違反した期間を作ることになりますので、注意してください。

11.5.4.1. 期間の条件

想定する利用パターンの例」で示したインポート可能な期間(一番後にある分割日からシステム終了日まで)が、想定している利用パターンですが、厳密なインポート可能な期間の判定条件は、以下になります。
インポート対象エンティティに関連する全ての期間がこの式を満たす必要があります。
このエンティティの期間はインポート前の状態の期間です。
NOT (インポート期間.開始日<エンティティ期間.開始日<インポート期間.終了日
OR
インポート期間.開始日<エンティティ期間.終了日<インポート期間.終了日)
上記の条件式の具体例として、インポート可能な期間のパターンとインポート不可の期間のパターンを示します。
  • インポート可能な期間のパターン

    以下の図に示すエンティティの期間は、期間の条件を満たすのでインポート可能です。

    (1)は、エンティティの期間がインポート期間より前にあるパターンです。
    (2)は、エンティティの期間がインポート期間より前にあり、エンティティ期間.終了日とインポート期間.開始日が一致するパターンです。
    (3)は、エンティティの期間がインポート期間を含むパターンです。
    (4)は、エンティティの期間がインポート期間を含み、エンティティ期間.終了日とインポート期間.終了日が一致するパターンです。
    (5)は、エンティティの期間がインポート期間と一致するパターンです。
    (6)は、エンティティの期間がインポート期間を含み、エンティティ期間.開始日とインポート期間.開始日が一致するパターンです。
    (7)は、エンティティの期間がインポート期間より後にあり、エンティティ期間.開始日とインポート期間.終了日が一致するパターンです。
    (8)は、エンティティの期間がインポート期間より後にあるパターンです。
    ../../_images/import01_3.png
  • インポート不可の期間

    以下の図 に示す期間は、期間の条件を満たしていないのでインポート不可です。

    (1)は、エンティティ期間.終了日がインポート期間内にあるので、期間の条件を満たしていません。
    (2)は、エンティティ期間がインポート期間に含まれているので、期間の条件を満たしていません。
    (3)は、エンティティ期間.開始日がインポート期間内にあるので、期間の条件を満たしていません。
    ../../_images/import01_4.png

11.5.4.2. 関連するデータの範囲

それぞれのインポートするエンティティに対する関連するデータは以下の通りです。
エンティティ 関連するデータの範囲
ユーザ csv 上の全てのユーザに対して、期間の条件を満たす必要があります。
組織 csv 上の全ての組織と全ての会社の会社バージョンに対して、期間の条件を満たす必要があります。
内包 csv 上の全ての会社の会社バージョンと全ての内包する組織に対して、期間の条件を満たす必要があります。
役職 csv 上の全ての役職に対して、期間の条件を満たす必要があります。
所属(所属役職)
csv 上の全てのユーザと全ての組織と全ての所属に対して、期間の条件を満たす必要があります。
所属役職もある場合は、役職も期間の条件を満たす必要があります。エンティティ

11.5.4.3. 組織のインポートの例

ここでは組織のインポートを例に説明します。
組織のインポートでは、組織と会社バージョンの全ての期間の開始日、終了日がインポート期間外でなければなりません。
言い換えると、インポート期間は、全ての組織、会社バージョンの開始日、終了日を含まないようにとる必要があります。
../../_images/import01_5.png

11.5.5. 関連するエンティティの復帰処理を行いません

拡張インポートでは関連するエンティティの復帰処理を行わないので、関連するエンティティのcsv データも用意してインポートしてください。

11.5.5.1. 関連するエンティティの復帰処理について

標準インポートでは、IM-共通マスタ上で、無効(論理削除状態)だったエンティティをインポートで有効化するとき、それに関連するエンティティも有効化しています。
以下の表では、対象となるエンティティを復帰させた場合、関連するエンティティを復帰させる処理を行うかどうかを、標準のインポートでの同期処理と拡張インポートの同期のそれぞれに対して表しています。
エンティティ 関連するエンティティ 標準同期処理 拡張インポートの同期処理
ユーザ 所属 復帰あり 復帰なし
組織(会社)
組織
内包
役職
復帰あり
復帰あり
復帰あり
復帰なし
復帰なし
復帰なし
組織
内包
所属
復帰あり
復帰あり
復帰なし
復帰なし
内包 なし
役職 所属(所属役職) 復帰あり 復帰あり
所属 所属役職 復帰あり 復帰あり
(例) 標準のインポートと同期処理における復帰

組織インポートで組織を有効化した場合、それに関連した所属も有効化して同期します。
標準のインポートの同期処理では、「インポート前の状態」に組織を有効化するインポートを行うと、以下の図になります。
組織が有効になったことにより、所属が有効として扱われ、組織の同期と共に、所属も有効にして登録しています。
../../_images/import01_6.png

組織インポート前の状態

../../_images/import01_7.png

組織インポート後の状態

11.5.5.2. 復帰処理への対応方法

拡張インポートでは、「関連するエンティティの復帰処理について」の表で「復帰なし」となっているエンティティを無効から有効にする場合、それに関連するエンティティは復帰しません(有効になりません)。
復帰処理の代替として、関連するエンティティのcsv データを用意してインポートする必要があります。

(例) 組織を有効にする場合

組織を有効にする場合、その組織に関連する内包と所属のデータをcsv ファイルに追加して、同時にインポートします。
ここでは、「インポート前の状態」に組織を有効化のインポートを行い、「インポート後の状態」にするために用意するcsv データについて説明します。
../../_images/import01_8.png

インポート前の状態

../../_images/import01_9.png

インポート後の状態

組織を有効化すると、IM-共通マスタでは所属も有効化された状態になるので、アプリ共通マスタでも同じ状態にするために、対応する内包と所属のcsv データを用意します。
対象となる会社コード、組織コード、ユーザコードはそれぞれ、compA, deptA, userA とすると、用意するcsv データは以下になります。
  • 組織csv データ

    compA, compA, deptA, 100, false, (略)
    
  • 内包csv データ

    compA, compA, deptA, compA, false
    
  • 所属csv データ

    compA, compA, deptA, userA, false, false
    
明示的に組織deptA の内包、所属データも用意することにより、組織の復帰に伴う内包、所属の復帰に対応させます。

11.5.6. 役職のランク変更について

拡張インポートでは、役職のランク変更に伴う、全期間の所属役職更新を行いません。
インポート期間内のみ所属役職を更新します。
役職のランク変更はIM-共通マスタの標準インポート、または、IM-共通マスタ画面を通して同期を行ってください。
標準の所属役職の同期については、「共通マスタ同期仕様」の「会社組織 – 役職・組織所属役職」を参照してください。
標準インポートと拡張インポートの違いは、役職のランクを変更して所属役職を更新するときに、インポート期間外の所属役職を更新するかどうかという点が異なっています。
標準インポートではインポート期間外(全期間)の所属役職も更新し、拡張インポートではインポート期間内の所属役職の期間のみを更新します。

(例) 役職のランク変更に伴う所属役職の更新の、標準の同期処理と拡張インポートの同期処理の違いについてある所属に、役職A, 役職B, 役職C の役職を持たせます(以下の図参照)。
役職A, 役職B, 役職C のランクをそれぞれ30, 20, 10 とします。
ランクが小さい方が優先度が高いランクで、アプリ共通マスタに同期するときは、優先度が最も高いランクの役職を所属役職に設定しています。
../../_images/import01_10.png
役職のインポートを行い、役職A のランクを30 から1 に変更します。
ランクは期間化されない情報(全ての期間で同一の情報)なので、インポート期間以外の所属役職にも影響します(以下の図参照)。
標準の同期では、インポート期間外の所属役職も更新しますが、拡張インポートの同期では、インポート期間内の所属役職のみ更新しています。
このため、画面から役職を更新する、または、標準の会社組織インポートで役職をインポートしてランクを変更してください。
../../_images/import01_11.png

11.6. エラーメッセージ

以下のエラーメッセージが発生した場合は、インポート対象データを見直してください。
  • ユーザの期間がインポート期間の前提条件に違反しています。インポート期間[], ユーザコード[], 期間[]

    原因: このユーザコードのユーザが、「インポート期間と対象エンティティの期間の制限があります」の制限に違反しています。
    対応: インポート期間をこのユーザの期間より小さくとってください。

  • 組織の期間がインポート期間の前提条件に違反しています。インポート期間[], 会社コード[], 組織コード[], 期間[]

    原因: この会社コード、組織コードの組織が、「インポート期間と対象エンティティの期間の制限があります」の制限に違反しています。
    対応: インポート期間をこの組織の期間より小さくとってください。

  • 会社バージョンの期間がインポート期間の前提条件に違反しています。インポート期間[], 会社コード[],期間[]

    原因: この会社コードの会社バージョンが、「インポート期間と対象エンティティの期間の制限があります」の制限に違反しています。
    対応: インポート期間をこの会社バージョンより小さくとってください。

  • 役職の期間がインポート期間の前提条件に違反しています。インポート期間[], 会社コード[], 役職コード[], 期間[]

    原因: この会社コード、役職コードの役職が、「インポート期間と対象エンティティの期間の制限があります」の制限に違反しています。
    対応: インポート期間をこの会社バージョンより小さくとってください。

  • ユーザ所属の期間がインポート期間の前提条件に違反しています。インポート期間[], ユーザコード[],会社コード[], 組織コード[], 期間[]

    原因: このユーザコード、会社コード、組織コードの所属が、「インポート期間と対象エンティティの期間の制限があります」の制限に違反しています。
    対応: インポート期間をこの所属より小さくとってください。