/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：JCKEoidCgrrkIcrnShokaiCC
*   ソースファイル名：JCKEoidCgrrkIcrnShokaiCC.java
*   作成者          ：FJ
*   日付            ：2011年12月2日
*＜機能概要＞
*   eoID変更履歴一覧照会を行う
*＜修正履歴＞
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v1.00       2011/12/02   FJ          新規作成
*   v3.00       2012/06/15   FJ)砂川     【IT1-2012-0000742】ホスティング解約の判定処理を修正
*   v4.00       2012/12/22   FJ)砂川     【IT1-2012-0002512】照査処理で自動採番される更新を抽出対象外にする対応
*   v4.01       2012/12/25   FJ)清崎     【TAI-2012-0000091】暫定ロジック修正対応
*   v5.00       2013/03/08   FJ)近藤     【OT-2013-0000308】eoID連続初期化分表示対応
*   v5.01       2013/04/21   FJ)近藤     【IKK-2013-0000874】お客様グループ設定履歴の変更日時表示内容改修対応
*   v5.02       2013/04/21   FJ)近藤     【IKK-2013-0000991】連絡先メールアドレス初回登録分表示対応
*   v5.03       2013/04/23   FJ)清崎     【IKK-2013-0000989】担当者欄の表示対応
*   v5.04       2013/11/05   FJ)鈴木     【OM-2013-0003448】申告アドレスを履歴に表示しない対応
*   v7.00       2014/02/18   FJ)鈴木     【IT2-2014-0000133】サービス契約＜ホスティング＞履歴一覧照会の取得時の誤りを修正
*	v29.00.00	2017/03/09	 FJ)笠川	 【ANK-2928-00-00】お客さま申告アドレスの複数登録
*
**********************************************************************/
package com.fujitsu.futurity.bp.custom.common;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

import com.fujitsu.futurity.bp.x21.bpm.ServiceComponentRequestInvoker;
import com.fujitsu.futurity.bp.x21.bpm.db.SessionHandle;
import com.fujitsu.futurity.bp.x21.bpm.exception.RequestParameterException;
import com.fujitsu.futurity.bp.x21.bpm.parameter.IRequestParameterReadOnly;
import com.fujitsu.futurity.bp.x21.bpm.parameter.IRequestParameterReadWrite;
import com.fujitsu.futurity.bp.x21.cc.AbstractCommonComponent;
import com.fujitsu.futurity.bp.x21.cc.exception.SCCallException;
import com.fujitsu.futurity.common.JCMConstants;
import com.fujitsu.futurity.common.x01.sc.SCControlMapKeys;
import com.fujitsu.futurity.mapping.bp.common.TemplateErrorUtil;
import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.common.JCMAPLConstMgr;
import com.fujitsu.futurity.bp.custom.constant.JCKEoIdCgrrkIcrnShokaiConstCC;

import eo.common.constant.JPCModelConstant;
import eo.ejb.cbs.cbsmsg.ECK0011B004CBSMsg;
import eo.ejb.cbs.cbsmsg.ECK0011B004CBSMsg1List;
import eo.ejb.cbs.cbsmsg.ECK0111B060CBSMsg;
import eo.ejb.cbs.cbsmsg.ECK0111B060CBSMsg1List;
import eo.ejb.cbs.cbsmsg.ECK0121B003CBSMsg;
import eo.ejb.cbs.cbsmsg.ECK0121B003CBSMsg1List;
import eo.ejb.cbs.cbsmsg.ECK0141B030CBSMsg;
import eo.ejb.cbs.cbsmsg.ECK0141B030CBSMsg1List;
import eo.ejb.cbs.cbsmsg.ECK0201B003CBSMsg;
import eo.ejb.cbs.cbsmsg.ECK0201B003CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0151B010CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0151B010CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0401B001CBSMsg;
import eo.ejb.cbs.cbsmsg.EZM0171B010CBSMsg;
import eo.ejb.cbs.cbsmsg.EZM0171B010CBSMsg1List;


/**
 * eoID変更履歴一覧照会部品です。<p>
 * SYSIDに紐づく履歴情報からレコード間で変更された項目を探索し、eoID変更履歴リストを作成する。<br>
 * <br>
 * @author 富士通
 */
public class JCKEoidCgrrkIcrnShokaiCC extends AbstractCommonComponent
{

	/** 機能コード:一覧照会 */
	private static final String FUNC_CODE_ICRN_SHOKAI = JCKEoIdCgrrkIcrnShokaiConstCC.FUNC_CODE_ICRN_SHOKAI;

	/** 機能コード:一覧照会(昇順) */
	private static final String FUNC_CODE_ICRN_SHOKAI_ASC = JCKEoIdCgrrkIcrnShokaiConstCC.FUNC_CODE_ICRN_SHOKAI_ASC;

	/** コード種別コード：変更履歴 */
	private static final String CD_SBT_CD_CHRRK = JCKEoIdCgrrkIcrnShokaiConstCC.CD_SBT_CD_CHRRK;

	/** コード種別コード：変更項目 */
	private static final String CD_SBT_CD_CHG_KMK = JCKEoIdCgrrkIcrnShokaiConstCC.CD_SBT_CD_CHG_KMK;

	/** 退会理由コード：名寄せによる退会 */
	private static final String TAIKAI_RSN_CD_NAYOSE = JCKEoIdCgrrkIcrnShokaiConstCC.TAIKAI_RSN_CD_NAYOSE;
	
	/** 文字列編集用：〜で契約 */
	private static final String EDIT_STRING = JCKEoIdCgrrkIcrnShokaiConstCC.EDIT_STRING;

	/** サービス契約＜ホスティング＞履歴変更マップ編集用文字列：同意未 */
	private static final String DOI_MI = JCKEoIdCgrrkIcrnShokaiConstCC.DOI_MI;

	/** サービス契約＜ホスティング＞履歴変更マップ編集用文字列：同意済み */
	private static final String DOI_ZM = JCKEoIdCgrrkIcrnShokaiConstCC.DOI_ZM;

	/** オプトインメール受信設定履歴変更マップ編集用文字列：連絡 */
	private static final String RRK = JCKEoIdCgrrkIcrnShokaiConstCC.RRK;

	/** オプトインメール受信設定履歴変更マップ編集用文字列：契約 */
	private static final String KNS = JCKEoIdCgrrkIcrnShokaiConstCC.KNS;

	/** オプトインメール受信設定履歴変更マップ編集用文字列：ON */
	private static final String RCV_DIV_ON = JCKEoIdCgrrkIcrnShokaiConstCC.RCV_DIV_ON;

	/** オプトインメール受信設定履歴変更マップ編集用文字列：OFF */
	private static final String RCV_DIV_OFF = JCKEoIdCgrrkIcrnShokaiConstCC.RCV_DIV_OFF;

	/** 受信区分：なし */
	private static final String RCV_DIV_NON = JCKEoIdCgrrkIcrnShokaiConstCC.RCV_DIV_NON;

	/** 変更日時有無フラグ */
	private boolean chg_dtmk_um_flag = false;
	
	/** お客様履歴有効フラグ */
	private boolean cust_cgrrk_yk_flag = true;
	
	/** お客様履歴区分リスト */
	private static final String[] CUST_CGRRK_DIV_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.CUST_CGRRK_DIV_LIST;

	/** お客様履歴項目リスト */
	private static final String[] CUST_CGRRK_KMK_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.CUST_CGRRK_KMK_LIST;

	/** 連絡先履歴有効フラグ */
	private boolean rrks_cgrrk_yk_flag = true;
	
	/** 連絡先履歴区分リスト */
	private static final String[] RRKS_CGRRK_DIV_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.RRKS_CGRRK_DIV_LIST;

	/** 連絡先履歴項目リスト */
	private static final String[] RRKS_CGRRK_KMK_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.RRKS_CGRRK_KMK_LIST;

	/** グループ履歴有効フラグ */
	private boolean grp_cgrrk_yk_flag = true;
	
	/** グループ履歴区分リストリスト */
	private static final String[] GRP_CGRRK_DIV_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.GRP_CGRRK_DIV_LIST;

	/** グループ履歴項目リスト */
	private static final String[] GRP_CGRRK_KMK_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.GRP_CGRRK_KMK_LIST;

	/** お客様グループ設定履歴有効フラグ */
	private boolean grp_set_cgrrk_yk_flg = true;
	
	/** お客様グループ設定履歴区分リスト */
	private static final String[] CUST_GRP_SET_CGRRK_DIV_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.CUST_GRP_SET_CGRRK_DIV_LIST;

	/** お客様グループ設定履歴項目リスト */
	private static final String[] CUST_GRP_SET_CGRRK_KMK_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.CUST_GRP_SET_CGRRK_KMK_LIST;

	/** サービス契約＜ホスティング＞履歴有効フラグ */
	private boolean hos_cgrrk_yk_flag = true;
	
	/** サービス契約＜ホスティング＞履歴区分リスト */
	private static final String[] SVC_KEI_HOS_CGRRK_DIV_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.SVC_KEI_HOS_CGRRK_DIV_LIST;

	/** サービス契約＜ホスティング＞履歴項目リスト */
	private static final String[] SVC_KEI_HOS_CGRRK_KMK_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.SVC_KEI_HOS_CGRRK_KMK_LIST;

	/** オプトインメール受信設定履歴有効フラグ */
	private boolean optinm_cgrrk_yk_flag = true;
	
	/** オプトインメール受信設定履歴区分リスト */
	private static final String[] OPTINM_SET_CGRRK_DIV_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.OPTINM_SET_CGRRK_DIV_LIST;

	/** オプトインメール受信設定履歴項目リスト */
	private static final String[] OPTINM_SET_CGRRK_KMK_LIST = JCKEoIdCgrrkIcrnShokaiConstCC.OPTINM_SET_CGRRK_KMK_LIST;

	/** ソート区分：昇順 */
	private static final String sort_div_asc = JCKEoIdCgrrkIcrnShokaiConstCC.sort_div_asc;
	
	/** オプトインメールチェックフラグ */
	private boolean optinm_chk_flg = false;
	
	/** お客様グループチェックフラグ */
	private boolean cust_grp_chk_flg = false;
	
	// 2012/12/25 [TAI-2012-0000091]暫定ロジック修正対応 ADD START
	/** 性別コード　男性 */
	private static final String CONT_CUST_SEX_CD_DAN = "1";
	
	/** 性別コード　女性 */
	private static final String CONT_CUST_SEX_CD_JO = "2";
	
	/** 性別コード　不明 */
	private static final String CONT_CUST_SEX_CD_FU = "3";
	
	/** 性別名　男性 */
	private static final String CONT_CUST_SEX_NM_DAN = "男性";
	
	/** 性別名　女性 */
	private static final String CONT_CUST_SEX_NM_JO = "女性";
	
	/** 性別名　不明 */
	private static final String CONT_CUST_SEX_NM_FU = "不明";
	// 2012/12/25 [TAI-2012-0000091]暫定ロジック修正対応 ADD END
// v5.00 2013/03/08 OT-2013-0000308 ADD START
	/** eoID関連情報変更識別コード　eoID初期化 */
	private static final String EOID_SHKKA = "1005";
	
	/** eoID関連情報変更識別コード　eoIDパスワード初期化 */
	private static final String EOID_PWD_SHKKA = "1105";
// v5.00 2013/03/08 OT-2013-0000308 ADD END
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
	/** 担当者設定値  バッチ処理 */
	private static final String BATCH = "バッチ処理";
	
	/** 担当者設定値  お客様 */
	private static final String CUST = "お客様";
	
	/** 登録オペレータアカウント  BATSQLDEF */
	private static final String BATSQLDEF = "BATSQLDEF";
	
	/** 登録オペレータアカウント  BATSERVICE */
	private static final String BATSERVICE = "BATSERVICE";
	
	/** 登録オペレータアカウント　IKOLOADER */
	private static final String IKOLOADER = "IKOLOADER";
	
// v5.03 2013/04/23 IKK-2013-0000989 MOD END
	
	/**
	 * eoID変更履歴一覧照会コンポーネント実行処理です。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param モデルグループ、コントロールマップを含むパラメータオブジェクト
	 * @param fixedText ユーザ任意文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite eoIdCgrrkIcrnShokai(SessionHandle handle, IRequestParameterReadWrite param,
			String fixedText) throws Exception
	{
		// 作業用マップ
		HashMap<String, Object> workMap = new HashMap<String, Object>();
		
		// コード名称管理一覧照会（変更履歴）
		HashMap<String, Object> ezm_0171B_chrrk_map = getEZM0171B010_chrrk_Map(handle, param, fixedText);
		workMap.put("ezm_0171B_chrrk_map", ezm_0171B_chrrk_map);
		
		// コード名称管理一覧照会（変更項目）
		HashMap<String, Object> ezm_0171B_chg_kmk_map = getEZM0171B010_chg_kmk_Map(handle, param, fixedText);
		workMap.put("ezm_0171B_chg_kmk_map", ezm_0171B_chg_kmk_map);
		
		// 変更項目チェック（お客様履歴）
		cust_cgrrk_yk_flag = (chgKmkCheck(param, fixedText, CUST_CGRRK_KMK_LIST)
				&& cgrrkCheck(param, fixedText, CUST_CGRRK_DIV_LIST));
		
		// 変更項目チェック（連絡先履歴）
		rrks_cgrrk_yk_flag = (chgKmkCheck(param, fixedText, RRKS_CGRRK_KMK_LIST)
				&& cgrrkCheck(param, fixedText, RRKS_CGRRK_DIV_LIST));

		// 変更項目チェック（グループ履歴）
		grp_cgrrk_yk_flag = (chgKmkCheck(param, fixedText, GRP_CGRRK_KMK_LIST)
				&& cgrrkCheck(param, fixedText, GRP_CGRRK_DIV_LIST));

		// 変更項目チェック（お客様グループ設定履歴）
		grp_set_cgrrk_yk_flg = (chgKmkCheck(param, fixedText, CUST_GRP_SET_CGRRK_KMK_LIST)
				&& cgrrkCheck(param, fixedText, CUST_GRP_SET_CGRRK_DIV_LIST));

		// 変更項目チェック（サービス契約＜ホスティング＞履歴）
		hos_cgrrk_yk_flag = (chgKmkCheck(param, fixedText, SVC_KEI_HOS_CGRRK_KMK_LIST)
				&& cgrrkCheck(param, fixedText, SVC_KEI_HOS_CGRRK_DIV_LIST));

		// 変更項目チェック（オプトインメール受信設定履歴）
		optinm_cgrrk_yk_flag = (chgKmkCheck(param, fixedText, OPTINM_SET_CGRRK_KMK_LIST)
				&& cgrrkCheck(param, fixedText, OPTINM_SET_CGRRK_DIV_LIST));

		// 変更日時有無チェック処理
		chg_dtmk_um_flag = custRkIcrnChgDateRunJdg(handle, param, fixedText);

		// お客様履歴有効フラグが有効の場合にのみ実施
		if(cust_cgrrk_yk_flag)
		{
			// お客様履歴一覧照会
			HashMap<String, Object> eck_0011B_map = getECK0011B004Map(handle, param, fixedText);
			workMap.put("eck_0011B_map", eck_0011B_map);
			
			HashMap<String, Object> eck_0011B_chg_date_map = null;
			// 変更日時に指定がある場合
			if(chg_dtmk_um_flag)
			{
				// お客様履歴一覧照会（変更日時指定）を実施
				eck_0011B_chg_date_map = getECK0011B004_chg_date_Map(handle, param, fixedText);
				workMap.put("eck_0011B_chg_date_map", eck_0011B_chg_date_map);
			}
			
			ArrayList dataList1 = null;
			ArrayList dataList2 = null;
			
			if(eck_0011B_map != null)
			{
				dataList1 = (ArrayList)eck_0011B_map.get("ECK0011B004CBSMsg1List");
			}
			if(eck_0011B_chg_date_map != null)
			{
				dataList2 = (ArrayList)eck_0011B_chg_date_map.get("ECK0011B004CBSMsg1List");
			}
			
			// お客様履歴チェック範囲取得処理
			int[] chk_sta_end = rkChkScope(dataList1, dataList2);
			
			if(chk_sta_end != null)
			{
				// お客様履歴変更マップ作成
				custRkChgMapSksi(param, fixedText, dataList1, chk_sta_end, workMap);
			}
		}
		
		HashMap<String, Object> eck_0201B_map = null;
		
		// 連絡先履歴有効フラグまたはオプトインメール受信設定履歴有効フラグが有効の場合にのみ実施
		if(rrks_cgrrk_yk_flag || optinm_cgrrk_yk_flag)
		{
			// 連絡先履歴一覧照会
			eck_0201B_map = getECK0201B003Map(handle, param, fixedText);
			workMap.put("eck_0201B_map", eck_0201B_map);
		}
		// 連絡先履歴有効フラグが有効の場合にのみ実施
		if(rrks_cgrrk_yk_flag)
		{
			HashMap<String, Object> eck_0201B_chg_date_map = null;
			// 変更日時に指定がある場合
			if(chg_dtmk_um_flag)
			{
				// 連絡先履歴一覧照会（変更日時指定）を実施
				eck_0201B_chg_date_map = getECK0201B003_chg_date_Map(handle, param, fixedText);
				workMap.put("eck_0201B_chg_date_map", eck_0201B_chg_date_map);
			}
			
			ArrayList dataList1 = null;
			ArrayList dataList2 = null;
			
			if(eck_0201B_map != null)
			{
				dataList1 = (ArrayList)eck_0201B_map.get("ECK0201B003CBSMsg1List");
			}
			
			if(eck_0201B_chg_date_map != null)
			{
				dataList2 = (ArrayList)eck_0201B_chg_date_map.get("ECK0201B003CBSMsg1List");
			}

			// 連絡先履歴チェック範囲取得処理
			int[] chk_sta_end = rkChkScope(dataList1, dataList2);

			if(chk_sta_end != null)
			{
				// 連絡先履歴変更マップ作成
				rrksRkChgMapSksi(param, fixedText, dataList1, chk_sta_end, workMap);
			}
		}

		// グループ履歴有効フラグが有効の場合にのみ実施
		if(grp_cgrrk_yk_flag)
		{
			// グループ履歴一覧照会
			HashMap<String, Object> eck_0111B_map = getECK0111B060Map(handle, param, fixedText);
			workMap.put("eck_0111B_map", eck_0111B_map);

			HashMap<String, Object> eck_0111B_chg_date_map = null;
			// 変更日時に指定がある場合
			if(chg_dtmk_um_flag)
			{
				// グループ履歴一覧照会（変更日時指定）を実施
				eck_0111B_chg_date_map = getECK0111B060_chg_date_Map(handle, param, fixedText);
				workMap.put("eck_0111B_chg_date_map", eck_0111B_chg_date_map);
			}

			ArrayList dataList1 = null;
			ArrayList dataList2 = null;

			if(eck_0111B_map != null)
			{
				dataList1 = (ArrayList)eck_0111B_map.get("ECK0111B060CBSMsg1List");
			}
			if(eck_0111B_chg_date_map != null)
			{
				dataList2 = (ArrayList)eck_0111B_chg_date_map.get("ECK0111B060CBSMsg1List");
			}

			// グループ履歴チェック範囲取得処理
			int[] chk_sta_end = rkChkScope(dataList1, dataList2);

			if(chk_sta_end != null)
			{
				// グループ履歴変更マップ作成
				grpRkChgMapSksi(param, fixedText, dataList1, chk_sta_end, workMap);
			}
		}

		// お客様グループ設定履歴有効フラグが有効の場合にのみ実施
		if(grp_set_cgrrk_yk_flg)
		{
			// お客様グループチェックフラグを有効にする
			cust_grp_chk_flg = true;
			
			// お客様グループ設定履歴一覧照会
			HashMap<String, Object> eck_0121B_map = getECK0121B003Map(handle, param, fixedText);
			workMap.put("eck_0121B_map", eck_0121B_map);

			HashMap<String, Object> eck_0121B_chg_date_map = null;
			// 変更日時に指定がある場合
			if(chg_dtmk_um_flag)
			{
				// お客様グループ設定履歴一覧照会（変更日時指定）を実施
				eck_0121B_chg_date_map = getECK0121B003_chg_date_Map(handle, param, fixedText);
				workMap.put("eck_0121B_chg_date_map", eck_0121B_chg_date_map);
			}

			ArrayList dataList1 = null;
			ArrayList dataList2 = null;

			if(eck_0121B_map != null)
			{
				dataList1 = (ArrayList)eck_0121B_map.get("ECK0121B003CBSMsg1List");
			}
			if(eck_0121B_chg_date_map != null)
			{
				dataList2 = (ArrayList)eck_0121B_chg_date_map.get("ECK0121B003CBSMsg1List");
			}

			// お客様グループ設定履歴チェック範囲取得処理
			int[] chk_sta_end = rkChkScope(dataList1, dataList2);

			if(chk_sta_end != null)
			{
				// お客様グループ設定履歴変更マップ作成
				custGrpSetRkChgMapSksi(param, fixedText, dataList1, chk_sta_end, workMap);
			}
			// お客様グループチェックフラグを無効にする
			cust_grp_chk_flg = false;
		}

		// サービス契約＜ホスティング＞履歴有効フラグが有効の場合にのみ実施
		if(hos_cgrrk_yk_flag)
		{
			// サービス契約＜ホスティング＞履歴一覧照会
			HashMap<String, Object> eck_0151B_map = getEKK0151B010_Map(handle, param, fixedText);
			workMap.put("eck_0151B_map", eck_0151B_map);
			
			HashMap<String, Object> eck_0151B_chg_date_map = null;
			// 変更日時に指定がある場合
			if(chg_dtmk_um_flag)
			{
				// サービス契約＜ホスティング＞履歴一覧照会（変更日時指定）を実施
				eck_0151B_chg_date_map = getEKK0151B010_chg_date_Map(handle, param, fixedText);
				workMap.put("eck_0151B_chg_date_map", eck_0151B_chg_date_map);
			}

			ArrayList dataList1 = null;
			ArrayList dataList2 = null;

			if(eck_0151B_map != null)
			{
				dataList1 = (ArrayList)eck_0151B_map.get("EKK0151B010CBSMsg1List");
			}

			if(eck_0151B_chg_date_map != null)
			{
// 2014.02.18 IT2-2014-0000133 mod start
//				dataList1 = (ArrayList)eck_0151B_chg_date_map.get("EKK0151B010CBSMsg1List");
				dataList2 = (ArrayList)eck_0151B_chg_date_map.get("EKK0151B010CBSMsg1List");
// 2014.02.18 IT2-2014-0000133 mod end
			}

			// お客様グループ設定履歴チェック範囲取得処理
			int[] chk_sta_end = rkChkScope(dataList1, dataList2);

			if(dataList1 != null && dataList1.size() > 0)
			{
				// サービス契約＜ホスティング＞履歴変更マップ作成
				svcKeiHostRkChgMapSksi(param, fixedText, dataList1, chk_sta_end, workMap);
			}
		}

		// オプトインメール受信設定履歴有効フラグが有効の場合にのみ実施
		if(optinm_cgrrk_yk_flag)
		{
			// オプトインメールチェックフラグを有効にする
			optinm_chk_flg = true;
			
			// オプトインメール受信設定履歴一覧照会
			HashMap<String, Object> eck_0141B_map = getECK0141B030Map(handle, param, fixedText);
			workMap.put("eck_0141B_map", eck_0141B_map);
			
			HashMap<String, Object> eck_0141B_chg_date_map = null;
			// 変更日時に指定がある場合
			if(chg_dtmk_um_flag)
			{
				// オプトインメール受信設定履歴一覧照会（変更日時指定）を実施
				eck_0141B_chg_date_map = getECK0141B030_chg_date_Map(handle, param, fixedText);
				workMap.put("eck_0141B_chg_date_map", eck_0141B_chg_date_map);
			}

			ArrayList dataList1 = null;
			ArrayList dataList2 = null;

			if(eck_0141B_map != null)
			{
				dataList1 = (ArrayList)eck_0141B_map.get("ECK0141B030CBSMsg1List");
			}
			if(eck_0141B_chg_date_map != null)
			{
				dataList2 = (ArrayList)eck_0141B_chg_date_map.get("ECK0141B030CBSMsg1List");
			}

			// オプトインメール受信設定履歴チェック範囲取得処理
			int[] chk_sta_end = rkChkScope(dataList1, dataList2);

			if(chk_sta_end != null)
			{
				// オプトインメール受信設定履歴変更マップ作成
				optinmSetRkChgMapSksi(param, fixedText, workMap, dataList1, chk_sta_end);
			}
			// オプトインメールチェックフラグを無効にする
			optinm_chk_flg = false;
		}
		
		/* 結果出力処理 */
		param = editResultRP(param, fixedText);
		
		return param;
	}

	/**
	 * お客様履歴チェック処理。<br>
	 * お客様履歴一覧照会を作成し返却します。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param モデルグループ、コントロールマップを含むパラメータオブジェクト
	 * @param fixedText ユーザ任意文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	public  HashMap<String, Object> getInvokeCBS(SessionHandle handle, IRequestParameterReadWrite param, String fixedText)
	throws RequestParameterException
	{
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行（お客様履歴一覧照会の上りのみ）
		HashMap paramMap = editInMsgECK0011B004(param, fixedText);
				
		return paramMap;
	}	

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrorInfo(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0011B004CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// お客様履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0011B004CBSMsg.KEY_SYSID_ERR));
			}
		}
		// お客様履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM_ERR));
			}
		}
		// お客様履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_UPD_DTM_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0011B004CBSMsg.KEY_UPD_DTM_TO_ERR));
			}
		}
		
		return param;
	}

	/**
	 * 変更日時有無チェック処理。<br>
	 * 変更日時TOまたは変更日時FROMが入力されているかを確認する。
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 変更日時が入力されていればtrueを、無ければfalseを返す。
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private boolean custRkIcrnChgDateRunJdg(SessionHandle handle, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		HashMap inMap = null;

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);

		// 変更日時TO
		if (inMap != null && inMap.get("chg_to") != null && !("".equals(inMap.get("chg_to"))))
		{
			return true;
		}

		// 変更日時TO
		if (inMap != null && inMap.get("chg_from") != null && !("".equals(inMap.get("chg_from"))))
		{
			return true;
		}

		return false;
	}
	
	/**
	 * 履歴チェック範囲取得<br>
	 * <br>
	 * @param dataList1 全履歴情報のリスト
	 * @param dataList2 変更年月日指定の履歴リスト
	 * @return 比較の開始・終了範囲
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private int[] rkChkScope(ArrayList dataList1, ArrayList dataList2) throws Exception
	{
		int chk_sta_rec_no = 0;		// チェック開始レコード番号
		int chk_end_rec_no = 0;		// チェック終了レコード番号
		
		// 履歴一覧照会取得件数が2件未満の場合
		if (dataList1 == null || dataList1.size() < 2)
		{
			// 履歴データがない、または比較対象がないため処理を実施しない。
			return null;
		}
		
		// 履歴一覧照会（変更履歴指定）が実施されていない場合
		if(dataList2 == null)
		{
			// 履歴一覧照会の取得結果の全件をチェックする。
			chk_sta_rec_no = dataList1.size() - 1;
			chk_end_rec_no = 0;
			
			int[] list = {chk_end_rec_no, chk_sta_rec_no};
			
			return list;
		}
		// 履歴一覧照会（変更履歴指定）が実施されている場合
		
		// 履歴一覧照会（変更履歴指定）の取得結果が0件の場合場合
		if(0 == dataList2.size())
		{
			return null;
		}
		// 履歴一覧照会(変更日時指定)で取得した最終レコードの世代登録年月日と一致する
		// 世代登録年月日を持つ履歴一覧照会の結果レコード番号を取得する。
		String gene_add_dtm = null;
		String gene_add_dtm_chg_date = null;
		int chg_date_rec_no = 0;
		
		// オプトインメールチェックフラグが有効の場合に使用するチェック項目
		String mlad = null;
		String mlad_chg_date = null;
		String optinm_nm = null;
		String optinm_nm_chg_date = null;
		
		// お客様グループチェックフラグが有効の場合に使用するチェック項目
		String sysid = null;
		String sysid_chg_date = null;
		
		// 履歴一覧照会(変更日時指定)の最終レコードのマップを取り出す
		HashMap childMap2 = (HashMap)dataList2.get(dataList2.size() - 1);
		
		// 履歴一覧照会(変更日時指定)の世代登録年月日時分秒を取得
		gene_add_dtm_chg_date = (String)childMap2.get("gene_add_dtm");
		
		// オプトインメールチェックフラグが有効の場合、メールアドレスとオプトインメール名を取得する
		if(optinm_chk_flg)
		{
			// 履歴一覧照会(変更日時指定)のメールアドレスを取得
			mlad_chg_date = (String)childMap2.get("mlad");
			
			// 履歴一覧照会(変更日時指定)のオプトインメール名を取得
			optinm_nm_chg_date = (String)childMap2.get("optinm_nm");
		}
		// お客様グループチェックフラグが有効の場合、SYSIDを取得する
		if(cust_grp_chk_flg)
		{
			// 履歴一覧照会(変更日時指定)のSYSIDを取得
			sysid_chg_date = (String)childMap2.get("sysid");
		}
		for (int i = dataList1.size() - 1; i >= 0; i--)
		{
			HashMap childMap1 = (HashMap)dataList1.get(i);
			
			// 履歴一覧照会の世代登録年月日時分秒を取得
			gene_add_dtm = (String)childMap1.get("gene_add_dtm");
			
			// オプトインメールチェックフラグが有効の場合、メールアドレスとオプトインメール名を取得する
			if(optinm_chk_flg)
			{
				// 履歴一覧照会のメールアドレスを取得
				mlad = (String)childMap1.get("mlad");
				
				// 履歴一覧照会のオプトインメール名を取得
				optinm_nm = (String)childMap1.get("optinm_nm");
			}
			// お客様グループチェックフラグが有効の場合、SYSIDを取得する
			if(cust_grp_chk_flg)
			{
				// 履歴一覧照会(変更日時指定)のSYSIDを取得
				sysid = (String)childMap1.get("sysid");
			}
			// オプトインメールチェックフラグが有効の場合
			if(optinm_chk_flg)
			{
				if(gene_add_dtm.equals(gene_add_dtm_chg_date)
						&& mlad.equals(mlad_chg_date)
						&& optinm_nm.equals(optinm_nm_chg_date))
				{
					// 世代登録年月日とメールアドレスとオプトインメール名が一致するレコード番号を記録する。
					chg_date_rec_no = i;
					break;
				}
			}
			// お客様グループチェックフラグが有効の場合
			else if(cust_grp_chk_flg)
			{
				if(gene_add_dtm.equals(gene_add_dtm_chg_date)
						&& sysid.equals(sysid_chg_date))
				{
					// 世代登録年月日とＳＹＳＩＤが一致するレコード番号を記録する。
					chg_date_rec_no = i;
					break;
				}
			}
			else
			{
				if(gene_add_dtm.equals(gene_add_dtm_chg_date))
				{
					// 世代登録年月日が一致するレコード番号を記録する。
					chg_date_rec_no = i;
					break;
				}
			}
		}
		// 履歴一覧照会の最終レコードと一致し、履歴一覧照会(変更日時指定)が１件しかない場合
		if((dataList1.size() - 1) == chg_date_rec_no && dataList2.size() == 1)
		{
			// 比較対象がないため処理を実施しない。
			return null;
		}
		// 履歴一覧照会の最終レコードと一致し、履歴一覧照会(変更日時指定)が２レコード以上ある場合
		else if((dataList1.size() - 1) == chg_date_rec_no && dataList2.size() > 1)
		{
			// 履歴一覧照会の取得結果の最終レコードから履歴一覧照会(変更日時指定)の取得結果数分をチェックする。
			chk_sta_rec_no = chg_date_rec_no;
			chk_end_rec_no = dataList1.size() - dataList2.size();
		}
		// 履歴一覧照会の最終レコード以外と一致した場合
		else
		{
			// 世代登録年月日が一致したレコードから履歴一覧照会(変更日時指定)の取得結果数分をチェックする。
			chk_sta_rec_no = chg_date_rec_no + 1;
			chk_end_rec_no = chg_date_rec_no - dataList2.size() + 1;
		}
		
		int[] list = {chk_end_rec_no, chk_sta_rec_no};
		
		return list;
	}
	
	/**
	 * お客様履歴変更マップ作成<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @param dataList お客様履歴一覧照会リスト
	 * @param list 差分チェック開始・終了番号リスト
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private void custRkChgMapSksi(IRequestParameterReadWrite param, String fixedText, ArrayList dataList,
			int[] list, HashMap workMap) throws Exception
	{

		int startNo = list[1];	// 比較開始レコード番号
		int endNo = list[0];	// 比較終了レコード番号

		/* 業務データ設定 */
		HashMap dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}
		// eoID変更履歴リスト
		ArrayList outDataList = (ArrayList)dataMap.get("eoid_chrrk_list");
		if(outDataList == null)
		{
			outDataList = new ArrayList();
		}

		// ソート区分取得
		String sort_div = (String)dataMap.get("sort_div");

		for (int i = startNo; i != endNo; i--)
		{
			HashMap childMap1 = (HashMap)dataList.get(i - 1);	// 更新後マップ
			HashMap childMap2 = (HashMap)dataList.get(i);		// 更新前マップ
			if(childMap1 == null || childMap2 == null)
			{
				return;
			}
			// eoID変更履歴リストにセットする共通パラメータ
// v5.00 2013/03/08 OT-2013-0000308 MOD START
//			String chg_ymd = (String)childMap1.get("upd_dtm");
			String chg_ymd = (String)childMap1.get("gene_add_dtm");
// v5.00 2013/03/08 OT-2013-0000308 MOD END
			String eoid = (String)childMap1.get("eoid");
			String busho = (String)childMap1.get("org_nm");
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
//			String tantsha = (String)childMap1.get("user_nm");
			String user_nm = (String)childMap1.get("user_nm");
			String tantsha = getTantsha(user_nm, childMap1);
// v5.03 2013/04/23 IKK-2013-0000989 MOD END

			// 変更履歴が"変更"で変更項目が"会員種別"の場合
			if(("".equals(dataMap.get("kn_chrrk"))|| dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[0])))
			{
				if(!(childMap1.get("member_sbt_cd").equals(childMap2.get("member_sbt_cd"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[0], workMap));
					childMap.put("chbf", (String)childMap2.get("member_sbt_cd_nm"));
					childMap.put("chaf", (String)childMap1.get("member_sbt_cd_nm"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"契約者電話番号"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[1])))
			{
				if(!(childMap1.get("keisha_telno").equals(childMap2.get("keisha_telno"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[1], workMap));
					childMap.put("chbf", (String)childMap2.get("keisha_telno"));
					childMap.put("chaf", (String)childMap1.get("keisha_telno"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"お客様名"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[2])))
			{
				if(!(childMap1.get("cont_cust_nm").equals(childMap2.get("cont_cust_nm"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[2], workMap));
					childMap.put("chbf", (String)childMap2.get("cont_cust_nm"));
					childMap.put("chaf", (String)childMap1.get("cont_cust_nm"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"お客様カナ名"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[3])))
			{
				if(!(childMap1.get("cont_cust_kana").equals(childMap2.get("cont_cust_kana"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[3], workMap));
					childMap.put("chbf", (String)childMap2.get("cont_cust_kana"));
					childMap.put("chaf", (String)childMap1.get("cont_cust_kana"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 2012/12/25 [TAI-2012-0000091]暫定ロジック修正対応 ADD START
			// 変更履歴が"変更"で変更項目が"性別"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[4])))
			{
				if(!(childMap1.get("cont_cust_sex_cd").equals(childMap2.get("cont_cust_sex_cd"))))
				{
					String cont_cust_sex_nm_chaf = null;
					String cont_cust_sex_nm_chbf = null;
					
					if (childMap1.get("cont_cust_sex_cd").equals(CONT_CUST_SEX_CD_DAN))
					{
						 cont_cust_sex_nm_chaf = CONT_CUST_SEX_NM_DAN;
					}
					else if (childMap1.get("cont_cust_sex_cd").equals(CONT_CUST_SEX_CD_JO))
					{
						cont_cust_sex_nm_chaf = CONT_CUST_SEX_NM_JO;
					}
					else
					{
						cont_cust_sex_nm_chaf = CONT_CUST_SEX_NM_FU;
					}
					if (childMap2.get("cont_cust_sex_cd").equals(CONT_CUST_SEX_CD_DAN))
					{
						cont_cust_sex_nm_chbf = CONT_CUST_SEX_NM_DAN;
					}
					else if (childMap2.get("cont_cust_sex_cd").equals(CONT_CUST_SEX_CD_JO))
					{
						cont_cust_sex_nm_chbf = CONT_CUST_SEX_NM_JO;
					}
					else
					{
						cont_cust_sex_nm_chbf = CONT_CUST_SEX_NM_FU;
					}
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[4], workMap));
					childMap.put("chbf", cont_cust_sex_nm_chbf);
					childMap.put("chaf", cont_cust_sex_nm_chaf);
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 2012/12/25 [TAI-2012-0000091]暫定ロジック修正対応 ADD END
			
			// 変更履歴が"変更"で変更項目が"生年月日"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[5])))
			{
				if(!(childMap1.get("cont_cust_birthd").equals(childMap2.get("cont_cust_birthd"))))
				{
					String bf_birthday = (String)childMap2.get("cont_cust_birthd");
					String bf_birthday_chg = null;
					String af_birthday = (String)childMap1.get("cont_cust_birthd");
					String af_birthday_chg = null;
					if(bf_birthday.length() == 8)
					{
						bf_birthday_chg = bf_birthday.substring(0, 4) + "/" + bf_birthday.substring(4, 6) + "/" + bf_birthday.substring(6, 8);
					}
					if(af_birthday.length() == 8)
					{
						af_birthday_chg = af_birthday.substring(0, 4) + "/" + af_birthday.substring(4, 6) + "/" + af_birthday.substring(6, 8);
					}
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[5], workMap));
					childMap.put("chbf", bf_birthday_chg);
					childMap.put("chaf", af_birthday_chg);
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"契約者郵便番号"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[6])))
			{
				if(!(childMap1.get("cont_pcd").equals(childMap2.get("cont_pcd"))))
				{
					String bf_cont_pcd = (String)childMap2.get("cont_pcd");
					String bf_cont_pcd_chg = null;
					String af_cont_pcd = (String)childMap1.get("cont_pcd");
					String af_cont_pcd_chg = null;
					if(bf_cont_pcd.length() == 7)
					{
						bf_cont_pcd_chg = bf_cont_pcd.substring(0,3) + "-" + bf_cont_pcd.substring(3, 7);
					}
					if(af_cont_pcd.length() == 7)
					{
						af_cont_pcd_chg = af_cont_pcd.substring(0,3) + "-" + af_cont_pcd.substring(3, 7);
					}
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[6], workMap));
					childMap.put("chbf", bf_cont_pcd_chg);
					childMap.put("chaf", af_cont_pcd_chg);
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"契約者住所"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[7])))
			{
				boolean chg_flag = false;
				if(!(childMap1.get("cont_state_nm").equals(childMap2.get("cont_state_nm"))))
				{
					chg_flag = true;
				}
				if(!(childMap1.get("cont_city_nm").equals(childMap2.get("cont_city_nm"))))
				{
					chg_flag = true;
				}
				if(!(childMap1.get("cont_oaztsu_nm").equals(childMap2.get("cont_oaztsu_nm"))))
				{
					chg_flag = true;
				}
				if(!(childMap1.get("cont_azcho_nm").equals(childMap2.get("cont_azcho_nm"))))
				{
					chg_flag = true;
				}
				if(!(childMap1.get("cont_bnchigo").equals(childMap2.get("cont_bnchigo"))))
				{
					chg_flag = true;
				}
				if(!(childMap1.get("cont_adrttm").equals(childMap2.get("cont_adrttm"))))
				{
					chg_flag = true;
				}
				if(!(childMap1.get("cont_adrrm").equals(childMap2.get("cont_adrrm"))))
				{
					chg_flag = true;
				}
				if(chg_flag)
				{
					String bf_adress = (String)childMap2.get("cont_state_nm") + (String)childMap2.get("cont_city_nm");
					bf_adress = bf_adress + (String)childMap2.get("cont_oaztsu_nm") + (String)childMap2.get("cont_azcho_nm");
					bf_adress = bf_adress + (String)childMap2.get("cont_bnchigo") + (String)childMap2.get("cont_adrttm") + (String)childMap2.get("cont_adrrm");
					String af_adress = (String)childMap1.get("cont_state_nm") + (String)childMap1.get("cont_city_nm");
					af_adress = af_adress + (String)childMap1.get("cont_oaztsu_nm") + (String)childMap1.get("cont_azcho_nm");
					af_adress = af_adress + (String)childMap1.get("cont_bnchigo") + (String)childMap1.get("cont_adrttm") + (String)childMap1.get("cont_adrrm");

					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[7], workMap));
					childMap.put("chbf", bf_adress);
					childMap.put("chaf", af_adress);
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"ニックネーム"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[9])))
			{
				if(!(childMap1.get("nkname").equals(childMap2.get("nkname"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[9], workMap));
					childMap.put("chbf", (String)childMap2.get("nkname"));
					childMap.put("chaf", (String)childMap1.get("nkname"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"秘密の質問(セレクト)"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[10])))
			{
				if(!(childMap1.get("pwd_reminder_qs_cd").equals(childMap2.get("pwd_reminder_qs_cd"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[10], workMap));
					childMap.put("chbf", (String)childMap2.get("pwd_reminder_qs_cd_nm"));
					childMap.put("chaf", (String)childMap1.get("pwd_reminder_qs_cd_nm"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"秘密の質問(答え)"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[11])))
			{
				if(!(childMap1.get("pwd_reminder_ans").equals(childMap2.get("pwd_reminder_ans"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[11], workMap));
					childMap.put("chbf", (String)childMap2.get("pwd_reminder_ans"));
					childMap.put("chaf", (String)childMap1.get("pwd_reminder_ans"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 2012/12/25 [TAI-2012-0000091]暫定ロジック修正対応 ADD START
			// 変更履歴が"変更"で変更項目が"コンテンツISP利用不可フラグ"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[12])))
			{
				if(!("".equals(childMap2.get("cont_isp_use_fail_flg"))) && !(childMap1.get("cont_isp_use_fail_flg").equals(childMap2.get("cont_isp_use_fail_flg"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[12], workMap));
					childMap.put("chbf", (String)childMap2.get("cont_isp_use_fail_flg_nm"));
					childMap.put("chaf", (String)childMap1.get("cont_isp_use_fail_flg_nm"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 2012/12/25 [TAI-2012-0000091]暫定ロジック修正対応 ADD END
			// 変更履歴が"変更"で変更項目が"認証状態"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[13])))
			{
				// ▼▼▼ IT1-2012-0002512 Add Start ▼▼▼
				if(!("".equals(childMap2.get("login_ninsho_kh"))) && !(childMap1.get("login_ninsho_kh").equals(childMap2.get("login_ninsho_kh"))))
				// ▲▲▲ IT1-2012-0002512 Add End   ▲▲▲
				// ▼▼▼ IT1-2012-0002512 Delete Start ▼▼▼
//				if(!(childMap1.get("login_ninsho_kh").equals(childMap2.get("login_ninsho_kh"))))
				// ▲▲▲ IT1-2012-0002512 Delete End   ▲▲▲
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[13], workMap));
					childMap.put("chbf", (String)childMap2.get("login_ninsho_kh_nm"));
					childMap.put("chaf", (String)childMap1.get("login_ninsho_kh_nm"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"会員種別特定フラグ"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[14])))
			{
				// ▼▼▼ IT1-2012-0002512 Add Start ▼▼▼
				if(!("".equals(childMap2.get("mmb_sbt_tokut_flg"))) && !(childMap1.get("mmb_sbt_tokut_flg").equals(childMap2.get("mmb_sbt_tokut_flg"))))
				// ▲▲▲ IT1-2012-0002512 Add End   ▲▲▲
				// ▼▼▼ IT1-2012-0002512 Delete Start ▼▼▼
//				if(!(childMap1.get("mmb_sbt_tokut_flg").equals(childMap2.get("mmb_sbt_tokut_flg"))))
				// ▲▲▲ IT1-2012-0002512 Delete End   ▲▲▲
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[14], workMap));
					childMap.put("chbf", (String)childMap2.get("mmb_sbt_tokut_flg_nm"));
					childMap.put("chaf", (String)childMap1.get("mmb_sbt_tokut_flg_nm"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"変更"で変更項目が"eoID"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[0]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[8])))
			{
				// ▼▼▼ IT1-2012-0002512 Add Start ▼▼▼
				if(!("".equals(childMap2.get("eoid"))) && 
						!(childMap1.get("eoid").equals(childMap2.get("eoid"))) && 
						!(childMap1.get("eoid").equals(childMap1.get("shk_eoid"))))
				// ▲▲▲ IT1-2012-0002512 Add End   ▲▲▲
				// ▼▼▼ IT1-2012-0002512 Delete Start ▼▼▼
//				if(!(childMap1.get("eoid").equals(childMap2.get("eoid"))) && !(childMap1.get("eoid").equals(childMap1.get("shk_eoid"))))
				// ▲▲▲ IT1-2012-0002512 Delete End   ▲▲▲
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[8], workMap));
					childMap.put("chbf", (String)childMap2.get("eoid"));
					childMap.put("chaf", (String)childMap1.get("eoid"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"初期化"で変更項目が"eoID"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[4]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[8])))
			{
				// ▼▼▼ IT1-2012-0002512 Add Start ▼▼▼
				if(!("".equals(childMap2.get("eoid"))) && 
// v5.00 2013/03/08 OT-2013-0000308 MOD START
						EOID_SHKKA.equals(childMap1.get("eoid_knrn_inf_chg_skcd")) && 
						!childMap2.get("eoid_knrn_inf_chg_dtm").equals(childMap1.get("eoid_knrn_inf_chg_dtm")) && 
//						!(childMap1.get("eoid").equals(childMap2.get("eoid"))) &&
// v5.00 2013/03/08 OT-2013-0000308 MOD END
						childMap1.get("eoid").equals(childMap1.get("shk_eoid")))
				// ▲▲▲ IT1-2012-0002512 Add End   ▲▲▲
				// ▼▼▼ IT1-2012-0002512 Delete Start ▼▼▼
//				if(!(childMap1.get("eoid").equals(childMap2.get("eoid"))) && childMap1.get("eoid").equals(childMap1.get("shk_eoid")))
				// ▲▲▲ IT1-2012-0002512 Delete End   ▲▲▲
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[4], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[8], workMap));
					childMap.put("chbf", (String)childMap2.get("eoid"));
					childMap.put("chaf", (String)childMap1.get("eoid"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"再振出"で変更項目が"初期eoID"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[3]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[15])))
			{
				// ▼▼▼ IT1-2012-0002512 Add Start ▼▼▼
				if(!("".equals(childMap2.get("shk_eoid"))) && !(childMap1.get("shk_eoid").equals(childMap2.get("shk_eoid"))))
				// ▲▲▲ IT1-2012-0002512 Add End   ▲▲▲
				// ▼▼▼ IT1-2012-0002512 Delete Start ▼▼▼
//				if(!(childMap1.get("shk_eoid").equals(childMap2.get("shk_eoid"))))
				// ▲▲▲ IT1-2012-0002512 Delete End   ▲▲▲
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[3], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[15], workMap));
					childMap.put("chbf", (String)childMap2.get("shk_eoid"));
					childMap.put("chaf", (String)childMap1.get("shk_eoid"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
// v5.00 2013/03/08 OT-2013-0000308 ADD START
			// 変更履歴が"初期化"で変更項目が"初期eoIDパスワード"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[4]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[18])))
			{
				if(!("".equals(childMap2.get("shk_eoid_pwd"))) &&
						EOID_PWD_SHKKA.equals(childMap1.get("eoid_knrn_inf_chg_skcd")) && 
						!childMap2.get("eoid_knrn_inf_chg_dtm").equals(childMap1.get("eoid_knrn_inf_chg_dtm")))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[4], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[18], workMap));
					childMap.put("chbf", "");
					childMap.put("chaf", (String)childMap1.get("shk_eoid_pwd"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
// v5.00 2013/03/08 OT-2013-0000308 ADD END
			// 変更履歴が"再振出"で変更項目が"初期eoIDパスワード"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[3]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[16])))
			{
				// ▼▼▼ IT1-2012-0002512 Add Start ▼▼▼
				if(!("".equals(childMap2.get("shk_eoid_pwd"))) && !(childMap1.get("shk_eoid_pwd").equals(childMap2.get("shk_eoid_pwd"))))
				// ▲▲▲ IT1-2012-0002512 Add End   ▲▲▲
				// ▼▼▼ IT1-2012-0002512 Delete Start ▼▼▼
//				if(!(childMap1.get("shk_eoid_pwd").equals(childMap2.get("shk_eoid_pwd"))))
				// ▲▲▲ IT1-2012-0002512 Delete End   ▲▲▲
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[3], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[16], workMap));
					childMap.put("chbf", (String)childMap2.get("shk_eoid_pwd"));
					childMap.put("chaf", (String)childMap1.get("shk_eoid_pwd"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"解約"で変更項目が"契約"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[1]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[17])))
			{
				String nayose_saki_sysid = null;
				// 名寄せによる解約の場合
				if(TAIKAI_RSN_CD_NAYOSE.equals(childMap1.get("cust_taikai_rsn_cd")))
				{
					nayose_saki_sysid = (String)childMap1.get("nayose_saki_sysid");
				}
				if(!("".equals(childMap1.get("cust_taikai_ymd"))) && "".equals(childMap2.get("cust_taikai_ymd")))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[1], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[17], workMap));
					childMap.put("chbf", (String)childMap1.get("cust_taikai_rsn_cd_nm"));
					childMap.put("chaf", nayose_saki_sysid);
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更履歴が"回復"で変更項目が"契約"の場合
			if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_CGRRK_DIV_LIST[2]))
					&& ("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(CUST_CGRRK_KMK_LIST[17])))
			{
				if(!("".equals(childMap2.get("cust_taikai_ymd"))) && "".equals(childMap1.get("cust_taikai_ymd")))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(CUST_CGRRK_DIV_LIST[2], workMap));
					childMap.put("chg_kmk", getKnChgKmk(CUST_CGRRK_KMK_LIST[17], workMap));
					childMap.put("chbf", null);
					childMap.put("chaf", (String)childMap1.get("member_sbt_cd_nm") + EDIT_STRING);
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
		}
		dataMap.put("eoid_chrrk_list", outDataList);
	}

	/**
	 * 連絡先履歴変更マップ作成<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @param dataList 連絡先履歴一覧照会リスト
	 * @param list 差分チェック開始・終了レコード番号リスト
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private void rrksRkChgMapSksi(IRequestParameterReadWrite param, String fixedText, ArrayList dataList,
			int[] list, HashMap workMap) throws Exception
	{
		int startNo = list[1];	// 比較開始レコード番号
		int endNo = list[0];	// 比較終了レコード番号

		/* 業務データ設定 */
		HashMap dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

		// 変更履歴に"変更"以外が設定されている場合
		if(!("".equals(dataMap.get("kn_chrrk"))) && !(dataMap.get("kn_chrrk").equals(RRKS_CGRRK_DIV_LIST[0])))
		{
			return;
		}
		// 変更項目に"連絡先メールアドレス"以外が設定されている場合
		if(!("".equals(dataMap.get("kn_chg_kmk"))) && !(dataMap.get("kn_chg_kmk").equals(RRKS_CGRRK_KMK_LIST[0])))
		{
			return;
		}

		// eoID変更履歴リスト
		ArrayList outDataList = (ArrayList)dataMap.get("eoid_chrrk_list");
		if(outDataList == null)
		{
			outDataList = new ArrayList();
		}
		
		// ソート区分取得
		String sort_div = (String)dataMap.get("sort_div");

		for (int i = startNo; i != endNo; i--)
		{
			HashMap childMap1 = (HashMap)dataList.get(i - 1);	// 更新後マップ
			HashMap childMap2 = (HashMap)dataList.get(i);		// 更新前マップ
			if(childMap1 == null || childMap2 == null)
			{
				return;
			}
			// eoID変更履歴リストにセットする共通パラメータ
// v5.00 2013/03/08 OT-2013-0000308 MOD START
//			String chg_ymd = (String)childMap1.get("upd_dtm");
			String chg_ymd = (String)childMap1.get("gene_add_dtm");
// v5.00 2013/03/08 OT-2013-0000308 MOD END
			String eoid = (String)childMap1.get("eoid");
			String busho = (String)childMap1.get("org_nm");
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
//			String tantsha = (String)childMap1.get("user_nm");
			String user_nm = (String)childMap1.get("user_nm");
			String tantsha = getTantsha(user_nm, childMap1);
// v5.03 2013/04/23 IKK-2013-0000989 MOD END

// v5.02 2013/04/21 IKK-2013-0000991 ADD START
			if (i == startNo && ((String)childMap2.get("mlad_chge_ymd") == null || "".equals((String)childMap2.get("mlad_chge_ymd"))))
			{
				String chg_ymd_2 = (String)childMap2.get("gene_add_dtm");
				String eoid_2 = (String)childMap2.get("eoid");
				String busho_2 = (String)childMap2.get("org_nm");
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
//				String tantsha_2 = (String)childMap2.get("user_nm");
				String user_nm_2 = (String)childMap2.get("user_nm");
				String tantsha_2 = getTantsha(user_nm_2, childMap2);
// v5.03 2013/04/23 IKK-2013-0000989 MOD END
							
				HashMap<String, String> childMap = new HashMap<String, String>();
				childMap.put("chg_ymd", chg_ymd_2);
				childMap.put("eoid", eoid_2);
				childMap.put("busho", busho_2);
				childMap.put("tantsha", tantsha_2);
				childMap.put("cgrrk", getKnChrrk(RRKS_CGRRK_DIV_LIST[0], workMap));
				childMap.put("chg_kmk", getKnChgKmk(RRKS_CGRRK_KMK_LIST[0], workMap));
				childMap.put("chbf", "");
				childMap.put("chaf", (String)childMap2.get("mlad"));
				addEoidChrrkList(childMap, outDataList, sort_div);
			}
// v5.02 2013/04/21 IKK-2013-0000991 ADD END
			
			// 変更前後でメールアドレスが異なる場合
			if(!(childMap1.get("mlad").equals(childMap2.get("mlad"))))
			{
				HashMap<String, String> childMap = new HashMap<String, String>();
				childMap.put("chg_ymd", chg_ymd);
				childMap.put("eoid", eoid);
				childMap.put("busho", busho);
				childMap.put("tantsha", tantsha);
				childMap.put("cgrrk", getKnChrrk(RRKS_CGRRK_DIV_LIST[0], workMap));
				childMap.put("chg_kmk", getKnChgKmk(RRKS_CGRRK_KMK_LIST[0], workMap));
				childMap.put("chbf", (String)childMap2.get("mlad"));
				childMap.put("chaf", (String)childMap1.get("mlad"));
				addEoidChrrkList(childMap, outDataList, sort_div);
			}
		}
		dataMap.put("eoid_chrrk_list", outDataList);
	}

	/**
	 * グループ履歴変更マップ作成<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @param dataList グループ履歴一覧照会リスト
	 * @param list 差分チェック開始・終了レコード番号リスト
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private void grpRkChgMapSksi(IRequestParameterReadWrite param, String fixedText, ArrayList dataList,
			int[] list, HashMap workMap) throws Exception
	{

		int startNo = list[1];	// 比較開始レコード番号
		int endNo = list[0];	// 比較終了レコード番号

		/* 業務データ設定 */
		HashMap dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

		// 変更履歴に"再振出"以外が設定されている場合
		if(!("".equals(dataMap.get("kn_chrrk"))) && !(dataMap.get("kn_chrrk").equals(GRP_CGRRK_DIV_LIST[0])))
		{
			return;
		}

		// eoID変更履歴リスト
		ArrayList outDataList = (ArrayList)dataMap.get("eoid_chrrk_list");
		if(outDataList == null)
		{
			outDataList = new ArrayList();
		}

		// ソート区分取得
		String sort_div = (String)dataMap.get("sort_div");

		for (int i = startNo; i != endNo; i--)
		{
			HashMap childMap1 = (HashMap)dataList.get(i - 1);	// 更新後マップ
			HashMap childMap2 = (HashMap)dataList.get(i);		// 更新前マップ
			if(childMap1 == null || childMap2 == null)
			{
				return;
			}
			// eoID変更履歴リストにセットする共通パラメータ
// v5.00 2013/03/08 OT-2013-0000308 MOD START
//			String chg_ymd = (String)childMap1.get("upd_dtm");
			String chg_ymd = (String)childMap1.get("gene_add_dtm");
// v5.00 2013/03/08 OT-2013-0000308 MOD END
			String eoid = (String)childMap1.get("eoID");
			String busho = (String)childMap1.get("org_nm");
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
//			String tantsha = (String)childMap1.get("user_nm");
			String user_nm = (String)childMap1.get("user_nm");
			String tantsha = getTantsha(user_nm, childMap1);
// v5.03 2013/04/23 IKK-2013-0000989 MOD END

			// 変更項目が"グループ入会コード"の場合
			if("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(GRP_CGRRK_KMK_LIST[0]))
			{
				if(!(childMap1.get("grp_join_cd").equals(childMap2.get("grp_join_cd"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(GRP_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(GRP_CGRRK_KMK_LIST[0], workMap));
					childMap.put("chbf", (String)childMap2.get("grp_join_cd"));
					childMap.put("chaf", (String)childMap1.get("grp_join_cd"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			// 変更項目が"グループ入会コードパスワード"の場合
			if("".equals(dataMap.get("kn_chg_kmk")) || dataMap.get("kn_chg_kmk").equals(GRP_CGRRK_KMK_LIST[1]))
			{
				if(!(childMap1.get("grp_join_cd_pwd").equals(childMap2.get("grp_join_cd_pwd"))))
				{
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", chg_ymd);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", tantsha);
					childMap.put("cgrrk", getKnChrrk(GRP_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(GRP_CGRRK_KMK_LIST[1], workMap));
					childMap.put("chbf", (String)childMap2.get("grp_join_cd_pwd"));
					childMap.put("chaf", (String)childMap1.get("grp_join_cd_pwd"));
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
		}
		dataMap.put("eoid_chrrk_list", outDataList);
	}

	/**
	 * お客様グループ設定履歴変更マップ作成<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @param dataList お客様グループ設定履歴一覧照会リスト
	 * @param list 差分チェック開始・終了レコード番号リスト
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private void custGrpSetRkChgMapSksi(IRequestParameterReadWrite param, String fixedText, ArrayList dataList,
			int[] list, HashMap workMap) throws Exception
	{
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)param.getData(fixedText);

		int startNo = list[1];	// 比較開始レコード番号
		int endNo = list[0];	// 比較終了レコード番号

		/* 業務データ設定 */
		HashMap dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

		// 変更項目に"家族会員契約"以外が設定されている場合
		if(!("".equals(dataMap.get("kn_chg_kmk"))) && !(dataMap.get("kn_chg_kmk").equals(CUST_GRP_SET_CGRRK_KMK_LIST[0])))
		{
			return;
		}

		// eoID変更履歴リスト
		ArrayList outDataList = (ArrayList)dataMap.get("eoid_chrrk_list");
		if(outDataList == null)
		{
			outDataList = new ArrayList();
		}

		// ソート区分取得
		String sort_div = (String)dataMap.get("sort_div");

		// 登録年月日記録用リスト
		ArrayList addDtmList = new ArrayList();

		// SYSID記録用リスト
		ArrayList sysidList = new ArrayList();

		// チャック範囲のお客様グループ履歴からSYSIDをリストに書き出す
		for (int i = startNo - 1; i >= endNo; i--)
		{
			HashMap childMap = (HashMap)dataList.get(i);
			// SYSID
			String sysid = (String)childMap.get("sysid");
			// ヒットフラグ
			boolean matchFlag = true;
			// グループリーダーは対象外
			if(!sysid.equals(dataMap.get("sysid")))
			{
				matchFlag = chkTargetListUm(sysidList, sysid);
			}
			// ヒットフラグが無効の場合、SYSID記録用リストに追加する
			if(!matchFlag)
			{
				sysidList.add(sysid);
			}
		}

		for (int i = 0; i < sysidList.size(); i++)
		{
			String sysid = (String)sysidList.get(i);
			
			// SYSID単位で比較
			
			String bf_kaihk_ymd = "";
			String bf_mk_ymd = "";
			String af_kaihk_ymd = "";
			String af_mk_ymd = "";
			
			for(int j = startNo; j > endNo; j--)
			{
				HashMap childMap = (HashMap)dataList.get(j);
				if(sysid.equals((String)childMap.get("sysid")))
				{
					// eoID変更履歴リストにセットする共通パラメータ
// v5.01 2013/04/21 IKK-2013-0000874 MOD START
//					String add_dtm = (String)childMap.get("add_dtm");
					String upd_dtm = (String)childMap.get("upd_dtm");
// v5.01 2013/04/21 IKK-2013-0000874 MOD END
// v5.00 2013/03/08 OT-2013-0000308 MOD START
//					String upd_dtm = (String)childMap.get("upd_dtm");
// v5.01 2013/04/21 IKK-2013-0000874 MOD START
//					String upd_dtm = (String)childMap.get("gene_add_dtm");
					String gene_upd_dtm = (String)childMap.get("gene_add_dtm");
// v5.01 2013/04/21 IKK-2013-0000874 MOD END
// v5.00 2013/03/08 OT-2013-0000308 MOD END
					String eoid = (String)childMap.get("eoid");
					String busho = (String)childMap.get("org_nm");
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
//					String tantsha = (String)childMap.get("user_nm");
					String user_nm = (String)childMap.get("user_nm");
					String tantsha = getTantsha(user_nm, childMap);
// v5.03 2013/04/23 IKK-2013-0000989 MOD END
					
					af_kaihk_ymd = (String)childMap.get("cust_grp_sette_kaihk_ymd");
					af_mk_ymd = (String)childMap.get("cust_grp_sette_mk_ymd");
					
					// 変更履歴が"新規"の場合
					if("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_GRP_SET_CGRRK_DIV_LIST[0]))
					{
						// 登録年月日の範囲有無フラグ
// v5.01 2013/04/21 IKK-2013-0000874 MOD START
//						boolean check_yk_flag = chgDtmChk(inMap, add_dtm);
						boolean check_yk_flag = chgDtmChk(inMap, upd_dtm);
// v5.01 2013/04/21 IKK-2013-0000874 MOD END
						
						// 登録年月日の範囲有無フラグが有効の場合にのみ実施する
						if(check_yk_flag)
						{
							// 登録年月日記録用リストのマッチフラグ（一致する：true, 一致しない：false）
// v5.01 2013/04/21 IKK-2013-0000874 MOD START
//							boolean matchFlag = chkTargetListUm(addDtmList, add_dtm);
							boolean matchFlag = chkTargetListUm(addDtmList, upd_dtm);
// v5.01 2013/04/21 IKK-2013-0000874 MOD END
							
							// 登録年月日記録用リストに一致する日時がない場合
							if(!matchFlag)
							{
								// 登録年月日記録用リストに新しい日時を追加
// v5.01 2013/04/21 IKK-2013-0000874 MOD START
//								addDtmList.add(add_dtm);
								addDtmList.add(upd_dtm);
// v5.01 2013/04/21 IKK-2013-0000874 MOD END
								
								HashMap<String, String> childMap2 = new HashMap<String, String>();
// v5.01 2013/04/21 IKK-2013-0000874 MOD START
//								childMap2.put("chg_ymd", add_dtm);
								childMap2.put("chg_ymd", gene_upd_dtm);
// v5.01 2013/04/21 IKK-2013-0000874 MOD END
								childMap2.put("eoid", eoid);
								childMap2.put("busho", busho);
								childMap2.put("tantsha", tantsha);
								childMap2.put("cgrrk", getKnChrrk(CUST_GRP_SET_CGRRK_DIV_LIST[0], workMap));
								childMap2.put("chg_kmk", getKnChgKmk(CUST_GRP_SET_CGRRK_KMK_LIST[0], workMap));
								childMap2.put("chbf", null);
								childMap2.put("chaf", sysid);
								addEoidChrrkList(childMap2, outDataList, sort_div);
							}
						}
						
						// 変更前に回復日がなく変更後に回復日がある場合、または変更前後に回復日があるが値が異なる場合
						if((!("".equals(bf_kaihk_ymd)) && !("".equals(af_kaihk_ymd)) && !(bf_kaihk_ymd.equals(af_kaihk_ymd)))
								|| ("".equals(bf_kaihk_ymd) && !("".equals(af_kaihk_ymd))))
						{
							HashMap<String, String> childMap2 = new HashMap<String, String>();
// v5.01 2013/04/21 IKK-2013-0000874 MOD START
//							childMap2.put("chg_ymd", upd_dtm);
							childMap2.put("chg_ymd", gene_upd_dtm);
// v5.01 2013/04/21 IKK-2013-0000874 MOD END
							childMap2.put("eoid", eoid);
							childMap2.put("busho", busho);
							childMap2.put("tantsha", tantsha);
							childMap2.put("cgrrk", getKnChrrk(CUST_GRP_SET_CGRRK_DIV_LIST[0], workMap));
							childMap2.put("chg_kmk", getKnChgKmk(CUST_GRP_SET_CGRRK_KMK_LIST[0], workMap));
							childMap2.put("chbf", null);
							childMap2.put("chaf", sysid);
							addEoidChrrkList(childMap2, outDataList, sort_div);
						}
					}
					// 変更履歴が"解約" の場合
					if("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(CUST_GRP_SET_CGRRK_DIV_LIST[1]))
					{
						// 変更前に無効日がなく変更後に無効日がある場合、または変更前後に無効日があるが値が異なる場合
						if((!("".equals(bf_mk_ymd)) && !("".equals(af_mk_ymd)) && !(bf_mk_ymd.equals(af_mk_ymd)))
								|| ("".equals(bf_mk_ymd) && !("".equals(af_mk_ymd))))
						{
							HashMap<String, String> childMap2 = new HashMap<String, String>();
// v5.01 2013/04/21 IKK-2013-0000874 MOD START
//							childMap2.put("chg_ymd", upd_dtm);
							childMap2.put("chg_ymd", gene_upd_dtm);
// v5.01 2013/04/21 IKK-2013-0000874 MOD END
							childMap2.put("eoid", eoid);
							childMap2.put("busho", busho);
							childMap2.put("tantsha", tantsha);
							childMap2.put("cgrrk", getKnChrrk(CUST_GRP_SET_CGRRK_DIV_LIST[1], workMap));
							childMap2.put("chg_kmk", getKnChgKmk(CUST_GRP_SET_CGRRK_KMK_LIST[0], workMap));
							childMap2.put("chbf", sysid);
							childMap2.put("chaf", null);
							addEoidChrrkList(childMap2, outDataList, sort_div);
						}
					}
					bf_kaihk_ymd = af_kaihk_ymd;
					bf_mk_ymd = af_mk_ymd;
				}
			}
		}
		dataMap.put("eoid_chrrk_list", outDataList);
	}

	/**
	 * サービス契約＜ホスティング＞履歴変更マップ作成<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @param dataList サービス契約＜ホスティング＞履歴一覧照会リスト
	 * @param list 差分チェック開始・終了レコード番号リスト
	 * @param endNo 差分チェック終了レコード番号
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private void svcKeiHostRkChgMapSksi(IRequestParameterReadWrite param, String fixedText,
			ArrayList dataList, int[] list, HashMap workMap) throws Exception
	{
		/* 業務データ設定 */
		HashMap dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

		// 変更履歴に"変更"以外が設定されている場合
		if(!("".equals(dataMap.get("kn_chrrk"))) && !(dataMap.get("kn_chrrk").equals(SVC_KEI_HOS_CGRRK_DIV_LIST[0])))
		{
			return;
		}
		// 変更項目に"標準コンテンツ同意状態"以外が設定されている場合
		if(!("".equals(dataMap.get("kn_chg_kmk"))) && !(dataMap.get("kn_chg_kmk").equals(SVC_KEI_HOS_CGRRK_KMK_LIST[0])))
		{
			return;
		}

		// eoID変更履歴リスト
		ArrayList outDataList = (ArrayList)dataMap.get("eoid_chrrk_list");
		if(outDataList == null)
		{
			outDataList = new ArrayList();
		}

		// ソート区分取得
		String sort_div = (String)dataMap.get("sort_div");

		// 登録年月日記録用リスト
		ArrayList addDtmList = new ArrayList();

		if(list == null)
		{
			for (int i = dataList.size() - 1; i >= 0; i--)
			{
				HashMap childMap1 = (HashMap)dataList.get(i);

				// eoID変更履歴リストにセットする共通パラメータ
// v5.00 2013/03/08 OT-2013-0000308 MOD START
//				String upd_dtm = (String)childMap1.get("upd_dtm");
				String upd_dtm = (String)childMap1.get("gene_add_dtm");
// v5.00 2013/03/08 OT-2013-0000308 MOD END
				String eoid = (String)childMap1.get("eoid");
				String busho = (String)childMap1.get("org_nm");
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
//				String add_tantsha = (String)childMap1.get("add_user_nm");
				String user_nm = (String)childMap1.get("add_user_nm");
				String add_tantsha = getTantsha(user_nm, childMap1);
// v5.03 2013/04/23 IKK-2013-0000989 MOD END
				String del_tantsha = (String)childMap1.get("del_user_nm");

				// 差分確認用パラメータ
				String add_ymd = (String)childMap1.get("add_dtm");

				// 登録年月日記録用リストのマッチフラグ（一致する：true, 一致しない：false）
				boolean addMatchFlag = chkTargetListUm(addDtmList, add_ymd);

				// 登録年月日記録用リストに一致する日時がなく、削除年月日に値がない場合
				if(!addMatchFlag && chgDtmChk(dataMap, add_ymd))
				{
					// 登録年月日記録用リストに新しい日時を追加
					addDtmList.add(add_ymd);
					
					HashMap<String, String> childMap = new HashMap<String, String>();
					childMap.put("chg_ymd", upd_dtm);
					childMap.put("eoid", eoid);
					childMap.put("busho", busho);
					childMap.put("tantsha", add_tantsha);
					childMap.put("cgrrk", getKnChrrk(SVC_KEI_HOS_CGRRK_DIV_LIST[0], workMap));
					childMap.put("chg_kmk", getKnChgKmk(SVC_KEI_HOS_CGRRK_KMK_LIST[0], workMap));
					childMap.put("chbf", DOI_MI);
					childMap.put("chaf", DOI_ZM);
					addEoidChrrkList(childMap, outDataList, sort_div);
				}
			}
			dataMap.put("eoid_chrrk_list", outDataList);
			
			return;
		}

		int startNo = list[1];	// 比較開始レコード番号
		int endNo = list[0];	// 比較終了レコード番号

		// 解約済変更フラグ
		boolean dslChgFlg = false;

		for (int i = startNo; i != endNo; i--)
		{
			HashMap childMap1 = (HashMap)dataList.get(i - 1);	// 更新後マップ
			HashMap childMap2 = (HashMap)dataList.get(i);		// 更新前マップ
			if(childMap1 == null || childMap2 == null)
			{
				return;
			}
			// eoID変更履歴リストにセットする共通パラメータ
			String upd_dtm = (String)childMap1.get("upd_dtm");
			String eoid = (String)childMap1.get("eoid");
			String busho = (String)childMap1.get("org_nm");
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
//			String add_tantsha = (String)childMap1.get("add_user_nm");
			String user_nm = (String)childMap1.get("add_user_nm");
			String add_tantsha = getTantsha(user_nm, childMap1);
//v5.03 2013/04/23 IKK-2013-0000989 MOD END
			String del_tantsha = (String)childMap1.get("del_user_nm");

			// 差分確認用パラメータ
			String add_ymd = (String)childMap1.get("add_dtm");
			String svc_kei_stat_af = (String)childMap1.get("svc_kei_stat");
			String svc_kei_stat_bf = (String)childMap2.get("svc_kei_stat");

			// 登録年月日記録用リストのマッチフラグ（一致する：true, 一致しない：false）
			boolean addMatchFlag = chkTargetListUm(addDtmList, add_ymd);
			
			// 更新前が"解約済"でなく、更新後が"解約済"の場合
			if("910".equals(svc_kei_stat_af) && !("910".equals(svc_kei_stat_bf)))
			{
				HashMap<String, String> childMap = new HashMap<String, String>();
				childMap.put("chg_ymd", upd_dtm);
				childMap.put("eoid", eoid);
				childMap.put("busho", busho);
				childMap.put("tantsha", add_tantsha);
				childMap.put("cgrrk", getKnChrrk(SVC_KEI_HOS_CGRRK_DIV_LIST[0], workMap));
				childMap.put("chg_kmk", getKnChgKmk(SVC_KEI_HOS_CGRRK_KMK_LIST[0], workMap));
				childMap.put("chbf", DOI_ZM);
				childMap.put("chaf", DOI_MI);
				addEoidChrrkList(childMap, outDataList, sort_div);
			}
			// 登録年月日記録用リストに一致する日時がなく、削除年月日に値がない場合
			else if(!addMatchFlag &&  chgDtmChk(dataMap, add_ymd))
			{
				// 登録年月日記録用リストに新しい日時を追加
				addDtmList.add(add_ymd);
				
				HashMap<String, String> childMap = new HashMap<String, String>();
				childMap.put("chg_ymd", upd_dtm);
				childMap.put("eoid", eoid);
				childMap.put("busho", busho);
				childMap.put("tantsha", add_tantsha);
				childMap.put("cgrrk", getKnChrrk(SVC_KEI_HOS_CGRRK_DIV_LIST[0], workMap));
				childMap.put("chg_kmk", getKnChgKmk(SVC_KEI_HOS_CGRRK_KMK_LIST[0], workMap));
				childMap.put("chbf", DOI_MI);
				childMap.put("chaf", DOI_ZM);
				addEoidChrrkList(childMap, outDataList, sort_div);
			}
		}
		dataMap.put("eoid_chrrk_list", outDataList);
	}

	/**
	 * オプトインメール受信設定履歴変更マップ作成<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @param workMap 作業用マップ
	 * @param dataList オプトインメール受信設定履歴一覧照会リスト
	 * @param list 差分チェック開始・終了レコード番号リスト
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private void optinmSetRkChgMapSksi(IRequestParameterReadWrite param, String fixedText, HashMap<String, Object> workMap,
			ArrayList dataList, int[] list) throws Exception
	{
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)param.getData(fixedText);

		int startNo = list[1];	// 比較開始レコード番号
		int endNo = list[0];	// 比較終了レコード番号

		/* 業務データ設定 */
		HashMap dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

		// 変更項目に"メール受信設定情報"以外が設定されている場合
		if(!("".equals(dataMap.get("kn_chg_kmk"))) && !(dataMap.get("kn_chg_kmk").equals(OPTINM_SET_CGRRK_KMK_LIST[0])))
		{
			return;
		}

		// eoID変更履歴リスト
		ArrayList outDataList = (ArrayList)dataMap.get("eoid_chrrk_list");
		if(outDataList == null)
		{
			outDataList = new ArrayList();
		}

		// ソート区分取得
		String sort_div = (String)dataMap.get("sort_div");

		// 登録年月日記録用リスト
		ArrayList addDtmList = new ArrayList();

		// メールアドレスとオプトインメール名のグループリスト
		ArrayList mladOptinmList = new ArrayList();

		// オプトインメール受信設定履歴からメールアドレスとオプトインネール名をグループ化する
		for(int i = startNo; i >= endNo; i--)
		{
			// オプトインメール受信設定履歴からメールアドレスとオプトインネール名を取得
			HashMap childMap = (HashMap)dataList.get(i);
			String mlad = (String)childMap.get("mlad");
			String optinm_nm = (String)childMap.get("optinm_nm");
			
			// メールアドレスとオプトインメール名のグループリストに一致するパターンがあるかの確認
			boolean matchFlg = false;
			for(int j = 0; j < mladOptinmList.size(); j++)
			{
				// グループリストからパターンリストを取り出し、メールアドレスとオプトインメール名を比較する
				HashMap childMap2 = (HashMap)mladOptinmList.get(j);
				if(mlad.equals((String)childMap2.get("mlad")) && optinm_nm.equals((String)childMap2.get("optinm_nm")))
				{
					// 一致する項目がある場合、マッチフラグを有効にする
					matchFlg = true;
					break;
				}
			}
			// マッチフラグが無効の場合、グループリストに新しいパターンを登録する
			if(!matchFlg)
			{
				HashMap addMap = new HashMap();
				addMap.put("mlad", mlad);
				addMap.put("optinm_nm", optinm_nm);
				mladOptinmList.add(addMap);
			}
		}
		// メールアドレスとオプトインメール名のグループ単位で差分チェックを行う
		for(int i = 0; i < mladOptinmList.size(); i++)
		{
			HashMap childMap = (HashMap)mladOptinmList.get(i);
			String mlad = (String)childMap.get("mlad");
			String optinm_nm = (String)childMap.get("optinm_nm");
			
			String bf_rec_div = "";
			String af_rec_div = "";
			
			for(int j = startNo; j >= endNo; j--)
			{
				HashMap childMap2 = (HashMap)dataList.get(j);
				if(mlad.equals((String)childMap2.get("mlad")) && optinm_nm.equals((String)childMap2.get("optinm_nm")))
				{
					// eoID変更履歴リストにセットする共通パラメータ
// v5.00 2013/03/08 OT-2013-0000308 MOD START
//					String chg_ymd = (String)childMap2.get("upd_dtm");
					String chg_ymd = (String)childMap2.get("gene_add_dtm");
// v5.00 2013/03/08 OT-2013-0000308 MOD END
					String eoid = (String)childMap2.get("eoid");
					String busho = (String)childMap2.get("org_nm");
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
//					String tantsha = (String)childMap2.get("user_nm");
					String user_nm = (String)childMap2.get("user_nm");
					String tantsha = getTantsha(user_nm, childMap2);
// v5.03 2013/04/23 IKK-2013-0000989 MOD END
					String add_dtm = (String)childMap2.get("add_dtm");
					String chbf_mlad = null;
					String chaf_optinm_nm = null;
					
					// 連絡先履歴よりメールアドレスを取得する
					String rrks_mlad = getCurrentRrksMlad(workMap, chg_ymd);
					
					// オプトインメールのメールアドレスが連絡先のメールアドレスと一致する場合（連絡先アドレス）
					if(mlad.equals(rrks_mlad))
					{
						chbf_mlad = RRK + mlad;
					}
					// オプトインメールのメールアドレスが連絡先のメールアドレスと一致しない場合（オプションメール）
					else
					{
						chbf_mlad = KNS + mlad;
					}
					
					// 受信区分を取得する
					af_rec_div = (String)childMap2.get("rcv_div");
					
					// 受信区分が"なし"の場合
					if(af_rec_div.equals(RCV_DIV_NON))
					{
						chaf_optinm_nm = optinm_nm + RCV_DIV_OFF;
					}
					// 受信区分が"あり"の場合
					else
					{
						chaf_optinm_nm = optinm_nm + RCV_DIV_ON;
					}
					
					// 変更履歴が新規または未設定の場合
					if("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(OPTINM_SET_CGRRK_DIV_LIST[0]))
					{
						// 登録年月日の範囲有無フラグ
						boolean check_yk_flag = chgDtmChk(inMap, add_dtm);
						
						// 登録年月日記録用リストのマッチフラグ（一致する：true, 一致しない：false）
						boolean matchFlag = false;
						
						// 登録年月日の範囲有無フラグが有効の場合にのみ実施する
						if(check_yk_flag)
						{
							// 新規登録であるかの確認
							for(int k = 0; k < addDtmList.size(); k++)
							{
								if(((String)addDtmList.get(k)).equals(add_dtm))
								{
									// 既存の日付の場合、マッチフラグをTrueにする。
									matchFlag = true;
									break;
								}
							}
						}
						// 登録年月日記録用リストに一致する日時がない場合（新規登録の場合）
						if(!matchFlag)
						{
							// 登録年月日記録用リストに新しい日時を追加
							addDtmList.add(add_dtm);
							
							HashMap<String, String> childMap3 = new HashMap<String, String>();
							childMap3.put("chg_ymd", chg_ymd);
							childMap3.put("eoid", eoid);
							childMap3.put("busho", busho);
							childMap3.put("tantsha", tantsha);
							childMap3.put("cgrrk", getKnChrrk(OPTINM_SET_CGRRK_DIV_LIST[0], workMap));
							childMap3.put("chg_kmk", getKnChgKmk(OPTINM_SET_CGRRK_KMK_LIST[0], workMap));
							childMap3.put("chbf", chbf_mlad);
							childMap3.put("chaf", chaf_optinm_nm);
							addEoidChrrkList(childMap3, outDataList, sort_div);
						}
					}
					// 変更履歴が変更または未設定で、変更前後で受信区分が異なる場合
					if(("".equals(dataMap.get("kn_chrrk")) || dataMap.get("kn_chrrk").equals(OPTINM_SET_CGRRK_DIV_LIST[1]))
							&& (!("".equals(bf_rec_div)) && !("".equals(af_rec_div)) && !(bf_rec_div.equals(af_rec_div))))
					{
						HashMap<String, String> childMap3 = new HashMap<String, String>();
						childMap3.put("chg_ymd", chg_ymd);
						childMap3.put("eoid", eoid);
						childMap3.put("busho", busho);
						childMap3.put("tantsha", tantsha);
						childMap3.put("cgrrk", getKnChrrk(OPTINM_SET_CGRRK_DIV_LIST[1], workMap));
						childMap3.put("chg_kmk", getKnChgKmk(OPTINM_SET_CGRRK_KMK_LIST[0], workMap));
						childMap3.put("chbf", chbf_mlad);
						childMap3.put("chaf", chaf_optinm_nm);
						addEoidChrrkList(childMap3, outDataList, sort_div);
					}
					bf_rec_div = af_rec_div;
				}
			}
		}
		dataMap.put("eoid_chrrk_list", outDataList);
	}

	/**
	 * コード名称管理一覧照会（変更履歴）呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getEZM0171B010_chrrk_Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgEZM0171B010_chrrk(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPEZM0171B010_chrrk(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * コード名称管理一覧照会（変更履歴）呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getEZM0171B010_chg_kmk_Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgEZM0171B010_chg_kmk(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPEZM0171B010_chgkmk(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * お客様履歴一覧照会呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0011B004Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0011B004(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0011B004(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * お客様履歴一覧照会（変更日時指定）呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0011B004_chg_date_Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0011B004_chg_date(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0011B004_chgdat(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * 連絡先履歴一覧照会呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0201B003Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0201B003(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0201B003(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * 連絡先履歴一覧照会（変更日時指定）呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0201B003_chg_date_Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0201B003_chg_date(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0201B003_chgdat(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * 連絡先履歴一覧照会呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0111B060Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0111B060(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0111B060(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * 連絡先履歴一覧照会（変更日時指定）呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0111B060_chg_date_Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0111B060_chg_date(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0111B060_chgdat(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * お客様グループ設定履歴一覧照会呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0121B003Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0121B003(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0121B003(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * お客様グループ設定履歴一覧照会（変更日時指定）呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0121B003_chg_date_Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0121B003_chg_date(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0121B003_chgdat(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * サービス契約＜ホスティング＞履歴一覧照会呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getEKK0151B010_Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgEKK0151B010(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPEKK0151B010(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * サービス契約＜ホスティング＞履歴一覧照会（変更日時指定）呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getEKK0151B010_chg_date_Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgEKK0151B010_chg_date(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPEKK0151B010_chgdat(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * オプトインメール受信設定履歴一覧照会呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0141B030Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0141B030(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0141B030(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * オプトインメール受信設定履歴一覧照会（変更日時指定）呼出処理。<br>
	 * <br>
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> getECK0141B030_chg_date_Map(SessionHandle handle, IRequestParameterReadWrite param, 
			String fixedText) throws Exception
	{

		/* ◇上りマッピング処理 */
		// 上りマッピングの処理結果を取得するためのマップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// リクエストパラメータを引数に上りマッピング処理メソッドを実行
		paramMap = editInMsgECK0141B030_chg_date(param, fixedText);

		/* ◇ＳＣ呼出実行 */
		// SC呼び出し部品のインスタンス生成（引数にはログに出力するクラス名を渡す。空文字を設定した場合はログに出力されない。
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		Map<?, ?> result = scCall.run(paramMap, handle);
		
		/* ◇下りマッピング処理 */
		HashMap<String, Object> resultMap = new HashMap<String, Object>();
		resultMap = editResultRPECK0141B030_chgdat(result, param, fixedText);
		
		return resultMap;
	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> editInMsgEZM0171B010_chrrk(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(EZM0171B010CBSMsg.class.getName());

		// テンプレートID
		template.set(EZM0171B010CBSMsg.TEMPLATEID, "EZM0171B010");

		// 機能コード
		template.set(EZM0171B010CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI_ASC);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		// コード名称管理一覧照会マップ.コード種別コード → ＫＥＹ＿コード種別コード
		template.set(EZM0171B010CBSMsg.KEY_CD_SBT_CD, CD_SBT_CD_CHRRK);	//固定値（"CD00994"）

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private HashMap<String, Object> editInMsgEZM0171B010_chg_kmk(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(EZM0171B010CBSMsg.class.getName());

		// テンプレートID
		template.set(EZM0171B010CBSMsg.TEMPLATEID, "EZM0171B010");

		// 機能コード
		template.set(EZM0171B010CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI_ASC);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		// コード名称管理一覧照会マップ.コード種別コード → ＫＥＹ＿コード種別コード
		template.set(EZM0171B010CBSMsg.KEY_CD_SBT_CD, CD_SBT_CD_CHG_KMK);	//固定値（"CD00995"）

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0011B004(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0011B004CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0011B004CBSMsg.TEMPLATEID, "ECK0011B004");

		// 機能コード
		template.set(EKK0401B001CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// お客様履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0011B004CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0011B004CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}
		// お客様履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		template.setNull(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM);

		// お客様履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		template.setNull(ECK0011B004CBSMsg.KEY_UPD_DTM_TO);

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0011B004_chg_date(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0011B004CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0011B004CBSMsg.TEMPLATEID, "ECK0011B004");

		// 機能コード
		template.set(EKK0401B001CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// お客様履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0011B004CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0011B004CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// お客様履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		if (inMap == null || inMap.get("chg_from") == null || "".equals(inMap.get("chg_from")))
		{
			template.setNull(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM);
		}
		else
		{
			template.set(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM, (String)inMap.get("chg_from"));
		}

		// お客様履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		if (inMap == null || inMap.get("chg_to") == null || "".equals(inMap.get("chg_to")))
		{
			template.setNull(ECK0011B004CBSMsg.KEY_UPD_DTM_TO);
		}
		else
		{
			template.set(ECK0011B004CBSMsg.KEY_UPD_DTM_TO, (String)inMap.get("chg_to"));
		}

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0201B003(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0201B003CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0201B003CBSMsg.TEMPLATEID, "ECK0201B003");

		// 機能コード
		template.set(ECK0201B003CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// 連絡先履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0201B003CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0201B003CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// 連絡先履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		template.setNull(ECK0201B003CBSMsg.KEY_CHGE_DTM_FROM);

		// 連絡先履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		template.setNull(ECK0201B003CBSMsg.KEY_CHGE_DTM_TO);

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0201B003_chg_date(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0201B003CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0201B003CBSMsg.TEMPLATEID, "ECK0201B003");

		// 機能コード
		template.set(ECK0201B003CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// 連絡先履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0201B003CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0201B003CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// 連絡先履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		if (inMap == null || inMap.get("chg_from") == null || "".equals(inMap.get("chg_from")))
		{
			template.setNull(ECK0201B003CBSMsg.KEY_CHGE_DTM_FROM);
		}
		else
		{
			template.set(ECK0201B003CBSMsg.KEY_CHGE_DTM_FROM, (String)inMap.get("chg_from"));
		}

		// 連絡先履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		if (inMap == null || inMap.get("chg_to") == null || "".equals(inMap.get("chg_to")))
		{
			template.setNull(ECK0201B003CBSMsg.KEY_CHGE_DTM_TO);
		}
		else
		{
			template.set(ECK0201B003CBSMsg.KEY_CHGE_DTM_TO, (String)inMap.get("chg_to"));
		}

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0111B060(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0111B060CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0111B060CBSMsg.TEMPLATEID, "ECK0111B060");

		// 機能コード
		template.set(ECK0111B060CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// グループ履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0111B060CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0111B060CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// グループ履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		template.setNull(ECK0111B060CBSMsg.KEY_UPD_DTM_FROM);

		// グループ履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		template.setNull(ECK0111B060CBSMsg.KEY_UPD_DTM_TO);

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0111B060_chg_date(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0111B060CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0111B060CBSMsg.TEMPLATEID, "ECK0111B060");

		// 機能コード
		template.set(ECK0111B060CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// グループ履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0111B060CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0111B060CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// グループ履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		if (inMap == null || inMap.get("chg_from") == null || "".equals(inMap.get("chg_from")))
		{
			template.setNull(ECK0111B060CBSMsg.KEY_UPD_DTM_FROM);
		}
		else
		{
			template.set(ECK0111B060CBSMsg.KEY_UPD_DTM_FROM, (String)inMap.get("chg_from"));
		}

		// グループ履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		if (inMap == null || inMap.get("chg_to") == null || "".equals(inMap.get("chg_to")))
		{
			template.setNull(ECK0111B060CBSMsg.KEY_UPD_DTM_TO);
		}
		else
		{
			template.set(ECK0111B060CBSMsg.KEY_UPD_DTM_TO, (String)inMap.get("chg_to"));
		}

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0121B003(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0121B003CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0121B003CBSMsg.TEMPLATEID, "ECK0121B003");

		// 機能コード
		template.set(ECK0121B003CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// お客様グループ設定履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0121B003CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0121B003CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// お客様グループ設定履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		template.setNull(ECK0121B003CBSMsg.KEY_CHG_DATE_FROM);

		// お客様グループ設定履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		template.setNull(ECK0121B003CBSMsg.KEY_CHG_DATE_TO);

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0121B003_chg_date(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0121B003CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0121B003CBSMsg.TEMPLATEID, "ECK0121B003");

		// 機能コード
		template.set(ECK0121B003CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// お客様グループ設定履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0121B003CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0121B003CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// お客様グループ設定履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		if (inMap == null || inMap.get("chg_from") == null || "".equals(inMap.get("chg_from")))
		{
			template.setNull(ECK0121B003CBSMsg.KEY_CHG_DATE_FROM);
		}
		else
		{
			template.set(ECK0121B003CBSMsg.KEY_CHG_DATE_FROM, (String)inMap.get("chg_from"));
		}

		// お客様グループ設定履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		if (inMap == null || inMap.get("chg_to") == null || "".equals(inMap.get("chg_to")))
		{
			template.setNull(ECK0121B003CBSMsg.KEY_CHG_DATE_TO);
		}
		else
		{
			template.set(ECK0121B003CBSMsg.KEY_CHG_DATE_TO, (String)inMap.get("chg_to"));
		}

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgEKK0151B010(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(EKK0151B010CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(EKK0151B010CBSMsg.TEMPLATEID, "EKK0151B010");

		// 機能コード
		template.set(EKK0151B010CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// サービス契約＜ホスティング＞履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(EKK0151B010CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(EKK0151B010CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// サービス契約＜ホスティング＞履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		template.setNull(EKK0151B010CBSMsg.KEY_CHG_DATE_FROM);

		// サービス契約＜ホスティング＞履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		template.setNull(EKK0151B010CBSMsg.KEY_CHG_DATE_TO);

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgEKK0151B010_chg_date(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(EKK0151B010CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(EKK0151B010CBSMsg.TEMPLATEID, "EKK0151B010");

		// 機能コード
		template.set(EKK0151B010CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// サービス契約＜ホスティング＞履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(EKK0151B010CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(EKK0151B010CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// サービス契約＜ホスティング＞履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		if (inMap == null || inMap.get("chg_from") == null || "".equals(inMap.get("chg_from")))
		{
			template.setNull(EKK0151B010CBSMsg.KEY_CHG_DATE_FROM);
		}
		else
		{
			template.set(EKK0151B010CBSMsg.KEY_CHG_DATE_FROM, (String)inMap.get("chg_from"));
		}

		// サービス契約＜ホスティング＞履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		if (inMap == null || inMap.get("chg_to") == null || "".equals(inMap.get("chg_to")))
		{
			template.setNull(EKK0151B010CBSMsg.KEY_CHG_DATE_TO);
		}
		else
		{
			template.set(EKK0151B010CBSMsg.KEY_CHG_DATE_TO, (String)inMap.get("chg_to"));
		}

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0141B030(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0141B030CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0141B030CBSMsg.TEMPLATEID, "ECK0141B030");

		// 機能コード
		template.set(ECK0141B030CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// オプトインメール受信設定履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0141B030CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0141B030CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// オプトインメール受信設定履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		template.setNull(ECK0141B030CBSMsg.KEY_CHG_DATE_FROM);

		// オプトインメール受信設定履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		template.setNull(ECK0141B030CBSMsg.KEY_CHG_DATE_TO);

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}
	
	/**
	 * CAANMsgに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterExceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editInMsgECK0141B030_chg_date(IRequestParameterReadOnly param, String fixedText)
	throws RequestParameterException
	{

		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// メッセージ共通部の設定
		setCommonParamMap(param, paramMap);

		CAANMsg template = new CAANMsg(ECK0141B030CBSMsg.class.getName());

		HashMap inMap = null;

		// テンプレートID
		template.set(ECK0141B030CBSMsg.TEMPLATEID, "ECK0141B030");

		// 機能コード
		template.set(ECK0141B030CBSMsg.FUNC_CODE, FUNC_CODE_ICRN_SHOKAI);

		// サービスインターフェイス共通部の設定
		setCommonTemplate(param, template);		

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		
		// オプトインメール受信設定履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			template.setNull(ECK0141B030CBSMsg.KEY_SYSID);
		}
		else
		{
			template.set(ECK0141B030CBSMsg.KEY_SYSID, (String)inMap.get("sysid"));
		}

		// オプトインメール受信設定履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ
		if (inMap == null || inMap.get("chg_from") == null || "".equals(inMap.get("chg_from")))
		{
			template.setNull(ECK0141B030CBSMsg.KEY_CHG_DATE_FROM);
		}
		else
		{
			template.set(ECK0141B030CBSMsg.KEY_CHG_DATE_FROM, (String)inMap.get("chg_from"));
		}

		// オプトインメール受信設定履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ
		if (inMap == null || inMap.get("chg_to") == null || "".equals(inMap.get("chg_to")))
		{
			template.setNull(ECK0141B030CBSMsg.KEY_CHG_DATE_TO);
		}
		else
		{
			template.set(ECK0141B030CBSMsg.KEY_CHG_DATE_TO, (String)inMap.get("chg_to"));
		}

		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;

	}

	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPEZM0171B010_chrrk(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(EZM0171B010CBSMsg.EZM0171B010CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("EZM0171B010CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);

				
				// コード名称管理一覧照会マップ.コード区分 ← コード区分
				if (childTemplate.isNull(EZM0171B010CBSMsg1List.CD_DIV)) 
				{
					childMap.put("cd_div", "");
				} 
				else 
				{
					childMap.put("cd_div", childTemplate.getString(EZM0171B010CBSMsg1List.CD_DIV));
				}
				
				// コード名称管理一覧照会マップ.コード区分名 ← コード区分名
				if (childTemplate.isNull(EZM0171B010CBSMsg1List.CD_DIV_NM)) 
				{
					childMap.put("cd_div_nm", "");
				} 
				else 
				{
					childMap.put("cd_div_nm", childTemplate.getString(EZM0171B010CBSMsg1List.CD_DIV_NM));
				}
			}
		}
		dataMap.put("EZM0171B010CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoEZM0171B010_chrrk(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}
	
	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPEZM0171B010_chgkmk(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(EZM0171B010CBSMsg.EZM0171B010CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("EZM0171B010CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);

				
				// コード名称管理一覧照会マップ.コード区分 ← コード区分
				if (childTemplate.isNull(EZM0171B010CBSMsg1List.CD_DIV)) 
				{
					childMap.put("cd_div", "");
				} 
				else 
				{
					childMap.put("cd_div", childTemplate.getString(EZM0171B010CBSMsg1List.CD_DIV));
				}
				
				// コード名称管理一覧照会マップ.コード区分名 ← コード区分名
				if (childTemplate.isNull(EZM0171B010CBSMsg1List.CD_DIV_NM)) 
				{
					childMap.put("cd_div_nm", "");
				} 
				else 
				{
					childMap.put("cd_div_nm", childTemplate.getString(EZM0171B010CBSMsg1List.CD_DIV_NM));
				}
			}
		}
		dataMap.put("EZM0171B010CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoEZM0171B010_chgkm(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}
	
	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0011B004(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0011B004CBSMsg.ECK0011B004CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0011B004CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// お客様履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0011B004CBSMsg1List.GENE_ADD_DTM));
				}

				// お客様履歴一覧照会マップ.更新年月日時分秒 ← 更新年月日時分秒
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.UPD_DTM))
				{
					childMap.put("upd_dtm", "");
				}
				else
				{
					childMap.put("upd_dtm", childTemplate.getString(ECK0011B004CBSMsg1List.UPD_DTM));
				}

				// お客様履歴一覧照会マップ.ｅｏＩＤ ← ｅｏＩＤ
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.EOID))
				{
					childMap.put("eoid", "");
				}
				else
				{
					childMap.put("eoid", childTemplate.getString(ECK0011B004CBSMsg1List.EOID));
				}

				// お客様履歴一覧照会マップ.組織名 ← 組織名
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.ORG_NM))
				{
					childMap.put("org_nm", "");
				}
				else
				{
					childMap.put("org_nm", childTemplate.getString(ECK0011B004CBSMsg1List.ORG_NM));
				}

				// お客様履歴一覧照会マップ.ユーザー名 ← ユーザー名
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.USER_NM))
				{
					childMap.put("user_nm", "");
				}
				else
				{
					childMap.put("user_nm", childTemplate.getString(ECK0011B004CBSMsg1List.USER_NM));
				}

				// お客様履歴一覧照会マップ.会員種別コード ← 会員種別コード
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.MEMBER_SBT_CD))
				{
					childMap.put("member_sbt_cd", "");
				}
				else
				{
					childMap.put("member_sbt_cd", childTemplate.getString(ECK0011B004CBSMsg1List.MEMBER_SBT_CD));
				}

				// お客様履歴一覧照会マップ.会員種別コードの名称 ← 会員種別コードの名称
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.MEMBER_SBT_CD_NM))
				{
					childMap.put("member_sbt_cd_nm", "");
				}
				else
				{
					childMap.put("member_sbt_cd_nm", childTemplate.getString(ECK0011B004CBSMsg1List.MEMBER_SBT_CD_NM));
				}

				// お客様履歴一覧照会マップ.契約者電話番号 ← 契約者電話番号
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.KEISHA_TELNO))
				{
					childMap.put("keisha_telno", "");
				}
				else
				{
					childMap.put("keisha_telno", childTemplate.getString(ECK0011B004CBSMsg1List.KEISHA_TELNO));
				}

				// お客様履歴一覧照会マップ.コンテンツお客様名 ← コンテンツお客様名
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_CUST_NM))
				{
					childMap.put("cont_cust_nm", "");
				}
				else
				{
					childMap.put("cont_cust_nm", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_CUST_NM));
				}

				// お客様履歴一覧照会マップ.コンテンツお客様カナ名 ← コンテンツお客様カナ名
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_CUST_KANA))
				{
					childMap.put("cont_cust_kana", "");
				}
				else
				{
					childMap.put("cont_cust_kana", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_CUST_KANA));
				}

				// お客様履歴一覧照会マップ.コンテンツお客様生年月日 ← コンテンツお客様生年月日
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_CUST_BIRTHD))
				{
					childMap.put("cont_cust_birthd", "");
				}
				else
				{
					childMap.put("cont_cust_birthd", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_CUST_BIRTHD));
				}

				// お客様履歴一覧照会マップ.コンテンツ郵便番号 ← コンテンツ郵便番号
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_PCD))
				{
					childMap.put("cont_pcd", "");
				}
				else
				{
					childMap.put("cont_pcd", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_PCD));
				}

				// お客様履歴一覧照会マップ.コンテンツ都道府県名 ← コンテンツ都道府県名
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_STATE_NM))
				{
					childMap.put("cont_state_nm", "");
				}
				else
				{
					childMap.put("cont_state_nm", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_STATE_NM));
				}

				// お客様履歴一覧照会マップ.コンテンツ市区町村名 ← コンテンツ市区町村名
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_CITY_NM))
				{
					childMap.put("cont_city_nm", "");
				}
				else
				{
					childMap.put("cont_city_nm", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_CITY_NM));
				}

				// お客様履歴一覧照会マップ.コンテンツ大字通称名 ← コンテンツ大字通称名
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_OAZTSU_NM))
				{
					childMap.put("cont_oaztsu_nm", "");
				}
				else
				{
					childMap.put("cont_oaztsu_nm", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_OAZTSU_NM));
				}

				// お客様履歴一覧照会マップ.コンテンツ字丁目名 ← コンテンツ字丁目名
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_AZCHO_NM))
				{
					childMap.put("cont_azcho_nm", "");
				}
				else
				{
					childMap.put("cont_azcho_nm", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_AZCHO_NM));
				}

				// お客様履歴一覧照会マップ.コンテンツ番地号 ← コンテンツ番地号
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_BNCHIGO))
				{
					childMap.put("cont_bnchigo", "");
				}
				else
				{
					childMap.put("cont_bnchigo", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_BNCHIGO));
				}

				// お客様履歴一覧照会マップ.コンテンツ住所補記・建物名 ← コンテンツ住所補記・建物名
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_ADRTTM))
				{
					childMap.put("cont_adrttm", "");
				}
				else
				{
					childMap.put("cont_adrttm", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_ADRTTM));
				}

				// お客様履歴一覧照会マップ.コンテンツ住所補記・部屋番号 ← コンテンツ住所補記・部屋番号
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_ADRRM))
				{
					childMap.put("cont_adrrm", "");
				}
				else
				{
					childMap.put("cont_adrrm", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_ADRRM));
				}

				// お客様履歴一覧照会マップ.ニックネーム ← ニックネーム
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.NKNAME))
				{
					childMap.put("nkname", "");
				}
				else
				{
					childMap.put("nkname", childTemplate.getString(ECK0011B004CBSMsg1List.NKNAME));
				}

				// お客様履歴一覧照会マップ.パスワードリマインダ用質問コード ← パスワードリマインダ用質問コード
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.PWD_REMINDER_QS_CD))
				{
					childMap.put("pwd_reminder_qs_cd", "");
				}
				else
				{
					childMap.put("pwd_reminder_qs_cd", childTemplate.getString(ECK0011B004CBSMsg1List.PWD_REMINDER_QS_CD));
				}

				// お客様履歴一覧照会マップ.パスワードリマインダ用質問コードの名称 ← パスワードリマインダ用質問コードの名称
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.PWD_REMINDER_QS_CD_NM))
				{
					childMap.put("pwd_reminder_qs_cd_nm", "");
				}
				else
				{
					childMap.put("pwd_reminder_qs_cd_nm", childTemplate.getString(ECK0011B004CBSMsg1List.PWD_REMINDER_QS_CD_NM));
				}

				// お客様履歴一覧照会マップ.パスワードリマインダ用回答 ← パスワードリマインダ用回答
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.PWD_REMINDER_ANS))
				{
					childMap.put("pwd_reminder_ans", "");
				}
				else
				{
					childMap.put("pwd_reminder_ans", childTemplate.getString(ECK0011B004CBSMsg1List.PWD_REMINDER_ANS));
				}

				// お客様履歴一覧照会マップ.ログイン認証可否 ← ログイン認証可否
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.LOGIN_NINSHO_KH))
				{
					childMap.put("login_ninsho_kh", "");
				}
				else
				{
					childMap.put("login_ninsho_kh", childTemplate.getString(ECK0011B004CBSMsg1List.LOGIN_NINSHO_KH));
				}

				// お客様履歴一覧照会マップ.ログイン認証可否の名称 ← ログイン認証可否の名称
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.LOGIN_NINSHO_KH_NM))
				{
					childMap.put("login_ninsho_kh_nm", "");
				}
				else
				{
					childMap.put("login_ninsho_kh_nm", childTemplate.getString(ECK0011B004CBSMsg1List.LOGIN_NINSHO_KH_NM));
				}

				// お客様履歴一覧照会マップ.会員種別特定フラグ ← 会員種別特定フラグ
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.MMB_SBT_TOKUT_FLG))
				{
					childMap.put("mmb_sbt_tokut_flg", "");
				}
				else
				{
					childMap.put("mmb_sbt_tokut_flg", childTemplate.getString(ECK0011B004CBSMsg1List.MMB_SBT_TOKUT_FLG));
				}

				// お客様履歴一覧照会マップ.会員種別特定フラグの名称 ← 会員種別特定フラグの名称
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.MMB_SBT_TOKUT_FLG_NM))
				{
					childMap.put("mmb_sbt_tokut_flg_nm", "");
				}
				else
				{
					childMap.put("mmb_sbt_tokut_flg_nm", childTemplate.getString(ECK0011B004CBSMsg1List.MMB_SBT_TOKUT_FLG_NM));
				}

				// お客様履歴一覧照会マップ.初期ｅｏＩＤ ← 初期ｅｏＩＤ
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.SHK_EOID))
				{
					childMap.put("shk_eoid", "");
				}
				else
				{
					childMap.put("shk_eoid", childTemplate.getString(ECK0011B004CBSMsg1List.SHK_EOID));
				}

				// お客様履歴一覧照会マップ.初期ｅｏＩＤパスワード ← 初期ｅｏＩＤパスワード
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.SHK_EOID_PWD))
				{
					childMap.put("shk_eoid_pwd", "");
				}
				else
				{
					childMap.put("shk_eoid_pwd", childTemplate.getString(ECK0011B004CBSMsg1List.SHK_EOID_PWD));
				}

				// お客様履歴一覧照会マップ.お客様退会年月日 ← お客様退会年月日
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CUST_TAIKAI_YMD))
				{
					childMap.put("cust_taikai_ymd", "");
				}
				else
				{
					childMap.put("cust_taikai_ymd", childTemplate.getString(ECK0011B004CBSMsg1List.CUST_TAIKAI_YMD));
				}

				// お客様履歴一覧照会マップ.お客様退会理由コード ← お客様退会理由コード
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CUST_TAIKAI_RSN_CD))
				{
					childMap.put("cust_taikai_rsn_cd", "");
				}
				else
				{
					childMap.put("cust_taikai_rsn_cd", childTemplate.getString(ECK0011B004CBSMsg1List.CUST_TAIKAI_RSN_CD));
				}

				// お客様履歴一覧照会マップ.お客様退会理由コードの名称 ← お客様退会理由コードの名称
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CUST_TAIKAI_RSN_CD_NM))
				{
					childMap.put("cust_taikai_rsn_cd_nm", "");
				}
				else
				{
					childMap.put("cust_taikai_rsn_cd_nm", childTemplate.getString(ECK0011B004CBSMsg1List.CUST_TAIKAI_RSN_CD_NM));
				}

				// お客様履歴一覧照会マップ.名寄せ先ＳＹＳＩＤ ← 名寄せ先ＳＹＳＩＤ
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.NAYOSE_SAKI_SYSID))
				{
					childMap.put("nayose_saki_sysid", "");
				}
				else
				{
					childMap.put("nayose_saki_sysid", childTemplate.getString(ECK0011B004CBSMsg1List.NAYOSE_SAKI_SYSID));
				}
				
				// 2012/12/25 [TAI-2012-0000091]暫定ロジック修正対応 ADD START
				// お客様履歴一覧照会マップ.コンテンツお客様性別コード ← コンテンツお客様性別コード
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_CUST_SEX_CD))
				{
					childMap.put("cont_cust_sex_cd", "");
				}
				else
				{
					childMap.put("cont_cust_sex_cd", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_CUST_SEX_CD));
				}
				
				// お客様履歴一覧照会マップ.コンテンツISP利用不可フラグ ← コンテンツISP利用不可フラグ
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_ISP_USE_FAIL_FLG))
				{
					childMap.put("cont_isp_use_fail_flg", "");
				}
				else
				{
					childMap.put("cont_isp_use_fail_flg", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_ISP_USE_FAIL_FLG));
				}
				
				// お客様履歴一覧照会マップ.コンテンツISP利用不可フラグ名称 ← コンテンツISP利用不可フラグ名称
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.CONT_ISP_USE_FAIL_FLG_NM))
				{
					childMap.put("cont_isp_use_fail_flg_nm", "");
				}
				else
				{
					childMap.put("cont_isp_use_fail_flg_nm", childTemplate.getString(ECK0011B004CBSMsg1List.CONT_ISP_USE_FAIL_FLG_NM));
				}
				
// v5.00 2013/03/08 OT-2013-0000308 ADD START
				// お客様履歴一覧照会マップ.eoID関連情報変更識別コード ← eoID関連情報変更識別コード
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.EOID_KNRN_INF_CHG_SKCD))
				{
					childMap.put("eoid_knrn_inf_chg_skcd", "");
				}
				else
				{
					childMap.put("eoid_knrn_inf_chg_skcd", childTemplate.getString(ECK0011B004CBSMsg1List.EOID_KNRN_INF_CHG_SKCD));
				}
				
				// お客様履歴一覧照会マップ.eoID関連情報変更年月日時分秒 ← eoID関連情報変更年月日時分秒
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.EOID_KNRN_INF_CHG_DTM))
				{
					childMap.put("eoid_knrn_inf_chg_dtm", "");
				}
				else
				{
					childMap.put("eoid_knrn_inf_chg_dtm", childTemplate.getString(ECK0011B004CBSMsg1List.EOID_KNRN_INF_CHG_DTM));
				}
// v5.00 2013/03/08 OT-2013-0000308 ADD END
				// 2012/12/25 [TAI-2012-0000091]暫定ロジック修正対応 ADD END
// v5.03 2013/04/23 IKK-2013-0000989 ADD START
				// お客様履歴一覧照会マップ.登録オペレータアカウント ← 登録オペレータアカウント
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.ADD_OPEACNT))
				{
					childMap.put("add_opeacnt", "");
				}
				else
				{
					childMap.put("add_opeacnt", childTemplate.getString(ECK0011B004CBSMsg1List.ADD_OPEACNT));
				}
// v5.03 2013/04/23 IKK-2013-0000989 ADD END
			}
		}
		dataMap.put("ECK0011B004CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfo(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}
	
	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0011B004_chgdat(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0011B004CBSMsg.ECK0011B004CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0011B004CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// お客様履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0011B004CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0011B004CBSMsg1List.GENE_ADD_DTM));
				}

			}
		}
		dataMap.put("ECK0011B004CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoECK0011B004_chdat(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}
	
	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0201B003(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0201B003CBSMsg.ECK0201B003CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0201B003CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// 連絡先履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0201B003CBSMsg1List.GENE_ADD_DTM));
				}

				// 連絡先履歴一覧照会マップ.ｅｏＩＤ ← ｅｏＩＤ
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.EOID))
				{
					childMap.put("eoid", "");
				}
				else
				{
					childMap.put("eoid", childTemplate.getString(ECK0201B003CBSMsg1List.EOID));
				}

				// 連絡先履歴一覧照会マップ.メールアドレス ← メールアドレス
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.MLAD))
				{
					childMap.put("mlad", "");
				}
				else
				{
					childMap.put("mlad", childTemplate.getString(ECK0201B003CBSMsg1List.MLAD));
				}

				// 連絡先履歴一覧照会マップ.更新年月日時分秒 ← 更新年月日時分秒
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.UPD_DTM))
				{
					childMap.put("upd_dtm", "");
				}
				else
				{
					childMap.put("upd_dtm", childTemplate.getString(ECK0201B003CBSMsg1List.UPD_DTM));
				}

				// 連絡先履歴一覧照会マップ.組織名 ← 組織名
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.ORG_NM))
				{
					childMap.put("org_nm", "");
				}
				else
				{
					childMap.put("org_nm", childTemplate.getString(ECK0201B003CBSMsg1List.ORG_NM));
				}

				// 連絡先履歴一覧照会マップ.ユーザー名 ← ユーザー名
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.USER_NM))
				{
					childMap.put("user_nm", "");
				}
				else
				{
					childMap.put("user_nm", childTemplate.getString(ECK0201B003CBSMsg1List.USER_NM));
				}
// v5.02 2013/04/21 IKK-2013-0000874 START ADD
				// 連絡先履歴一覧照会マップ.メールアドレス変更年月日 ← メールアドレス変更年月日
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.MLAD_CHGE_YMD))
				{
					childMap.put("mlad_chge_ymd", "");
				}
				else
				{
					childMap.put("mlad_chge_ymd", childTemplate.getString(ECK0201B003CBSMsg1List.MLAD_CHGE_YMD));
				}
// v5.02 2013/04/21 IKK-2013-0000874 START END
// v5.03 2013/04/23 IKK-2013-0000989 ADD START
				// 連絡先履歴一覧照会マップ.登録オペレータアカウント ← 登録オペレータアカウント
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.ADD_OPEACNT))
				{
					childMap.put("add_opeacnt", "");
				}
				else
				{
					childMap.put("add_opeacnt", childTemplate.getString(ECK0201B003CBSMsg1List.ADD_OPEACNT));
				}
// v5.03 2013/04/23 IKK-2013-0000989 ADD END
				
// 2013.11.05 OM-2013-0003448 add start
				// 連絡先履歴一覧照会マップ.連絡方法コード ← 連絡方法コード
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.RRK_WAY_CD))
				{
					childMap.put("rrk_way_cd", "");
				}
				else
				{
					childMap.put("rrk_way_cd", childTemplate.getString(ECK0201B003CBSMsg1List.RRK_WAY_CD));
				}
// 2013.11.05 OM-2013-0003448 add end
				
			}
		}

// 2013.11.05 OM-2013-0003448 add start
		dataList = delSinkokuAddRec(dataList);
// 2013.11.05 OM-2013-0003448 add end
		
		dataMap.put("ECK0201B003CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoECK0201B003(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}
	
	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0201B003_chgdat(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0201B003CBSMsg.ECK0201B003CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0201B003CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// 連絡先履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0201B003CBSMsg1List.GENE_ADD_DTM));
				}

// 2013.11.05 OM-2013-0003448 add start
				// 連絡先履歴一覧照会マップ.連絡方法コード ← 連絡方法コード
				if (childTemplate.isNull(ECK0201B003CBSMsg1List.RRK_WAY_CD))
				{
					childMap.put("rrk_way_cd", "");
				}
				else
				{
					childMap.put("rrk_way_cd", childTemplate.getString(ECK0201B003CBSMsg1List.RRK_WAY_CD));
				}
// 2013.11.05 OM-2013-0003448 add end

			}
		}
		
// 2013.11.05 OM-2013-0003448 add start
		dataList = delSinkokuAddRec(dataList);
// 2013.11.05 OM-2013-0003448 add end

		dataMap.put("ECK0201B003CBSMsg1List", dataList);	

		
        // エラー情報の設定
		param = editErrorInfoECK0201B003_chdat(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}

	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0111B060(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0111B060CBSMsg.ECK0111B060CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0111B060CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// グループ履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0111B060CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0111B060CBSMsg1List.GENE_ADD_DTM));
				}

				// グループ履歴一覧照会マップ.グループ入会コード ← グループ入会コード
				if (childTemplate.isNull(ECK0111B060CBSMsg1List.GRP_JOIN_CD))
				{
					childMap.put("grp_join_cd", "");
				}
				else
				{
					childMap.put("grp_join_cd", childTemplate.getString(ECK0111B060CBSMsg1List.GRP_JOIN_CD));
				}

				// グループ履歴一覧照会マップ.グループ入会コードパスワード ← グループ入会コードパスワード
				if (childTemplate.isNull(ECK0111B060CBSMsg1List.GRP_JOIN_CD_PWD))
				{
					childMap.put("grp_join_cd_pwd", "");
				}
				else
				{
					childMap.put("grp_join_cd_pwd", childTemplate.getString(ECK0111B060CBSMsg1List.GRP_JOIN_CD_PWD));
				}

				// グループ履歴一覧照会マップ.更新年月日時分秒 ← 更新年月日時分秒
				if (childTemplate.isNull(ECK0111B060CBSMsg1List.UPD_DTM))
				{
					childMap.put("upd_dtm", "");
				}
				else
				{
					childMap.put("upd_dtm", childTemplate.getString(ECK0111B060CBSMsg1List.UPD_DTM));
				}

				// グループ履歴一覧照会マップ.組織名 ← 組織名
				if (childTemplate.isNull(ECK0111B060CBSMsg1List.ORG_NM))
				{
					childMap.put("org_nm", "");
				}
				else
				{
					childMap.put("org_nm", childTemplate.getString(ECK0111B060CBSMsg1List.ORG_NM));
				}

				// グループ履歴一覧照会マップ.ユーザー名 ← ユーザー名
				if (childTemplate.isNull(ECK0111B060CBSMsg1List.USER_NM))
				{
					childMap.put("user_nm", "");
				}
				else
				{
					childMap.put("user_nm", childTemplate.getString(ECK0111B060CBSMsg1List.USER_NM));
				}

				// グループ履歴一覧照会マップ.ｅｏＩＤ ← ｅｏＩＤ
				if (childTemplate.isNull(ECK0111B060CBSMsg1List.EOID))
				{
					childMap.put("eoID", "");
				}
				else
				{
					childMap.put("eoID", childTemplate.getString(ECK0111B060CBSMsg1List.EOID));
				}
// v5.03 2013/04/23 IKK-2013-0000989 ADD START
				// グループ履歴一覧照会マップ.登録オペレータアカウント ← 登録オペレータアカウント
				if (childTemplate.isNull(ECK0111B060CBSMsg1List.ADD_OPEACNT))
				{
					childMap.put("add_opeacnt", "");
				}
				else
				{
					childMap.put("add_opeacnt", childTemplate.getString(ECK0111B060CBSMsg1List.ADD_OPEACNT));
				}
// v5.03 2013/04/23 IKK-2013-0000989 ADD END
				
			}
		}
		dataMap.put("ECK0111B060CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoECK0111B060(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}
	
	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0111B060_chgdat(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0111B060CBSMsg.ECK0111B060CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0111B060CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// グループ履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0111B060CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0111B060CBSMsg1List.GENE_ADD_DTM));
				}

			}
		}
		dataMap.put("ECK0111B060CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoECK0111B060_chdat(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}
	
	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0121B003(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0121B003CBSMsg.ECK0121B003CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0121B003CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// お客様グループ設定履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0121B003CBSMsg1List.GENE_ADD_DTM));
				}

				// お客様グループ設定履歴一覧照会マップ.ｅｏＩＤ ← ｅｏＩＤ
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.EOID))
				{
					childMap.put("eoid", "");
				}
				else
				{
					childMap.put("eoid", childTemplate.getString(ECK0121B003CBSMsg1List.EOID));
				}

				// お客様グループ設定履歴一覧照会マップ.ＳＹＳＩＤ ← ＳＹＳＩＤ
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.SYSID))
				{
					childMap.put("sysid", "");
				}
				else
				{
					childMap.put("sysid", childTemplate.getString(ECK0121B003CBSMsg1List.SYSID));
				}

				// お客様グループ設定履歴一覧照会マップ.登録年月日時分秒 ← 登録年月日時分秒
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.ADD_DTM))
				{
					childMap.put("add_dtm", "");
				}
				else
				{
					childMap.put("add_dtm", childTemplate.getString(ECK0121B003CBSMsg1List.ADD_DTM));
				}

				// お客様グループ設定履歴一覧照会マップ.お客様グループ設定回復年月日 ← お客様グループ設定回復年月日
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.CUST_GRP_SETTE_KAIHK_YMD))
				{
					childMap.put("cust_grp_sette_kaihk_ymd", "");
				}
				else
				{
					childMap.put("cust_grp_sette_kaihk_ymd", childTemplate.getString(ECK0121B003CBSMsg1List.CUST_GRP_SETTE_KAIHK_YMD));
				}

				// お客様グループ設定履歴一覧照会マップ.お客様グループ設定無効年月日 ← お客様グループ設定無効年月日
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.CUST_GRP_SETTE_MK_YMD))
				{
					childMap.put("cust_grp_sette_mk_ymd", "");
				}
				else
				{
					childMap.put("cust_grp_sette_mk_ymd", childTemplate.getString(ECK0121B003CBSMsg1List.CUST_GRP_SETTE_MK_YMD));
				}

				// お客様グループ設定履歴一覧照会マップ.組織名 ← 組織名
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.ORG_NM))
				{
					childMap.put("org_nm", "");
				}
				else
				{
					childMap.put("org_nm", childTemplate.getString(ECK0121B003CBSMsg1List.ORG_NM));
				}

				// お客様グループ設定履歴一覧照会マップ.ユーザー名 ← ユーザー名
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.USER_NM))
				{
					childMap.put("user_nm", "");
				}
				else
				{
					childMap.put("user_nm", childTemplate.getString(ECK0121B003CBSMsg1List.USER_NM));
				}

				// お客様グループ設定履歴一覧照会マップ.更新年月日時分秒 ← 更新年月日時分秒
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.UPD_DTM))
				{
					childMap.put("upd_dtm", "");
				}
				else
				{
					childMap.put("upd_dtm", childTemplate.getString(ECK0121B003CBSMsg1List.UPD_DTM));
				}
				
// v5.03 2013/04/23 IKK-2013-0000989 ADD START
				// お客様グループ設定履歴一覧照会マップ.登録オペレータアカウント ← 登録オペレータアカウント
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.ADD_OPEACNT))
				{
					childMap.put("add_opeacnt", "");
				}
				else
				{
					childMap.put("add_opeacnt", childTemplate.getString(ECK0121B003CBSMsg1List.ADD_OPEACNT));
				}
// v5.03 2013/04/23 IKK-2013-0000989 ADD END
			}
		}
		dataMap.put("ECK0121B003CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoECK0121B003(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}
	
	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0121B003_chgdat(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0121B003CBSMsg.ECK0121B003CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0121B003CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// お客様グループ設定履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0121B003CBSMsg1List.GENE_ADD_DTM));
				}
				// お客様グループ設定履歴一覧照会マップ.ＳＹＳＩＤ ← ＳＹＳＩＤ
				if (childTemplate.isNull(ECK0121B003CBSMsg1List.SYSID))
				{
					childMap.put("sysid", "");
				}
				else
				{
					childMap.put("sysid", childTemplate.getString(ECK0121B003CBSMsg1List.SYSID));
				}
			}
		}
		dataMap.put("ECK0121B003CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoECK0121B003_chdat(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}

	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPEKK0151B010(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(EKK0151B010CBSMsg.EKK0151B010CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("EKK0151B010CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// サービス契約＜ホスティング＞履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(EKK0151B010CBSMsg1List.GENE_ADD_DTM));
				}

				// サービス契約＜ホスティング＞履歴一覧照会マップ.ｅｏＩＤ ← ｅｏＩＤ
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.EOID))
				{
					childMap.put("eoid", "");
				}
				else
				{
					childMap.put("eoid", childTemplate.getString(EKK0151B010CBSMsg1List.EOID));
				}

				// サービス契約＜ホスティング＞履歴一覧照会マップ.登録年月日時分秒 ← 登録年月日時分秒
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.ADD_DTM))
				{
					childMap.put("add_dtm", "");
				}
				else
				{
					childMap.put("add_dtm", childTemplate.getString(EKK0151B010CBSMsg1List.ADD_DTM));
				}

				// サービス契約＜ホスティング＞履歴一覧照会マップ.削除年月日時分秒 ← 削除年月日時分秒
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.DEL_DTM))
				{
					childMap.put("del_dtm", "");
				}
				else
				{
					childMap.put("del_dtm", childTemplate.getString(EKK0151B010CBSMsg1List.DEL_DTM));
				}

				// サービス契約＜ホスティング＞履歴一覧照会マップ.組織名 ← 組織名
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.ORG_NM))
				{
					childMap.put("org_nm", "");
				}
				else
				{
					childMap.put("org_nm", childTemplate.getString(EKK0151B010CBSMsg1List.ORG_NM));
				}

				// サービス契約＜ホスティング＞履歴一覧照会マップ.登録ユーザー名 ← 登録ユーザー名
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.ADD_USER_NM))
				{
					childMap.put("add_user_nm", "");
				}
				else
				{
					childMap.put("add_user_nm", childTemplate.getString(EKK0151B010CBSMsg1List.ADD_USER_NM));
				}

				// サービス契約＜ホスティング＞履歴一覧照会マップ.削除ユーザー名 ← 削除ユーザー名
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.DEL_USER_NM))
				{
					childMap.put("del_user_nm", "");
				}
				else
				{
					childMap.put("del_user_nm", childTemplate.getString(EKK0151B010CBSMsg1List.DEL_USER_NM));
				}

				// サービス契約＜ホスティング＞履歴一覧照会マップ.更新年月日時分秒 ← 更新年月日時分秒
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.UPD_DTM))
				{
					childMap.put("upd_dtm", "");
				}
				else
				{
					childMap.put("upd_dtm", childTemplate.getString(EKK0151B010CBSMsg1List.UPD_DTM));
				}

				// サービス契約＜ホスティング＞履歴一覧照会マップ.サービス契約ステータス ← サービス契約ステータス
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.SVC_KEI_STAT))
				{
					childMap.put("svc_kei_stat", "");
				}
				else
				{
					childMap.put("svc_kei_stat", childTemplate.getString(EKK0151B010CBSMsg1List.SVC_KEI_STAT));
				}
				
// v5.03 2013/04/23 IKK-2013-0000989 ADD START
				// サービス契約＜ホスティング＞履歴一覧照会マップ.登録オペレータアカウント ← 登録オペレータアカウント
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.ADD_OPEACNT))
				{
					childMap.put("add_opeacnt", "");
				}
				else
				{
					childMap.put("add_opeacnt", childTemplate.getString(EKK0151B010CBSMsg1List.ADD_OPEACNT));
				}
// v5.03 2013/04/23 IKK-2013-0000989 ADD END
			}
		}
		dataMap.put("EKK0151B010CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoEKK0151B010_chdat(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}

	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPEKK0151B010_chgdat(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(EKK0151B010CBSMsg.EKK0151B010CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("EKK0151B010CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// サービス契約＜ホスティング＞履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(EKK0151B010CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(EKK0151B010CBSMsg1List.GENE_ADD_DTM));
				}
			}
		}
		dataMap.put("EKK0151B010CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoEKK0151B010_chdat(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}

	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0141B030(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;
	
		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0141B030CBSMsg.ECK0141B030CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0141B030CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}
	
		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// オプトインメール受信設定履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0141B030CBSMsg1List.GENE_ADD_DTM));
				}
	
				// オプトインメール受信設定履歴一覧照会マップ.メールアドレス ← メールアドレス
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.MLAD))
				{
					childMap.put("mlad", "");
				}
				else
				{
					childMap.put("mlad", childTemplate.getString(ECK0141B030CBSMsg1List.MLAD));
				}
	
				// オプトインメール受信設定履歴一覧照会マップ.受信区分 ← 受信区分
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.RCV_DIV))
				{
					childMap.put("rcv_div", "");
				}
				else
				{
					childMap.put("rcv_div", childTemplate.getString(ECK0141B030CBSMsg1List.RCV_DIV));
				}
	
				// オプトインメール受信設定履歴一覧照会マップ.オプトインメール名 ← オプトインメール名
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.OPTINM_NM))
				{
					childMap.put("optinm_nm", "");
				}
				else
				{
					childMap.put("optinm_nm", childTemplate.getString(ECK0141B030CBSMsg1List.OPTINM_NM));
				}
	
				// オプトインメール受信設定履歴一覧照会マップ.組織名 ← 組織名
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.ORG_NM))
				{
					childMap.put("org_nm", "");
				}
				else
				{
					childMap.put("org_nm", childTemplate.getString(ECK0141B030CBSMsg1List.ORG_NM));
				}
	
				// オプトインメール受信設定履歴一覧照会マップ.ユーザー名 ← ユーザー名
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.USER_NM))
				{
					childMap.put("user_nm", "");
				}
				else
				{
					childMap.put("user_nm", childTemplate.getString(ECK0141B030CBSMsg1List.USER_NM));
				}
				
				// オプトインメール受信設定履歴一覧照会マップ.ｅｏＩＤ ← ｅｏＩＤ
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.EOID))
				{
					childMap.put("eoid", "");
				}
				else
				{
					childMap.put("eoid", childTemplate.getString(ECK0141B030CBSMsg1List.EOID));
				}
				
				// オプトインメール受信設定履歴一覧照会マップ.登録年月日時分秒 ← 登録年月日時分秒
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.ADD_DTM))
				{
					childMap.put("add_dtm", "");
				}
				else
				{
					childMap.put("add_dtm", childTemplate.getString(ECK0141B030CBSMsg1List.ADD_DTM));
				}
				
				// オプトインメール受信設定履歴一覧照会マップ.更新年月日時分秒 ← 更新年月日時分秒
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.UPD_DTM))
				{
					childMap.put("upd_dtm", "");
				}
				else
				{
					childMap.put("upd_dtm", childTemplate.getString(ECK0141B030CBSMsg1List.UPD_DTM));
				}
				
// v5.03 2013/04/23 IKK-2013-0000989 ADD START
				// オプトインメール受信設定履歴一覧照会マップ.登録オペレータアカウント ← 登録オペレータアカウント
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.ADD_OPEACNT))
				{
					childMap.put("add_opeacnt", "");
				}
				else
				{
					childMap.put("add_opeacnt", childTemplate.getString(ECK0141B030CBSMsg1List.ADD_OPEACNT));
				}
// v5.03 2013/04/23 IKK-2013-0000989 ADD END
				
			}
		}
		dataMap.put("ECK0141B030CBSMsg1List", dataList);
	
		
	    // エラー情報の設定
		param = editErrorInfoECK0141B030(param, templates, (Integer)return_code, fixedText);
	
		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);
	
		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}

	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return サービスコンポーネント実行用CAANMsg
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> editResultRPECK0141B030_chgdat(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object return_code = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = new HashMap();
		ArrayList dataList = null;
		
		templateArray = parentTemplate.getCAANMsgList(ECK0141B030CBSMsg.ECK0141B030CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get("ECK0141B030CBSMsg1List");
		
		if (dataList == null) 
		{
			dataList = new ArrayList();
		}

		if (templateArray != null) 
		{
			for (int i = 0; i < templateArray.length; i++) 
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size()) 
				{
					dataList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				
				// オプトインメール受信設定履歴一覧照会マップ.世代登録年月日時分秒 ← 世代登録年月日時分秒
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.GENE_ADD_DTM))
				{
					childMap.put("gene_add_dtm", "");
				}
				else
				{
					childMap.put("gene_add_dtm", childTemplate.getString(ECK0141B030CBSMsg1List.GENE_ADD_DTM));
				}

				// オプトインメール受信設定履歴一覧照会マップ.メールアドレス ← メールアドレス
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.MLAD))
				{
					childMap.put("mlad", "");
				}
				else
				{
					childMap.put("mlad", childTemplate.getString(ECK0141B030CBSMsg1List.MLAD));
				}
	
				// オプトインメール受信設定履歴一覧照会マップ.オプトインメール名 ← オプトインメール名
				if (childTemplate.isNull(ECK0141B030CBSMsg1List.OPTINM_NM))
				{
					childMap.put("optinm_nm", "");
				}
				else
				{
					childMap.put("optinm_nm", childTemplate.getString(ECK0141B030CBSMsg1List.OPTINM_NM));
				}
	
			}
		}
		dataMap.put("ECK0141B030CBSMsg1List", dataList);

		
        // エラー情報の設定
		param = editErrorInfoECK0141B030_chdat(param, templates, (Integer)return_code, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if(errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));
		
		/* ◇処理結果の判定 */
		// 取得したリターンコード、ステータスの内容を見て異常かどうかの判断をする。
		String rtnCode = return_code.toString();
		int status = parentTemplate.getInt(JCMConstants.STATUS_INT_KEY);

		// 異常の場合、SCCallExceptionを生成してスローする
		if(!("0".equals(rtnCode) && 0 == status))
		{
			SCCallException scCallEx = new SCCallException("戻り値不正", rtnCode, status);
			throw scCallEx;
		}
		
		return dataMap;	
	}

	/**
	 * IRequestParameterReadWriteに必要なデータをマッピングします。<br>
	 * <br>
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editResultRP(IRequestParameterReadWrite param, String fixedText)
	throws Exception
	{
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = null;

		/* 業務データ設定 */
		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}
		
		ArrayList dataList = (ArrayList)dataMap.get("eoid_chrrk_list");
		
		// eoID変更履歴リストがない、または0件
		if(dataList == null || dataList.size() == 0)
		{
			dataMap.put("total_search_num", "0");
			dataMap.put("total_page_num", "0");
			dataMap.put("search_err_flg", JPCModelConstant.SEARCH_ERR_FLG_ZERO);
			
			return param;
		}
		
		// 変更日時の修正
		for(int i = 0; i < dataList.size(); i++)
		{
			HashMap childMap = (HashMap)dataList.get(i);
			
			String chg_ymd = (String)childMap.get("chg_ymd");
			
			if(chg_ymd.length() == 17)
			{
				String edit_chg_ymd = chg_ymd.substring(0, 4) + "/";
				edit_chg_ymd = edit_chg_ymd + chg_ymd.substring(4, 6) + "/";
				edit_chg_ymd = edit_chg_ymd +  chg_ymd.substring(6, 8) + " ";
				edit_chg_ymd = edit_chg_ymd +  chg_ymd.substring(8, 10) + ":";
				edit_chg_ymd = edit_chg_ymd +  chg_ymd.substring(10, 12);
				childMap.put("chg_ymd", edit_chg_ymd);
			}
		}
		
		// 最大検索件数が設定されていない場合
		if(dataMap.get("max_search_num") == null || "".equals(dataMap.get("max_search_num")))
		{
			// 検索エラーフラグはエラーなしを設定
			dataMap.put("search_err_flg", "0");
		}
		// 最大検索件数が設定されている場合
		else
		{
			// 最大検索件数
			int max_search_num = Integer.parseInt((String)dataMap.get("max_search_num"));
			// eoID変更履歴リストの件数が最大検索件数を超えている場合
			if(dataList.size() > max_search_num)
			{
				// 検索エラーフラグに最大検索件数超えを設定
				dataMap.put("search_err_flg", JPCModelConstant.SEARCH_ERR_FLG_OVERMAX);
				// eoID変更履歴リストの件数が最大検索件数になるまで、最後の要素を削除する
				while(max_search_num < dataList.size())
				{
					dataList.remove(dataList.size() - 1);
				}
			}
			else
			{
				// 検索エラーフラグはエラーなしを設定
				dataMap.put("search_err_flg", "0");
			}
		}
		// 総検索件数にeoID変更履歴リストの件数を設定
		dataMap.put("total_search_num", dataList.size());
		
		// 表示件数取得
		if(dataMap.get("display_num") == null || "".equals(dataMap.get("display_num")))
		{
			dataMap.put("total_page_num", "0");
		}
		else
		{
			int page_num = Integer.parseInt((String)dataMap.get("display_num"));
			int total_page_num = dataList.size() / page_num;
			if(dataList.size() % page_num != 0)
			{
				total_page_num++;
			}
			dataMap.put("total_page_num", total_page_num);
		}
		
		return param;
	}	
	
	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoEZM0171B010_chrrk(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, EZM0171B010CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}

		// コード名称管理一覧照会マップ.コード種別コード → ＫＥＹ＿コード種別コード のエラー情報返却
		if (!template.isNull(EZM0171B010CBSMsg.KEY_CD_SBT_CD_ERR))
		{
			if (!inMap.containsKey("cd_sbt_cd_err"))
			{
				inMap.put("cd_sbt_cd_err", template.getString(EZM0171B010CBSMsg.KEY_CD_SBT_CD_ERR));
			}
		}
		return param;
	}
	
	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoEZM0171B010_chgkm(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, EZM0171B010CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}

		// コード名称管理一覧照会マップ.コード種別コード → ＫＥＹ＿コード種別コード のエラー情報返却
		if (!template.isNull(EZM0171B010CBSMsg.KEY_CD_SBT_CD_ERR))
		{
			if (!inMap.containsKey("cd_sbt_cd_err"))
			{
				inMap.put("cd_sbt_cd_err", template.getString(EZM0171B010CBSMsg.KEY_CD_SBT_CD_ERR));
			}
		}
		// お客様履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM_ERR));
			}
		}
		// お客様履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_UPD_DTM_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0011B004CBSMsg.KEY_UPD_DTM_TO_ERR));
			}
		}
		return param;
	}
	
	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoECK0011B004_chdat(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0011B004CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}

		// お客様履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0011B004CBSMsg.KEY_SYSID_ERR));
			}
		}
		// お客様履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM_ERR));
			}
		}
		// お客様履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_UPD_DTM_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0011B004CBSMsg.KEY_UPD_DTM_TO_ERR));
			}
		}

		return param;
	}
	
	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoECK0201B003(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0201B003CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// 連絡先履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0201B003CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0201B003CBSMsg.KEY_SYSID_ERR));
			}
		}
		// 連絡先履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0201B003CBSMsg.KEY_CHGE_DTM_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0201B003CBSMsg.KEY_CHGE_DTM_FROM_ERR));
			}
		}
		// 連絡先履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0201B003CBSMsg.KEY_CHGE_DTM_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0201B003CBSMsg.KEY_CHGE_DTM_TO_ERR));
			}
		}
		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoECK0201B003_chdat(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0201B003CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// 連絡先履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0201B003CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0011B004CBSMsg.KEY_SYSID_ERR));
			}
		}
		// 連絡先履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0201B003CBSMsg.KEY_CHGE_DTM_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0201B003CBSMsg.KEY_CHGE_DTM_FROM_ERR));
			}
		}
		// 連絡先履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0201B003CBSMsg.KEY_CHGE_DTM_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0201B003CBSMsg.KEY_CHGE_DTM_TO_ERR));
			}
		}
	
		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoECK0111B060(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0111B060CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// グループ履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0111B060CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0111B060CBSMsg.KEY_SYSID_ERR));
			}
		}
		// グループ履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0111B060CBSMsg.KEY_UPD_DTM_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0111B060CBSMsg.KEY_UPD_DTM_FROM_ERR));
			}
		}
		// グループ履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0111B060CBSMsg.KEY_UPD_DTM_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0111B060CBSMsg.KEY_UPD_DTM_TO_ERR));
			}
		}
		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoECK0111B060_chdat(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0111B060CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// グループ履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0011B004CBSMsg.KEY_SYSID_ERR));
			}
		}
		// グループ履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0011B004CBSMsg.KEY_UPD_DTM_FROM_ERR));
			}
		}
		// グループ履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0011B004CBSMsg.KEY_UPD_DTM_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0011B004CBSMsg.KEY_UPD_DTM_TO_ERR));
			}
		}
	
		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoECK0121B003(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0121B003CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// お客様グループ設定履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0121B003CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0121B003CBSMsg.KEY_SYSID_ERR));
			}
		}
		// お客様グループ設定履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0121B003CBSMsg.KEY_CHG_DATE_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0121B003CBSMsg.KEY_CHG_DATE_FROM_ERR));
			}
		}
		// お客様グループ設定履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0121B003CBSMsg.KEY_CHG_DATE_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0121B003CBSMsg.KEY_CHG_DATE_TO_ERR));
			}
		}
		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoECK0121B003_chdat(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0121B003CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// お客様グループ設定履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0121B003CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0121B003CBSMsg.KEY_SYSID_ERR));
			}
		}
		// お客様グループ設定履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0121B003CBSMsg.KEY_CHG_DATE_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0121B003CBSMsg.KEY_CHG_DATE_FROM_ERR));
			}
		}
		// お客様グループ設定履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0121B003CBSMsg.KEY_CHG_DATE_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0121B003CBSMsg.KEY_CHG_DATE_TO_ERR));
			}
		}
	
		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoEKK0151B010_chdat(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, EKK0151B010CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// サービス契約＜ホスティング＞履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(EKK0151B010CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(EKK0151B010CBSMsg.KEY_SYSID_ERR));
			}
		}
		// サービス契約＜ホスティング＞履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(EKK0151B010CBSMsg.KEY_CHG_DATE_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(EKK0151B010CBSMsg.KEY_CHG_DATE_FROM_ERR));
			}
		}
		// サービス契約＜ホスティング＞履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(EKK0151B010CBSMsg.KEY_CHG_DATE_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(EKK0151B010CBSMsg.KEY_CHG_DATE_TO_ERR));
			}
		}
	
		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoECK0141B030(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0141B030CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// オプトインメール受信設定履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0141B030CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0141B030CBSMsg.KEY_SYSID_ERR));
			}
		}
		// オプトインメール受信設定履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0141B030CBSMsg.KEY_CHG_DATE_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0141B030CBSMsg.KEY_CHG_DATE_FROM_ERR));
			}
		}
		// オプトインメール受信設定履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0141B030CBSMsg.KEY_CHG_DATE_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0141B030CBSMsg.KEY_CHG_DATE_TO_ERR));
			}
		}
		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *</DL>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param fixedText ユーザ定義文字列
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2012.12.06
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrorInfoECK0141B030_chdat(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String fixedText) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		// エラー共通部の設定
		setControlMap(param, templates, returnCode, ECK0141B030CBSMsg.STATUS);
		
		HashMap inMap = null;
		
		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
		if (inMap == null) 
		{
			inMap = new HashMap();
			param.setData(fixedText, inMap);
		}
	
		// オプトインメール受信設定履歴一覧照会マップ.ＳＹＳＩＤ → ＫＥＹ＿ＳＹＳＩＤ のエラー情報返却
		if (!template.isNull(ECK0141B030CBSMsg.KEY_SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(ECK0141B030CBSMsg.KEY_SYSID_ERR));
			}
		}
		// オプトインメール受信設定履歴一覧照会マップ.変更日時ＦＲＯＭ → ＫＥＹ＿変更日時ＦＲＯＭ のエラー情報返却
		if (!template.isNull(ECK0141B030CBSMsg.KEY_CHG_DATE_FROM_ERR))
		{
			if (!inMap.containsKey("chg_from_err"))
			{
				inMap.put("chg_from_err", template.getString(ECK0141B030CBSMsg.KEY_CHG_DATE_FROM_ERR));
			}
		}
		// オプトインメール受信設定履歴一覧照会マップ.変更日時ＴＯ → ＫＥＹ＿変更日時ＴＯ のエラー情報返却
		if (!template.isNull(ECK0141B030CBSMsg.KEY_CHG_DATE_TO_ERR))
		{
			if (!inMap.containsKey("chg_to_err"))
			{
				inMap.put("chg_to_err", template.getString(ECK0141B030CBSMsg.KEY_CHG_DATE_TO_ERR));
			}
		}
	
		return param;
	}

	/**
	 * エラー共通部の設定。<br>
	 * <br>
	 * @param param 業務データ取得・書込用I/F
	 * @param templates CAANMsgクラス配列
	 * @param returnCode リターンコード
	 * @param status ステータス
	 * @return 業務データ取得・書込用I/F
	 * @exception RequestParameterExceptionがスローされます。
	 * @since 2011.12.02
	 */
	private IRequestParameterReadWrite setControlMap(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, 
			String status) throws RequestParameterException 
	{
		CAANMsg template = templates[0];
		int templateStatus = template.getInt(status);
		if (returnCode != 0) 
		{
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString("RETURN_MESSAGE_" + String.format("%1$04d", templateStatus)) == null)
		{
			templateStatus = 0;
		}
		
		int bpStatus = 0;
		Object obj = param.getControlMapData(SCControlMapKeys.RETURN_CODE);
		if (obj == null) 
		{
			bpStatus = -1;
		}
		else 
		{
			bpStatus = Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
		}

		if (templateStatus > bpStatus) 
		{
			// BPにサービスコンポーネントのステータスを設定する。
			String formatStatus = String.format("%1$04d", templateStatus);
			String message = JCMAPLConstMgr.getString("RETURN_MESSAGE_" + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}	
		
		return param;
	}

	/**
	 * メッセージ共通部の設定。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param paramMap メッセージ共通部
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private void setCommonParamMap(IRequestParameterReadOnly param, HashMap<String, Object> paramMap)
	throws RequestParameterException
	{
		/* SCインプット共通データ */
		// **********************************************
		// 【取得元：電文ヘッダ(ヘッダ)】
		// **********************************************
		// 電文ID
		paramMap.put(JCMConstants.TRANZACTION_ID_KEY, param.getTelegramID());
		// ユースケースID
		paramMap.put(JCMConstants.USECASE_ID_KEY, param.getUsecaseID());
		// オペレーションID
		paramMap.put(JCMConstants.OPERATION_ID_KEY, param.getOperationID());
		// サービス呼び出し区分
		paramMap.put(JCMConstants.CALL_TYPE_KEY, param.getCallType());

		// **********************************************
		// 【取得元：ユーザエリア(コントロールマップ)】
		// **********************************************
		// 依頼先ホスト名
		paramMap.put(JCMConstants.CLIENT_HOST_NAME_KEY, param.getControlMapData(SCControlMapKeys.REQ_HOSTNAME));
		// 依頼元IPアドレス
		paramMap.put(JCMConstants.CLIENT_IP_ADDRESS_KEY, param.getControlMapData(SCControlMapKeys.REQ_HOSTIP));
		// 依頼元画面ID
		paramMap.put(JCMConstants.INVOKE_GAMEN_ID_KEY, param.getControlMapData(SCControlMapKeys.REQ_VIEWID));
		// オペレータID
		paramMap.put(JCMConstants.OPERATOR_ID_KEY, param.getControlMapData(SCControlMapKeys.OPERATOR_ID));

	}

	/**
	 * サービスインターフェイス共通部の設定。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param template サービスインターフェイス
	 * @exception RequestParameterExceptionがスローされます。
	 */
	private void setCommonTemplate(IRequestParameterReadOnly param, CAANMsg template)
	throws RequestParameterException
	{
		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

	}
	
	/**
	 * 変更項目チェック処理。<br>
	 * 入力された変更項目がチェック対象リストに含まれているかを確認する。<br>
	 * <br>
	 * @param targetList チェック対象リスト
	 * @exception RequestParameterExceptionがスローされます。
	 * @return チェック項目の有無（変更項目が未設定または該当項目があれば"true"、無ければ"false"を返す）
	 * @throws RequestParameterException 
	 */
	@SuppressWarnings("unchecked")
	private boolean chgKmkCheck(IRequestParameterReadWrite param, String fixedText, String[] targetList)
	throws RequestParameterException
	{
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)param.getData(fixedText);

		if(inMap.get("kn_chg_kmk") == null || "".equals(inMap.get("kn_chg_kmk")))
		{
			return true;
		}

		// 取得したコード名称がお客様履歴項目リストに含まれている場合、findFlgにtrueを設定。
		for (int i = 0; i < targetList.length; i++)
		{
			if(targetList[i].equals((String)inMap.get("kn_chg_kmk")))
			{
				return true;
			}
		}
		return false;
	}

	/**
	 * 変更履歴チェック処理。<br>
	 * 入力された変更履歴がチェック対象リストに含まれるかを確認する。<br>
	 * <br>
	 * @param targetList チェック対象リスト
	 * @exception RequestParameterExceptionがスローされます。
	 * @return チェック項目の有無（変更も区が未設定または該当項目があれば"true"、無ければ"false"を返す）
	 * @throws RequestParameterException 
	 */
	@SuppressWarnings("unchecked")
	private boolean cgrrkCheck(IRequestParameterReadWrite param, String fixedText, String[] targetList)
	throws RequestParameterException
	{
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)param.getData(fixedText);

		if(inMap.get("kn_chrrk") == null || "".equals(inMap.get("kn_chrrk")))
		{
			return true;
		}

		// 取得したコード名称がお客様履歴項目リストに含まれている場合、findFlgにtrueを設定。
		for (int i = 0; i < targetList.length; i++)
		{
			if(targetList[i].equals((String)inMap.get("kn_chrrk")))
			{
				return true;
			}
		}
		return false;
	}

	/**
	 * 変更日時範囲チェック処理。<br>
	 * 対象の日時が入力された変更日時の範囲内かを確認する処理<br>
	 * <br>
	 * @param inMap 入力データマップ
	 * @param targetDtm チェック対象日時
	 * @exception RequestParameterExceptionがスローされます。
	 * @return 範囲内であればtrueを、範囲外であればfalseを返す
	 * @throws RequestParameterException 
	 */
	@SuppressWarnings("unchecked")
	private boolean chgDtmChk(HashMap inMap, String targetDtm) throws RequestParameterException
	{
		// 変更日時有無フラグ が無効の場合
		if(!chg_dtmk_um_flag)
		{
			return true;
		}
		// 変更日時TO
		if (inMap != null && inMap.get("chg_to") != null && !("".equals(inMap.get("chg_to"))))
		{
			String chg_to = (String)inMap.get("chg_to");
			// 対象日時が変更日時TOより後
			if(chg_to.compareTo(targetDtm) < 0)
			{
				return false;
			}
		}
			// 変更日時FROM
		if (inMap != null && inMap.get("chg_from") != null && !("".equals(inMap.get("chg_from"))))
		{
			String chg_from = (String)inMap.get("chg_from");
			// 対象日時が変更日時FROMより前
			if(chg_from.compareTo(targetDtm) > 0)
			{
				return false;
			}
		}
		return true;
	}

	/**
	 * 対象値がリスト内に存在するかの確認処理。<br>
	 * 対象の値が指定されたリスト内に存在するかを確認する処理<br>
	 * <br>
	 * @param targetList 探索リスト
	 * @param targetValue チェック対象
	 * @exception RequestParameterExceptionがスローされます。
	 * @return チェック対象がリスト内にあればtrueを、無ければfalseを返す
	 * @throws RequestParameterException 
	 */
	@SuppressWarnings("unchecked")
	private boolean chkTargetListUm(ArrayList targetList, String targetValue) throws RequestParameterException
	{
		for(int i = 0; i < targetList.size(); i++)
		{
			if(targetValue.equals(targetList.get(i)))
			{
				return true;
			}
		}
		
		return false;
	}

	/**
	 * 連絡先履歴から指定された世代登録年月日以前で最新のレコードのメールアドレスを取得する処理。<br>
	 * <br>
	 * @param workMap 作業用マップ
	 * @param geneAddDtm 世代登録年月日時分秒
	 * @exception RequestParameterExceptionがスローされます。
	 * @return 該当するメールアドレス
	 * @throws RequestParameterException 
	 */
	@SuppressWarnings("unchecked")
	private String getCurrentRrksMlad(HashMap<String, Object> workMap, String geneAddDtm) throws RequestParameterException
	{
		// 連絡先メールアドレス
		String rrks_mlad = null;

		// 連絡先履歴一覧を取得
		HashMap eck_0201B_map = (HashMap)workMap.get("eck_0201B_map");
		
		if(eck_0201B_map != null)
		{
			ArrayList eck_0201B_list = (ArrayList)eck_0201B_map.get("ECK0201B003CBSMsg1List");
			
			for(int i = 0; i < eck_0201B_list.size(); i++)
			{
				HashMap childMap = (HashMap)eck_0201B_list.get(i);
				String rrksGeneAddDtm = (String)childMap.get("gene_add_dtm");
				if(geneAddDtm.compareTo(rrksGeneAddDtm) >= 0)
				{
					rrks_mlad = (String)childMap.get("mlad");
					break;
				}
			}
		}
		return rrks_mlad;
	}

	/**
	 * 変更履歴コードから名称を取得。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @param workMap 作業用マップ
	 * @return 変更履歴の名称
	 * @throws RequestParameterException 
	 */
	@SuppressWarnings("unchecked")
	private String getKnChrrk(String kn_chrrk, HashMap<String, Object> workMap)
	throws RequestParameterException
	{
		// 変更履歴のコードマップ
		HashMap<String, Object> ezm_0171B_chrrk_map = (HashMap)workMap.get("ezm_0171B_chrrk_map");
		if(ezm_0171B_chrrk_map == null)
		{
			return null;
		}
		
		ArrayList ezm_0171B_chrrk_list = (ArrayList)ezm_0171B_chrrk_map.get("EZM0171B010CBSMsg1List");
		if(ezm_0171B_chrrk_list == null || 0 == ezm_0171B_chrrk_list.size())
		{
			return null;
		}
		
		// 変更履歴のコードマップから入力された変更履歴と一致するコード区分名を取得する
		for(int i = 0; i < ezm_0171B_chrrk_list.size(); i++)
		{
			HashMap childMap = (HashMap)ezm_0171B_chrrk_list.get(i);
			
			if(kn_chrrk.equals(childMap.get("cd_div")))
			{
				return (String)childMap.get("cd_div_nm");
			}
		}
		return null;
	}
	
	/**
	 * 変更項目コードから名称を取得。<br>
	 * <br>
	 * @param param 業務データ取得用I/F
	 * @param fixedText ユーザ定義文字列
	 * @param workMap 作業用マップ
	 * @return 変更項目の名称
	 * @throws RequestParameterException 
	 */
	@SuppressWarnings("unchecked")
	private String getKnChgKmk(String kn_chg_kmk, HashMap<String, Object> workMap)
	throws RequestParameterException
	{
		// 変更項目のコードマップ
		HashMap<String, Object> ezm_0171B_chg_kmk_map = (HashMap)workMap.get("ezm_0171B_chg_kmk_map");
		if(ezm_0171B_chg_kmk_map == null)
		{
			return null;
		}
		
		ArrayList ezm_0171B_chg_kmk_list = (ArrayList)ezm_0171B_chg_kmk_map.get("EZM0171B010CBSMsg1List");
		if(ezm_0171B_chg_kmk_list == null || 0 == ezm_0171B_chg_kmk_list.size())
		{
			return null;
		}
		
		// 変更項目のコードマップから入力された変更項目と一致するコード区分名を取得する
		for(int i = 0; i < ezm_0171B_chg_kmk_list.size(); i++)
		{
			HashMap childMap = (HashMap)ezm_0171B_chg_kmk_list.get(i);
			
			if(kn_chg_kmk.equals(childMap.get("cd_div")))
			{
				return (String)childMap.get("cd_div_nm");
			}
		}
		return null;
	}

	
	/**
	 * eoID変更履歴リストに差分マップを追加する。<br>
	 * リストがない場合、リストのマップを追加する<br>
	 * ソート区分が昇順でリストのn番目の変更日時 > マップの変更日時 となる場合、リストのn番目にマップを追加する。<br>
	 * ソート区分が降順でリストのn番目の変更日時 < マップの変更日時 となる場合、リストのn番目にマップを追加する。<br>
	 * 条件に合うデータがリストにない場合、リストの最後尾にマップを追加する。<br>
	 * @param map 追加する差分マップ
	 * @param list eoID変更履歴リスト
	 * @param sort_div ソート区分（1:昇順, 2:降順）
	 */
	private void addEoidChrrkList(HashMap<String, String> map, ArrayList<HashMap<String, String>> list, String sort_div)
	{
		if(map != null && list != null)
		{
			int loop_num = 0;
			String map_chg_ymd = (String)map.get("chg_ymd");
			for(; loop_num < list.size(); loop_num++)
			{
				// リストの要素の変更日時を取得
				HashMap<String, String> dataMap = list.get(loop_num);
				String list_chg_ymd = (String)dataMap.get("chg_ymd");
				
				// ソート区分が昇順の場合
				if(sort_div_asc.equals(sort_div))
				{
					if(list_chg_ymd.compareTo(map_chg_ymd) > 0)
					{
						list.add(loop_num, map);
						break;
					}
				}
				// ソート区分が降順の場合
				else
				{
					if(list_chg_ymd.compareTo(map_chg_ymd) < 0)
					{
						list.add(loop_num, map);
						break;
					}
				}
			}
			// 条件に合うデータがリストにない場合
			if(loop_num == list.size())
			{
				list.add(map);
			}
		}
		return;
	}
	
// v5.03 2013/04/23 IKK-2013-0000989 MOD START
	/**
	 * パラメータから担当者を設定する。<br>
	 * <br>
	 * @param user_nm ユーザー名
	 * @param childMap 更新後マップ
	 * @return 担当者の名称
	 * @throws RequestParameterException 
	 */
	private String getTantsha(String user_nm, HashMap childMap) {
		
		// 担当者
		String tantsha = null;
		
		// ユーザー名が空でない場合
		if(!(user_nm == null || "".equals(user_nm)))
		{
			tantsha = user_nm;
		}
		// ユーザー名が空かつ登録オペレータアカウントが"BATSQLDEF"、"IKOLOADER"の場合
		else if ((user_nm == null || "".equals(user_nm)) && 
				  (BATSQLDEF.equals(childMap.get("add_opeacnt")) || IKOLOADER.equals(childMap.get("add_opeacnt")) || BATSERVICE.equals(childMap.get("add_opeacnt"))))
		{
			tantsha = BATCH;
		}
		else
		{	
			tantsha = CUST;
		}
		return tantsha;
	}
// v5.03 2013/04/23 IKK-2013-0000989 MOD END

// 2013.11.05 OM-2013-0003448 add start
	/**
	 * dataListのデータが申告アドレス（連絡方法コード＝００２）又は申告アドレス２（連絡方法コード＝００６）又は申告アドレス（連絡方法コード＝００７）の場合、引数のリストから除く。
	 */
	private ArrayList delSinkokuAddRec(ArrayList dataList)
	{
		ArrayList dataListMod = new ArrayList();

		if (dataList != null) {
			for (int i=0; i< dataList.size(); i++) {
				HashMap map = (HashMap)dataList.get(i);
				String rrkWayCd = (String)map.get("rrk_way_cd");
			    // 20170309 ANK-2928-00-00  MOD  START
				//				if (rrkWayCd != null && "002".equals(rrkWayCd)){
				if ((rrkWayCd != null && "002".equals(rrkWayCd))||(rrkWayCd != null && "006".equals(rrkWayCd))||(rrkWayCd != null && "007".equals(rrkWayCd))) {
					// 連絡方法コードが申告アドレス(002),連絡方法コードが申告アドレス(006),連絡方法コードが申告アドレス(007)の場合
					// dataListModにaddしない（返却対象外）。
				 // 20170309 ANK-2928-00-00  MOD  END
				} else {
					dataListMod.add(map);
				}
			}
//			dataList = dataListMod;
		}
		return dataListMod;
	}
// 2013.11.05 OM-2013-0003448 add end

}
