/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：JKKCancelSvcKeiTelCC
*   ソースファイル名：JKKCancelSvcKeiTelCC.java
*   作成者          ：富士通
*   日付            ：2011年06月22日
*＜機能概要＞
*   eo光電話キャンセル部品
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v1.00.00    2011/06/30   FJ）土屋    新規作成
*   v3.00.00    2012/05/29   FJ）村松、松川 電話１、２番号一括キャンセル対応
*   v4.00.00    2012/08/16   FJ）安井    【ANK-0400-00-00】同時番ポ希望日のICS自動反映
*   v4.00.00    2012/08/16   FJ）安井    【ANK-0079-00-00】同時番ポ希望日のICS自動反映
*   v4.00.00    2012/09/25   FJ）芳澤    【ANK-0522-00-00】番ポ申込時における法人のNTT電話番号の確認対応について
*   v4.01.00    2013/01/15   FJ) 薄出    【IT1-2013-0000077】電話帳申込、電話帳申込内容削除対応
*   v5.00.00    2013/11/18   FJ）中山    【ANK-1670-00-00】番ポにおけるエイジング処理の削除
*   v7.00.00    2013/11/08   FJ) 北浦    【ANK-1578-00-00】多機能ルーター(機器追加)
*   v7.01.00    2014/02/26   FJ) 北浦    【OM-2014-0000846】エイジング削除処理
*   v9.00.00    2014/04/23   FJ) 中山    【ANK-2056-00-00】光電話セレクトオプションパック
*   v25.00.00   2016/07/19   FJ) 中山    【OM-2016-0000752】消去可否チェックのワーニング対応
*   v28.00.00   2016/12/12   FJ) 中原    【ANK-3021-00-00】電話番号M削除機能抑止対応
*   v72.00.00   2024/05/27   FJ) 寺田    【ANK-4494-00-00】【eo定期】 双方向番ポ対応
*   
**********************************************************************/
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.IRequestParameterReadWrite;
import com.fujitsu.futurity.bp.x21.cc.AbstractCommonComponent;
import com.fujitsu.futurity.bp.x21.cc.exception.CCException;
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 eo.common.constant.JKKStrConst;
import eo.common.constant.JPCModelConstant;
import eo.ejb.cbs.cbsmsg.EKK0021C070CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0081C160CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0161C160CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0341C330CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0351C220CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0401C150CBSMsg;
import eo.ejb.cbs.cbsmsg.ETU0081E011CBSMsg;
import eo.ejb.cbs.cbsmsg.ETU0091E011CBSMsg;
import eo.ejb.cbs.cbsmsg.EZM0111B040CBSMsg;
import eo.ejb.cbs.cbsmsg.EZM0111B040CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EZM0111C010CBSMsg;
import eo.ejb.cbs.cbsmsg.EZM0121A010CBSMsg;
import eo.ejb.cbs.cbsmsg.EZM0121A010CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EZM0121E011CBSMsg;

/**
 * eo光電話キャンセル部品
 * <br>
 * @author 富士通
 */
public class JKKCancelSvcKeiTelCC extends AbstractCommonComponent
{
	/** リターンメッセージ */
	private static final String RETURN_MESSAGE_STRING = "RETURN_MESSAGE_";
	/** リターンメッセージ */
	private static final String RETURN_MESSAGE_FORMAT = "%1$04d";
	/** エラー用 */
	private static final String SC_ERROR_STRING = "サービスコンポーネントエラー";
	/** 作業マップ名 */
	private static final String CC_WORK_AREA_NAME = "JKKCancelSvcKeiTelCCWork";

	/** サブオプションサービス契約キャンセル */
	private static final String CANCEL_SBOP_SVC_KEI = "CANCEL_SBOP_SVC_KEI";
	/** オプションサービス契約キャンセル */
	private static final String CANCEL_OP_SVC_KEI = "CANCEL_OP_SVC_KEI";
	/** サービス契約内訳キャンセル */
	private static final String CANCEL_SVC_KEI_UCWK = "CANCEL_SVC_KEI_UCWK";
	/** 機器提供サービス契約キャンセル */
	private static final String CANCEL_KKTK_SVC_KEI = "CANCEL_KKTK_SVC_KEI";
	/** サービス契約キャンセル */
	private static final String CANCEL_SVC_KEI = "CANCEL_SVC_KEI";
	/** 申込明細キャンセル */
	private static final String CANCEL_MSKM_DTL = "CANCEL_MSKM_DTL";

// ANK-4494-00-00 DEL START
//	/** 同番移転取消依頼 */
//	private static final String CANCEL_DOBANITEN = "CANCEL_DOBANITEN";
// ANK-4494-00-00 DEL END

	/** エイジング削除 */
	private static final String DEL_AIGING_LIST = "DEL_AIGING_LIST";
	/** 番ポエイジング削除、電話番号削除 */
	private static final String DEL_BMP_AGING = "DEL_BMP_AGING";
	/** 電話帳申込削除、電話帳申込内容削除 */
	private static final String DEL_DWCMKM_NYO = "DEL_DWCMKM_NYO";
	/** 個人法人電話番号帯コード(法人)*/
	private static final String KOJIN_HOJIN_TLN_TAI_CD_HOJIN = "2";
	/** 割引サービス契約キャンセルリスト */
	private static final String CANCEL_EOHTL_PACK_LIST = "cncl_eohtl_pack_list";
	
	/**
	 * eo光電話キャンセル処理を行います。
	 * <br>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @return リクエストパラメータ
	 * @throws Throwable 
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite cancelSvcKeiTel(SessionHandle handle, IRequestParameterReadWrite param, String fixedText) throws Throwable
	{
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		HashMap<String, Object> paramMap = setSCInputCommonData(param, new HashMap<String, Object>());
		ArrayList<HashMap> schemaList = new ArrayList<HashMap>();
		Map<?, ?> result = null;
		CAANMsg template = null;

		HashMap<String, Object> checkMap = (HashMap<String, Object>)param.getData(fixedText);

		// 登録用のCCに値が設定されていない場合は処理を行わない。
		if (checkMap == null)
		{
			return param;
		}
		
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));
		if (inMap == null)
		{
			return param;
		}
		
		if (inMap.containsKey(CANCEL_EOHTL_PACK_LIST))
		{
			// eo光電話パックキャンセル
			ArrayList<HashMap> cnclEohtlPackList = (ArrayList<HashMap>)inMap.get(CANCEL_EOHTL_PACK_LIST);
			for (HashMap cnclEohtlPackMap : cnclEohtlPackList)
			{
				cancelEohtlPack(handle, param, fixedText, cnclEohtlPackMap);
			}
		}
		if (inMap.containsKey(CANCEL_SBOP_SVC_KEI))
		{
			// サブオプションサービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_SBOP_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				template = editInEKK0401C150(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetEKK0401C150(result, param, fixedText, tmpMap); // 下りマッピング
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
			}
		}
		if (inMap.containsKey(CANCEL_OP_SVC_KEI))
		{
			// オプションサービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_OP_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				template = editInEKK0351C220(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetEKK0351C220(result, param, fixedText, tmpMap); // 下りマッピング
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
			}
		}
		if (inMap.containsKey(CANCEL_SVC_KEI_UCWK))
		{
			// サービス契約内訳キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_SVC_KEI_UCWK);
			for (HashMap tmpMap : schemaList)
			{
				template = editInEKK0161C160(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetEKK0161C160(result, param, fixedText, tmpMap); // 下りマッピング
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
			}
		}
		if (inMap.containsKey(CANCEL_KKTK_SVC_KEI))
		{
			// 機器提供サービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_KKTK_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				template = editInEKK0341C330(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetEKK0341C330(result, param, fixedText, tmpMap); // 下りマッピング
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
			}
		}
		if (inMap.containsKey(CANCEL_SVC_KEI))
		{
			// サービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				template = editInEKK0081C160(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetEKK0081C160(result, param, fixedText, tmpMap); // 下りマッピング
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
				
//OM-2016-0000752 ADD START
				// PPP認証IDのエイジング使用終了処理
				if (!JKKBpCommon.isNull(tmpMap.get("kk0111_ppp_ninsho_id")))
				{
					HashMap workMap = new HashMap();
					workMap.put("zm0111_aging_sbt_cd", JKKStrConst.CD00412_PPP_NINSHO_ID);
					workMap.put("zm0111_aging_tg_value", JKKBpCommon.getAgingNinshoId((String)tmpMap.get("kk0111_ppp_ninsho_id")));
					
					// エイジング一覧照会（ユニーク）
					template = editInEZM0111B040(param, fixedText, workMap); // 上りマッピング
					result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
					editRetEZM0111B040(result, param, fixedText, workMap); // 下りマッピング
					if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
					{ // ステータスが単項目エラー以上であれば例外をスロー
						throw new CCException(SC_ERROR_STRING, new Exception());
					}
					
					// 更新年月日時分秒が取得できればエイジングを使用終了にする
					if (!JKKBpCommon.isNull(workMap.get("zm0111_last_upd_dtm_bf")))
					{
						// エイジング対象使用終了
						template = editInEZM0111C010(param, fixedText, workMap); // 上りマッピング
						result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
						editRetEZM0111C010(result, param, fixedText, workMap); // 下りマッピング
						if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
						{ // ステータスが単項目エラー以上であれば例外をスロー
							throw new CCException(SC_ERROR_STRING, new Exception());
						}
					}
				}
//OM-2016-0000752 ADD END
			}
		}
		
		if (inMap.containsKey(CANCEL_MSKM_DTL))
		{
			// 申込明細キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_MSKM_DTL);
			for (HashMap tmpMap : schemaList)
			{
				template = editInEKK0021C070(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetEKK0021C070(result, param, fixedText, tmpMap); // 下りマッピング
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
			}
		}

// ANK-4494-00-00 DEL START
//		if (inMap.containsKey(CANCEL_DOBANITEN))
//		{
//			// 同番移転取消依頼
//			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_DOBANITEN);
//			for (HashMap tmpMap : schemaList)
//			{
//				template = editInETU0021C030(param, fixedText, tmpMap); // 上りマッピング
//				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
//				editRetETU0021C030(result, param, fixedText, tmpMap); // 下りマッピング
//				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
//				{ // ステータスが単項目エラー以上であれば例外をスロー
//					throw new CCException(SC_ERROR_STRING, new Exception());
//				}
//			}
//		}
// ANK-4494-00-00 DEL END

		if(inMap.containsKey(DEL_BMP_AGING))
		{
			// 番ポエイジング削除、電話番号削除
			schemaList = (ArrayList<HashMap>)inMap.get(DEL_BMP_AGING);
			for (HashMap tmpMap : schemaList)
			{
				// 電話番号一意照会
				template = editInEZM0121A010(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetEZM0121A010(result, param, fixedText, tmpMap); // 下りマッピング
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
				if(!KOJIN_HOJIN_TLN_TAI_CD_HOJIN.equals(tmpMap.get("zm0121_kojin_hojin_tln_tai_cd")))
				{
// ANK-3021-00-00 20161212 DEL START
//					// 電話番号物理削除
//					template = editInEZM0121E011(param, fixedText, tmpMap); // 上りマッピング
//					result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
//					editRetEZM0121E011(result, param, fixedText, tmpMap); // 下りマッピング
//					if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
//					{ // ステータスが単項目エラー以上であれば例外をスロー
//						throw new CCException(SC_ERROR_STRING, new Exception());
//					}
// ANK-3021-00-00 20161212 DEL END
				}
			}
		}
		
		if (inMap.containsKey(DEL_DWCMKM_NYO))
		{
			// 電話帳申込削除、電話帳申込内容削除
			schemaList = (ArrayList<HashMap>)inMap.get(DEL_DWCMKM_NYO);
			for (HashMap tmpMap : schemaList)
			{
				template = editInETU0081E011(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetETU0081E011(result, param, fixedText, tmpMap); // 下りマッピング
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
				template = editInETU0091E011(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetETU0091E011(result, param, fixedText, tmpMap); // 下りマッピング
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
			}
		}
		
		if (inMap.containsKey(DEL_AIGING_LIST))
		{
			// エイジング削除 
			schemaList = (ArrayList<HashMap>)inMap.get(DEL_AIGING_LIST);
			for (HashMap tmpMap : schemaList)
			{
//OM-2016-0000752 MOD START
//				// エイジング削除
//				template = editInEZM0111E010(param, fixedText, tmpMap); // 上りマッピング
//				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
//				editRetEZM0111E010(result, param, fixedText, tmpMap); // 下りマッピング
				// エイジング対象使用終了
				template = editInEZM0111C010(param, fixedText, tmpMap); // 上りマッピング
				result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
				editRetEZM0111C010(result, param, fixedText, tmpMap); // 下りマッピング
//OM-2016-0000752 MOD END
				if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
				{ // ステータスが単項目エラー以上であれば例外をスロー
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
			}
		}

		return param;
	}

	/**
	 * SCの実行ステータスの取得処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @return SCの実行ステータス
	 * @throws Exception
	 */
	private int getReturnCode(IRequestParameterReadWrite param) throws Exception
	{
		return Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
	}

	/**
	 * CAANMsgに必要なデータのマッピング処理を行います。
	 * <br>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @return パラメータマップ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> getInvokeCBS(SessionHandle handle, IRequestParameterReadWrite param, String fixedText)
			throws RequestParameterException
	{
		ArrayList<CAANMsg> msgList = new ArrayList<CAANMsg>();
		ArrayList<HashMap> schemaList = new ArrayList<HashMap>();

		HashMap inMap = (HashMap)param.getData(fixedText);
		
		// マップに値が設定されていない場合は処理を行わない。
		if (inMap == null)
		{
			return null;
		}
		
		if (inMap.containsKey(CANCEL_SBOP_SVC_KEI))
		{
			// サブオプションサービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_SBOP_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				msgList.add(editInEKK0401C150(param, fixedText, tmpMap));
			}
		}
		if (inMap.containsKey(CANCEL_OP_SVC_KEI))
		{
			// オプションサービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_OP_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				msgList.add(editInEKK0351C220(param, fixedText, tmpMap));
			}
		}
		if (inMap.containsKey(CANCEL_SVC_KEI_UCWK))
		{
			// サービス契約内訳キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_SVC_KEI_UCWK);
			for (HashMap tmpMap : schemaList)
			{
				msgList.add(editInEKK0161C160(param, fixedText, tmpMap));
			}
		}

		if (inMap.containsKey(CANCEL_KKTK_SVC_KEI))
		{
			// 機器提供サービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_KKTK_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				msgList.add(editInEKK0341C330(param, fixedText, tmpMap));
			}
		}
		if (inMap.containsKey(CANCEL_SVC_KEI))
		{
			// サービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				msgList.add(editInEKK0081C160(param, fixedText, tmpMap));
			}
		}
		if (inMap.containsKey(CANCEL_MSKM_DTL))
		{
			// 申込明細キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_MSKM_DTL);
			for (HashMap tmpMap : schemaList)
			{
				msgList.add(editInEKK0021C070(param, fixedText, tmpMap));
			}
		}
// ANK-4494-00-00 DEL START
//		if (inMap.containsKey(CANCEL_DOBANITEN))
//		{
//			// 同番移転取消依頼
//			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_DOBANITEN);
//			for (HashMap tmpMap : schemaList)
//			{
//				msgList.add(editInETU0021C030(param, fixedText, tmpMap));
//			}
//		}
// ANK-4494-00-00 DEL END

		if (inMap.containsKey(DEL_BMP_AGING))
		{
			// 番ポエイジング削除、電話番号削除
			schemaList = (ArrayList<HashMap>)inMap.get(DEL_BMP_AGING);
			for (HashMap tmpMap : schemaList)
			{
				msgList.add(editInEZM0121A010(param, fixedText, tmpMap)); // ■電話番号一意照会
				msgList.add(editInEZM0121E011(param, fixedText, tmpMap)); // ■電話番号物理削除
			}
		}
		if (inMap.containsKey(DEL_DWCMKM_NYO))
		{
			// 電話帳申込削除、電話帳申込内容削除
			schemaList = (ArrayList<HashMap>)inMap.get(DEL_DWCMKM_NYO);
			for (HashMap tmpMap : schemaList)
			{
				msgList.add(editInETU0081E011(param, fixedText, tmpMap)); // ■電話帳申込削除
				msgList.add(editInETU0091E011(param, fixedText, tmpMap)); // ■電話帳申込内容削除
			}
		}
		if (inMap.containsKey(DEL_AIGING_LIST))
		{
			// エイジング削除 
			schemaList = (ArrayList<HashMap>)inMap.get(DEL_AIGING_LIST);
			for (HashMap tmpMap : schemaList)
			{
//OM-2016-0000752 MOD START
//				msgList.add(editInEZM0111E010(param, fixedText, tmpMap));
				msgList.add(editInEZM0111C010(param, fixedText, tmpMap));
//OM-2016-0000752 MOD END
			}
		}

		int msgCnt = msgList.size();
		CAANMsg[] templates = new CAANMsg[msgCnt];
		for (int i = 0; i < msgCnt; i++)
		{
			templates[i] = msgList.get(i);
		}

		HashMap<String, Object> paramMap = setSCInputCommonData(param, new HashMap<String, Object>());
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;
	}

	/**
	 * 単一CAANMsgのマッピング処理を行います。
	 * <br>
	 * @param paramMap パラメータマップ
	 * @param template CAANMsg
	 * @return パラメータマップ
	 * @throws RequestParameterException
	 */
	private HashMap<String, Object> putParamMap(HashMap<String, Object> paramMap, CAANMsg template) throws RequestParameterException
	{
		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;
	}

	/**
	 * CAANMsgに値を設定します。<br>
	 *  @inMap内にデータが存在する場合、inMap内のデータを設定します。<br>
	 *  A上記以外の場合、setNullを呼び出します。<br>
	 * @param template 値を設定するメッセージキャリア
	 * @param setKey 設定先メッセージキャリアのキー名
	 * @param inMap ユーザデータ情報
	 * @param prefix ユーザデータ情報より取得する場合に付加するプレフィックス
	 * @param getKey ユーザデータ情報より取得するキー名
	 */
	private void setTemplate(CAANMsg template, String setKey, HashMap<String, Object> inMap, String prefix, String getKey)
	{
		
		if (null == inMap || null == inMap.get(prefix + getKey) || 0 == ((String)inMap.get(prefix + getKey)).length())
		{
			template.setNull(setKey);
		}
		else
		{
			template.set(setKey, (String)inMap.get(prefix + getKey));
		}
	}

	/**
	 * CAANMsgに値を設定します。<br>
	 *  @inMap内にデータが存在する場合、inMap内のデータを設定します。<br>
	 *  A上記以外の場合、setNullを呼び出します。<br>
	 * @param template 値を設定するメッセージキャリア
	 * @param getSetKey 設定先メッセージキャリアのキー名
	 * @param inMap ユーザデータ情報
	 * @param prefix ユーザデータ情報より取得する場合に付加するプレフィックス
	 */
	private void setTemplate(CAANMsg template, String getSetKey, HashMap<String, Object> inMap, String prefix)
	{
		setTemplate(template, getSetKey, inMap, prefix, getSetKey);
	}
	
	/**
	 * ユーザデータ情報に値を設定します。<br>
	 * 　※CAANMsg内のデータがNullの場合、空文字を設定します。<br>
	 * @param dataMap ユーザデータ情報
	 * @param prefix ユーザデータ情報より取得する場合に付加するプレフィックス
	 * @param setKey ユーザデータ情報に設定するキー名
	 * @param template メッセージキャリア
	 * @param getKey メッセージキャリアより取得するキー名
	 */
	private void setDataMap(HashMap<String, Object> dataMap, String prefix, String setKey, CAANMsg template, String getKey)
	{
		if (template.isNull(getKey))
		{
			dataMap.put(prefix + setKey, "");
		}
		else
		{
			dataMap.put(prefix + setKey, template.getString(getKey));
		}
	}

	/**
	 * ユーザデータ情報に値を設定します。<br>
	 * 　※CAANMsg内のデータがNullの場合、空文字を設定します。<br>
	 * @param dataMap ユーザデータ情報
	 * @param prefix ユーザデータ情報より取得する場合に付加するプレフィックス
	 * @param getSetKey ユーザデータ情報に設定するキー名
	 * @param template メッセージキャリア
	 */
	private void setDataMap(HashMap<String, Object> dataMap, String prefix, String getSetKey, CAANMsg template)
	{
		setDataMap(dataMap, prefix, getSetKey, template, getSetKey);
	}

	/**
	 * ユーザデータ情報にエラー情報を設定します。<br>
	 * 　※ユーザデータ情報内にすでにキーが存在する場合、値は設定されません。<br>
	 * @param inMap	 ユーザデータ情報
	 * @param prefix ユーザデータ情報より取得する場合に付加するプレフィックス
	 * @param setKey ユーザデータ情報に設定するキー名
	 * @param template メッセージキャリア
	 * @param getKey メッセージキャリアより取得するキー名
	 */
	private void setErrInfo(HashMap<String, Object> inMap, String prefix, String setKey, CAANMsg template, String getKey)
	{
		if (!template.isNull(getKey))
		{
			inMap.put(prefix + setKey, template.getString(getKey));
		}
	}

	/**
	 * ユーザデータ情報にエラー情報を設定します。<br>
	 * 　※ユーザデータ情報内にすでにキーが存在する場合、値は設定されません。<br>
	 * @param inMap	 ユーザデータ情報
	 * @param prefix ユーザデータ情報より取得する場合に付加するプレフィックス
	 * @param getSetKey ユーザデータ情報に設定するキー名
	 * @param template メッセージキャリア
	 */
	private void setErrInfo(HashMap<String, Object> inMap, String prefix, String getSetKey, CAANMsg template)
	{
		setErrInfo(inMap, prefix, getSetKey, template, getSetKey);
	}
	
	
	/**
	 * SCインプット共通データ設定処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @param paramMap パラメータマップ
	 * @return パラメータマップ
	 * @throws RequestParameterException
	 */
	private HashMap<String, Object> setSCInputCommonData(IRequestParameterReadWrite 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));

		return paramMap;
	}

	/**
	 * エラー情報のマッピング処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @param templates CAANMsg[]
	 * @param returnCode リターンコード
	 * @param fixedText ユーザー固定文字列
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	public IRequestParameterReadWrite editErrorInfo(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, String fixedText)
			throws RequestParameterException
	{
		int index = 0;
		ArrayList<HashMap> schemaList = new ArrayList<HashMap>();
		HashMap inMap = (HashMap)param.getData(fixedText);

		// マップに値が設定されていない場合は処理を行わない。
		if (inMap == null)
		{
			return param;
		}
		
		if (inMap.containsKey(CANCEL_SBOP_SVC_KEI))
		{
			// サブオプションサービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_SBOP_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				editErrInfoEKK0401C150(param, templates[index++], (Integer)returnCode, fixedText, tmpMap);
			}
		}
		if (inMap.containsKey(CANCEL_OP_SVC_KEI))
		{
			// オプションサービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_OP_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				editErrInfoEKK0351C220(param, templates[index++], (Integer)returnCode, fixedText, tmpMap);
			}
		}
		if (inMap.containsKey(CANCEL_SVC_KEI_UCWK))
		{
			// サービス契約内訳キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_SVC_KEI_UCWK);
			for (HashMap tmpMap : schemaList)
			{
				editErrInfoEKK0161C160(param, templates[index++], (Integer)returnCode, fixedText, tmpMap);
			}
		}
		
		if (inMap.containsKey(CANCEL_KKTK_SVC_KEI))
		{
			// 機器提供サービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_KKTK_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				editErrInfoEKK0341C330(param, templates[index++], (Integer)returnCode, fixedText, tmpMap);
			}
		}
		if (inMap.containsKey(CANCEL_SVC_KEI))
		{
			// サービス契約キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_SVC_KEI);
			for (HashMap tmpMap : schemaList)
			{
				editErrInfoEKK0081C160(param, templates[index++], (Integer)returnCode, fixedText, tmpMap);
			}
		}
		if (inMap.containsKey(CANCEL_MSKM_DTL))
		{
			// 申込明細キャンセル
			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_MSKM_DTL);
			for (HashMap tmpMap : schemaList)
			{
				editErrInfoEKK0021C070(param, templates[index++], (Integer)returnCode, fixedText, tmpMap);
			}
		}
// ANK-4494-00-00 DEL START
//		if (inMap.containsKey(CANCEL_DOBANITEN))
//		{
//			// 同番移転取消依頼
//			schemaList = (ArrayList<HashMap>)inMap.get(CANCEL_DOBANITEN);
//			for (HashMap tmpMap : schemaList)
//			{
//				editErrInfoETU0021C030(param, templates[index++], (Integer)returnCode, fixedText, tmpMap);
//			}
//		}
// ANK-4494-00-00 DEL END
		if (inMap.containsKey(DEL_BMP_AGING))
		{
			// 番ポエイジング削除、電話番号削除
			schemaList = (ArrayList<HashMap>)inMap.get(DEL_BMP_AGING);
			for (HashMap tmpMap : schemaList)
			{
				editErrInfoEZM0121A010(param, templates[index++], (Integer)returnCode, fixedText, tmpMap); // 電話番号一意照会
				editErrInfoEZM0121E011(param, templates[index++], (Integer)returnCode, fixedText, tmpMap); // 電話番号物理削除
			}
		}
		if (inMap.containsKey(DEL_DWCMKM_NYO))
		{
			// 電話帳申込削除、電話帳申込内容削除
			schemaList = (ArrayList<HashMap>)inMap.get(DEL_DWCMKM_NYO);
			for (HashMap tmpMap : schemaList)
			{
				editErrInfoETU0081E011(param, templates[index++], (Integer)returnCode, fixedText, tmpMap); // 電話帳申込
				editErrInfoETU0091E011(param, templates[index++], (Integer)returnCode, fixedText, tmpMap); // 電話帳申込内容
			}
		}
		if (inMap.containsKey(DEL_AIGING_LIST))
		{
			// エイジング削除 
			schemaList = (ArrayList<HashMap>)inMap.get(DEL_AIGING_LIST);
			for (HashMap tmpMap : schemaList)
			{
//OM-2016-0000752 ADD START
//				editErrInfoEZM0111E010(param, templates[index++], (Integer)returnCode, fixedText, tmpMap);
				editErrInfoEZM0111C010(param, templates[index++], (Integer)returnCode, fixedText, tmpMap);
//OM-2016-0000752 ADD END
			}
		}
		
		return param;
	}

	/**
	 * コントロールマップエラー情報格納処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @param itemplateStatus サービスインターフェイスの実行ステータス
	 * @param returnCode リターンコード
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	private IRequestParameterReadWrite setControlMapErrInfo(IRequestParameterReadWrite param, int itemplateStatus, int returnCode)
			throws RequestParameterException
	{
		int templateStatus = itemplateStatus;
		
		if (returnCode != 0)
		{
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString(RETURN_MESSAGE_STRING + String.format(RETURN_MESSAGE_FORMAT, 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)
		{
			String formatStatus = String.format(RETURN_MESSAGE_FORMAT, templateStatus);
			String message = JCMAPLConstMgr.getString(RETURN_MESSAGE_STRING + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}
		return param;
	}

	/**
	 * サブオプションサービス契約キャンセルの上りマッピング処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param tmpMap インプットマップ
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private CAANMsg editInEKK0401C150(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0401C150CBSMsg.class.getName());

		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		// テンプレートID
		template.set(EKK0401C150CBSMsg.TEMPLATEID, "EKK0401C150");

		// 機能コード（デフォルト：１）
		template.set(EKK0401C150CBSMsg.FUNC_CODE, "1");

		// オペレータ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);

		// 機能コード
		if (tmpMap != null)
		{
			template.set(EKK0401C150CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "kk0401_";
		
		// サブオプションサービス契約キャンセル.オプションサービス契約番号 → オプションサービス契約番号
		setTemplate(template, EKK0401C150CBSMsg.OP_SVC_KEI_NO, tmpMap, prefix);
		// サブオプションサービス契約キャンセル.サブオプションサービス契約番号 → サブオプションサービス契約番号
		setTemplate(template, EKK0401C150CBSMsg.SBOP_SVC_KEI_NO, tmpMap, prefix);
		// サブオプションサービス契約キャンセル.申込明細番号 → 申込明細番号
		setTemplate(template, EKK0401C150CBSMsg.MSKM_DTL_NO, tmpMap, prefix);
		// サブオプションサービス契約キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コード
		setTemplate(template, EKK0401C150CBSMsg.SVC_CANCEL_RSN_CD, tmpMap, prefix);
		// サブオプションサービス契約キャンセル.異動区分 → 異動区分
		setTemplate(template, EKK0401C150CBSMsg.IDO_DIV, tmpMap, prefix);
		
		// サブオプションサービス契約キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)
		if (tmpMap == null || tmpMap.get(prefix + EKK0401C150CBSMsg.UPD_DTM_BF) == null
				|| "".equals(tmpMap.get(prefix + EKK0401C150CBSMsg.UPD_DTM_BF)))
		{
			template.setNull(prefix + EKK0401C150CBSMsg.UPD_DTM_BF);
		}
		else
		{
			String lastDtm = JKKBpCommon.getLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"),
					(String)tmpMap.get(prefix + EKK0401C150CBSMsg.UPD_DTM_BF));
			template.set(EKK0401C150CBSMsg.UPD_DTM_BF, lastDtm);
		}

		return template;
	}

	/**
	 * オプションサービス契約キャンセルの上りマッピング処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param tmpMap インプットマップ
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private CAANMsg editInEKK0351C220(IRequestParameterReadWrite param, String fixedText,  HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0351C220CBSMsg.class.getName());
		
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		// テンプレートID
		template.set(EKK0351C220CBSMsg.TEMPLATEID, "EKK0351C220");

		// 機能コード（デフォルト：１）
		template.set(EKK0351C220CBSMsg.FUNC_CODE, "1");

		// オペレータ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);

		// 機能コード
		if (tmpMap != null)
		{
			template.set(EKK0401C150CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "kk0351_";
		
		// オプションサービス契約キャンセル.オプションサービス契約番号 → オプションサービス契約番号
		setTemplate(template, EKK0351C220CBSMsg.OP_SVC_KEI_NO, tmpMap, prefix);
		// オプションサービス契約キャンセル.申込明細番号 → 申込明細番号
		setTemplate(template, EKK0351C220CBSMsg.MSKM_DTL_NO, tmpMap, prefix);
		// オプションサービス契約キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コード
		setTemplate(template, EKK0351C220CBSMsg.SVC_CANCEL_RSN_CD, tmpMap, prefix);
		// オプションサービス契約キャンセル.異動区分 → 異動区分
		setTemplate(template, EKK0351C220CBSMsg.IDO_DIV, tmpMap, prefix);

		// オプションサービス契約キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)
		if (tmpMap == null || tmpMap.get(prefix + EKK0351C220CBSMsg.UPD_DTM_BF) == null
				|| "".equals(tmpMap.get(prefix + EKK0351C220CBSMsg.UPD_DTM_BF)))
		{
			template.setNull(prefix + EKK0351C220CBSMsg.UPD_DTM_BF);
		}
		else
		{
			String lastDtm = JKKBpCommon.getLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"),
					(String)tmpMap.get(prefix + EKK0351C220CBSMsg.UPD_DTM_BF));
			template.set(EKK0351C220CBSMsg.UPD_DTM_BF, lastDtm);
		}
		
		return template;
	}

	/**
	 * サービス契約内訳キャンセルの上りマッピング処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param tmpMap インプットマップ
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private CAANMsg editInEKK0161C160(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0161C160CBSMsg.class.getName());

		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		// テンプレートID
		template.set(EKK0161C160CBSMsg.TEMPLATEID, "EKK0161C160");

		// 機能コード（デフォルト：１）
		template.set(EKK0161C160CBSMsg.FUNC_CODE, "1");

		// オペレータ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);

		// 機能コード
		if (tmpMap != null)
		{
			template.set(EKK0161C160CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "kk0161_";

		// サービス契約内訳キャンセル.サービス契約内訳番号 → サービス契約内訳番号
		setTemplate(template, EKK0161C160CBSMsg.SVC_KEI_UCWK_NO, tmpMap, prefix);
		// サービス契約内訳キャンセル.申込明細番号 → 申込明細番号
		setTemplate(template, EKK0161C160CBSMsg.MSKM_DTL_NO, tmpMap, prefix);
		// サービス契約内訳キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コード
		setTemplate(template, EKK0161C160CBSMsg.SVC_CANCEL_RSN_CD, tmpMap, prefix);
		// サービス契約内訳キャンセル.異動区分 → 異動区分
		setTemplate(template, EKK0161C160CBSMsg.IDO_DIV, tmpMap, prefix);
		// サービス契約内訳キャンセル.更新年月日時分秒 → 更新年月日時分秒
		setTemplate(template, EKK0161C160CBSMsg.UPD_DTM, tmpMap, prefix);

		// サービス契約内訳キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)
		if (tmpMap == null || tmpMap.get(prefix + EKK0161C160CBSMsg.UPD_DTM_BF) == null
				|| "".equals(tmpMap.get(prefix + EKK0161C160CBSMsg.UPD_DTM_BF)))
		{
			template.setNull(prefix + EKK0161C160CBSMsg.UPD_DTM_BF);
		}
		else
		{
			String lastDtm = JKKBpCommon.getLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"),
					(String)tmpMap.get(prefix + EKK0161C160CBSMsg.UPD_DTM_BF));
			template.set(EKK0161C160CBSMsg.UPD_DTM_BF, lastDtm);
		}
		
		return template;
	}
	
//OM-2016-0000752 DEL START
//	/**
//	 * エイジング削除の上りマッピング処理を行います。
//	 * <br>
//	 * @param param     リクエストパラメータ
//	 * @param fixedText サービスメッセージ
//	 * @param tmpMap    データ格納マップ
//	 * @return CAANMsg  サービスコンポーネント実行用CAANMsg
//	 * @throws RequestParameterException
//	 */
//	@SuppressWarnings("unchecked")
//	private CAANMsg editInEZM0111E010(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
//	{
//		CAANMsg template = new CAANMsg(EZM0111E010CBSMsg.class.getName());
//
//		// テンプレートID
//		template.set(EZM0111E010CBSMsg.TEMPLATEID, "EZM0111E010");
//
//		// 機能コード（デフォルト：１）
//		template.set(EZM0111E010CBSMsg.FUNC_CODE, "1");
//
//		// オペレータ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);
//		
//		String prefix = "zm0111_";
//		
//		// エイジング削除.エイジング種別コード → エイジング種別コード
//		setTemplate(template, EZM0111E010CBSMsg.AGING_SBT_CD, tmpMap, prefix);
//		// エイジング削除.エイジング対象値 → エイジング対象値
//		setTemplate(template, EZM0111E010CBSMsg.AGING_TG_VALUE, tmpMap, prefix);
//		// エイジング削除.更新前最終年月日時分秒 → 更新前最終年月日時分秒
//		setTemplate(template, EZM0111E010CBSMsg.LAST_UPD_DTM_BF, tmpMap, prefix);
//
//		return template;
//	}
//OM-2016-0000752 DEL END

	/**
	 * 機器提供サービス契約キャンセルの上りマッピング処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param tmpMap インプットマップ
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private CAANMsg editInEKK0341C330(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0341C330CBSMsg.class.getName());
		
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		// テンプレートID
		template.set(EKK0341C330CBSMsg.TEMPLATEID, "EKK0341C330");

		// 機能コード（デフォルト：１）
		template.set(EKK0341C330CBSMsg.FUNC_CODE, "1");

		// オペレータ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);

		// 機能コード
		if (tmpMap != null)
		{
			template.set(EKK0341C330CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "kk0341_";

		// 機器提供サービス契約キャンセル.機器提供サービス契約番号 → 機器提供サービス契約番号
		setTemplate(template, EKK0341C330CBSMsg.KKTK_SVC_KEI_NO, tmpMap, prefix);
		// 機器提供サービス契約キャンセル.申込明細番号 → 申込明細番号
		setTemplate(template, EKK0341C330CBSMsg.MSKM_DTL_NO, tmpMap, prefix);
		// 機器提供サービス契約キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コード
		setTemplate(template, EKK0341C330CBSMsg.SVC_CANCEL_RSN_CD, tmpMap, prefix);
		// 機器提供サービス契約キャンセル.異動区分 → 異動区分
		setTemplate(template, EKK0341C330CBSMsg.IDO_DIV, tmpMap, prefix);

		// 機器提供サービス契約キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)
		// ★★★
		if (tmpMap == null || tmpMap.get(prefix + EKK0341C330CBSMsg.UPD_DTM_BF) == null
				|| "".equals(tmpMap.get(prefix + EKK0341C330CBSMsg.UPD_DTM_BF)))
		{
			template.setNull(prefix + EKK0341C330CBSMsg.UPD_DTM_BF);
		}
		else
		{
			String lastDtm = JKKBpCommon.getLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"),
					(String)tmpMap.get(prefix + EKK0341C330CBSMsg.UPD_DTM_BF));
			template.set(EKK0341C330CBSMsg.UPD_DTM_BF, lastDtm);
		}
		
		return template;
	}

	/**
	 * サービス契約キャンセルの上りマッピング処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param tmpMap インプットマップ
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private CAANMsg editInEKK0081C160(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0081C160CBSMsg.class.getName());

		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		// テンプレートID
		template.set(EKK0081C160CBSMsg.TEMPLATEID, "EKK0081C160");

		// 機能コード（デフォルト：１）
		template.set(EKK0081C160CBSMsg.FUNC_CODE, "1");

		// オペレータ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);

		// 機能コード
		if (tmpMap != null)
		{
			template.set(EKK0081C160CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "kk0081_";
		
		// サービス契約キャンセル.サービス契約番号 → サービス契約番号
		setTemplate(template, EKK0081C160CBSMsg.SVC_KEI_NO, tmpMap, prefix);
		// サービス契約キャンセル.申込明細番号 → 申込明細番号
		setTemplate(template, EKK0081C160CBSMsg.MSKM_DTL_NO, tmpMap, prefix);
		// サービス契約キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コード
		setTemplate(template, EKK0081C160CBSMsg.SVC_CANCEL_RSN_CD, tmpMap, prefix);
		// サービス契約キャンセル.異動区分 → 異動区分
		setTemplate(template, EKK0081C160CBSMsg.IDO_DIV, tmpMap, prefix);

		// サービス契約キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)
		if (tmpMap == null || tmpMap.get(prefix + EKK0081C160CBSMsg.UPD_DTM_BF) == null
				|| "".equals(tmpMap.get(prefix + EKK0081C160CBSMsg.UPD_DTM_BF)))
		{
			template.setNull(prefix + EKK0081C160CBSMsg.UPD_DTM_BF);
		}
		else
		{
			String lastDtm = JKKBpCommon.getLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"),
					(String)tmpMap.get(prefix + EKK0081C160CBSMsg.UPD_DTM_BF));
			template.set(EKK0081C160CBSMsg.UPD_DTM_BF, lastDtm);
		}
		
		return template;
	}

	/**
	 * 申込明細キャンセルの上りマッピング処理を行います。
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param tmpMap インプットマップ
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private CAANMsg editInEKK0021C070(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0021C070CBSMsg.class.getName());
		
		// テンプレートID
		template.set(EKK0021C070CBSMsg.TEMPLATEID, "EKK0021C070");

		// 機能コード（デフォルト：１）
		template.set(EKK0021C070CBSMsg.FUNC_CODE, "1");

		// オペレータ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);

		// 機能コード
		if (tmpMap != null)
		{
			template.set(EKK0021C070CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "kk0021_";

		// 申込明細キャンセル.申込明細番号 → 申込明細番号
		setTemplate(template, EKK0021C070CBSMsg.MSKM_DTL_NO, tmpMap, prefix);
		// 申込明細キャンセル.申込明細キャンセル理由コード → 申込明細キャンセル理由コード
		setTemplate(template, EKK0021C070CBSMsg.MSKM_DTL_CANCEL_RSN_CD, tmpMap, prefix);
		// 申込明細キャンセル.申込明細キャンセル理由メモ → 申込明細キャンセル理由メモ
		setTemplate(template, EKK0021C070CBSMsg.MSKM_DTL_CANCEL_RSN_MEMO, tmpMap, prefix);

		// 申込明細キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)
		if (tmpMap == null || tmpMap.get(prefix + EKK0021C070CBSMsg.UPD_DTM_BF) == null
				|| "".equals(tmpMap.get(prefix + EKK0021C070CBSMsg.UPD_DTM_BF)))
		{
			template.setNull(EKK0021C070CBSMsg.UPD_DTM_BF);
		}
		else
		{
			String lastDtm = JKKBpCommon.getLastDtmByMskm(param, (String)tmpMap.get(prefix + EKK0021C070CBSMsg.UPD_DTM_BF));
			template.set(EKK0021C070CBSMsg.UPD_DTM_BF, lastDtm);
		}

		return template;
	}
	
// ANK-4494-00-00 DEL START
//	/**
//	 * 同番移転取消依頼の上りマッピング処理を行います。
//	 * <br>
//	 * @param param リクエストパラメータ
//	 * @param fixedText サービスメッセージ
//	 * @param tmpMap インプットマップ
//	 * @return CAANMsg サービスコンポーネント実行用CAANMsg
//	 * @throws RequestParameterException
//	 */
//	@SuppressWarnings("unchecked")
//	private CAANMsg editInETU0021C030(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
//	{
//		CAANMsg template = new CAANMsg(ETU0021C030CBSMsg.class.getName());
//
//		// テンプレートID
//		template.set(ETU0021C030CBSMsg.TEMPLATEID, "ETU0021C030");
//
//		// 機能コード（デフォルト：１）
//		template.set(ETU0021C030CBSMsg.FUNC_CODE, "1");
//
//		// オペレータ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);
//		
//		// 機能コード
//		if (tmpMap != null)
//		{
//			template.set(ETU0021C030CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
//		}
//		
//		String prefix = "tu0021_";
//
//		setTemplate(template, ETU0021C030CBSMsg.DOBANITEN_NO, tmpMap, prefix);	// 同番移転登録.同番移転番号 → 同番移転番号
//		setTemplate(template, ETU0021C030CBSMsg.GENE_ADD_DTM, tmpMap, prefix);	// 同番移転登録.世代登録年月日時分秒 → 世代登録年月日時分秒
//		setTemplate(template, ETU0021C030CBSMsg.UPD_DTM_BF, tmpMap, prefix);	// 同番移転登録.更新前更新年月日時分秒 → 更新前更新年月日時分秒
//
//		return template;
//	}
// ANK-4494-00-00 DEL END

	/**
	 * 電話番号一意照会上りマッピング処理
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param tmpMap 電話番号一意照会マップ
	 * @return CAANMsg サービスコンポーネント実行用CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEZM0121A010(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EZM0121A010CBSMsg.class.getName());
		
		// テンプレートID
		template.set(EZM0121A010CBSMsg.TEMPLATEID, "EZM0121A010");

		// 機能コード（デフォルト：１）
		template.set(EZM0121A010CBSMsg.FUNC_CODE, "1");

		// オペレータ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);
		
		// 機能コード
		if (tmpMap != null)
		{
			template.set(EZM0121A010CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "zm0121_";
		
		setTemplate(template, EZM0121A010CBSMsg.KEY_TELNO, tmpMap, prefix);	// 電話番号一意照会.電話番号 → 電話番号
		
		return template;
	}
	
	/**
	 * 電話番号物理削除上りマッピング処理
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param tmpMap データ格納マップ
	 * @return CAANMsg サービスコンポーネント実行用CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEZM0121E011(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EZM0121E011CBSMsg.class.getName());
		
		// テンプレートID
		template.set(EZM0121E011CBSMsg.TEMPLATEID, "EZM0121E011");

		// 機能コード（デフォルト：１）
		template.set(EZM0121E011CBSMsg.FUNC_CODE, "1");

		// オペレータ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);
		
		// 機能コード
		if (tmpMap != null)
		{
			template.set(EZM0121E011CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "zm0121_";
		
		setTemplate(template, EZM0121E011CBSMsg.TELNO, tmpMap, prefix);	// 電話番号.電話番号 → 電話番号
		setTemplate(template, EZM0121E011CBSMsg.LAST_UPD_DTM_BF, tmpMap, prefix);	// 電話番号.電話番号 → 最終更新年月日
		
		return template;
	}
	
	/**
	 * 電話帳申込削除上りマッピング処理
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param tmpMap データ格納マップ
	 * @return CAANMsg サービスコンポーネント実行用CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInETU0081E011(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(ETU0081E011CBSMsg.class.getName());
		
		// テンプレートID
		template.set(ETU0081E011CBSMsg.TEMPLATEID, "ETU0081E011");

		// 機能コード（デフォルト：１）
		template.set(ETU0081E011CBSMsg.FUNC_CODE, "1");

		// オペレータ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);
		
		// 機能コード
		if (tmpMap != null)
		{
			template.set(ETU0081E011CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "tu0081_";
		
		setTemplate(template, ETU0081E011CBSMsg.DNWACHO_MSKM_NO, tmpMap, prefix);	// 電話帳申込.電話帳申込番号 → 電話帳申込番号
		setTemplate(template, ETU0081E011CBSMsg.UPD_DTM_BF,      tmpMap, prefix);	// 電話帳申込.更新前更新年月日時分秒 → 更新前更新年月日時分秒
		
		return template;
	}
	
	/**
	 * 電話帳申込内容削除上りマッピング処理
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param tmpMap データ格納マップ
	 * @return CAANMsg サービスコンポーネント実行用CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInETU0091E011(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(ETU0091E011CBSMsg.class.getName());
		
		// テンプレートID
		template.set(ETU0091E011CBSMsg.TEMPLATEID, "ETU0091E011");

		// 機能コード（デフォルト：１）
		template.set(ETU0091E011CBSMsg.FUNC_CODE, "1");

		// オペレータ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);
		
		// 機能コード
		if (tmpMap != null)
		{
			template.set(ETU0091E011CBSMsg.FUNC_CODE, tmpMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		String prefix = "tu0091_";
		
		setTemplate(template, ETU0091E011CBSMsg.DNWACHO_MSKM_NO, tmpMap, prefix);	// 電話帳申込内容.電話帳申込番号 → 電話帳申込番号
		
		return template;
	}
	
//OM-2016-0000752 ADD START
	
	/**
	 * エイジング対象使用終了の上りマッピング処理を行います。
	 * <br>
	 * @param param     リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param tmpMap    データ格納マップ
	 * @return CAANMsg  サービスコンポーネント実行用CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEZM0111C010(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EZM0111C010CBSMsg.class.getName());

		// テンプレートID
		template.set(EZM0111C010CBSMsg.TEMPLATEID, "EZM0111C010");

		// 機能コード（デフォルト：１）
		template.set(EZM0111C010CBSMsg.FUNC_CODE, "1");

		// オペレータ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);
		
		String prefix = "zm0111_";
		
		// エイジング削除.エイジング種別コード → エイジング種別コード
		setTemplate(template, EZM0111C010CBSMsg.AGING_SBT_CD, tmpMap, prefix);
		// エイジング削除.エイジング対象値 → エイジング対象値
		setTemplate(template, EZM0111C010CBSMsg.AGING_TG_VALUE, tmpMap, prefix);
		// エイジング削除.更新前最終年月日時分秒 → 更新前最終年月日時分秒
		setTemplate(template, EZM0111C010CBSMsg.LAST_UPD_DTM_BF, tmpMap, prefix);

		return template;
	}
	
	/**
	 * エイジング一覧照会（ユニーク）上りマッピング処理
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param tmpMap データ格納マップ
	 * @return CAANMsg サービスコンポーネント実行用CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEZM0111B040(IRequestParameterReadWrite param, String fixedText, HashMap tmpMap)
			throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EZM0111B040CBSMsg.class.getName());
		
		// テンプレートID
		template.set(EZM0111B040CBSMsg.TEMPLATEID, "EZM0111B040");

		// 機能コード（デフォルト：１）
		template.set(EZM0111B040CBSMsg.FUNC_CODE, "1");

		// オペレータ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);
		
		// エイジング種別コード
		if (JKKBpCommon.isNull(tmpMap.get("zm0111_aging_sbt_cd")))
		{
			template.setNull(EZM0111B040CBSMsg.KEY_AGING_SBT_CD);
		}
		else
		{
			template.set(EZM0111B040CBSMsg.KEY_AGING_SBT_CD, (String)tmpMap.get("zm0111_aging_sbt_cd"));
		}
		
		// エイジング対象値
		if (JKKBpCommon.isNull(tmpMap.get("zm0111_aging_tg_value")))
		{
			template.setNull(EZM0111B040CBSMsg.KEY_AGING_TG_VALUE);
		}
		else
		{
			template.set(EZM0111B040CBSMsg.KEY_AGING_TG_VALUE, (String)tmpMap.get("zm0111_aging_tg_value"));
		}
		
		return template;
	}
//OM-2016-0000752 ADD END
	
	/**
	 * サブオプションサービス契約キャンセルの下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editRetEKK0401C150(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText, HashMap dataMap)
		throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		String prefix = "kk0401_";

		// 世代登録年月日時分秒 ← サブオプションサービス契約キャンセル.世代登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.GENE_ADD_DTM, template);
		// サブオプションサービス契約ステータス ← サブオプションサービス契約キャンセル.サブオプションサービス契約ステータス
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.SBOP_SVC_KEI_STAT, template);
		// 予約適用年月日 ← サブオプションサービス契約キャンセル.予約適用年月日
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.RSV_APLY_YMD, template);
		// 予約適用コード ← サブオプションサービス契約キャンセル.予約適用コード
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.RSV_APLY_CD, template);
		// サービスキャンセル年月日 ← サブオプションサービス契約キャンセル.サービスキャンセル年月日
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.SVC_CANCEL_YMD, template);
		// サービスキャンセル取消年月日 ← サブオプションサービス契約キャンセル.サービスキャンセル取消年月日
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.SVC_CANCEL_CL_YMD, template);
		// 登録年月日時分秒 ← サブオプションサービス契約キャンセル.登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.ADD_DTM, template);
		// 登録オペレータアカウント ← サブオプションサービス契約キャンセル.登録オペレータアカウント
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.ADD_OPEACNT, template);
		// 更新年月日時分秒 ← サブオプションサービス契約キャンセル.更新年月日時分秒
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.UPD_DTM, template);
		// 更新オペレータアカウント ← サブオプションサービス契約キャンセル.更新オペレータアカウント
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.UPD_OPEACNT, template);
		// 無効フラグ ← サブオプションサービス契約キャンセル.無効フラグ
		setDataMap(dataMap, prefix, EKK0401C150CBSMsg.MK_FLG, template);

		JKKBpCommon.setLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"), 
				template.getString(EKK0401C150CBSMsg.UPD_DTM));

		// エラー情報の設定
		editErrInfoEKK0401C150(param, template, (Integer)returnCode, fixedText, dataMap);

		//エラー情報のマップを取得
		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));

		return param;
	}

	/**
	 * オプションサービス契約キャンセルの下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editRetEKK0351C220(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText, HashMap dataMap)
		throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		String prefix = "kk0351_";

		// 世代登録年月日時分秒 ← オプションサービス契約キャンセル.世代登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.GENE_ADD_DTM, template);
		// オプションサービス契約ステータス ← オプションサービス契約キャンセル.オプションサービス契約ステータス
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.OP_SVC_KEI_STAT, template);
		// 予約適用年月日 ← オプションサービス契約キャンセル.予約適用年月日
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.RSV_APLY_YMD, template);
		// 予約適用コード ← オプションサービス契約キャンセル.予約適用コード
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.RSV_APLY_CD, template);
		// サービスキャンセル年月日 ← オプションサービス契約キャンセル.サービスキャンセル年月日
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.SVC_CANCEL_YMD, template);
		// サービスキャンセル取消年月日 ← オプションサービス契約キャンセル.サービスキャンセル取消年月日
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.SVC_CANCEL_CL_YMD, template);
		// 登録年月日時分秒 ← オプションサービス契約キャンセル.登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.ADD_DTM, template);
		// 登録オペレータアカウント ← オプションサービス契約キャンセル.登録オペレータアカウント
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.ADD_OPEACNT, template);
		// 更新年月日時分秒 ← オプションサービス契約キャンセル.更新年月日時分秒
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.UPD_DTM, template);
		// 更新オペレータアカウント ← オプションサービス契約キャンセル.更新オペレータアカウント
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.UPD_OPEACNT, template);
		// 無効フラグ ← オプションサービス契約キャンセル.無効フラグ
		setDataMap(dataMap, prefix, EKK0351C220CBSMsg.MK_FLG, template);

		JKKBpCommon.setLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"), 
				template.getString(EKK0351C220CBSMsg.UPD_DTM));

		// エラー情報の設定
		editErrInfoEKK0351C220(param, template, (Integer)returnCode, fixedText, dataMap);

		//エラー情報のマップを取得
		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));

		return param;
	}

	/**
	 * サービス契約内訳キャンセルの下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editRetEKK0161C160(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText, HashMap dataMap)
			throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		String prefix = "kk0161_";

		// 世代登録年月日時分秒 ← サービス契約内訳キャンセル.世代登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.GENE_ADD_DTM, template);
		// サービス契約内訳ステータス ← サービス契約内訳キャンセル.サービス契約内訳ステータス
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.SVC_KEI_UCWK_STAT, template);
		// 予約適用年月日 ← サービス契約内訳キャンセル.予約適用年月日
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.RSV_APLY_YMD, template);
		// 予約適用コード ← サービス契約内訳キャンセル.予約適用コード
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.RSV_APLY_CD, template);
		// サービスキャンセル年月日 ← サービス契約内訳キャンセル.サービスキャンセル年月日
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.SVC_CANCEL_YMD, template);
		// サービスキャンセル取消年月日 ← サービス契約内訳キャンセル.サービスキャンセル取消年月日
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.SVC_CANCEL_CL_YMD, template);
		// 登録年月日時分秒 ← サービス契約内訳キャンセル.登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.ADD_DTM, template);
		// 登録オペレータアカウント ← サービス契約内訳キャンセル.登録オペレータアカウント
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.ADD_OPEACNT, template);
		// 更新年月日時分秒 ← サービス契約内訳キャンセル.更新年月日時分秒
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.UPD_DTM, template);
		// 更新オペレータアカウント ← サービス契約内訳キャンセル.更新オペレータアカウント
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.UPD_OPEACNT, template);
		// 無効フラグ ← サービス契約内訳キャンセル.無効フラグ
		setDataMap(dataMap, prefix, EKK0161C160CBSMsg.MK_FLG, template);

		JKKBpCommon.setLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"), 
				template.getString(EKK0161C160CBSMsg.UPD_DTM));

		// エラー情報の設定
		editErrInfoEKK0161C160(param, template, (Integer)returnCode, fixedText, dataMap);

		//エラー情報のマップを取得
		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));

		return param;
	}
	
//OM-2016-0000752 DEL START
//	/**
//	 * エイジング削除の下りマッピング処理
//	 * <br>
//	 * @param msgList メッセージリスト
//	 * @param param リクエストパラメータ
//	 * @param fixedText ユーザ指定文字列
//	 * @param dataMap データマップ
//	 * @return リクエストパラメータ
//	 * @throws Exception 
//	 */
//	@SuppressWarnings("unchecked")
//	private IRequestParameterReadWrite editRetEZM0111E010(Map<?, ?> msgList, IRequestParameterReadWrite param, 
//			String fixedText, HashMap dataMap) throws Exception
//	{
//		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
//		CAANMsg template = templates[0];
//
//		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);
//
//		// エラー情報の設定
//		editErrInfoEZM0111E010(param, template, (Integer)returnCode, fixedText, dataMap);
//
//		//エラー情報のマップを取得
//		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));
//
//		return param;
//	}
//OM-2016-0000752 DEL END

	/**
	 * 機器提供サービス契約キャンセルの下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editRetEKK0341C330(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText,
			HashMap dataMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		String prefix = "kk0341_";

		// 世代登録年月日時分秒 ← 機器提供サービス契約キャンセル.世代登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.GENE_ADD_DTM, template);
		// 機器提供サービス契約ステータス ← 機器提供サービス契約キャンセル.機器提供サービス契約ステータス
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.KKTK_SVC_KEI_STAT, template);
		// 予約適用年月日 ← 機器提供サービス契約キャンセル.予約適用年月日
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.RSV_APLY_YMD, template);
		// 予約適用コード ← 機器提供サービス契約キャンセル.予約適用コード
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.RSV_APLY_CD, template);
		// サービスキャンセル年月日 ← 機器提供サービス契約キャンセル.サービスキャンセル年月日
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.SVC_CANCEL_YMD, template);
		// サービスキャンセル取消年月日 ← 機器提供サービス契約キャンセル.サービスキャンセル取消年月日
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.SVC_CANCEL_CL_YMD, template);
		// 登録年月日時分秒 ← 機器提供サービス契約キャンセル.登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.ADD_DTM, template);
		// 登録オペレータアカウント ← 機器提供サービス契約キャンセル.登録オペレータアカウント
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.ADD_OPEACNT, template);
		// 更新年月日時分秒 ← 機器提供サービス契約キャンセル.更新年月日時分秒
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.UPD_DTM, template);
		// 更新オペレータアカウント ← 機器提供サービス契約キャンセル.更新オペレータアカウント
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.UPD_OPEACNT, template);
		// 無効フラグ ← 機器提供サービス契約キャンセル.無効フラグ
		setDataMap(dataMap, prefix, EKK0341C330CBSMsg.MK_FLG, template);

		JKKBpCommon.setLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"), 
				template.getString(EKK0341C330CBSMsg.UPD_DTM));

		// エラー情報の設定
		editErrInfoEKK0341C330(param, template, (Integer)returnCode, fixedText, dataMap);

		// エラー情報のマップを取得
		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));

		return param;
	}

	/**
	 * サービス契約キャンセルの下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editRetEKK0081C160(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText,
			HashMap dataMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)(param.getData(fixedText));

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		String prefix = "kk0081_";

		// 世代登録年月日時分秒 ← サービス契約キャンセル.世代登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.GENE_ADD_DTM, template);
		// サービス契約ステータス ← サービス契約キャンセル.サービス契約ステータス
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.SVC_KEI_STAT, template);
		// 予約適用年月日 ← サービス契約キャンセル.予約適用年月日
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.RSV_APLY_YMD, template);
		// 予約適用コード ← サービス契約キャンセル.予約適用コード
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.RSV_APLY_CD, template);
		// サービスキャンセル年月日 ← サービス契約キャンセル.サービスキャンセル年月日
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.SVC_CANCEL_YMD, template);
		// サービスキャンセル取消年月日 ← サービス契約キャンセル.サービスキャンセル取消年月日
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.SVC_CANCEL_CL_YMD, template);
		// 登録年月日時分秒 ← サービス契約キャンセル.登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.ADD_DTM, template);
		// 登録オペレータアカウント ← サービス契約キャンセル.登録オペレータアカウント
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.ADD_OPEACNT, template);
		// 更新年月日時分秒 ← サービス契約キャンセル.更新年月日時分秒
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.UPD_DTM, template);
		// 更新オペレータアカウント ← サービス契約キャンセル.更新オペレータアカウント
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.UPD_OPEACNT, template);
		// 無効フラグ ← サービス契約キャンセル.無効フラグ
		setDataMap(dataMap, prefix, EKK0081C160CBSMsg.MK_FLG, template);

		JKKBpCommon.setLastDtmBySvcKeiNo(param, (String)inMap.get("kk0111_svc_kei_no"), 
				template.getString(EKK0081C160CBSMsg.UPD_DTM));
		
		String mskmDtlNo = template.getString(EKK0081C160CBSMsg.MSKM_DTL_NO);
		String svcKeiNo = template.getString(EKK0081C160CBSMsg.SVC_KEI_NO);
		
		// 申込明細番号サービス契約番号変換マップ設定処理
		JKKKeiNewMskmWorkAreaUtil.putMskmDtlNoToSvcKeiNoMap(param, mskmDtlNo, svcKeiNo);

		// エラー情報の設定
		editErrInfoEKK0081C160(param, template, (Integer)returnCode, fixedText, dataMap);

		//エラー情報のマップを取得
		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));

		return param;
	}

	/**
	 * 申込明細キャンセルの下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editRetEKK0021C070(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText, 
			HashMap dataMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		String prefix = "kk0021_";

		// 世代登録年月日時分秒 ← 申込明細キャンセル.世代登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0021C070CBSMsg.GENE_ADD_DTM, template);
		// 申込明細ステータス ← 申込明細キャンセル.申込明細ステータス
		setDataMap(dataMap, prefix, EKK0021C070CBSMsg.MSKM_DTL_STAT, template);
		// 申込明細キャンセル年月日 ← 申込明細キャンセル.申込明細キャンセル年月日
		setDataMap(dataMap, prefix, EKK0021C070CBSMsg.MSKM_DTL_CANCEL_YMD, template);
		// 申込明細キャンセル取消年月日 ← 申込明細キャンセル.申込明細キャンセル取消年月日
		setDataMap(dataMap, prefix, EKK0021C070CBSMsg.MSKM_DTL_CANCEL_CL_YMD, template);
		// 登録年月日時分秒 ← 申込明細キャンセル.登録年月日時分秒
		setDataMap(dataMap, prefix, EKK0021C070CBSMsg.ADD_DTM, template);
		// 登録オペレータアカウント ← 申込明細キャンセル.登録オペレータアカウント
		setDataMap(dataMap, prefix, EKK0021C070CBSMsg.ADD_OPEACNT, template);
		// 更新年月日時分秒 ← 申込明細キャンセル.更新年月日時分秒
		setDataMap(dataMap, prefix, EKK0021C070CBSMsg.UPD_DTM, template);
		// 更新オペレータアカウント ← 申込明細キャンセル.更新オペレータアカウント
		setDataMap(dataMap, prefix, EKK0021C070CBSMsg.UPD_OPEACNT, template);
		// 無効フラグ ← 申込明細キャンセル.無効フラグ
		setDataMap(dataMap, prefix, EKK0021C070CBSMsg.MK_FLG, template);

		JKKBpCommon.setLastDtmByMskm(param, template.getString(EKK0021C070CBSMsg.UPD_DTM));

		// エラー情報の設定
		editErrInfoEKK0021C070(param, template, (Integer)returnCode, fixedText, dataMap);

		// エラー情報のマップを取得
		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));

		return param;
	}
// ANK-4494-00-00 DEL START
//	/**
//	 * 同番移転取消依頼の下りマッピング処理
//	 * <br>
//	 * @param msgList メッセージリスト
//	 * @param param リクエストパラメータ
//	 * @param fixedText ユーザー固定文字列
//	 * @param dataMap データ格納マップ
//	 * @return リクエストパラメータ
//	 * @throws Exception 
//	 */
//	@SuppressWarnings("unchecked")
//	private IRequestParameterReadWrite editRetETU0021C030(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText, 
//			HashMap dataMap) throws Exception
//	{
//		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
//		CAANMsg template = templates[0];
//
//		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);
//
//		// 作業領域のマップを取得
//		Map workMap = param.getMappingWorkArea();
//		if (workMap == null)
//		{
//			workMap = new HashMap();
//			param.setMappingWorkArea(workMap);
//		}
//
//		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME);
//		if (workDataMap == null)
//		{
//			workDataMap = new HashMap();
//			workMap.put(CC_WORK_AREA_NAME, workDataMap);
//		}
//
//		String prefix = "tu0021_";
//
//		setDataMap(dataMap, prefix, ETU0021C030CBSMsg.DOBANITEN_STAT, template);	// 同番移転ステータス ← 同番移転登録.同番移転ステータス
//		setDataMap(dataMap, prefix, ETU0021C030CBSMsg.UPD_DTM, template);	// 更新年月日時分秒 ← 同番移転登録.更新年月日時分秒
//		setDataMap(dataMap, prefix, ETU0021C030CBSMsg.UPD_OPEACNT, template);	// 更新オペレータアカウント ← 同番移転登録.更新オペレータアカウント
//
//		// エラー情報の設定
//		editErrInfoETU0021C030(param, template, (Integer)returnCode, fixedText, dataMap);
//
//		// エラー情報のマップを取得
//		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));
//
//		return param;
//	}
// ANK-4494-00-00 DEL END

	/**
	 * 電話番号一意照会下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEZM0121A010(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText, 
			HashMap dataMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME);
		if (workDataMap == null)
		{
			workDataMap = new HashMap();
			workMap.put(CC_WORK_AREA_NAME, workDataMap);
		}

		CAANMsg[] templateArray = template.getCAANMsgList(EZM0121A010CBSMsg.EZM0121A010CBSMSG1LIST);
		
		if (templateArray != null)
		{
			CAANMsg childTemplate = templateArray[0];
			
			dataMap.put("zm0121_telno", childTemplate.getString(EZM0121A010CBSMsg1List.TELNO));	// 電話番号 ← 電話番号一意照会.電話番号
			dataMap.put("zm0121_kyoku_no", childTemplate.getString(EZM0121A010CBSMsg1List.KYOKU_NO));	// 局番 ← 電話番号一意照会.局番
			dataMap.put("zm0121_no_cd", childTemplate.getString(EZM0121A010CBSMsg1List.NO_CD));	// 番号コード ← 電話番号一意照会.番号コード
			dataMap.put("zm0121_no_cd_nm", childTemplate.getString(EZM0121A010CBSMsg1List.NO_CD_NM));	// 番号コード名称 ← 電話番号一意照会.番号コード名称
			// 割当通信事業者コード ← 電話番号一意照会.割当通信事業者コード
			dataMap.put("zm0121_wariate_tsjgs_cd", childTemplate.getString(EZM0121A010CBSMsg1List.WARIATE_TSJGS_CD));
			// 割当通信事業者コード名称 ← 電話番号一意照会.割当通信事業者コード名称
			dataMap.put("zm0121_wariate_tsjgs_cd_nm", childTemplate.getString(EZM0121A010CBSMsg1List.WARIATE_TSJGS_CD_NM));
			// 使用通信事業者コード ← 電話番号一意照会.使用通信事業者コード
			dataMap.put("zm0121_use_tsjgs_cd", childTemplate.getString(EZM0121A010CBSMsg1List.USE_TSJGS_CD));
			// 使用通信事業者コード名称 ← 電話番号一意照会.使用通信事業者コード名称
			dataMap.put("zm0121_use_tsjgs_cd_nm", childTemplate.getString(EZM0121A010CBSMsg1List.USE_TSJGS_CD_NM));
			// サービス区分 ← 電話番号一意照会.サービス区分
			dataMap.put("zm0121_svc_div", childTemplate.getString(EZM0121A010CBSMsg1List.SVC_DIV));
			// サービス区分名称 ← 電話番号一意照会.サービス区分名称
			dataMap.put("zm0121_svc_div_nm", childTemplate.getString(EZM0121A010CBSMsg1List.SVC_DIV_NM));
			// 引当制約種別コード ← 電話番号一意照会.引当制約種別コード
			dataMap.put("zm0121_hkat_siyk_sbt_cd", childTemplate.getString(EZM0121A010CBSMsg1List.HKAT_SIYK_SBT_CD));
			// 引当制約種別コード名称 ← 電話番号一意照会.引当制約種別コード名称
			dataMap.put("zm0121_hkat_siyk_sbt_cd_nm", childTemplate.getString(EZM0121A010CBSMsg1List.HKAT_SIYK_SBT_CD_NM));
			// 引当制約設定年月日時分秒 ← 電話番号一意照会.引当制約設定年月日時分秒
			dataMap.put("zm0121_hkat_siyk_set_dtm", childTemplate.getString(EZM0121A010CBSMsg1List.HKAT_SIYK_SET_DTM));
			// 電話番号説明 ← 電話番号一意照会.電話番号説明
			dataMap.put("zm0121_tln_setmei", childTemplate.getString(EZM0121A010CBSMsg1List.TLN_SETMEI));
			// 個人法人電話番号帯コード ← 電話番号一意照会.個人法人電話番号帯コード
			dataMap.put("zm0121_kojin_hojin_tln_tai_cd", childTemplate.getString(EZM0121A010CBSMsg1List.KOJIN_HOJIN_TLN_TAI_CD));
			// 個人法人電話番号帯コード名称 ← 電話番号一意照会.個人法人電話番号帯コード名称
			dataMap.put("zm0121_kojin_hojin_tln_tai_cd_nm", childTemplate.getString(EZM0121A010CBSMsg1List.KOJIN_HOJIN_TLN_TAI_CD_NM));
			// C5サーバ号機識別コード ← 電話番号一意照会.C5サーバ号機識別コード
			dataMap.put("zm0121_c5_server_goki_skbt_cd", childTemplate.getString(EZM0121A010CBSMsg1List.C5_SERVER_GOKI_SKBT_CD));
			// C5サーバ号機識別コード名称 ← 電話番号一意照会.C5サーバ号機識別コード名称
			dataMap.put("zm0121_c5_server_goki_skbt_cd_nm", childTemplate.getString(EZM0121A010CBSMsg1List.C5_SERVER_GOKI_SKBT_CD_NM));
			// 電話番号適用開始年月日 ← 電話番号一意照会.電話番号適用開始年月日
			dataMap.put("zm0121_telno_tstaymd", childTemplate.getString(EZM0121A010CBSMsg1List.TELNO_TSTAYMD));
			// 電話番号適用終了年月日 ← 電話番号一意照会.電話番号適用終了年月日
			dataMap.put("zm0121_telno_tendymd", childTemplate.getString(EZM0121A010CBSMsg1List.TELNO_TENDYMD));
			// NRN番号 ← 電話番号一意照会.NRN番号
			dataMap.put("zm0121_nrn_no", childTemplate.getString(EZM0121A010CBSMsg1List.NRN_NO));
			// 初回割当年月日 ← 電話番号一意照会.初回割当年月日
			dataMap.put("zm0121_first_wariate_ymd", childTemplate.getString(EZM0121A010CBSMsg1List.FIRST_WARIATE_YMD));
			// 登録年月日時分秒 ← 電話番号一意照会.登録年月日時分秒
			dataMap.put("zm0121_add_dtm", childTemplate.getString(EZM0121A010CBSMsg1List.ADD_DTM));
			// 登録オペレータアカウント ← 電話番号一意照会.登録オペレータアカウント
			dataMap.put("zm0121_add_opeacnt", childTemplate.getString(EZM0121A010CBSMsg1List.ADD_OPEACNT));
			// 更新年月日時分秒 ← 電話番号一意照会.更新年月日時分秒
			dataMap.put("zm0121_last_upd_dtm_bf", childTemplate.getString(EZM0121A010CBSMsg1List.UPD_DTM));
			// 更新オペレータアカウント ← 電話番号一意照会.更新オペレータアカウント
			dataMap.put("zm0121_upd_opeacnt", childTemplate.getString(EZM0121A010CBSMsg1List.UPD_OPEACNT));
			// 削除年月日時分秒 ← 電話番号一意照会.削除年月日時分秒
			dataMap.put("zm0121_del_dtm", childTemplate.getString(EZM0121A010CBSMsg1List.DEL_DTM));
			// 削除オペレータアカウント ← 電話番号一意照会.削除オペレータアカウント
			dataMap.put("zm0121_del_opeacnt", childTemplate.getString(EZM0121A010CBSMsg1List.DEL_OPEACNT));
			// 無効フラグ ← 電話番号一意照会.無効フラグ
			dataMap.put("zm0121_mk_flg", childTemplate.getString(EZM0121A010CBSMsg1List.MK_FLG));
			// 無効フラグ名称 ← 電話番号一意照会.無効フラグ名称
			dataMap.put("zm0121_mk_flg_nm", childTemplate.getString(EZM0121A010CBSMsg1List.MK_FLG_NM));
		}
		
		// エラー情報の設定
		editErrInfoEZM0121A010(param, template, (Integer)returnCode, fixedText, dataMap);

		// エラー情報のマップを取得
		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));
		
		return param;
	}
	
	/**
	 * 電話番号物理削除下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEZM0121E011(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText, 
			HashMap dataMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME);
		if (workDataMap == null)
		{
			workDataMap = new HashMap();
			workMap.put(CC_WORK_AREA_NAME, workDataMap);
		}

		String prefix = "zm0121_";
		
		setDataMap(dataMap, prefix, EZM0121E011CBSMsg.TELNO, template);	// 電話番号 ← 電話番号.電話番号
		setDataMap(dataMap, prefix, EZM0121E011CBSMsg.LAST_UPD_DTM_BF, template);	// 更新前最終年月日時分秒 ← 電話番号.更新前最終年月日時分秒
		
		// エラー情報の設定
		editErrInfoEZM0121E011(param, template, (Integer)returnCode, fixedText, dataMap);

		// エラー情報のマップを取得
		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));
		
		return param;
	}
	
	/**
	 * 電話帳申込削除下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetETU0081E011(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText, 
			HashMap dataMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME);
		if (workDataMap == null)
		{
			workDataMap = new HashMap();
			workMap.put(CC_WORK_AREA_NAME, workDataMap);
		}

		String prefix = "tu0081_";
		
		setDataMap(dataMap, prefix, ETU0081E011CBSMsg.UPD_DTM,     template);	// 更新年月日時分秒         ← 電話帳申込.更新年月日時分秒
		setDataMap(dataMap, prefix, ETU0081E011CBSMsg.UPD_OPEACNT, template);	// 更新オペレータアカウント ← 電話帳申込.更新オペレータアカウント
		setDataMap(dataMap, prefix, ETU0081E011CBSMsg.DEL_DTM,     template);	// 削除年月日時分秒         ← 電話帳申込.削除年月日時分秒
		setDataMap(dataMap, prefix, ETU0081E011CBSMsg.DEL_OPEACNT, template);	// 削除オペレータアカウント ← 電話帳申込.削除オペレータアカウント
		setDataMap(dataMap, prefix, ETU0081E011CBSMsg.UPD_DTM_BF,  template);	// 更新前更新年月日時分秒   ← 電話帳申込.更新前更新年月日時分秒
		setDataMap(dataMap, prefix, ETU0081E011CBSMsg.MK_FLG,      template);	// 無効フラグ               ← 電話帳申込.無効フラグ

		// エラー情報の設定
		editErrInfoETU0081E011(param, template, (Integer)returnCode, fixedText, dataMap);

		// エラー情報のマップを取得
		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));
		return param;
	}
	
	/**
	 * 電話帳申込内容削除下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetETU0091E011(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText, 
			HashMap dataMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME);
		if (workDataMap == null)
		{
			workDataMap = new HashMap();
			workMap.put(CC_WORK_AREA_NAME, workDataMap);
		}

		String prefix = "tu0091_";
		
		setDataMap(dataMap, prefix, ETU0091E011CBSMsg.UPD_DTM,     template);	// 更新年月日時分秒         ← 電話帳申込内容.更新年月日時分秒
		setDataMap(dataMap, prefix, ETU0091E011CBSMsg.UPD_OPEACNT, template);	// 更新オペレータアカウント ← 電話帳申込内容.更新オペレータアカウント
		setDataMap(dataMap, prefix, ETU0091E011CBSMsg.DEL_DTM,     template);	// 削除年月日時分秒         ← 電話帳申込内容.削除年月日時分秒
		setDataMap(dataMap, prefix, ETU0091E011CBSMsg.DEL_OPEACNT, template);	// 削除オペレータアカウント ← 電話帳申込内容.削除オペレータアカウント
		setDataMap(dataMap, prefix, ETU0091E011CBSMsg.MK_FLG,      template);	// 無効フラグ               ← 電話帳申込内容.無効フラグ

		// エラー情報の設定
		editErrInfoETU0091E011(param, template, (Integer)returnCode, fixedText, dataMap);

		// エラー情報のマップを取得
		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));
		return param;
	}
	
//OM-2016-0000752 ADD START
	
	/**
	 * エイジング対象使用終了の下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザ指定文字列
	 * @param dataMap データマップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEZM0111C010(Map<?, ?> msgList, IRequestParameterReadWrite param, 
			String fixedText, HashMap dataMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// エラー情報の設定
		editErrInfoEZM0111C010(param, template, (Integer)returnCode, fixedText, dataMap);

		//エラー情報のマップを取得
		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));

		return param;
	}
	
	/**
	 * エイジング一覧照会（ユニーク）下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param dataMap データ格納マップ
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEZM0111B040(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText,
			HashMap dataMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		CAANMsg[] templateArray = template.getCAANMsgList(EZM0111B040CBSMsg.EZM0111B040CBSMSG1LIST);
		
		if (templateArray != null)
		{
			if (templateArray.length > 0)
			{
				CAANMsg childTemplate = templateArray[0];
				
				// 更新年月日時分秒
				dataMap.put("zm0111_last_upd_dtm_bf", childTemplate.getString(EZM0111B040CBSMsg1List.UPD_DTM));
			}
		}
		
		// エラー情報の設定
		editErrInfoEZM0111B040(param, template, (Integer)returnCode, fixedText, dataMap);
		
		// エラー情報のマップを取得
		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));
		
		return param;
	}
//OM-2016-0000752 ADD END
	
	/**
	 * サブオプションサービス契約キャンセルのエラー情報マッピング処理を行います。
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param template CAANMsg
	 * @param returnCode リターンコード
	 * @param fixedText ユーザー固定文字列
	 * @param inMap インプットマップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editErrInfoEKK0401C150(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, String fixedText, 
			HashMap inMap) throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EKK0401C150CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "kk0401_";

		// サブオプションサービス契約キャンセル.オプションサービス契約番号 → オプションサービス契約番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0401C150CBSMsg.OP_SVC_KEI_NO_ERR, template);
		// サブオプションサービス契約キャンセル.サブオプションサービス契約番号 → サブオプションサービス契約番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0401C150CBSMsg.SBOP_SVC_KEI_NO_ERR, template);
		// サブオプションサービス契約キャンセル.申込明細番号 → 申込明細番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0401C150CBSMsg.MSKM_DTL_NO_ERR, template);
		// サブオプションサービス契約キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コードのエラー情報返却
		setErrInfo(inMap, prefix, EKK0401C150CBSMsg.SVC_CANCEL_RSN_CD_ERR, template);
		// サブオプションサービス契約キャンセル.異動区分 → 異動区分のエラー情報返却
		setErrInfo(inMap, prefix, EKK0401C150CBSMsg.IDO_DIV_ERR, template);
		// サブオプションサービス契約キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)のエラー情報返却
		setErrInfo(inMap, prefix, EKK0401C150CBSMsg.UPD_DTM_BF_ERR, template);

		return param;
	}

	/**
	 * オプションサービス契約キャンセルのエラー情報マッピング処理を行います。
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param template CAANMsg
	 * @param returnCode リターンコード
	 * @param fixedText ユーザー固定文字列
	 * @param inMap インプットマップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editErrInfoEKK0351C220(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, String fixedText,
			HashMap inMap) throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EKK0351C220CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "kk0351_";

		// オプションサービス契約キャンセル.オプションサービス契約番号 → オプションサービス契約番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0351C220CBSMsg.OP_SVC_KEI_NO_ERR, template);
		// オプションサービス契約キャンセル.申込明細番号 → 申込明細番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0351C220CBSMsg.MSKM_DTL_NO_ERR, template);
		// オプションサービス契約キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コードのエラー情報返却
		setErrInfo(inMap, prefix, EKK0351C220CBSMsg.SVC_CANCEL_RSN_CD_ERR, template);
		// オプションサービス契約キャンセル.異動区分 → 異動区分のエラー情報返却
		setErrInfo(inMap, prefix, EKK0351C220CBSMsg.IDO_DIV_ERR, template);
		// オプションサービス契約キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)のエラー情報返却
		setErrInfo(inMap, prefix, EKK0351C220CBSMsg.UPD_DTM_BF_ERR, template);

		return param;
	}

	/**
	 * サービス契約内訳キャンセルのエラー情報マッピング処理を行います。
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param templates CAANMsg[]
	 * @param returnCode リターンコード
	 * @param fixedText ユーザー固定文字列
	 * @param inMap インプットマップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editErrInfoEKK0161C160(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, String fixedText,
			HashMap inMap) throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EKK0161C160CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "kk0161_";

		// サービス契約内訳キャンセル.サービス契約内訳番号 → サービス契約内訳番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0161C160CBSMsg.SVC_KEI_UCWK_NO_ERR, template);
		// サービス契約内訳キャンセル.申込明細番号 → 申込明細番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0161C160CBSMsg.MSKM_DTL_NO_ERR, template);
		// サービス契約内訳キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コードのエラー情報返却
		setErrInfo(inMap, prefix, EKK0161C160CBSMsg.SVC_CANCEL_RSN_CD_ERR, template);
		// サービス契約内訳キャンセル.異動区分 → 異動区分のエラー情報返却
		setErrInfo(inMap, prefix, EKK0161C160CBSMsg.IDO_DIV_ERR, template);
		// サービス契約内訳キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)のエラー情報返却
		setErrInfo(inMap, prefix, EKK0161C160CBSMsg.UPD_DTM_BF_ERR, template);

		return param;
	}
	
//OM-2016-0000752 DEL START
//	/**
// 	 * エイジング削除のエラー情報マッピング処理を行います。
// 	 * <br>
// 	 * @param iparam リクエストパラメータ
// 	 * @param template テンプレートリスト
// 	 * @param returnCode リターンコード
// 	 * @param fixedText サービスメッセージ
// 	 * @param inMap エイジング削除マップ
// 	 * @return リクエストパラメータ
// 	 * @throws RequestParameterException
// 	 */
//	@SuppressWarnings("unchecked")
//	private IRequestParameterReadWrite editErrInfoEZM0111E010(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, 
//			String fixedText, HashMap inMap)
//	throws RequestParameterException
//	{
//		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EZM0111E010CBSMsg.STATUS), returnCode);
//
//		// プレフィックスの設定
//		String prefix = "zm0111_";
//
//		// エイジング削除.エイジング種別コード → エイジング種別コードのエラー情報返却
//		setErrInfo(inMap, prefix, EZM0111E010CBSMsg.AGING_SBT_CD_ERR, template);	
//		// エイジング削除.エイジング対象値 → エイジング対象値のエラー情報返却
//		setErrInfo(inMap, prefix, EZM0111E010CBSMsg.AGING_TG_VALUE_ERR, template);	
//		// エイジング削除.更新前最終年月日時分秒 → 更新前最終年月日時分秒のエラー情報返却
//		setErrInfo(inMap, prefix, EZM0111E010CBSMsg.LAST_UPD_DTM_BF_ERR, template);	
//
//		return param;
//	}
//OM-2016-0000752 DEL END

	/**
	 * 機器提供サービス契約キャンセルのエラー情報マッピング処理を行います。
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param templates CAANMsg[]
	 * @param returnCode リターンコード
	 * @param fixedText ユーザー固定文字列
	 * @param inMap インプットマップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editErrInfoEKK0341C330(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode,
			String fixedText, HashMap inMap)
			throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EKK0341C330CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "kk0341_";

		// 機器提供サービス契約キャンセル.機器提供サービス契約番号 → 機器提供サービス契約番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0341C330CBSMsg.KKTK_SVC_KEI_NO_ERR, template);
		// 機器提供サービス契約キャンセル.申込明細番号 → 申込明細番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0341C330CBSMsg.MSKM_DTL_NO_ERR, template);
		// 機器提供サービス契約キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コードのエラー情報返却
		setErrInfo(inMap, prefix, EKK0341C330CBSMsg.SVC_CANCEL_RSN_CD_ERR, template);
		// 機器提供サービス契約キャンセル.異動区分 → 異動区分のエラー情報返却
		setErrInfo(inMap, prefix, EKK0341C330CBSMsg.IDO_DIV_ERR, template);
		// 機器提供サービス契約キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)のエラー情報返却
		setErrInfo(inMap, prefix, EKK0341C330CBSMsg.UPD_DTM_BF_ERR, template);

		return param;
	}

	/**
	 * サービス契約キャンセルのエラー情報マッピング処理を行います。
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param templates CAANMsg[]
	 * @param returnCode リターンコード
	 * @param fixedText ユーザー固定文字列
	 * @param inMap インプットマップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editErrInfoEKK0081C160(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, 
			String fixedText, HashMap inMap)
			throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EKK0081C160CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "kk0081_";

		// サービス契約キャンセル.サービス契約番号 → サービス契約番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0081C160CBSMsg.SVC_KEI_NO_ERR, template);
		// サービス契約キャンセル.申込明細番号 → 申込明細番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0081C160CBSMsg.MSKM_DTL_NO_ERR, template);
		// サービス契約キャンセル.サービスキャンセル理由コード → サービスキャンセル理由コードのエラー情報返却
		setErrInfo(inMap, prefix, EKK0081C160CBSMsg.SVC_CANCEL_RSN_CD_ERR, template);
		// サービス契約キャンセル.異動区分 → 異動区分のエラー情報返却
		setErrInfo(inMap, prefix, EKK0081C160CBSMsg.IDO_DIV_ERR, template);
		// サービス契約キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)のエラー情報返却
		setErrInfo(inMap, prefix, EKK0081C160CBSMsg.UPD_DTM_BF_ERR, template);

		return param;
	}

	/**
	 * 申込明細キャンセルのエラー情報マッピング処理を行います。
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param templates CAANMsg[]
	 * @param returnCode リターンコード
	 * @param fixedText ユーザー固定文字列
	 * @param inMap インプットマップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings({ "unchecked" })
	private IRequestParameterReadWrite editErrInfoEKK0021C070(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode,
			String fixedText, HashMap inMap)
			throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EKK0021C070CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "kk0021_";

		// 申込明細キャンセル.申込明細番号 → 申込明細番号のエラー情報返却
		setErrInfo(inMap, prefix, EKK0021C070CBSMsg.MSKM_DTL_NO_ERR, template);
		// 申込明細キャンセル.申込明細キャンセル理由コード → 申込明細キャンセル理由コードのエラー情報返却
		setErrInfo(inMap, prefix, EKK0021C070CBSMsg.MSKM_DTL_CANCEL_RSN_CD_ERR, template);
		// 申込明細キャンセル.申込明細キャンセル理由メモ → 申込明細キャンセル理由メモのエラー情報返却
		setErrInfo(inMap, prefix, EKK0021C070CBSMsg.MSKM_DTL_CANCEL_RSN_MEMO_ERR, template);
		// 申込明細キャンセル.更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)のエラー情報返却
		setErrInfo(inMap, prefix, EKK0021C070CBSMsg.UPD_DTM_BF_ERR, template);

		return param;
	}
// ANK-4494-00-00 DEL START
//	/**
//	 * 同番移転取消依頼のエラー情報マッピング処理を行います。
//	 * <br>
//	 * @param iparam リクエストパラメータ
//	 * @param template テンプレートリスト
//	 * @param returnCode リターンコード
//	 * @param fixedText サービスメッセージ
//	 * @param inMap インプットマップ
//	 * @return リクエストパラメータ
//	 * @throws RequestParameterException
//	 */
//	@SuppressWarnings("unchecked")
//	private IRequestParameterReadWrite editErrInfoETU0021C030(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, 
//			String fixedText, HashMap inMap)
//	throws RequestParameterException
//	{
//		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(ETU0021C030CBSMsg.STATUS), returnCode);
//
//		// プレフィックスの設定
//		String prefix = "tu0021_";
//
//		// 同番移転登録.同番移転番号 → 同番移転番号のエラー情報返却
//		setErrInfo(inMap, prefix, ETU0021C030CBSMsg.DOBANITEN_NO_ERR, template);	
//		// 同番移転登録.世代登録年月日時分秒 → 世代登録年月日時分秒のエラー情報返却
//		setErrInfo(inMap, prefix, ETU0021C030CBSMsg.GENE_ADD_DTM_ERR, template);	
//		// 同番移転登録.更新前更新年月日時分秒 → 更新前更新年月日時分秒のエラー情報返却
//		setErrInfo(inMap, prefix, ETU0021C030CBSMsg.UPD_DTM_BF_ERR, template);	
//		
//		return param;
//	}
// ANK-4494-00-00 DEL END

	
	/**
	 * 電話番号一意照会エラー情報マッピング処理
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param template テンプレートリスト
	 * @param returnCode リターンコード
	 * @param fixedText サービスメッセージ
	 * @param inMap 電話番号一意照会設定マップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrInfoEZM0121A010(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, 
			String fixedText, HashMap inMap)
	throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EZM0121A010CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "zm0121_";
		
		// 電話番号一意照会.電話番号一意照会明細 → 電話番号一意照会.電話番号一意照会明細のエラー情報返却
		setErrInfo(inMap, prefix, EZM0121A010CBSMsg.EZM0121A010CBSMSG1LIST_ERR, template);
		// 電話番号一意照会.電話番号 → 電話番号一意照会.電話番号のエラー情報返却
		setErrInfo(inMap, prefix, EZM0121A010CBSMsg.KEY_TELNO_ERR, template);
		
		return param;
	}
	
	/**
	 * 電話番号物理削除エラー情報マッピング処理
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param template テンプレートリスト
	 * @param returnCode リターンコード
	 * @param fixedText サービスメッセージ
	 * @param inMap 電話番号物理削除設定マップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrInfoEZM0121E011(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, 
			String fixedText, HashMap inMap)
	throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EZM0121E011CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "zm0121_";
		
		// 電話番号.電話番号 → 電話番号.電話番号のエラー情報返却
		setErrInfo(inMap, prefix, EZM0121E011CBSMsg.TELNO_ERR, template);
		// 電話番号.更新前最終更新年月日 → 電話番号.更新前最終更新年月日のエラー情報返却
		setErrInfo(inMap, prefix, EZM0121E011CBSMsg.LAST_UPD_DTM_BF_ERR, template);
		
		return param;
	}
	
	/**
	 * 電話帳申込削除エラー情報マッピング処理
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param template テンプレートリスト
	 * @param returnCode リターンコード
	 * @param fixedText サービスメッセージ
	 * @param inMap 電話番号物理削除設定マップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrInfoETU0081E011(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, 
			String fixedText, HashMap inMap)
	throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(ETU0081E011CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "tu0081_";
		
		// 電話帳申込.電話帳申込番号 → 電話帳申込.電話帳申込番号のエラー情報返却
		setErrInfo(inMap, prefix, ETU0081E011CBSMsg.DNWACHO_MSKM_NO_ERR, template);
		// 電話帳申込.更新前更新年月日時分秒 → 電話帳申込.更新前更新年月日時分秒のエラー情報返却
		setErrInfo(inMap, prefix, ETU0081E011CBSMsg.UPD_DTM_BF_ERR, template);
		
		return param;
	}
	
	/**
	 * 電話帳申込内容削除エラー情報マッピング処理
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param template テンプレートリスト
	 * @param returnCode リターンコード
	 * @param fixedText サービスメッセージ
	 * @param inMap 電話番号物理削除設定マップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrInfoETU0091E011(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, 
			String fixedText, HashMap inMap)
	throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(ETU0091E011CBSMsg.STATUS), returnCode);
		
		// プレフィックスの設定
		String prefix = "tu0091_";
		
		// 電話帳申込内容.電話帳申込番号 → 電話帳申込内容.電話帳申込番号のエラー情報返却
		setErrInfo(inMap, prefix, ETU0091E011CBSMsg.DNWACHO_MSKM_NO_ERR, template);
		
		return param;
	}
	
//OM-2016-0000752 ADD START
	
	/**
	 * エイジング対象使用終了のエラー情報マッピング処理を行います。
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param template テンプレートリスト
	 * @param returnCode リターンコード
	 * @param fixedText サービスメッセージ
	 * @param inMap エイジング削除マップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrInfoEZM0111C010(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, 
			String fixedText, HashMap inMap)
	throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EZM0111C010CBSMsg.STATUS), returnCode);

		// プレフィックスの設定
		String prefix = "zm0111_";

		// エイジング対象使用終了.エイジング種別コード → エイジング種別コードのエラー情報返却
		setErrInfo(inMap, prefix, EZM0111C010CBSMsg.AGING_SBT_CD_ERR, template);	
		// エイジング対象使用終了.エイジング対象値 → エイジング対象値のエラー情報返却
		setErrInfo(inMap, prefix, EZM0111C010CBSMsg.AGING_TG_VALUE_ERR, template);	
		// エイジング対象使用終了.更新前最終年月日時分秒 → 更新前最終年月日時分秒のエラー情報返却
		setErrInfo(inMap, prefix, EZM0111C010CBSMsg.LAST_UPD_DTM_BF_ERR, template);	

		return param;
	}
	
	/**
	 * エイジング一覧照会（ユニーク）のエラー情報マッピング処理を行います。
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param template テンプレートリスト
	 * @param returnCode リターンコード
	 * @param fixedText サービスメッセージ
	 * @param inMap エイジング一覧照会（ユニーク）マップ
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editErrInfoEZM0111B040(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode,
			String fixedText, HashMap inMap) throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EZM0111B040CBSMsg.STATUS), returnCode);

		// エイジング一覧照会（ユニーク）.エイジング種別コード → エイジング種別コードのエラー情報返却
		if (!template.isNull(EZM0111B040CBSMsg.KEY_AGING_SBT_CD_ERR))
		{
			inMap.put("zm0111_aging_sbt_cd_err", template.getString(EZM0111B040CBSMsg.KEY_AGING_SBT_CD_ERR));
		}
		// エイジング一覧照会（ユニーク）.エイジング対象値 → エイジング対象値のエラー情報返却
		if (!template.isNull(EZM0111B040CBSMsg.KEY_AGING_TG_VALUE_ERR))
		{
			inMap.put("zm0111_aging_tg_value_err", template.getString(EZM0111B040CBSMsg.KEY_AGING_TG_VALUE_ERR));
		}

		return param;
	}
//OM-2016-0000752 ADD END

	/**
	 * eo光電話パックのキャンセルを行います。
	 * <br/>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザー固定文字列
	 * @param cnclEohtlPackMap eo光電話パックキャンセルマップ
	 * @return リクエストパラメータ
	 * @throws Throwable
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite cancelEohtlPack(SessionHandle handle, IRequestParameterReadWrite param, String fixedText,
			HashMap cnclEohtlPackMap) throws Throwable
	{
		HashMap dataMap = new HashMap();
		
		// SYSID
		dataMap.put("sysid", cnclEohtlPackMap.get("sysid"));
		
		// サービス契約番号
		String svcKeiNo = (String)cnclEohtlPackMap.get("svc_kei_no");
		dataMap.put("svc_kei_no", svcKeiNo);
		
		// サービス契約内訳番号
		dataMap.put("svc_kei_ucwk_no", cnclEohtlPackMap.get("svc_kei_ucwk_no"));
		// 申込明細番号
		dataMap.put("mskm_dtl_no", cnclEohtlPackMap.get("mskm_dtl_no"));
		// サービスキャンセル理由コード
		dataMap.put("svc_cancel_rsn_cd", cnclEohtlPackMap.get("svc_cancel_rsn_cd"));
		// 起算日
		dataMap.put("kisan_ymd", cnclEohtlPackMap.get("kisan_ymd"));
		// 異動区分
		dataMap.put("ido_div", cnclEohtlPackMap.get("ido_div"));
		// パック割区分
		dataMap.put("pack_div", cnclEohtlPackMap.get("pack_div"));
		
		// 更新年月日時分秒（更新前）
		dataMap.put("kk0081_upd_dtm", JKKBpCommon.getLastDtmBySvcKeiNo(param, svcKeiNo,
				(String)cnclEohtlPackMap.get("kk0081_upd_dtm")));
		
		JKKBpCommon.cnclEohtlPack(handle, param, dataMap);
		
		// 更新年月日時分秒
		String updDtm = (String)dataMap.get("upd_dtm");
		cnclEohtlPackMap.put("upd_dtm", updDtm);
		JKKBpCommon.setLastDtmBySvcKeiNo(param, svcKeiNo, updDtm);
		
		return param;
	}
}

