intra-mart Accel Kaiden! MasterBuilder 設定ガイド 第12版 2023-12-22

5.4. エクスポート

本項では、エクスポート機能の機能詳細を説明します。

5.4.1. エクスポート機能

5.4.1.1. 概要

MasterBuilderのエクスポート機能は、次の3つのエクスポート方法を提供します。
ただし、非期間化マスタの場合は、「期間モード」は使用できません。
名称 モード 処理方式
全件 1 対象マスタデータ全データをエクスポートします。
期間 2 対象マスタデータの特定期間のデータをエクスポートします。
更新日 3 対象マスタデータの特定日以降に更新されたデータをエクスポートします。
  • (エクスポート)モード
    ジョブパラメータに設定します。(未設定の場合は「1」が設定されたものとします。)

5.4.1.2. ジョブパラメータ

エクスポート機能では、MasterBuilder定義やエクスポートジョブ(ジョブネット)に指定したパラメータによって処理を行います。

5.4.1.3. エクスポートファイル

エクスポートに使用するデータファイル(以降、エクスポートファイル)には、CSV(TSV)のフォーマットのみが使用可能です。
エクスポートファイルの「文字コード」、「区切り文字」、「囲み文字」はどのような設定も可能ですが、動作を保障する設定値は次の値のみです。
設定 設定値
文字コード UTF-8、SHIFT-JIS
区切り文字 ,(カンマ)、\t(タブ)
囲み文字 none(囲み文字なし),”(ダブルクォーテーション)

5.4.1.4. 国際化、期間化情報

エクスポート機能での国際化情報や期間化情報の処理概要は次の通りです。
  • 国際化情報
    エクスポートファイルには複数ロケールの国際化情報を出力します。(1行に1ロケールのデータを記述します。)
    また、エクスポートファイル中で国際化情報の並び順をソートする様な機能はありません。
    (エクスポート対象データ抽出用SQLで取得された順でエクスポートします。)
  • 期間化情報
    エクスポートファイル中で期間化情報の並び順をソートする様な機能はありません。
    (エクスポート対象データ抽出用SQLで取得された順でエクスポートします。)

5.4.2. サーバーサイド

5.4.2.1. Logic

Logicクラスは、「拡張設定」の「Logicクラス」に設定したクラスを使用します。
(未設定の場合は「jp.co.slcs.kaiden.v2.base.feature.logic.kaiden.generic.MasterLogic」を使用します。)

Logicクラスでは、エクスポート処理に必要な各処理を行います。
Logicクラスのメソッドと主な処理内容次の通りです。
処理名 メソッド
エクスポートモード判定 exportModeCheck(GenericMasterSettings settings, String mode)
エクスポートカラムリスト返却 getExportColumnList(GenericMasterSettings settings)
ヘッダーカラムリスト返却 getExportHeaderColumn(GenericMasterSettings settings)
検索条件返却 getExportSearchCriteria(GenericMasterSettings settings, Map<String, Object> criteria)
ソート条件返却 getExportOrderCriteria(GenericMasterSettings settings)
データエクスポート exportData(GenericMasterSettings settings, Map<String, Object> request, IterationCallback<BeanMap, Void> callback)
エクスポートデータコンバート convertExportData(GenericMasterSettings settings, Map<String, Object> exportData)

5.4.2.2. Manager

Managerクラスは、「拡張設定」の「Managerクラス」に設定したコンポーネントを使用します。
(未設定の場合は「masterManager」を使用します。)

Managerクラスでは、SQLを利用した検索処理を行います。
基本的に拡張の必要はありませんが、標準のManagerクラスでは単一のテーブルに対して処理を実装しているため、複数のテーブルに跨る処理を実装する場合に拡張を行います。
(検索時のJoinなどは複数テーブルに跨りますが、SQLで実現可能なため、拡張の必要はありません。)
処理名 メソッド
エクスポートモード判定  
エクスポートカラムリスト返却  
ヘッダーカラムリスト返却  
検索条件返却  
ソート条件返却  
データエクスポート
  • select(GenerateService<? extends GenerateEntity> service, String sqlPath, Map<String, Object> criteria, IterationCallback<BeanMap, Void> callback)
エクスポートデータコンバート  

5.4.2.3. Converter

Converterクラスは、「拡張設定」の「Converterクラス」に設定したクラスを使用します。
(未設定の場合はConverterクラスを使用しません。)

Converterクラスでは、Logicクラスへのリクエストパラメータ、Logicクラスからのレスポンスパラメータに対し、補完や成型が行えます。
設定を行わない場合は、補完や成型は行われません。
  • 画面表示は%表記だが、データ上は数値として保持(80%→0.8)
  • 固定値の補完

コラム

文字列と日付の変換や、文字列と日付の変換はConverterクラスではなく、
項目設定」の「コンバート設定」を利用してください。
詳細は「項目値のコンバート」を参照してください。

注意

Converterクラスの処理は各データに対して行われるため、
データベースの特定データを補完する場合はLogicクラスで実装を行ってください。

5.4.2.4. シーケンス

サーバーサイドの処理シーケンス(概要)は次の通りです。

コラム

シーケンスに記載の「各Jobクラス」「Logic」「Manager」の実際のクラスは次の通りです。
シーケンスの各処理は基底クラスで実装しています。
  • MasterExportJob
    jp.co.slcs.kaiden.v2.base.feature.job.generic.MasterExportJob
  • AbstractMasterExportJob
    jp.co.slcs.kaiden.v2.base.feature.job.generic.AbstractMasterExportJob
  • AbstractGenericExportJob
    jp.co.slcs.kaiden.v2.base.foundation.job.AbstractGenericExportJob
  • AbstractGenericJob
    jp.co.slcs.kaiden.v2.base.foundation.job.AbstractGenericJob
  • Logic
    基底クラス:jp.co.slcs.kaiden.v2.base.feature.logic.kaiden.generic.AbstractMasterLogicBase
    実装クラス:jp.co.slcs.kaiden.v2.base.feature.logic.kaiden.generic.MasterLogic
  • Manager
    IFクラス:jp.co.slcs.kaiden.v2.base.foundation.manager.generic_master.MasterManager
    基底クラス:jp.co.slcs.kaiden.v2.base.foundation.manager.generic_master.AbstractMasterManager
    実装クラス:jp.co.slcs.kaiden.v2.base.foundation.manager.generic_master.impl.MasterManagerImpl
「Converter」は、「拡張設定」の「Converterクラス」に設定していない場合は実行されません。
シーケンス上では省略しています。

None