/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：プロジェクト共通
*	モジュール名	：JBSbatKKTVMainSubSwitch
*	ソースファイル名：JBSbatKKTVMainSubSwitch.java
*	作成者			：富士通
*	日付			：2015年11月02日
*＜機能概要＞
*	TV主従切替用の予約レコードを異動予約に作成します
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v20.00.00	2015/11/02	FJ)中野		ANK-2197-00-00 対応 新規作成
*   v23.00.00   2016/03/02  FJ)森脇     OM-2016-0000505 対応
*   v23.01.00   2016/04/11  FJ)森脇     OM-2016-0000978 対応
*
**********************************************************************/

package eo.business.common;

import eo.business.util.table.JBSbatKK_T_IDO_RSV;
import eo.business.util.table.JBSbatKK_T_SVC_KEI;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.util.JBSbatCheckUtil;
import eo.framework.util.JBSbatOracleSeqUtil;
import eo.framework.util.JBSbatStringUtil;


/**
 * 異動予約の作成を行います。
 * <br>
 * @author 富士通
 */
public class JBSbatKKTVMainSubSwitch extends JBSbatBusinessService{

	/** テーブル(異動予約)*/
	private static final String D_TBL_NAME_KK_T_IDO_RSV = "KK_T_IDO_RSV";
	
	/** テーブル(サービス契約)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI = "KK_T_SVC_KEI";
	
	/** SQL定義キー(KK_SELECT_321)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_321 = "KK_SELECT_321";
	
	// OM-2016-0000505 ADD START
	/** SQL定義キー(KK_SELECT_091)*/
	private static final String KK_T_IDO_RSV_KK_SELECT_091 = "KK_SELECT_091";
	// OM-2016-0000505 ADD END

	/** テーブルアクセスクラス(異動予約)*/
	private JBSbatSQLAccess db_KK_T_IDO_RSV = null;
	
	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI = null;
	
	// ログ出力用
	private static final String LOG_SVC_KEI_NO = "サービス契約番号";
	// ログ出力用
	private static final String LOG_RSV_APLY_YMD = "予約適用年月日";
	// ログ出力用
	private static final String LOG_MSKM_DTL_NO = "申込明細番号";
	
	/** シーケンス(異動予約番号)*/
	private static final String SEQ_IDO_RSV_NO = "SEQ_IDO_RSV_NO";
	
	/** 異動区分(TV契約主従料金設定)*/
	private static final String IDO_DIV_00066 = "00066";
	
	/** 異動予約状態コード(未反映)*/
	private static final String IDO_RSV_STAT_CD_00 = "00";
	
	// OM-2016-0000505 ADD START
	/** 異動予約詳細コード(サービス開始時主従切替)*/
	private static final String IDO_RSV_DTL_CD_030 = "030";
	// OM-2016-0000505 ADD END

	/**
	 * 異動予約レコード作成処理(主処理)
	 * @param cmnItem 業務共通電文
	 * @param svcKeiNo サービス契約番号
	 * @param rsvAplyYmd 予約適用年月日
	 * @param mskmDtlNo 申込明細番号
	 * @throws Exception 異動予約作成に失敗した場合
	 */
	public void tvMainSubSwitch(JBSbatCommonItem cmnItem, String svcKeiNo, String rsvAplyYmd, String mskmDtlNo) throws Exception
	{
	// OM-2016-0000978 ADD START
		tvMainSubSwitch(cmnItem, svcKeiNo, rsvAplyYmd, cmnItem.getOpeDate(), mskmDtlNo);
	}
	
	/**
	 * 異動予約レコード作成処理(主処理)
	 * @param cmnItem 業務共通電文
	 * @param svcKeiNo サービス契約番号
	 * @param rsvAplyYmd 予約適用年月日
	 * @param svcStaymd サービス開始年月日
	 * @param mskmDtlNo 申込明細番号
	 * @throws Exception 異動予約作成に失敗した場合
	 */
	public void tvMainSubSwitch(JBSbatCommonItem cmnItem, String svcKeiNo, String rsvAplyYmd, String svcStaymd, String mskmDtlNo) throws Exception
	{
	// OM-2016-0000978 ADD END
		// 初期処理
		initial(cmnItem);
		
		// 単項目チェック処理
		// OM-2016-0000978 MOD START
//		chkParam(cmnItem, svcKeiNo, rsvAplyYmd, mskmDtlNo);
		chkParam(cmnItem, svcKeiNo, rsvAplyYmd, svcStaymd, mskmDtlNo);
		// OM-2016-0000978 MOD END
		
		if(chkSvc(svcKeiNo))
		{
			// OM-2016-0000505 ADD START
			JBSbatCommonDBInterface rcvMap = new JBSbatCommonDBInterface();

			// 異動予約より、予約適用年月日(課金開始日)・サービス契約番号が同一のレコードを取得
			executeKK_T_IDO_RSV_KK_SELECT_091(new Object[] {svcKeiNo, rsvAplyYmd});
			// データを読む
			rcvMap = db_KK_T_IDO_RSV.selectNext();
			// レコードが存在すれば、新たに登録する必要がないため、異動予約への登録を行わない
			if(null != rcvMap)
			{
				// 更新処理は行わずにサービス開始日の判定へ
			}
			else
			{
				// レコードが存在しない為、異動予約を作成
				insertIdoRsv(svcKeiNo, rsvAplyYmd, null, mskmDtlNo);
			}
			
			// 異動予約より、予約適用年月日(サービス開始日)・サービス契約番号が同一のレコードを取得
			// OM-2016-0000978 MOD START
//			executeKK_T_IDO_RSV_KK_SELECT_091(new Object[] {svcKeiNo, super.opeDate});
			executeKK_T_IDO_RSV_KK_SELECT_091(new Object[] {svcKeiNo, svcStaymd});
			// OM-2016-0000978 MOD END
			// データを読む
			rcvMap = db_KK_T_IDO_RSV.selectNext();
			// レコードが存在すれば、新たに登録する必要がないため、異動予約への登録を行わない
			if(null != rcvMap)
			{
				// 更新処理は行わない
			}
			else
			{
				// レコードが存在しない為、異動予約を作成
				// OM-2016-0000978 MOD START
//				insertIdoRsv(svcKeiNo, opeDate, IDO_RSV_DTL_CD_030, mskmDtlNo);
				insertIdoRsv(svcKeiNo, svcStaymd, IDO_RSV_DTL_CD_030, mskmDtlNo);
				// OM-2016-0000978 MOD END
			}
			// OM-2016-0000505 ADD END
			
			// 異動予約レコードの作成
// OM-2016-0000505 DEL START
//			insertIdoRsv(svcKeiNo, rsvAplyYmd, mskmDtlNo);
// OM-2016-0000505 DEL END
		}
		else
		{
			// TVサービスでない場合は何もしない
		}
		
		// 終了処理
		terminal();
	}

	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception {
		
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);
		
		// DBアクセスクラスを生成します
		db_KK_T_IDO_RSV = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_IDO_RSV);
		db_KK_T_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception {
		// DBアクセスクラスをクローズします
		db_KK_T_IDO_RSV.close();
		db_KK_T_SVC_KEI.close();
	}
	/**
	 * 異動予約の作成<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.異動予約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param	svcKeiNo	サービス契約番号
	 * @param	rsvAplyYmd	予約適用年月日
	 * @param	idoRsvDtlCd	異動予約詳細コード
	 * @param	mskmDtlNo	申込明細番号
	 * @throws	Exception	業務サービス内で発生した例外全般。
	 */
	private void insertIdoRsv(
			String svcKeiNo,
			String rsvAplyYmd,
			// OM-2016-0000505 ADD START
			String idoRsvDtlCd,
			// OM-2016-0000505 ADD END
			String mskmDtlNo
	) throws Exception
	{
		// 異動予約番号をシーケンスより取得
		String idoRsvNO = JBSbatOracleSeqUtil.getFormatedNextSeq(commonItem.getConnection(), SEQ_IDO_RSV_NO, "", 15);

		String[] setParam = {
				idoRsvNO,					// 異動予約番号
				IDO_DIV_00066,				// 異動区分
// OM-2016-0000505 MOD START
//				null,						// 異動予約詳細コード
				idoRsvDtlCd,				// 異動予約詳細コード
// OM-2016-0000505 MOD END
				rsvAplyYmd,					// 予約適用年月日
				null,						// 異動予約反映年月日
				null,						// 異動予約キャンセル年月日
				IDO_RSV_STAT_CD_00,			// 異動予約状態コード
				mskmDtlNo,					// 申込明細番号
				null,						// SYSID
				null,						// 請求契約番号
				svcKeiNo,					// サービス契約番号
				null,						// サービス契約内訳番号
				null,						// オプションサービス契約番号
				null,						// サブオプションサービス契約番号
				null,						// 機器提供サービス契約番号
				null,						// 割引サービス契約番号
				null,						// サービス契約回線内訳番号
				null,						// 併合先SYSID
				null,						// 分割先SYSID
				null,						// 併合先請求契約番号
				null,						// 分割先請求契約番号
				null,						// 新料金グループコード
				null,						// 新料金コースコード
				null,						// 新料金プランコード
				null,						// 新提供方式契約番号
				null,						// 新電波障害案件番号
				null,						// 旧料金グループコード
				null,						// 旧料金コースコード
				null,						// 旧料金プランコード
				null,						// 旧提供方式契約番号
				null,						// 旧電波障害案件番号
				null,						// 工事案件番号
				null,						// 違約金発生コード
				null,						// オプション引継先サービス契約番号
				null,						// サービス休止課金開始年月日
				null,						// サービス課金終了年月日
				null,						// プラン課金開始年月日
				null,						// プラン課金終了年月日
				null,						// 異動予約理由コード
				null,						// 異動予約理由メモ
				null,						// 登録年月日時分秒
				null,						// 登録オペレータアカウント
				null,						// 更新年月日時分秒
				null,						// 更新オペレータアカウント
				null,						// 削除年月日時分秒
				null,						// 削除オペレータアカウント
				null,						// 無効フラグ
				null,						// 登録運用年月日
				null,						// 登録処理ID
				null,						// 更新運用年月日
				null,						// 更新処理ID
				null,						// 削除運用年月日
				null,						// 削除処理ID
				null,						// 機器オプションサービス契約番号
				null,						// 新機器使用開始希望年月日
				null,						// 新機器変更番号
				null,						// 旧機器変更番号
		};
		
		int idx = 0;
		
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		
		setMap.setValue("IDO_RSV_NO", setParam[idx++]);
		setMap.setValue("IDO_DIV", setParam[idx++]);
		setMap.setValue("IDO_RSV_DTL_CD", setParam[idx++]);
		setMap.setValue("RSV_APLY_YMD", setParam[idx++]);
		setMap.setValue("IDO_RSV_HANEI_YMD", setParam[idx++]);
		setMap.setValue("IDO_RSV_CL_YMD", setParam[idx++]);
		setMap.setValue("IDO_RSV_STAT_CD", setParam[idx++]);
		setMap.setValue("MSKM_DTL_NO", setParam[idx++]);
		setMap.setValue("SYSID", setParam[idx++]);
		setMap.setValue("SEIKY_KEI_NO", setParam[idx++]);
		setMap.setValue("SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("SVC_KEI_UCWK_NO", setParam[idx++]);
		setMap.setValue("OP_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("SBOP_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("KKTK_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("WRIB_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("SVC_KEI_KAISEN_UCWK_NO", setParam[idx++]);
		setMap.setValue("HEIGO_SK_SYSID", setParam[idx++]);
		setMap.setValue("BUNKATSU_SK_SYSID", setParam[idx++]);
		setMap.setValue("HEIGO_SK_SEIKY_KEI_NO", setParam[idx++]);
		setMap.setValue("BUNKATSU_SK_SEIKY_KEI_NO", setParam[idx++]);
		setMap.setValue("NEW_PRC_GRP_CD", setParam[idx++]);
		setMap.setValue("NEW_PCRS_CD", setParam[idx++]);
		setMap.setValue("NEW_PPLAN_CD", setParam[idx++]);
		setMap.setValue("NEW_TK_HOSHIKI_KEI_NO", setParam[idx++]);
		setMap.setValue("NEW_DMPS_ANKEN_NO", setParam[idx++]);
		setMap.setValue("OLD_PRC_GRP_CD", setParam[idx++]);
		setMap.setValue("OLD_PCRS_CD", setParam[idx++]);
		setMap.setValue("OLD_PPLAN_CD", setParam[idx++]);
		setMap.setValue("OLD_TK_HOSHIKI_KEI_NO", setParam[idx++]);
		setMap.setValue("OLD_DMPS_ANKEN_NO", setParam[idx++]);
		setMap.setValue("KOJIAK_NO", setParam[idx++]);
		setMap.setValue("PNLTY_HASSEI_CD", setParam[idx++]);
		setMap.setValue("OP_HKTGI_SK_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("SVC_PAUSE_CHRG_STA_YMD", setParam[idx++]);
		setMap.setValue("SVC_CHRG_ENDYMD", setParam[idx++]);
		setMap.setValue("PLAN_CHRG_STAYMD", setParam[idx++]);
		setMap.setValue("PLAN_CHRG_ENDYMD", setParam[idx++]);
		setMap.setValue("IDO_RSV_RSN_CD", setParam[idx++]);
		setMap.setValue("IDO_RSV_RSN_MEMO", setParam[idx++]);
		setMap.setValue("ADD_DTM", setParam[idx++]);
		setMap.setValue("ADD_OPEACNT", setParam[idx++]);
		setMap.setValue("UPD_DTM", setParam[idx++]);
		setMap.setValue("UPD_OPEACNT", setParam[idx++]);
		setMap.setValue("DEL_DTM", setParam[idx++]);
		setMap.setValue("DEL_OPEACNT", setParam[idx++]);
		setMap.setValue("MK_FLG", setParam[idx++]);
		setMap.setValue("ADD_UNYO_YMD", setParam[idx++]);
		setMap.setValue("ADD_TRN_ID", setParam[idx++]);
		setMap.setValue("UPD_UNYO_YMD", setParam[idx++]);
		setMap.setValue("UPD_TRN_ID", setParam[idx++]);
		setMap.setValue("DEL_UNYO_YMD", setParam[idx++]);
		setMap.setValue("DEL_TRN_ID", setParam[idx++]);
		setMap.setValue("KKOP_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("NEW_KIKI_USE_STA_KIBO_YMD", setParam[idx++]);
		setMap.setValue("NEW_KIKI_CHG_NO", setParam[idx++]);
		setMap.setValue("OLD_KIKI_CHG_NO", setParam[idx++]);

		// DBアクセスを実行します
		db_KK_T_IDO_RSV.insertByPrimaryKeys(setMap);
	}
	
	/**
	 * パラメータチェック処理
	 * @param cmnItem 業務共通電文
	 * @param svcKeiNo サービス契約番号
	 * @param rsvAplyYmd 予約適用年月日
	 * @param rsvAplyYmdSvcSta 予約適用年月日（サービス開始日）
	 * @param mskmDtlNo 申込明細番号
	 * @throws Exception エラーチェックとなった場合
	 */
// OM-2016-0000978 MOD START
//	private void chkParam(JBSbatCommonItem cmnItem, String svcKeiNo, String rsvAplyYmd, String mskmDtlNo) throws Exception
	private void chkParam(JBSbatCommonItem cmnItem, String svcKeiNo, String rsvAplyYmd, String rsvAplyYmdSvcSta, String mskmDtlNo) throws Exception
// OM-2016-0000978 MOD END
	{
		// 業務共通電文チェック
		if (null == cmnItem)
		{
			throw new Exception("バッチ共通電文がnullです。");
		}
		
		// ■サービス契約番号

		// 必須チェック
		if(svcKeiNo == null || "".equals(svcKeiNo))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{LOG_SVC_KEI_NO});
			throw new Exception("サービス契約番号が未設定です。");
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(svcKeiNo, new String[]{"ketasuu2", "0", "10"}))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{LOG_SVC_KEI_NO});
			throw new Exception("サービス契約番号の桁数が不正です。");
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(svcKeiNo, new String[]{"hannkakuesuuji1"}))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{LOG_SVC_KEI_NO});
			throw new Exception("サービス契約番号のドメインが不正です。");
		}
		
		// ■予約適用年月日

		// 必須チェック
		if(rsvAplyYmd == null || "".equals(rsvAplyYmd))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{LOG_RSV_APLY_YMD});
			throw new Exception("予約適用年月日が未設定です。");
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(rsvAplyYmd, new String[]{"ketasuu2", "0", "8"}))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{LOG_RSV_APLY_YMD});
			throw new Exception("予約適用年月日の桁数が不正です。");
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(rsvAplyYmd, new String[]{"year_month_day1"}))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{LOG_RSV_APLY_YMD});
			throw new Exception("予約適用年月日のドメインが不正です。");
		}		
		
		// OM-2016-0000978 ADD START
		// ■予約適用年月日

		// 必須チェック
		if(rsvAplyYmdSvcSta == null || "".equals(rsvAplyYmdSvcSta))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{LOG_RSV_APLY_YMD});
			throw new Exception("予約適用年月日が未設定です。");
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(rsvAplyYmdSvcSta, new String[]{"ketasuu2", "0", "8"}))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{LOG_RSV_APLY_YMD});
			throw new Exception("予約適用年月日の桁数が不正です。");
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(rsvAplyYmdSvcSta, new String[]{"year_month_day1"}))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{LOG_RSV_APLY_YMD});
			throw new Exception("予約適用年月日のドメインが不正です。");
		}		
		// OM-2016-0000978 ADD END
		
		// ■申込明細番号

		// 必須チェック
		if(mskmDtlNo == null || "".equals(mskmDtlNo))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{LOG_MSKM_DTL_NO});
			throw new Exception("申込明細番号が未設定です。");
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(mskmDtlNo, new String[]{"ketasuu2", "0", "12"}))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{LOG_MSKM_DTL_NO});
			throw new Exception("申込明細番号の桁数が不正です。");
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(mskmDtlNo, new String[]{"hannkakuesuuji1"}))
		{
			cmnItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{LOG_MSKM_DTL_NO});
			throw new Exception("申込明細番号のドメインが不正です。");
		}	
	}
	
	/**
	 * パラメータチェック処理
	 * @param svcKeiNo サービス契約番号
	 */
	private boolean chkSvc(String svcKeiNo) throws Exception
	{
		JBSbatCommonDBInterface rcvMap = new JBSbatCommonDBInterface();
		String[] paramKK321 = new String[2];
		
		paramKK321[0] = svcKeiNo;
		paramKK321[1] = super.opeDate;
		
		executeKK_T_SVC_KEI_KK_SELECT_321(paramKK321);
		
		// データを読む
		rcvMap = db_KK_T_SVC_KEI.selectNext();
		
		// 検索結果あり
		if(null != rcvMap)
		{
			// TVかどうかをサービスコードにて判定
			String svcCD = JBSbatStringUtil.Rtrim(rcvMap.getString(JBSbatKK_T_SVC_KEI.SVC_CD));
			
			if ("03".equals(svcCD))
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		else
		{
			// 検索結果が無い場合はエラーとする。
			throw new Exception("サービス契約にレコードが存在しません");
		}
	}
	
	/**
	 * SQLKEY(KK_SELECT_321)で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_SVC_KEI_KK_SELECT_321(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		// サービス契約番号
		paramList.setValue(param[0].toString());
		// 運用日付
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_321);
	}

	// OM-2016-0000505 ADD START
	/**
	 * SQLKEY(KK_SELECT_091)で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_091(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		// サービス契約番号
		paramList.setValue(param[0].toString());
		// 運用日付
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_IDO_RSV.selectBySqlDefine(paramList, KK_T_IDO_RSV_KK_SELECT_091);
	}
	// OM-2016-0000505 ADD END
}
