/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKPalnChgRevExchgCpCst
*	ソースファイル名	：JBSbatKKPalnChgRevExchgCpCst.java
*	作成者				：富士通　
*	作成日				：2013年10月03日
*＜機能概要＞
*　プラン変更時ＣＰ復活／付替対象判定部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2013/10/03   富士通		新規作成
*	v5.00.00	2013/10/24   富士通		【IT1-2013-0001660_クローズ漏れ】
*	v7.00.00	2014/02/17   富士通		【OM-2014-0000519】
*********************************************************************/
package eo.business.service;

import java.util.HashMap;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JKKBatConst;
import eo.business.util.file.JBSbatKKIFM522;
import eo.business.util.file.JBSbatKKIFM523;
import eo.business.util.file.JBSbatKKIFM524;
import eo.business.util.table.JBSbatKK_M_WRIB_SVC;
import eo.business.util.table.JBSbatKK_M_WRIB_SVC_DTL;
import eo.business.util.table.JBSbatKK_T_ADCHG_DTL;
import eo.business.util.table.JBSbatKK_T_IDO_RSV;
import eo.business.util.table.JBSbatKK_T_KJ_FIN_WK;
import eo.business.util.table.JBSbatKU_T_KOJIAK;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatServiceInterfaceMap;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.util.JBSbatCheckUtil;
import eo.framework.util.JBSbatDateUtil;
import eo.framework.util.JBSbatStringUtil;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKPalnChgRevExchgCpCst extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(割引サービス対象サービス)*/
	private static final String D_TBL_NAME_KK_M_WRISVC_TG_SVC = "KK_M_WRISVC_TG_SVC";

	/** テーブル(割引サービス契約)*/
	private static final String D_TBL_NAME_KK_T_WRIB_SVC_KEI = "KK_T_WRIB_SVC_KEI";

	/** テーブル(割引サービス詳細)*/
	private static final String D_TBL_NAME_KK_M_WRIB_SVC_DTL = "KK_M_WRIB_SVC_DTL";
	
	/** テーブル(異動予約)*/
	private static final String D_TBL_NAME_KK_T_IDO_RSV = "KK_T_IDO_RSV";
	
	/** テーブル(工事完了ワーク)*/
	private static final String D_TBL_NAME_KK_T_KJ_FIN_WK = "KK_T_KJ_FIN_WK";

	/** テーブル(工事案件)*/
	private static final String D_TBL_NAME_KU_T_KOJIAK = "KU_T_KOJIAK";

	/** テーブル(住所変更明細)*/
	private static final String D_TBL_NAME_KK_T_ADCHG_DTL = "KK_T_ADCHG_DTL";

	/** SQL定義キー(KK_SELECT_004)*/
	private static final String KK_M_WRISVC_TG_SVC_KK_SELECT_004 = "KK_SELECT_004";

	/** SQL定義キー(KK_SELECT_051)*/
	private static final String KK_T_WRIB_SVC_KEI_KK_SELECT_051 = "KK_SELECT_051";

	/** SQL定義キー(KK_SELECT_005)*/
	private static final String KK_M_WRISVC_TG_SVC_KK_SELECT_005 = "KK_SELECT_005";

	/** SQL定義キー(KK_SELECT_005)*/
	private static final String KK_M_WRIB_SVC_DTL_KK_SELECT_005 = "KK_SELECT_005";
	
	/** SQL定義キー(KK_SELECT_058)*/
	private static final String KK_T_IDO_RSV_KK_SELECT_058 = "KK_SELECT_058";
	
	/** SQL定義キー(KK_SELECT_031)*/
	private static final String KK_T_KJ_FIN_WK_KK_SELECT_031 = "KK_SELECT_031";
	
	/** SQL定義キー(KK_SELECT_031)*/
	private static final String KU_T_KOJIAK_KK_SELECT_031 = "KK_SELECT_031";

	/** SQL定義キー(KK_SELECT_030)*/
	private static final String KK_T_ADCHG_DTL_KK_SELECT_030 = "KK_SELECT_030";

	/** SQL定義キー(KK_SELECT_031)*/
	private static final String KK_T_ADCHG_DTL_KK_SELECT_031 = "KK_SELECT_031";

	/** テーブルアクセスクラス(割引サービス対象サービス)*/
	private JBSbatSQLAccess db_KK_M_WRISVC_TG_SVC = null;

	/** テーブルアクセスクラス(割引サービス契約)*/
	private JBSbatSQLAccess db_KK_T_WRIB_SVC_KEI = null;

	/** テーブルアクセスクラス(割引サービス詳細)*/
	private JBSbatSQLAccess db_KK_M_WRIB_SVC_DTL = null;
	/** テーブルアクセスクラス(異動予約)*/
	private JBSbatSQLAccess db_KK_T_IDO_RSV = null;
	
	/** テーブルアクセスクラス(工事完了ワーク)*/
	private JBSbatSQLAccess db_KK_T_KJ_FIN_WK = null;

	/** テーブルアクセスクラス(工事案件)*/
	private JBSbatSQLAccess db_KU_T_KOJIAK = null;

	/** テーブルアクセスクラス(住所変更明細)*/
	private JBSbatSQLAccess db_KK_T_ADCHG_DTL = null;
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	
	/** 単項目チェック項目マップ */
	private HashMap<String, String> singleChkKmkMap = null;
	
	/** 退避用マップ */
	private HashMap<String, String> cpInfoMap = new HashMap<String,String>();
	
	/** 付替対象判定フラグ */
	private boolean chengeJudgFlg = false;
	
	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_KK_M_WRISVC_TG_SVC = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_M_WRISVC_TG_SVC);
		db_KK_T_WRIB_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_WRIB_SVC_KEI);
		db_KK_M_WRIB_SVC_DTL = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_M_WRIB_SVC_DTL);
		db_KK_T_IDO_RSV = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_IDO_RSV);
		db_KK_T_KJ_FIN_WK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KJ_FIN_WK);
		db_KU_T_KOJIAK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_KOJIAK);
		db_KK_T_ADCHG_DTL = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ADCHG_DTL);
		
		// 単項目チェック用Map生成
		singleChkKmkMap = new HashMap<String, String>();
		singleChkKmkMap.put("TXT-KKIFM522-INF1.SVC_KEI_NO",                 "プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス契約番号");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.MSKM_DTL_NO",                "プラン変更時ＣＰ復活／付替対象抽出ファイル.申込明細番号");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.OLD_PPLAN_CD",               "プラン変更時ＣＰ復活／付替対象抽出ファイル.旧料金プラン");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.SYSID",                      "プラン変更時ＣＰ復活／付替対象抽出ファイル.ＳＹＳＩＤ");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.SVC_KEI_STAT",               "プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス契約ステータス");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.PPLAN_CD",                   "プラン変更時ＣＰ復活／付替対象抽出ファイル.料金プラン（変更後）");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.PLAN_CHRG_STAYMD",           "プラン変更時ＣＰ復活／付替対象抽出ファイル.プラン課金開始年月日");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.SVC_STA_YMD",                "プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス開始年月日（サービス）");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.SVC_CHRG_STAYMD",            "プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（サービス）");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_SVC_KEI_NO",            "プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約番号");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_SVC_KEI_STAT",          "プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約ステータス");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_SVC_CD",                "プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービスコード");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_DSL_CNCL_OPTY_CD",      "プラン変更時ＣＰ復活／付替対象抽出ファイル.割引解約キャンセル契機コード");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_ADD_YMD",               "プラン変更時ＣＰ復活／付替対象抽出ファイル.割引登録年月日");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.MSKM_KISAN_YMD",             "プラン変更時ＣＰ復活／付替対象抽出ファイル.申込起算年月日");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_ADD_OPTY_CD",           "プラン変更時ＣＰ復活／付替対象抽出ファイル.割引登録契機コード");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_SVC_CHRG_STAYMD",       "プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（割引）");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_SVC_CHRG_ENDYMD",       "プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金終了年月日（割引）");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_NO",       "プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約内訳番号");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_STAT",     "プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約内訳ステータス");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_STAYMD",  "プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（内訳）");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_ENDYMD",  "プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金終了年月日（内訳）");
		singleChkKmkMap.put("TXT-KKIFM522-INF1.DSP_CAMPAIGN_CD",            "プラン変更時ＣＰ復活／付替対象抽出ファイル.表示用キャンペーンコード");

		
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		super.logPrint.printDebugLog("execute_START");
		
		// 入力値チェック
		if (!isSingleCheckKKIFM522_INF1(inMap.getMap(), singleChkKmkMap))
		{
			// エラーフラグ設定
			super.commonItem.setErrFlg(true);
			return null;
		}
		
		// 出力共通電文を生成する。
		JBSbatOutputItem kkifm523_outputBean = new JBSbatOutputItem();
		JBSbatOutputItem kkifm524_outputBean = new JBSbatOutputItem();
		
		/*
		* 回復対象のキャンペーンか判定する
		*/
		
		super.logPrint.printDebugLog("回復判定処理開始");
		
		// 運用日の取得
		String opDate = super.opeDate;
		// 割引サービス課金終了年月日の取得
		String wribChrgEndYmd = inMap.getString(JBSbatKKIFM522.WRIB_SVC_CHRG_ENDYMD);
		
		// 割引サービス課金終了年月日 < 運用日 の場合、出力対象外とする。
		if(wribChrgEndYmd.compareTo(opDate) < 0)
		{
			super.logPrint.printDebugLog("出力対象外：割引サービス課金終了年月日 < 運用日");
			super.logPrint.printDebugLog("ＳＹＳＩＤ＝" + inMap.getString(JBSbatKKIFM522.SYSID));
			super.logPrint.printDebugLog("割引サービス課金終了年月日＝" + wribChrgEndYmd);
			super.logPrint.printDebugLog("割引サービス契約内訳番号：" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_NO));
			super.logPrint.printDebugLog("バッチ運用日＝" + opDate);
			super.logPrint.printDebugLog("回復判定処理終了");
			super.logPrint.printDebugLog("execute_END");
			return null;
		}
		
		// 復活対象の判定
		JBSbatCommonDBInterface wribSvcMap =  getWribSvc(inMap);
		
		// 取得できなかった場合、付替対象判定へ
		if(null == wribSvcMap)
		{
			chengeJudgFlg = true;
		}
		
		if(!chengeJudgFlg)
		{
			// 既に補正済みか確認する
			JBSbatCommonDBInterface wribSvcKeichkMap =  getWribSvcKei(inMap);
			
			// 取得できた場合、補正済とみなし出力対象外とする。
			if(null != wribSvcKeichkMap)
			{
				super.logPrint.printDebugLog("出力対象外：補正済");
				super.logPrint.printDebugLog("ＳＹＳＩＤ＝" + inMap.getString(JBSbatKKIFM522.SYSID));
				super.logPrint.printDebugLog("割引サービス契約番号＝" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO));
				super.logPrint.printDebugLog("割引サービス契約内訳番号＝" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_NO));
				super.logPrint.printDebugLog("バッチ運用日＝" + opDate);
				super.logPrint.printDebugLog("回復判定処理終了");
				super.logPrint.printDebugLog("execute_END");
				
				// フラグの初期化
				chengeJudgFlg = false;
				
				return null;
			}
			
			// 出力対象の割引サービス契約内訳ステータスが適用済の場合、出力対象外とする。
			if(inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_STAT).equals(JKKBatConst.WRISVC_KEI_UCWK_STAT_TEKIYO_ZUMI))
			{
				super.logPrint.printDebugLog("出力対象外：割引サービス契約内訳ステータスが「適用済」");
				super.logPrint.printDebugLog("ＳＹＳＩＤ＝" + inMap.getString(JBSbatKKIFM522.SYSID));
				super.logPrint.printDebugLog("割引サービス契約番号＝" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO));
				super.logPrint.printDebugLog("割引サービス契約内訳番号＝" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_NO));
				super.logPrint.printDebugLog("バッチ運用日＝" + opDate);
				super.logPrint.printDebugLog("回復判定処理終了");
				super.logPrint.printDebugLog("execute_END");
				
				// フラグの初期化
				chengeJudgFlg = false;
				
				return null;
			}
			
			// プラン変更時ＣＰ復活／付替対象抽出ファイルリスト 出力データ格納用
			JBSbatServiceInterfaceMap kkifm523_outmap = new JBSbatServiceInterfaceMap();
			
			super.logPrint.printDebugLog("抽出開始");
			super.logPrint.printDebugLog("割引サービス契約番号：" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO));
			super.logPrint.printDebugLog("割引サービス契約内訳番号：" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_NO));
			
			//-------------------------------------------
			// ファイル出力項目の設定する
			//-------------------------------------------
			// サービス契約番号
			kkifm523_outmap.setString(JBSbatKKIFM523.SVC_KEI_NO, 					inMap.getString(JBSbatKKIFM522.SVC_KEI_NO));
			// 申込明細番号
			kkifm523_outmap.setString(JBSbatKKIFM523.MSKM_DTL_NO, 					inMap.getString(JBSbatKKIFM522.MSKM_DTL_NO));
			// 旧料金プラン
			kkifm523_outmap.setString(JBSbatKKIFM523.OLD_PPLAN_CD, 					inMap.getString(JBSbatKKIFM522.OLD_PPLAN_CD));
			// SYSID
			kkifm523_outmap.setString(JBSbatKKIFM523.SYSID, 						inMap.getString(JBSbatKKIFM522.SYSID));
			// サービス契約ステータス
			kkifm523_outmap.setString(JBSbatKKIFM523.SVC_KEI_STAT, 					inMap.getString(JBSbatKKIFM522.SVC_KEI_STAT));
			// 料金プラン（変更後）
			kkifm523_outmap.setString(JBSbatKKIFM523.PPLAN_CD, 						inMap.getString(JBSbatKKIFM522.PPLAN_CD));
			// プラン課金開始年月日
			kkifm523_outmap.setString(JBSbatKKIFM523.PLAN_CHRG_STAYMD, 				inMap.getString(JBSbatKKIFM522.PLAN_CHRG_STAYMD));
			// サービス開始年月日
			kkifm523_outmap.setString(JBSbatKKIFM523.SVC_STA_YMD, 					inMap.getString(JBSbatKKIFM522.SVC_STA_YMD));
			// サービス課金開始年月日
			kkifm523_outmap.setString(JBSbatKKIFM523.SVC_CHRG_STAYMD, 				inMap.getString(JBSbatKKIFM522.SVC_CHRG_STAYMD));
			// 割引サービス契約番号
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_SVC_KEI_NO, 				inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO));
			// 割引サービス契約ステータス
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_SVC_KEI_STAT, 			inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_STAT));
			// 割引サービスコード
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_SVC_CD, 					inMap.getString(JBSbatKKIFM522.WRIB_SVC_CD));
			// 割引解約キャンセル契機コード
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_DSL_CNCL_OPTY_CD, 		inMap.getString(JBSbatKKIFM522.WRIB_DSL_CNCL_OPTY_CD));
			// 割引登録年月日
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_ADD_YMD, 					inMap.getString(JBSbatKKIFM522.WRIB_ADD_YMD));
			// 申込起算年月日
			kkifm523_outmap.setString(JBSbatKKIFM523.MSKM_KISAN_YMD, 				inMap.getString(JBSbatKKIFM522.MSKM_KISAN_YMD));
			// 割引登録契機コード
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_ADD_OPTY_CD, 				inMap.getString(JBSbatKKIFM522.WRIB_ADD_OPTY_CD));
			// サービス課金開始年月日
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_SVC_CHRG_STAYMD, 			inMap.getString(JBSbatKKIFM522.WRIB_SVC_CHRG_STAYMD));
			// サービス課金終了年月日
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_SVC_CHRG_ENDYMD, 			inMap.getString(JBSbatKKIFM522.WRIB_SVC_CHRG_ENDYMD));
			// 割引サービス契約内訳番号
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_SVC_KEI_UCWK_NO, 			inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_NO));
			// 割引サービス契約内訳ステータス
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_SVC_KEI_UCWK_STAT, 		inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_STAT));
			// サービス課金開始年月日（内訳）
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_UCWK_SVC_CHRG_STAYMD, 	inMap.getString(JBSbatKKIFM522.WRIB_UCWK_SVC_CHRG_STAYMD));
			// サービス課金終了年月日（内訳）
			kkifm523_outmap.setString(JBSbatKKIFM523.WRIB_UCWK_SVC_CHRG_ENDYMD, 	inMap.getString(JBSbatKKIFM522.WRIB_UCWK_SVC_CHRG_ENDYMD));
			// 表示用キャンペーンコード
			kkifm523_outmap.setString(JBSbatKKIFM523.DSP_CAMPAIGN_CD, 				inMap.getString(JBSbatKKIFM522.DSP_CAMPAIGN_CD));
			
			kkifm523_outmap.setOutFlg(true);
			kkifm523_outputBean.addOutMapList(kkifm523_outmap);
			
			super.logPrint.printDebugLog("抽出終了");
			super.logPrint.printDebugLog("回復判定処理終了");
			super.logPrint.printDebugLog("execute_END");
			
			// 回復レコード情報の退避
			cpInfoMap.put(JBSbatKKIFM522.SVC_KEI_NO, inMap.getString(JBSbatKKIFM522.SVC_KEI_NO));
			cpInfoMap.put(JBSbatKKIFM522.DSP_CAMPAIGN_CD, inMap.getString(JBSbatKKIFM522.DSP_CAMPAIGN_CD));
			
			// フラグの初期化
			chengeJudgFlg = false;
			
			return kkifm523_outputBean;
			
		}
		
		super.logPrint.printDebugLog("回復判定処理終了");
		super.logPrint.printDebugLog("付替判定処理開始");
		
		/*
		* 付替対象のキャンペーンか判定する
		*/
		if(chengeJudgFlg)
		{
			// 既に回復対象として抽出されている場合、付替対象としない
			if(inMap.getString(JBSbatKKIFM522.SVC_KEI_NO).equals(cpInfoMap.get(JBSbatKKIFM522.SVC_KEI_NO))
					&& inMap.getString(JBSbatKKIFM522.DSP_CAMPAIGN_CD).equals(cpInfoMap.get(JBSbatKKIFM522.DSP_CAMPAIGN_CD)))
			{
				super.logPrint.printDebugLog("出力対象外：回復対象登録済");
				super.logPrint.printDebugLog("ＳＹＳＩＤ＝" + inMap.getString(JBSbatKKIFM522.SYSID));
				super.logPrint.printDebugLog("表示用キャンペーンコード＝" + inMap.getString(JBSbatKKIFM522.DSP_CAMPAIGN_CD));
				super.logPrint.printDebugLog("バッチ運用日＝" + opDate);
				super.logPrint.printDebugLog("付替判定処理終了");
				super.logPrint.printDebugLog("execute_END");
				
				// フラグの初期化
				chengeJudgFlg = false;
				
				return null;
			}
			
			boolean wribEndDateChkFlg = false;
			
			// 付替可能キャンペーン特定
			JBSbatCommonDBInterface wribSvcExchgeMap =  getWribSvcExchgeCp(inMap);
			
			// 取得できなかった場合、該当のＣＰがないとみなし出力対象外とする
			if(wribSvcExchgeMap == null)
			{
				super.logPrint.printDebugLog("出力対象外：該当キャンペーンなし");
				super.logPrint.printDebugLog("ＳＹＳＩＤ＝" + inMap.getString(JBSbatKKIFM522.SYSID));
				super.logPrint.printDebugLog("表示用キャンペーンコード＝" + inMap.getString(JBSbatKKIFM522.DSP_CAMPAIGN_CD));
				super.logPrint.printDebugLog("バッチ運用日＝" + opDate);
				super.logPrint.printDebugLog("付替判定処理終了");
				super.logPrint.printDebugLog("execute_END");
				
				// フラグの初期化
				chengeJudgFlg = false;
				
				return null;
			}else{
				
				String newWribSvcCd = wribSvcExchgeMap.getString(JBSbatKK_M_WRIB_SVC.WRIB_SVC_CD);
				
				// サービス課金終了年月日判定
				wribEndDateChkFlg = wribEndYmdChk(inMap,newWribSvcCd);
				
			}
			
			if(wribEndDateChkFlg)
			{
				
				// 既に補正済みか確認する
				JBSbatCommonDBInterface wribSvcKeichkMap =  getWribSvcKei(inMap,wribSvcExchgeMap.getString(JBSbatKK_M_WRIB_SVC.WRIB_SVC_CD));
				
				// 取得できた場合、補正済とみなし出力対象外とする。
				if(null != wribSvcKeichkMap)
				{
					super.logPrint.printDebugLog("出力対象外：補正済");
					super.logPrint.printDebugLog("ＳＹＳＩＤ＝" + inMap.getString(JBSbatKKIFM522.SYSID));
					super.logPrint.printDebugLog("割引サービス契約番号＝" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO));
					super.logPrint.printDebugLog("割引サービス契約内訳番号＝" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_NO));
					super.logPrint.printDebugLog("バッチ運用日＝" + opDate);
					super.logPrint.printDebugLog("回復判定処理終了");
					super.logPrint.printDebugLog("execute_END");
					
					// フラグの初期化
					chengeJudgFlg = false;
					
					return null;
				}
				
				// プラン変更時ＣＰ復活／付替対象抽出ファイルリスト 出力データ格納用
				JBSbatServiceInterfaceMap kkifm524_outmap = new JBSbatServiceInterfaceMap();
				
				super.logPrint.printDebugLog("抽出開始");
				super.logPrint.printDebugLog("割引サービス契約番号：" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO));
				super.logPrint.printDebugLog("割引サービス契約内訳番号：" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_NO));
				
				//-------------------------------------------
				// ファイル出力項目の設定する
				//-------------------------------------------
				// サービス契約番号
				kkifm524_outmap.setString(JBSbatKKIFM524.SVC_KEI_NO, 					inMap.getString(JBSbatKKIFM522.SVC_KEI_NO));
				// 申込明細番号
				kkifm524_outmap.setString(JBSbatKKIFM524.MSKM_DTL_NO, 					inMap.getString(JBSbatKKIFM522.MSKM_DTL_NO));
				// 旧料金プラン
				kkifm524_outmap.setString(JBSbatKKIFM524.OLD_PPLAN_CD, 					inMap.getString(JBSbatKKIFM522.OLD_PPLAN_CD));
				// SYSID
				kkifm524_outmap.setString(JBSbatKKIFM524.SYSID, 						inMap.getString(JBSbatKKIFM522.SYSID));
				// サービス契約ステータス
				kkifm524_outmap.setString(JBSbatKKIFM524.SVC_KEI_STAT, 					inMap.getString(JBSbatKKIFM522.SVC_KEI_STAT));
				// 料金プラン（変更後）
				kkifm524_outmap.setString(JBSbatKKIFM524.PPLAN_CD, 						inMap.getString(JBSbatKKIFM522.PPLAN_CD));
				// プラン課金開始年月日
				kkifm524_outmap.setString(JBSbatKKIFM524.PLAN_CHRG_STAYMD, 				inMap.getString(JBSbatKKIFM522.PLAN_CHRG_STAYMD));
				// サービス開始年月日
				kkifm524_outmap.setString(JBSbatKKIFM524.SVC_STA_YMD, 					inMap.getString(JBSbatKKIFM522.SVC_STA_YMD));
				// サービス課金開始年月日
				kkifm524_outmap.setString(JBSbatKKIFM524.SVC_CHRG_STAYMD, 				inMap.getString(JBSbatKKIFM522.SVC_CHRG_STAYMD));
				// 割引サービス契約番号
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_SVC_KEI_NO, 				inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO));
				// 割引サービス契約ステータス
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_SVC_KEI_STAT, 			inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_STAT));
				// 割引サービスコード
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_SVC_CD, 					wribSvcExchgeMap.getValue(JBSbatKK_M_WRIB_SVC.WRIB_SVC_CD));
				// 割引解約キャンセル契機コード
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_DSL_CNCL_OPTY_CD, 		inMap.getString(JBSbatKKIFM522.WRIB_DSL_CNCL_OPTY_CD));
				// 割引登録年月日
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_ADD_YMD, 					inMap.getString(JBSbatKKIFM522.WRIB_ADD_YMD));
				// 申込起算年月日
				kkifm524_outmap.setString(JBSbatKKIFM524.MSKM_KISAN_YMD, 				inMap.getString(JBSbatKKIFM522.MSKM_KISAN_YMD));
				// 割引登録契機コード
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_ADD_OPTY_CD, 				inMap.getString(JBSbatKKIFM522.WRIB_ADD_OPTY_CD));
				// サービス課金開始年月日
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_SVC_CHRG_STAYMD, 			inMap.getString(JBSbatKKIFM522.WRIB_SVC_CHRG_STAYMD));
				// サービス課金終了年月日
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_SVC_CHRG_ENDYMD, 			inMap.getString(JBSbatKKIFM522.WRIB_SVC_CHRG_ENDYMD));
				// 割引サービス契約内訳番号
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_SVC_KEI_UCWK_NO, 			inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_NO));
				// 割引サービス契約内訳ステータス
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_SVC_KEI_UCWK_STAT, 		inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_STAT));
				// サービス課金開始年月日（内訳）
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_UCWK_SVC_CHRG_STAYMD, 	inMap.getString(JBSbatKKIFM522.WRIB_UCWK_SVC_CHRG_STAYMD));
				// サービス課金終了年月日（内訳）
				kkifm524_outmap.setString(JBSbatKKIFM524.WRIB_UCWK_SVC_CHRG_ENDYMD, 	inMap.getString(JBSbatKKIFM522.WRIB_UCWK_SVC_CHRG_ENDYMD));
				// 表示用キャンペーンコード
				kkifm524_outmap.setString(JBSbatKKIFM524.DSP_CAMPAIGN_CD, 				inMap.getString(JBSbatKKIFM522.DSP_CAMPAIGN_CD));
				
				kkifm524_outmap.setOutFlg(true);
				kkifm524_outputBean.addOutMapList_2(kkifm524_outmap);
				
				super.logPrint.printDebugLog("抽出終了");
				super.logPrint.printDebugLog("付替判定処理終了");
				super.logPrint.printDebugLog("execute_END");
				
				// フラグの初期化
				chengeJudgFlg = false;
				
				return kkifm524_outputBean;
				
			}else{
				super.logPrint.printDebugLog("出力対象外：サービス課金終了年月日対象外");
				super.logPrint.printDebugLog("ＳＹＳＩＤ＝" + inMap.getString(JBSbatKKIFM522.SYSID));
				super.logPrint.printDebugLog("割引サービス契約番号＝" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO));
				super.logPrint.printDebugLog("割引サービス契約内訳番号＝" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_UCWK_NO));
				super.logPrint.printDebugLog("割引サービス契約.課金終了年月日＝" + inMap.getString(JBSbatKKIFM522.WRIB_SVC_CHRG_ENDYMD));
				super.logPrint.printDebugLog("バッチ運用日＝" + opDate);
				super.logPrint.printDebugLog("付替判定処理終了");
				super.logPrint.printDebugLog("execute_END");
				
				// フラグの初期化
				chengeJudgFlg = false;
				
				return null;
			}
		}
		
		// フラグの初期化
		chengeJudgFlg = false;
		
		super.logPrint.printDebugLog("execute_END");
		
		return null;
		
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}


	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_KK_M_WRISVC_TG_SVC.close();
		db_KK_T_WRIB_SVC_KEI.close();
		db_KK_M_WRIB_SVC_DTL.close();
/* v5.00.00  ADD START*/
		db_KK_T_IDO_RSV.close();
		db_KK_T_KJ_FIN_WK.close();
		db_KU_T_KOJIAK.close();
		db_KK_T_ADCHG_DTL.close();
/* v5.00.00  ADD END*/
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 付替対象となるキャンペーンのサービス課金終了年月日判定。
	 * <br>
	 * @param inMap 入力ファイルデータ
	 * @param newWribSvcCd 
	 * @return 
	 * @throws Exception
	 */
	private boolean wribEndYmdChk(JBSbatServiceInterfaceMap inMap, String newWribSvcCd) throws Exception
	{
		/*
		 * 割引サービスコードをもとに割引サービス詳細の情報を取得する。
		 * バインド変数１:割引サービスコード
		 * バインド変数２:バッチ運用日
		 * バインド変数３:バッチ運用日
		 * バインド変数４:バッチ運用日
		 */
		String[] param = {newWribSvcCd, 
		                  commonItem.getOpeDate(), 
		                  commonItem.getOpeDate(),
		                  commonItem.getOpeDate()};
		
		executeKK_M_WRIB_SVC_DTL_KK_SELECT_005(param);
		
		JBSbatCommonDBInterface wribSvcDtldateMap = db_KK_M_WRIB_SVC_DTL.selectNext();
		
		/*
		 * 割引サービス詳細を取得し算出を行い終了日判定を行う
		 */
		while(wribSvcDtldateMap != null)
		{
			// 割引サービス課金開始日基準日を取得する
			String stanDartYmd = getCmpStanDardYmd(inMap,wribSvcDtldateMap);
			
			// 割引サービス課金開始日を算出する
			String startYmd = adjstYmdChk(stanDartYmd, wribSvcDtldateMap);
			
			// 割引サービス課金終了日を算出する
			String wribChgeEndYmd = getWribChgeEndYmd(inMap,wribSvcDtldateMap,startYmd);
			
			super.logPrint.printDebugLog("キャンペーン開始コード" + wribSvcDtldateMap.getString(JBSbatKK_M_WRIB_SVC_DTL.CAMPAIGN_STA_CD));
			super.logPrint.printDebugLog("割引サービス課金開始日基準日（算出）＝" + stanDartYmd);
			super.logPrint.printDebugLog("割引サービス課金開始年月日（算出）＝" + startYmd);
			super.logPrint.printDebugLog("割引サービス課金終了年月日（算出）＝" + wribChgeEndYmd);
			
			if(wribChgeEndYmd.compareTo(opeDate) >= 0)
			{
				return true;
			}
			
			wribSvcDtldateMap = db_KK_M_WRIB_SVC_DTL.selectNext();
		}
		
		return false;
	}
	
	/**
	 * サービス課金開始年月日の基準日の取得。
	 * <br>
	 * 
	 * @param staCd キャンペーン開始コード
	 * @return サービス課金開始年月日基準日
	 * @throws Exception 
	 * @throws Exception
	 */
	private String getCmpStanDardYmd(JBSbatServiceInterfaceMap inMap, JBSbatCommonDBInterface wribSvcDtlMap) throws Exception
	{
		// キャンペーン開始コード取得
		String staCd = wribSvcDtlMap.getString(JBSbatKK_M_WRIB_SVC_DTL.CAMPAIGN_STA_CD);
		// 割引登録年月日取得
		String wribAddYmd = inMap.getString(JBSbatKKIFM522.WRIB_ADD_YMD);
		
		// キャンペーン開始コード「01：課金開始日」の場合
		if("01".equals(staCd))
		{
			return inMap.getString(JBSbatKKIFM522.SVC_CHRG_STAYMD);
		}
		
		// キャンペーン開始コード「02：サービス開始日」の場合
		if("02".equals(staCd))
		{
			return inMap.getString(JBSbatKKIFM522.SVC_STA_YMD);
		}
		
		// キャンペーン開始コード「03：登録月」の場合
		if("03".equals(staCd))
		{
			return inMap.getString(JBSbatKKIFM522.WRIB_ADD_YMD);
		}
		
		// キャンペーン開始コード「04：翌月」の場合
		if("04".equals(staCd))
		{
			
			String stanDartYmd = JBSbatDateUtil.adjustMonth(wribAddYmd, 1).substring(0, 6) + "01";
			return stanDartYmd;
		}
		
		// キャンペーン開始コード「05：翌月(初日は当月)」の場合
		if("05".equals(staCd))
		{
			// 割引登録年月日が1日の場合
			if("01".equals(wribAddYmd.substring(6)))
			{
				return wribAddYmd;
			}
			else
			{
				// 割引登録年月日の翌月１日を返却する。
				String stanDartYmd = JBSbatDateUtil.adjustMonth(wribAddYmd, 1).substring(0, 6) + "01";
				
				return stanDartYmd;
			}
		}
		
		// キャンペーン開始コード「06：課金開始前月」の場合
		if("06".equals(staCd))
		{
			String wribSvcShrgStaYmd = inMap.getString(JBSbatKKIFM522.SVC_CHRG_STAYMD);
			
			String stanDartYmd = JBSbatDateUtil.adjustMonth(wribSvcShrgStaYmd, -1);
			stanDartYmd = stanDartYmd.substring(0, 6) + "01";
			
			return stanDartYmd;
		}
		
		// キャンペーン開始コード「07：プラン変更」の場合
		if("07".equals(staCd))
		{
			String stanDartYmd = getIdoRsv_RsvAplyYmd(inMap);
			
			if(stanDartYmd == null || "".equals(stanDartYmd))
			{
				// 取得できなかった場合、サービス契約のサービス開始年月日を取得する
				stanDartYmd = inMap.getString(JBSbatKKIFM522.SVC_STA_YMD);
			}
			return stanDartYmd;
		}
		
		// キャンペーン開始コード「20：住変サービス開始日」の場合
		if("20".equals(staCd))
		{
			String stanDartYmd = getKjFinWkRsvAplyYmd(inMap);
			
			if(stanDartYmd == null || "".equals(stanDartYmd))
			{
				// 取得できなかった場合、サービス契約のサービス開始年月日を取得する
				stanDartYmd = inMap.getString(JBSbatKKIFM522.SVC_STA_YMD);
			}
			
			return stanDartYmd;
		}
		
		return "";
	}

	/**
	 * 課金開始日を算出する。
	 * <br>
	 * @param startYmd 基準日
	 * @param wribSvcDtldateMap 割引サービス詳細マスタ情報
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception 
	 * @throws Exception
	 */
	private String adjstYmdChk(String startYmd, JBSbatCommonDBInterface wribSvcDtldateMap) throws Exception
	{
		// 開始調整期間を取得する。（未設定の場合は「0」で初期化する）
		String startAdj = JBSbatStringUtil.Rtrim(wribSvcDtldateMap.getString(JBSbatKK_M_WRIB_SVC_DTL.STA_ADJ_PRD));
		// 開始調整コードを取得する。
		String startAdjCd = wribSvcDtldateMap.getString(JBSbatKK_M_WRIB_SVC_DTL.STA_ADJ_CD);
		
		if("".equals(startAdj))
		{
			startAdj = "0";
		}

		// 開始調整コードが「1」（調整なし）の場合
		if("1".equals(startAdjCd))
		{
			return startYmd;
		}
		// 開始調整コードが「2」（月数）の場合
		else if("2".equals(startAdjCd))
		{
			// 開始調整期間を月数として加算
			startYmd = JBSbatDateUtil.adjustMonth(startYmd, Integer.parseInt(startAdj));
		}
		// 開始調整コードが「3」（日数）の場合
		else if("3".equals(startAdjCd))
		{
			// 開始調整期間を日数として加算
			startYmd = JBSbatDateUtil.adjustDate(startYmd, Integer.parseInt(startAdj));
			
		}
		// 開始調整コードが「4」（月数(月初日)）の場合
		else if("4".equals(startAdjCd))
		{
			// 開始調整期間を月数として加算
			startYmd = JBSbatDateUtil.adjustMonth(startYmd, Integer.parseInt(startAdj)).substring(0, 6) + "01";
		}
		
		return startYmd;
	}

	/**
	 * 課金終了日を算出する。
	 * <br>
	 * 
	 * @param inMap 入力ファイルデータ
	 * @param startYmd 
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception
	 */
	private String getWribChgeEndYmd(JBSbatServiceInterfaceMap inMap,JBSbatCommonDBInterface wribSvcDtldateMap, String startYmd) throws Exception
	{
		// 適用数判別コードを取得
		String aplyJugeCd = JBSbatStringUtil.Rtrim(wribSvcDtldateMap.getString(JBSbatKK_M_WRIB_SVC_DTL.APLY_CNT_HAMBET_CD));
		
		// 適用数を取得
		String aplyCnt = wribSvcDtldateMap.getString(JBSbatKK_M_WRIB_SVC_DTL.APLY_CNT);

		// 適用数が未設定の場合は「0」で初期化する。
		if("".equals(JBSbatStringUtil.Rtrim(aplyCnt)))
		{
			aplyCnt = "0";
		}

		// 適用数判別コードが「1」（制限無し）の場合
		if("1".equals(aplyJugeCd))
		{
			return "20991231";
		}
		// 適用数判別コードが「2」（回数）の場合
		else if("2".equals(aplyJugeCd))
		{
			// 「サービス課金開始日」＋ (適用数−1)を月数として加算した日付の末日を設定
			int num = 0;
			if(!"0".equals(aplyCnt))
			{
				num = (Integer.parseInt(aplyCnt)-1);
			}
			// 月数で加算した年月日より月末日を取得する
			String svc_chrg_end_day = JBSbatDateUtil.adjustMonth(startYmd, num);
			String svc_chrg_ym = svc_chrg_end_day.substring(0, 6);
			
			return svc_chrg_ym + JBSbatDateUtil.getEndOfMonth(svc_chrg_ym);
		}
		// 適用数判別コードが「3」（月数）の場合
		else if("3".equals(aplyJugeCd))
		{
			// 「サービス課金開始日」＋ (適用数−1)を月数として加算した日付の末日を設定
			int num = 0;
			if(!"0".equals(aplyCnt))
			{
				num = (Integer.parseInt(aplyCnt)-1);
			}
			// 月数で加算した年月日より月末日を取得する
			String svc_chrg_end_day = JBSbatDateUtil.adjustMonth(startYmd, num);
			String svc_chrg_ym = svc_chrg_end_day.substring(0, 6);
			
			return svc_chrg_ym + JBSbatDateUtil.getEndOfMonth(svc_chrg_ym);
		}
		// 適用数判別コードが「4」（日数）の場合
		else if("4".equals(aplyJugeCd))
		{
			// 「サービス課金開始日」＋適用数を設定
			return JBSbatDateUtil.adjustDate(startYmd, Integer.parseInt(aplyCnt));
		}
		
		return "20991231";
	}
	
	/**
	 * 異動予約の予約適用年月日を取得する。
	 * <br>
	 * キャンペーン開始コード("07：コース変更")
	 * <p>
	 * @param inMap 
	 * @return 処理結果
	 * @throws Exception 
	 */
	private String getIdoRsv_RsvAplyYmd(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		String result = null;
		
		// サービス契約番号
		String svcKeiNo = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM522.SVC_KEI_NO));
		
		// 料金プランコード
		String pplanCd = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM522.PPLAN_CD));
		
		/*
		 * 異動予約の情報を取得する。
		 * バインド変数１:割引サービスコード
		 * バインド変数２:バッチ運用日
		 * バインド変数３:バッチ運用日
		 * バインド変数４:バッチ運用日
		 */
		String[] param = {svcKeiNo, 
		                  pplanCd, 
		                  commonItem.getOpeDate()};
		
		// 異動予約情報取得
		executeKK_T_IDO_RSV_KK_SELECT_058(param);
		
		JBSbatCommonDBInterface dbMap = db_KK_T_IDO_RSV.selectNext();
		
		if(null != dbMap)
		{
			// 予約適用年月日
			result = JBSbatStringUtil.Rtrim(dbMap.getString(JBSbatKK_T_IDO_RSV.RSV_APLY_YMD));
		
		}
		
		return result;
	}
	
	/**
	 * 住変サービス開始日を取得する。
	 * <br>
	 * キャンペーン開始コード("20：住変サービス開始日")
	 * <p>
	 * @param inMap 
	 * @return 処理結果
	 * @throws Exception 
	 */
	private String getKjFinWkRsvAplyYmd(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		// サービス契約番号
		String svcKeiNo = inMap.getString(JBSbatKKIFM522.SVC_KEI_NO);
		
		// 工事案件実施年月日
		String kojiakJissYmd = null;
		
		// 工事案件番号
		String kojiakNo = null;
		
		// 工事完了ワーク情報の取得
		JBSbatCommonDBInterface kojiakWkMap = getKjFinWk(svcKeiNo);
		
		// 取得できた場合
		if(kojiakWkMap != null)
		{
			// 工事案件実施日の取得
			kojiakJissYmd = kojiakWkMap.getString(JBSbatKK_T_KJ_FIN_WK.KOJIAK_JSSI_YMD);
			
			// 工事案件番号の取得
			kojiakNo = kojiakWkMap.getString(JBSbatKK_T_KJ_FIN_WK.KOJIAK_NO);
		}
		
		// 工事案件ワークから取得できなかった場合
		if("".equals(kojiakJissYmd))
		{
			// 工事案件情報の取得
			JBSbatCommonDBInterface kojiakMap = getKojAk(svcKeiNo);
			
			if(kojiakMap != null)
			{
				// 工事案件実施日の取得
				kojiakJissYmd = kojiakWkMap.getString(JBSbatKU_T_KOJIAK.KOJIAK_JSSI_YMD);
				
				// 工事案件番号の取得
				kojiakNo = kojiakWkMap.getString(JBSbatKU_T_KOJIAK.KOJIAK_NO);
			}
		}
		
		// 工事案件実施日が取得できた場合、住所変更が確定しているかチェックする
		if(!"".equals(kojiakJissYmd))
		{
			// 工事案件番号を元に住所変更明細情報を取得する
			JBSbatCommonDBInterface jushoDtlAkMap = getJushoDtlAk(kojiakNo);
			
			// 取得できた場合
			if(jushoDtlAkMap != null)
			{
				// 住所変更番号取得
				String adchgNo = JBSbatStringUtil.Rtrim(jushoDtlAkMap.getString(JBSbatKK_T_ADCHG_DTL.ADCHG_NO));
				
				// サービス契約番号を元に住所変更明細情報を取得する
				JBSbatCommonDBInterface jushoDtlSvcMap = getJushoDtlSvc(adchgNo,svcKeiNo);
				
				// 取得できた場合
				if(jushoDtlSvcMap != null)
				{
					return kojiakJissYmd;
				}
			}
		}
		return null;
	}

	/**
	 * 割引サービスのデータを取得する。
	 * <br>
	 * 割引サービス対象サービスのKK_SELECT_004の定義を使用
	 * @param inMap 入力ファイルデータ
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getWribSvc(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		/*
		 * バインド変数１:割引サービスコード
		 * バインド変数２:料金プラン（変更後）
		 * バインド変数３:バッチ運用日
		 * バインド変数４:バッチ運用日
		 * バインド変数５:バッチ運用日
		 */
		String[] param = {inMap.getString(JBSbatKKIFM522.WRIB_SVC_CD), 
				          inMap.getString(JBSbatKKIFM522.PPLAN_CD), 
				          commonItem.getOpeDate(),
				          commonItem.getOpeDate(),
				          commonItem.getOpeDate()};
		
		executeKK_M_WRISVC_TG_SVC_KK_SELECT_004(param);
		
		JBSbatCommonDBInterface dateMap = db_KK_M_WRISVC_TG_SVC.selectNext();
		
		return dateMap;
	}
	
	/**
	 * 割引サービス契約のデータを取得する。
	 * <br>
	 * 割引サービス契約のKK_SELECT_051の定義を使用
	 * @param inMap 入力ファイルデータ
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getWribSvcKei(JBSbatServiceInterfaceMap inMap) throws Exception
	{
/* v7.00.00  DEL START*/
		// バッチ運用日の翌月月初日の取得
//		String next_month_date = JBSbatDateUtil.adjustMonth(super.opeDate,1);
//		String next_month_first = next_month_date.substring(0, 6) + "01";
/* v7.00.00  DEL END*/
		/*
		 * バインド変数１:割引サービス契約番号
		 * バインド変数２:割引サービスコード
		 * バインド変数３:サービス契約番号
		 * バインド変数４:バッチ運用日
		 */
		String[] param = {inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO), 
				          inMap.getString(JBSbatKKIFM522.WRIB_SVC_CD), 
/* +++++++++++ v7.00.00  DEL START +++++++++++ */
//				          next_month_first,
/* +++++++++++ v7.00.00  DEL END   +++++++++++ */
				          inMap.getString(JBSbatKKIFM522.SVC_KEI_NO),
/* +++++++++++ v7.00.00  MOD START +++++++++++ */
//				          next_month_first};
				          commonItem.getOpeDate()};
/* +++++++++++ v7.00.00  MOD END   +++++++++++ */
		
		executeKK_T_WRIB_SVC_KEI_KK_SELECT_051(param);
		
		JBSbatCommonDBInterface dateMap = db_KK_T_WRIB_SVC_KEI.selectNext();
		
		return dateMap;
	}
	
	/**
	 * 割引サービス契約のデータを取得する。
	 * <br>
	 * 割引サービス契約のKK_SELECT_051の定義を使用
	 * @param inMap 入力ファイルデータ
	 * @param wibSvcCd 割引サービスコード(付替対象)
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getWribSvcKei(JBSbatServiceInterfaceMap inMap, String wibSvcCd)  throws Exception
	{
/* v7.00.00  DEL START*/
		// バッチ運用日の翌月月初日の取得
//		String next_month_date = JBSbatDateUtil.adjustMonth(super.opeDate,1);
//		String next_month_first = next_month_date.substring(0, 6) + "01";
/* v7.00.00  DEL END*/
		
		/*
		 * バインド変数１:割引サービス契約番号
		 * バインド変数２:割引サービスコード
		 * バインド変数３:サービス契約番号
		 * バインド変数４:バッチ運用日
		 */
		String[] param = {inMap.getString(JBSbatKKIFM522.WRIB_SVC_KEI_NO), 
				          wibSvcCd, 
/* +++++++++++ v7.00.00  DEL START +++++++++++ */
//				          next_month_first,
/* +++++++++++ v7.00.00  DEL END   +++++++++++ */
				          inMap.getString(JBSbatKKIFM522.SVC_KEI_NO),
/* +++++++++++ v7.00.00  MOD START +++++++++++ */
//				          next_month_first};
				          commonItem.getOpeDate()};
/* +++++++++++ v7.00.00  MOD END   +++++++++++ */
		
		executeKK_T_WRIB_SVC_KEI_KK_SELECT_051(param);
		
		JBSbatCommonDBInterface dateMap = db_KK_T_WRIB_SVC_KEI.selectNext();
		
		return dateMap;
	}

	/**
	 * 割引サービスのデータを取得する。
	 * <br>
	 * 割引サービス対象サービスのKK_SELECT_005の定義を使用
	 * @param inMap 入力ファイルデータ
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getWribSvcExchgeCp(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		/*
		 * バインド変数１:表示用キャンペーンコード
		 * バインド変数２:料金プラン（変更後）
		 * バインド変数３:バッチ運用日
		 * バインド変数４:バッチ運用日
		 * バインド変数５:バッチ運用日
		 */
		String[] param = {inMap.getString(JBSbatKKIFM522.DSP_CAMPAIGN_CD), 
				          inMap.getString(JBSbatKKIFM522.PPLAN_CD), 
				          commonItem.getOpeDate(),
				          commonItem.getOpeDate(),
				          commonItem.getOpeDate()};
		
		executeKK_M_WRISVC_TG_SVC_KK_SELECT_005(param);
		
		JBSbatCommonDBInterface dateMap = db_KK_M_WRISVC_TG_SVC.selectNext();
		
		return dateMap;
	}
	
	/**
	 * 工事案件ワークのデータを取得する。
	 * <br>
	 * 工事案件ワークのKK_SELECT_031の定義を使用
	 * @param inMap 入力ファイルデータ
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getKjFinWk(String svcKeiNo) throws Exception
	{
		/*
		 * バインド変数１:サービス契約番号
		 */
		String[] param = {svcKeiNo};
		
		executeKK_T_KJ_FIN_WK_KK_SELECT_031(param);
		
		JBSbatCommonDBInterface dateMap = db_KK_T_KJ_FIN_WK.selectNext();
		
		return dateMap;
	}
	
	/**
	 * 工事案件のデータを取得する。
	 * <br>
	 * 工事案件ワークのKK_SELECT_031の定義を使用
	 * @param inMap 入力ファイルデータ
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getKojAk(String svcKeiNo) throws Exception
	{
		/*
		 * バインド変数１:サービス契約番号
		 */
		String[] param = {svcKeiNo,
				          commonItem.getOpeDate(),
				          commonItem.getOpeDate(),
				          commonItem.getOpeDate()};
		
		executeKU_T_KOJIAK_KK_SELECT_031(param);
		
		JBSbatCommonDBInterface dateMap = db_KU_T_KOJIAK.selectNext();
		
		return dateMap;
	}
	
	/**
	 * 住所明細のデータを取得する。
	 * <br>
	 * 住所明細のKK_SELECT_030の定義を使用
	 * @param inMap 入力ファイルデータ
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getJushoDtlAk(String kojiakNo) throws Exception
	{
		/*
		 * バインド変数１:工事案件番号
		 */
		String[] param = {kojiakNo};
		
		executeKK_T_ADCHG_DTL_KK_SELECT_030(param);
		
		JBSbatCommonDBInterface dateMap = db_KK_T_ADCHG_DTL.selectNext();
		
		return dateMap;
	}
	
	/**
	 * 住所明細のデータを取得する。
	 * <br>
	 * 住所明細のKK_SELECT_030の定義を使用
	 * @param inMap 入力ファイルデータ
	 * @return 該当の割引サービス契約を含むJBSbatCommonDBInterfaceオブジェクト
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getJushoDtlSvc(String adchgNo,String svcKeiNo) throws Exception
	{
		/*
		 * バインド変数１:工事案件番号
		 */
		String[] param = {adchgNo,
				          svcKeiNo};
		
		executeKK_T_ADCHG_DTL_KK_SELECT_031(param);
		
		JBSbatCommonDBInterface dateMap = db_KK_T_ADCHG_DTL.selectNext();
		
		return dateMap;
	}
	
	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	/**
	 *入力情報（プラン変更時ＣＰ復活／付替対象抽出ファイル）の単項目チェックを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.単項目チェックを行います。<br>
	 * 
	 * 2.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		rsMap:(項目、値)を(key、value)として、データをrsMapに入れます
	 *		itemvalueMap:埋め込み文字の値をitemvalueMapに入れます。キーの値は、以下に説明します。
	 *			 TXT-KKIFM522-INF1.SVC_KEI_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス契約番号
	 *			 TXT-KKIFM522-INF1.SVC_KEI_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス契約番号
	 *			 TXT-KKIFM522-INF1.SVC_KEI_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス契約番号
	 *			 TXT-KKIFM522-INF1.MSKM_DTL_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.申込明細番号
	 *			 TXT-KKIFM522-INF1.MSKM_DTL_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.申込明細番号
	 *			 TXT-KKIFM522-INF1.MSKM_DTL_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.申込明細番号
	 *			 TXT-KKIFM522-INF1.OLD_PPLAN_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.旧料金プラン
	 *			 TXT-KKIFM522-INF1.OLD_PPLAN_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.旧料金プラン
	 *			 TXT-KKIFM522-INF1.OLD_PPLAN_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.旧料金プラン
	 *			 TXT-KKIFM522-INF1.SYSID			プラン変更時ＣＰ復活／付替対象抽出ファイル.ＳＹＳＩＤ
	 *			 TXT-KKIFM522-INF1.SYSID			プラン変更時ＣＰ復活／付替対象抽出ファイル.ＳＹＳＩＤ
	 *			 TXT-KKIFM522-INF1.SYSID			プラン変更時ＣＰ復活／付替対象抽出ファイル.ＳＹＳＩＤ
	 *			 TXT-KKIFM522-INF1.SVC_KEI_STAT			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス契約ステータス
	 *			 TXT-KKIFM522-INF1.SVC_KEI_STAT			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス契約ステータス
	 *			 TXT-KKIFM522-INF1.SVC_KEI_STAT			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス契約ステータス
	 *			 TXT-KKIFM522-INF1.PPLAN_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.料金プラン（変更後）
	 *			 TXT-KKIFM522-INF1.PPLAN_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.料金プラン（変更後）
	 *			 TXT-KKIFM522-INF1.PPLAN_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.料金プラン（変更後）
	 *			 TXT-KKIFM522-INF1.PLAN_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.プラン課金開始年月日
	 *			 TXT-KKIFM522-INF1.PLAN_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.プラン課金開始年月日
	 *			 TXT-KKIFM522-INF1.PLAN_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.プラン課金開始年月日
	 *			 TXT-KKIFM522-INF1.SVC_STA_YMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス開始年月日（サービス）
	 *			 TXT-KKIFM522-INF1.SVC_STA_YMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス開始年月日（サービス）
	 *			 TXT-KKIFM522-INF1.SVC_STA_YMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス開始年月日（サービス）
	 *			 TXT-KKIFM522-INF1.SVC_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（サービス）
	 *			 TXT-KKIFM522-INF1.SVC_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（サービス）
	 *			 TXT-KKIFM522-INF1.SVC_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（サービス）
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約番号
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約番号
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約番号
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_STAT			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約ステータス
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_STAT			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約ステータス
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_STAT			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約ステータス
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービスコード
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービスコード
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービスコード
	 *			 TXT-KKIFM522-INF1.WRIB_DSL_CNCL_OPTY_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引解約キャンセル契機コード
	 *			 TXT-KKIFM522-INF1.WRIB_DSL_CNCL_OPTY_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引解約キャンセル契機コード
	 *			 TXT-KKIFM522-INF1.WRIB_DSL_CNCL_OPTY_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引解約キャンセル契機コード
	 *			 TXT-KKIFM522-INF1.WRIB_ADD_YMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引登録年月日
	 *			 TXT-KKIFM522-INF1.WRIB_ADD_YMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引登録年月日
	 *			 TXT-KKIFM522-INF1.WRIB_ADD_YMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引登録年月日
	 *			 TXT-KKIFM522-INF1.MSKM_KISAN_YMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.申込起算年月日
	 *			 TXT-KKIFM522-INF1.MSKM_KISAN_YMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.申込起算年月日
	 *			 TXT-KKIFM522-INF1.MSKM_KISAN_YMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.申込起算年月日
	 *			 TXT-KKIFM522-INF1.WRIB_ADD_OPTY_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引登録契機コード
	 *			 TXT-KKIFM522-INF1.WRIB_ADD_OPTY_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引登録契機コード
	 *			 TXT-KKIFM522-INF1.WRIB_ADD_OPTY_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引登録契機コード
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（割引）
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（割引）
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（割引）
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_CHRG_ENDYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金終了年月日（割引）
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_CHRG_ENDYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金終了年月日（割引）
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_CHRG_ENDYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金終了年月日（割引）
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約内訳番号
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約内訳番号
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_NO			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約内訳番号
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_STAT			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約内訳ステータス
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_STAT			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約内訳ステータス
	 *			 TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_STAT			プラン変更時ＣＰ復活／付替対象抽出ファイル.割引サービス契約内訳ステータス
	 *			 TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（内訳）
	 *			 TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（内訳）
	 *			 TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_STAYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金開始年月日（内訳）
	 *			 TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_ENDYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金終了年月日（内訳）
	 *			 TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_ENDYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金終了年月日（内訳）
	 *			 TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_ENDYMD			プラン変更時ＣＰ復活／付替対象抽出ファイル.サービス課金終了年月日（内訳）
	 *			 TXT-KKIFM522-INF1.DSP_CAMPAIGN_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.表示用キャンペーンコード
	 *			 TXT-KKIFM522-INF1.DSP_CAMPAIGN_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.表示用キャンペーンコード
	 *			 TXT-KKIFM522-INF1.DSP_CAMPAIGN_CD			プラン変更時ＣＰ復活／付替対象抽出ファイル.表示用キャンペーンコード
	 * </pre>
	 * <p>
	 * @param rsMap 入力データ（TXT又はDB）を格納されたHashMap。
	 * @param itemvalueMap エラーメッセージに関する項目値を格納されたHashMap。
	 * @return  boolean trueである場合、エラーがありません。falseである場合、エラーを発生しました。
	 */
	private boolean isSingleCheckKKIFM522_INF1(HashMap rsMap, HashMap itemvalueMap)
	{
		// 単項目チェックを行います
		String strValue = null;
		
		// エラーログ情報の保持
		String errorLogInfo = null;
		
		// エラーログ情報の格納
		errorLogInfo   =  "SVC_KEI_NO=" + (String)rsMap.get("SVC_KEI_NO") + "。" + "SYSID=" + (String)rsMap.get("SYSID");
		
		// サービス契約番号項目チェック
		strValue = (String)rsMap.get("SVC_KEI_NO");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_KEI_NO") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","10"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_KEI_NO") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_KEI_NO") + errorLogInfo});
			return false;
		}

		// 申込明細番号項目チェック
		strValue = (String)rsMap.get("MSKM_DTL_NO");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.MSKM_DTL_NO") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","12"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.MSKM_DTL_NO") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.MSKM_DTL_NO") + errorLogInfo});
			return false;
		}

		// 旧料金プラン項目チェック
		strValue = (String)rsMap.get("OLD_PPLAN_CD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.OLD_PPLAN_CD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","6"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.OLD_PPLAN_CD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.OLD_PPLAN_CD") + errorLogInfo});
			return false;
		}

		// ＳＹＳＩＤ項目チェック
		strValue = (String)rsMap.get("SYSID");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SYSID") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","10"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SYSID") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SYSID") + errorLogInfo});
			return false;
		}

		// サービス契約ステータス項目チェック
		strValue = (String)rsMap.get("SVC_KEI_STAT");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_KEI_STAT") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","3"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_KEI_STAT") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_KEI_STAT") + errorLogInfo});
			return false;
		}

		// 料金プラン（変更後）項目チェック
		strValue = (String)rsMap.get("PPLAN_CD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.PPLAN_CD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","6"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.PPLAN_CD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.PPLAN_CD") + errorLogInfo});
			return false;
		}

		// プラン課金開始年月日項目チェック
		strValue = (String)rsMap.get("PLAN_CHRG_STAYMD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.PLAN_CHRG_STAYMD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.PLAN_CHRG_STAYMD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.PLAN_CHRG_STAYMD") + errorLogInfo});
			return false;
		}

		// サービス開始年月日（サービス）項目チェック
		strValue = (String)rsMap.get("SVC_STA_YMD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_STA_YMD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_STA_YMD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_STA_YMD") + errorLogInfo});
			return false;
		}

		// サービス課金開始年月日（サービス）項目チェック
		strValue = (String)rsMap.get("SVC_CHRG_STAYMD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_CHRG_STAYMD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_CHRG_STAYMD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.SVC_CHRG_STAYMD") + errorLogInfo});
			return false;
		}

		// 割引サービス契約番号項目チェック
		strValue = (String)rsMap.get("WRIB_SVC_KEI_NO");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_NO") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","12"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_NO") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_NO") + errorLogInfo});
			return false;
		}

		// 割引サービス契約ステータス項目チェック
		strValue = (String)rsMap.get("WRIB_SVC_KEI_STAT");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_STAT") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","3"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_STAT") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_STAT") + errorLogInfo});
			return false;
		}

		// 割引サービスコード項目チェック
		strValue = (String)rsMap.get("WRIB_SVC_CD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_CD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","9"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_CD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_CD") + errorLogInfo});
			return false;
		}

//		// 割引解約キャンセル契機コード項目チェック
//		strValue = (String)rsMap.get("WRIB_DSL_CNCL_OPTY_CD");
//		// 必須チェック
//		if(strValue == null || "".equals(strValue))
//		{
//			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
//															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_DSL_CNCL_OPTY_CD") + errorLogInfo});
//			return false;
//		}
//		// 桁数チェック
//		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","1"}))
//		{
//			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
//															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_DSL_CNCL_OPTY_CD") + errorLogInfo});
//			return false;
//		}
//		// 属性チェック
//		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
//		{
//			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
//															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_DSL_CNCL_OPTY_CD") + errorLogInfo});
//			return false;
//		}

		// 割引登録年月日項目チェック
		strValue = (String)rsMap.get("WRIB_ADD_YMD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_ADD_YMD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_ADD_YMD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_ADD_YMD") + errorLogInfo});
			return false;
		}

		// 申込起算年月日項目チェック
		strValue = (String)rsMap.get("MSKM_KISAN_YMD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.MSKM_KISAN_YMD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.MSKM_KISAN_YMD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.MSKM_KISAN_YMD") + errorLogInfo});
			return false;
		}

		// 割引登録契機コード項目チェック
		strValue = (String)rsMap.get("WRIB_ADD_OPTY_CD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_ADD_OPTY_CD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_ADD_OPTY_CD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_ADD_OPTY_CD") + errorLogInfo});
			return false;
		}

		// サービス課金開始年月日項目チェック
		strValue = (String)rsMap.get("WRIB_SVC_CHRG_STAYMD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_CHRG_STAYMD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_CHRG_STAYMD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_CHRG_STAYMD") + errorLogInfo});
			return false;
		}

		// サービス課金終了年月日項目チェック
		strValue = (String)rsMap.get("WRIB_SVC_CHRG_ENDYMD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_CHRG_ENDYMD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_CHRG_ENDYMD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_CHRG_ENDYMD") + errorLogInfo});
			return false;
		}

		// 割引サービス契約内訳番号項目チェック
		strValue = (String)rsMap.get("WRIB_SVC_KEI_UCWK_NO");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_NO") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","12"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_NO") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_NO") + errorLogInfo});
			return false;
		}

		// 割引サービス契約内訳ステータス項目チェック
		strValue = (String)rsMap.get("WRIB_SVC_KEI_UCWK_STAT");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_STAT") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","3"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_STAT") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_SVC_KEI_UCWK_STAT") + errorLogInfo});
			return false;
		}

		// サービス課金開始年月日（内訳）項目チェック
		strValue = (String)rsMap.get("WRIB_UCWK_SVC_CHRG_STAYMD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_STAYMD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_STAYMD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_STAYMD") + errorLogInfo});
			return false;
		}

		// サービス課金終了年月日（内訳）項目チェック
		strValue = (String)rsMap.get("WRIB_UCWK_SVC_CHRG_ENDYMD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_ENDYMD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_ENDYMD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.WRIB_UCWK_SVC_CHRG_ENDYMD") + errorLogInfo});
			return false;
		}

		// 表示用キャンペーンコード項目チェック
		strValue = (String)rsMap.get("DSP_CAMPAIGN_CD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.DSP_CAMPAIGN_CD") + errorLogInfo});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu1","8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.DSP_CAMPAIGN_CD") + errorLogInfo});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM522-INF1.DSP_CAMPAIGN_CD") + errorLogInfo});
			return false;
		}

		return true;
	}

	/**
	 * SQLKEY(KK_SELECT_004)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	割引サービスコード
	 *		 	料金プラン（変更後）
	 *		 	運用日
	 *		 	運用日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_M_WRISVC_TG_SVC_KK_SELECT_004(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());

		// DBアクセスを実行します
		db_KK_M_WRISVC_TG_SVC.selectBySqlDefine(paramList, KK_M_WRISVC_TG_SVC_KK_SELECT_004);
	}

	/**
	 * SQLKEY(KK_SELECT_051)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	割引サービス契約番号
	 *		 	割引サービスコード
	 *		 	サービス契約番号
	 *		 	運用日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_WRIB_SVC_KEI_KK_SELECT_051(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
/* +++++++++++ v7.00.00  DEL START +++++++++++ */
//		paramList.setValue(param[4].toString());
/* +++++++++++ v7.00.00  DEL END   +++++++++++ */

		// DBアクセスを実行します
		db_KK_T_WRIB_SVC_KEI.selectBySqlDefine(paramList, KK_T_WRIB_SVC_KEI_KK_SELECT_051);
	}

	/**
	 * SQLKEY(KK_SELECT_005)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	表示用キャンペーンコード
	 *		 	料金プラン（変更後）
	 *		 	運用日
	 *		 	運用日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_M_WRISVC_TG_SVC_KK_SELECT_005(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());

		// DBアクセスを実行します
		db_KK_M_WRISVC_TG_SVC.selectBySqlDefine(paramList, KK_M_WRISVC_TG_SVC_KK_SELECT_005);
	}

	/**
	 * SQLKEY(KK_SELECT_005)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	割引サービスコード
	 *		 	運用日
	 *		 	運用日
	 *		 	運用日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_M_WRIB_SVC_DTL_KK_SELECT_005(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());

		// DBアクセスを実行します
		db_KK_M_WRIB_SVC_DTL.selectBySqlDefine(paramList, KK_M_WRIB_SVC_DTL_KK_SELECT_005);
	}
	
	/**
	 * SQLKEY(KK_SELECT_058)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	新料金プラン
	 *		 	バッチ運用日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_IDO_RSV_KK_SELECT_058(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());

		// DBアクセスを実行します
		db_KK_T_IDO_RSV.selectBySqlDefine(paramList, KK_T_IDO_RSV_KK_SELECT_058);
	}
	
	/**
	 * SQLKEY(KK_SELECT_031)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KJ_FIN_WK_KK_SELECT_031(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_KJ_FIN_WK.selectBySqlDefine(paramList, KK_T_KJ_FIN_WK_KK_SELECT_031);
	}

	/**
	 * SQLKEY(KK_SELECT_031)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	運用日
	 *		 	運用日
	 *		 	運用日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKU_T_KOJIAK_KK_SELECT_031(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());

		// DBアクセスを実行します
		db_KU_T_KOJIAK.selectBySqlDefine(paramList, KU_T_KOJIAK_KK_SELECT_031);
	}

	/**
	 * SQLKEY(KK_SELECT_030)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_ADCHG_DTL_KK_SELECT_030(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_ADCHG_DTL.selectBySqlDefine(paramList, KK_T_ADCHG_DTL_KK_SELECT_030);
	}

	/**
	 * SQLKEY(KK_SELECT_031)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	住所変更番号
	 *		 	サービス契約番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_ADCHG_DTL_KK_SELECT_031(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_ADCHG_DTL.selectBySqlDefine(paramList, KK_T_ADCHG_DTL_KK_SELECT_031);
	}
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
}
