5.4. エクスポート¶
本項では、エクスポート機能の機能詳細を説明します。
5.4.1. エクスポート機能¶
5.4.1.1. 概要¶
MasterBuilderのエクスポート機能は、次の3つのエクスポート方法を提供します。ただし、非期間化マスタの場合は、「期間モード」は使用できません。
名称 モード 処理方式 全件 1 対象マスタデータ全データをエクスポートします。 期間 2 対象マスタデータの特定期間のデータをエクスポートします。 更新日 3 対象マスタデータの特定日以降に更新されたデータをエクスポートします。
(エクスポート)モードジョブパラメータに設定します。(未設定の場合は「1」が設定されたものとします。)
5.4.1.2. ジョブパラメータ¶
エクスポート機能では、MasterBuilder定義やエクスポートジョブ(ジョブネット)に指定したパラメータによって処理を行います。詳細は「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.impl.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クラスの処理は各データに対して行われるため、データベースの特定データを補完する場合はLogicクラスで実装を行ってください。
5.4.2.4. シーケンス¶
サーバーサイドの処理シーケンス(概要)は次の通りです。コラム
シーケンスに記載の「各Jobクラス」「Logic」「Manager」の実際のクラスは次の通りです。シーケンスの各処理は基底クラスで実装しています。
MasterExportJobjp.co.slcs.kaiden.v2.base.feature.job.generic.MasterExportJob AbstractMasterExportJobjp.co.slcs.kaiden.v2.base.feature.job.generic.AbstractMasterExportJob AbstractGenericExportJobjp.co.slcs.kaiden.v2.base.foundation.job.AbstractGenericExportJob AbstractGenericJobjp.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.impl.MasterLogic ManagerIFクラス: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クラス」に設定していない場合は実行されません。シーケンス上では省略しています。