/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKVoipUseShukTableSette
*	ソースファイル名	：JBSbatKKVoipUseShukTableSette.java
*	作成者				：富士通　
*	作成日				：2012年04月02日
*＜機能概要＞
*　ＶｏＩＰ利用集計表テーブル設定部品です。
*＜修正履歴＞
*	バージョン	       修正日		修正者		修正内容
*	v1.00.00	       2012/04/02   富士通		新規作成
*   ST1-2012-0000494   2012/09/12   FJ)中野     試用加入の契約を解約済みに出来ない。
*   ANK-0571-00-00     2012/09/25   FJ)敷地     オプションサービス開始日変更対応と排他制御の導入
*   SEP-0007-00-00     2012/10/09   FJ)敷地     進捗補足事項編集対応
*   v4.00.00           2013/05/05   FJ)坂本     予約適用コード未設定対応
*	v7.00.00           2014/03/18   FJ)北谷     OM-2014-0000989 サブオプションの解約処理を追加
*	v13.00.00          2015/04/27   FJ)松岡     OM-2015-0000479 サブオプション存在フラグ初期化忘れ
*	v13.01.00          2015/04/27   FJ)松岡     OM-2015-0000727 解約・キャンセルレコードの回復年月日にNULLを設定
**	v14.00.00          2015/05/07   FJ)松岡     OM-2015-0000764 回復レコードのサービス解約年月日、プラン終了種別コードにNULLを設定
*********************************************************************/
package eo.business.service;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.HashMap;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JBSbatKKConst;
import eo.business.common.JKKBatCommon;
import eo.business.common.JKKBatConst;
import eo.business.util.file.JBSbatKKIFM167;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatServiceInterfaceMap;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.application.JBSbatBusinessError;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.util.JBSbatCheckUtil;
import eo.framework.util.JBSbatOracleSeqUtil;
import eo.framework.util.JBSbatStringUtil;
import eo.framework.util.JCCbatGetSystemDateUtil;
import eo.business.util.file.JBSbatKKIFM168;
import eo.business.util.table.JBSbatKK_M_PPLAN;
import eo.business.util.table.JBSbatKK_T_OPSVKEI_ISP;
import eo.business.util.table.JBSbatKK_T_OP_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_SBOPSVKEI_ISP;
import eo.business.util.table.JBSbatKK_T_SBOP_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_SVC_KEI;
import eo.business.util.table.JBSbatKK_M_OP_SVC;
import eo.common.constant.JPCBatchMessageConstant;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKVoipUseShukTableSette extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(オプションサービス契約)*/
	private static final String D_TBL_NAME_KK_T_OP_SVC_KEI = "KK_T_OP_SVC_KEI";

	/** テーブル(オプションサービス契約＜ＩＳＰ＞)*/
	private static final String D_TBL_NAME_KK_T_OPSVKEI_ISP = "KK_T_OPSVKEI_ISP";

	// OM-2014-0000989 2014/03/18 start
	/** テーブル(サブオプションサービス契約)*/
	private static final String D_TBL_NAME_KK_T_SBOP_SVC_KEI = "KK_T_SBOP_SVC_KEI";

	/** テーブル(オプションサービス契約＜ＩＳＰ＞)*/
	private static final String D_TBL_NAME_KK_T_SBOPSVKEI_ISP = "KK_T_SBOPSVKEI_ISP";
	// OM-2014-0000989 2014/03/18 end

	/** テーブル(進捗)*/
	private static final String D_TBL_NAME_KK_T_PRG = "KK_T_PRG";

	/** テーブル(サービス契約)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI = "KK_T_SVC_KEI";

	/** テーブル(オプションサービス)*/
	private static final String D_TBL_NAME_KK_M_OP_SVC = "KK_M_OP_SVC";

	/** テーブル(料金コース)*/
	private static final String D_TBL_NAME_KK_M_PCRS = "KK_M_PCRS";
	
	/** テーブル(サービス契約排他制御)*/
	private static final String D_TBL_NAME_KK_T_SVKEI_EXC_CTRL = "KK_T_SVKEI_EXC_CTRL";

	/** SQL定義キー(KK_SELECT_144)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_144 = "KK_SELECT_144";

	/** SQL定義キー(KK_SELECT_273)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_273 = "KK_SELECT_273";

	/** SQL定義キー(KK_SELECT_004)*/
	private static final String KK_M_OP_SVC_KK_SELECT_004 = "KK_SELECT_004";

	/** SQL定義キー(KK_SELECT_003)*/
	private static final String KK_M_PCRS_KK_SELECT_003 = "KK_SELECT_003";

	/** SQL定義キー(KK_SELECT_001)*/
	private static final String KK_T_SVKEI_EXC_CTRL_KK_SELECT_001 = "KK_SELECT_001";

	/** SQL定義キー(KK_UPDATE_002)*/
	private static final String KK_T_SVKEI_EXC_CTRL_KK_UPDATE_002 = "KK_UPDATE_002";
	
	// OM-2014-0000989 2014/03/18 start
	/** SQL定義キー(KK_SELECT_027)*/
	private static final String KK_T_SBOP_SVC_KEI_KK_SELECT_027 = "KK_SELECT_027";
	// OM-2014-0000989 2014/03/18 end

	/** テーブルアクセスクラス(オプションサービス契約)*/
	private JBSbatSQLAccess db_KK_T_OP_SVC_KEI = null;

	/** テーブルアクセスクラス(オプションサービス契約＜ＩＳＰ＞)*/
	private JBSbatSQLAccess db_KK_T_OPSVKEI_ISP = null;

	// OM-2014-0000989 2014/03/18 start
	/** テーブルアクセスクラス(サブオプションサービス契約)*/
	private JBSbatSQLAccess db_KK_T_SBOP_SVC_KEI = null;

	/** テーブルアクセスクラス(サブオプションサービス契約＜ＩＳＰ＞)*/
	private JBSbatSQLAccess db_KK_T_SBOPSVKEI_ISP = null;
	// OM-2014-0000989 2014/03/18 end

	/** テーブルアクセスクラス(進捗)*/
	private JBSbatSQLAccess db_KK_T_PRG = null;

	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI = null;

	/** テーブルアクセスクラス(オプションサービス)*/
	private JBSbatSQLAccess db_KK_M_OP_SVC = null;
	
	/** テーブルアクセスクラス(料金コース)*/
	private JBSbatSQLAccess db_KK_M_PCRS = null;
	
	/** テーブルアクセスクラス(サービス契約排他制御)*/
	private JBSbatSQLAccess db_KK_T_SVKEI_EXC_CTRL = null;
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	
	// ST1-2012-0000494 2012/09/12 MOD START
//	/** ALL9*/
//	private static final String MAX_VALUE = "99999999";
	/** 日付の最大値*/
	private static final String MAX_VALUE = "20991231";
	// ST1-2012-0000494 2012/09/12 MOD END
	
	/** シーケンス(オプションサービス契約)*/
	private static final String SEQ_OP_SVC_KEI_NO = "SEQ_OP_SVC_KEI_NO";
	
	// OM-2014-0000989 2014/03/18 start
	/** シーケンス(サブオプションサービス契約)*/
	private static final String SEQ_SBOP_SVC_KEI_NO = "SEQ_SBOP_SVC_KEI_NO";
	// OM-2014-0000989 2014/03/18 end
	
	/** シーケンス(進捗)*/
	private static final String SEQ_PRG_NO = "SEQ_PRG_NO";
	
	/** 異動区分(オプション設定)*/
	private static final String IDO_DIV_OP_SETE = "00031";
	
	/** 進捗ステータス(オプション設定完了)*/
	private static final String PRG_STAT_OP_SETE_FIN = "5102";
	
	// --eoオプション
	/** eoオプション(TELvision) */
	private static final String EO_OP_TEL = "10";
	
	/** eoオプション(eoネットフォン) */
	private static final String EO_OP_EONETPH = "12";
	
	// SEP-0007-00-00 進捗補足事項編集対応 ADD START
	/** 進捗特記事項のオプション種別設定文字列(TELvision) */
	private static final String PRG_TKJK_OP_STR_TEL = "Telvision";
	
	/** 進捗特記事項のオプション種別設定文字列(eoネットフォン) */
	private static final String PRG_TKJK_OP_STR_EONETPH = "eoネットフォン";
	
	/** 進捗特記事項の操作モード設定文字列(登録) */
	private static final String PRG_TKJK_SOSA_STR_ADD = "登録";
	
	/** 進捗特記事項の操作モード設定文字列(解約) */
	private static final String PRG_TKJK_SOSA_STR_DSL = "解約";
	
	/** 進捗特記事項の操作モード設定文字列(回復) */
	private static final String PRG_TKJK_SOSA_STR_KAIHK = "回復";
	
	/** 進捗特記事項の操作モード設定文字列(キャンセル) */
	private static final String PRG_TKJK_SOSA_STR_CANCEL = "キャンセル";
	
	/** 進捗特記事項の操作モード設定文字列(一部内容変更) */
	private static final String PRG_TKJK_SOSA_STR_ICHIBU_NAIYO_CHGE = "一部内容変更";
	
	/** 進捗特記事項の操作モード設定文字列(内容変更) */
	private static final String PRG_TKJK_SOSA_STR_NAIYO_CHGE = "内容変更";
	// SEP-0007-00-00 ADD END
	// OM-2014-0000989 2014/03/18 start
	/** サブオプション存在フラグ */
	private boolean sbopSonzaiFlg = false;
	// OM-2014-0000989 2014/03/18 end

	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_KK_T_OP_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_OP_SVC_KEI);
		db_KK_T_OPSVKEI_ISP = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_OPSVKEI_ISP);
		// OM-2014-0000989 2014/03/18 start
		db_KK_T_SBOP_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SBOP_SVC_KEI);
		db_KK_T_SBOPSVKEI_ISP = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SBOPSVKEI_ISP);
		// OM-2014-0000989 2014/03/18 end
		db_KK_T_PRG = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_PRG);
		db_KK_T_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
		db_KK_M_OP_SVC = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_M_OP_SVC);
		db_KK_M_PCRS = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_M_PCRS);
		db_KK_T_SVKEI_EXC_CTRL = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVKEI_EXC_CTRL);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		// 宣言
		String taioNo = null;
		String svkeiNo = null;
		String opsvkeiNo = null;
		String opsvkeiGeneAddDtm = null;
		String opsvkeiIspGeneAddDtm = null;
		String svcEndDtm = null;
		String voipUserId = null;
		String rrksMlad = null;
		String mskmDtlNo = null;
		//OM-2015-0000479 ADD START
		sbopSonzaiFlg = false;//サブオプション存在フラグ
		//OM-2015-0000479 ADD END
		// SEP-0007-00-00 進捗補足事項編集対応 ADD START
		// 進捗特記事項の操作モード設定文字列
		String prgTkjkSosaStr = null;
		// SEP-0007-00-00 ADD END
		// OM-2014-0000989 2014/03/18 start
		String sbopsvkeiNo = null;
		// OM-2014-0000989 2014/03/18 end

		// ▼▼▼▼▼ 2013/09/23 OM-2013-0002497 UPD START ▼▼▼▼▼
		String addStat = null;
		// ▲▲▲▲▲ 2013/09/23 OM-2013-0002497 UPD E N D ▲▲▲▲▲

		JBSbatCommonDBInterface opSvcKeiMap = null;
		JBSbatCommonDBInterface opsvkeiIspMap = null;
		// OM-2014-0000989 2014/03/18 start
		JBSbatCommonDBInterface sbopSvcKeiMap = null;
		JBSbatCommonDBInterface sbopsvkeiIspMap = null;
		// OM-2014-0000989 2014/03/18 end

		//--入力情報の単項目チェック
		if (!isSingleCheckKKIFM168_INF1(inMap.getMap(), getItemvalueMap()))
		{
			// エラーフラグ設定
			super.commonItem.setErrFlg(true);
			return null;
		}
		
		// システム日付を取得
		String systemDateTime1 = JCCbatGetSystemDateUtil.getSystemDateTime().get(JCCbatGetSystemDateUtil.KEY_YYYYMMDDHHMMSS_SSS);
		String systemDateTime2 = getNextSystemDateTime(systemDateTime1);

		// 入力情報の取得
		taioNo               = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.TAIO_NO));						// 対応番号
		svkeiNo              = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.SVKEI_NO));						// サービス契約番号
		opsvkeiNo            = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.OP_SVC_KEI_NO));				// オプションサービス契約番号
		opsvkeiGeneAddDtm    = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.OPSVKEI_GENE_ADD_DTM));			// 世代登録年月日時分秒(オプションサービス契約)
		opsvkeiIspGeneAddDtm = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.OPSVKEI_ISP_GENE_ADD_DTM));		// 世代登録年月日時分秒(オプションサービス契約<ISP>)
		svcEndDtm            = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD));					// サービス解約年月日
		voipUserId           = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.VOIP_USER_ID));					// VoIPユーザーID
		rrksMlad             = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.MLAD));							// 連絡先メールアドレス

		// ▼▼▼▼▼ 2013/09/23 OM-2013-0002497 UPD START ▼▼▼▼▼
		addStat              = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.ADD_STAT));						// 登録状態
		// ▲▲▲▲▲ 2013/09/23 OM-2013-0002497 UPD E N D ▲▲▲▲▲

		// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
		// サービス契約排他制御レコードロック
		executeKK_T_SVKEI_EXC_CTRL_KK_SELECT_001(new Object[]{svkeiNo});
		JBSbatCommonDBInterface svkeiExcCtrlMap = db_KK_T_SVKEI_EXC_CTRL.selectNext();
		// ANK-0571-00-00 ADD END

		if(svkeiExcCtrlMap != null)
		{

			// OM-2014-0000989 2014/03/18 start
			if(!"02".equals(taioNo) && !"05".equals(taioNo) && !"09".equals(taioNo)){
				// カレントレコードの取得(サブオプションサービス契約)
				sbopSvcKeiMap = getCurretRecSbopSvcKei(opsvkeiNo);
				if (sbopSvcKeiMap != null){
					sbopSonzaiFlg = true; //サブオプションが存在

					// サブオプションサービス契約＜ISP＞をPK検索
					Object[] sbopsvkeiIspWhereParam = {
							opsvkeiNo,
							sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SBOP_SVC_KEI_NO),
							sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.GENE_ADD_DTM)
					};
					sbopsvkeiIspMap = getCurretRecSbopSvcKeiIsp(sbopsvkeiIspWhereParam);
					if (sbopsvkeiIspMap == null)
					{
						// エラーログ出力
						commonItem.getLogPrint().printBusinessErrorLog(JPCBatchMessageConstant.EKKB0150JE, new String[]{"サブオプションサービス契約＜ISP＞"});
						// エラーフラグ設定
						super.commonItem.setErrFlg(true);
						// 出力情報を返却
						return new JBSbatOutputItem();
					}
				}
			}
			// OM-2014-0000989 2014/03/18 end


			// 対応番号に応じて、テーブル更新を振り分ける

			// ***********************************************************
			// キャンセルの場合
			// ***********************************************************
			if("01".equals(taioNo))
			{
				// SEP-0007-00-00 進捗補足事項編集対応 ADD START
				// 進捗特記事項の操作モード設定文字列(キャンセル)
				prgTkjkSosaStr = PRG_TKJK_SOSA_STR_CANCEL;
				// SEP-0007-00-00 ADD END

				// カレントレコードの取得(オプションサービス契約)
				opSvcKeiMap = getCurretRecOpSvcKei(opsvkeiNo, opsvkeiGeneAddDtm);

				// ▼▼▼▼▼ 2013/09/13 ADD START ▼▼▼▼▼
				// オプションサービス契約ステータス判定
				String opSvcKeiStat = opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_STAT);
				if (
						!JKKBatConst.CD_SBT_SVC_KEI_STAT_010.equals(opSvcKeiStat)
						&& !JKKBatConst.CD_SBT_SVC_KEI_STAT_020.equals(opSvcKeiStat)
				)
				{
					// ステータスが「受付済」「照査済」以外の場合、ワーニングログ出力
					printErrMsgOpSvcKei(svkeiNo, opsvkeiNo, opSvcKeiStat, taioNo);

					// 処理終了
					return null;
				}
				// ▲▲▲▲▲ 2013/09/13 ADD E N D ▲▲▲▲▲

				// オプションサービス契約のキャンセル
				insertOpSvcKeiCancel(opSvcKeiMap, inMap, systemDateTime1);

				// カレントレコードの取得(オプションサービス契約<ISP>)
				opsvkeiIspMap = getCurretRecOpSvcKeiIsp(opsvkeiNo, opsvkeiIspGeneAddDtm);

				// オプションサービス契約<ISP>のキャンセル
				insertOpsvkeiIspUpd(opsvkeiIspMap, systemDateTime1, voipUserId, rrksMlad, addStat);
			}
			// ***********************************************************
			// 登録の場合
			// ***********************************************************
			else if("02".equals(taioNo) || "05".equals(taioNo) || "09".equals(taioNo))
			{
				// SEP-0007-00-00 進捗補足事項編集対応 ADD START
				// 進捗特記事項の操作モード設定文字列(登録)
				prgTkjkSosaStr = PRG_TKJK_SOSA_STR_ADD;
				// SEP-0007-00-00 ADD END

				// ▼▼▼▼▼ 2013/09/13 ADD START ▼▼▼▼▼
				// サービス契約ステータスの取得
				JBSbatCommonDBInterface svcKeiRec = getCurretRecSvcKei(svkeiNo);

				// サービス契約ステータス判定
				String svcKeiStat = svcKeiRec.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT);
				if (
						JKKBatConst.CD_SBT_SVC_KEI_STAT_910.equals(svcKeiStat)
						|| JKKBatConst.CD_SBT_SVC_KEI_STAT_920.equals(svcKeiStat)
				)
				{
					// ステータスが「解約済」「キャンセル済」の場合、ワーニングログ出力
					printErrMsgSvcKei(svkeiNo, svcKeiStat, taioNo);

					// 処理終了
					return null;
				}
				// ▲▲▲▲▲ 2013/09/13 ADD E N D ▲▲▲▲▲

				// シーケンスからオプションサービス契約番号を取得
				opsvkeiNo = JBSbatOracleSeqUtil.getFormatedNextSeq(commonItem.getConnection(), SEQ_OP_SVC_KEI_NO, "", 12);	// IT2-2012-0000894

				// オプションサービス契約の登録
				insertOpSvcKeiAdd(systemDateTime1, inMap, opsvkeiNo);

				// オプションサービス契約<ISP>の登録
				insertOpsvkeiIspAdd(systemDateTime1, opsvkeiNo, voipUserId, rrksMlad, addStat);
			}
			// ***********************************************************
			// 一部内容変更の場合
			// ***********************************************************
			else if("03".equals(taioNo) || "07".equals(taioNo) || "11".equals(taioNo))
			{
				// SEP-0007-00-00 進捗補足事項編集対応 ADD START
				// 進捗特記事項の操作モード設定文字列(一部内容変更)
				prgTkjkSosaStr = PRG_TKJK_SOSA_STR_ICHIBU_NAIYO_CHGE;
				// SEP-0007-00-00 ADD END

				// カレントレコードの取得(オプションサービス契約)
				opSvcKeiMap = getCurretRecOpSvcKei(opsvkeiNo, opsvkeiGeneAddDtm);

				// ▼▼▼▼▼ 2013/09/13 ADD START ▼▼▼▼▼
				// オプションサービス契約ステータス判定
				String opSvcKeiStat = opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_STAT);
				if (
						JKKBatConst.CD_SBT_SVC_KEI_STAT_910.equals(opSvcKeiStat)
						|| JKKBatConst.CD_SBT_SVC_KEI_STAT_920.equals(opSvcKeiStat)
				)
				{
					// ステータスが「解約済」「キャンセル済」の場合、ワーニングログ出力
					printErrMsgOpSvcKei(svkeiNo, opsvkeiNo, opSvcKeiStat, taioNo);

					// 処理終了
					return null;
				}
				// ▲▲▲▲▲ 2013/09/13 ADD E N D ▲▲▲▲▲

				// オプションサービス契約の一部内容変更
				insertOpSvcKeiIchibuChge(opSvcKeiMap, inMap, systemDateTime1);

				// カレントレコードの取得(オプションサービス契約<ISP>)
				opsvkeiIspMap = getCurretRecOpSvcKeiIsp(opsvkeiNo, opsvkeiIspGeneAddDtm);

				// オプションサービス契約<ISP>の一部内容変更
				insertOpsvkeiIspUpd(opsvkeiIspMap, systemDateTime1, voipUserId, rrksMlad, addStat);
			}
			// ***********************************************************
			// 内容変更の場合
			// ***********************************************************
			else if("06".equals(taioNo) || "10".equals(taioNo))
			{
				// SEP-0007-00-00 進捗補足事項編集対応 ADD START
				// 進捗特記事項の操作モード設定文字列(内容変更)
				prgTkjkSosaStr = PRG_TKJK_SOSA_STR_NAIYO_CHGE;
				// SEP-0007-00-00 ADD END

				// カレントレコードの取得(オプションサービス契約)
				opSvcKeiMap = getCurretRecOpSvcKei(opsvkeiNo, opsvkeiGeneAddDtm);

				// ▼▼▼▼▼ 2013/09/13 ADD START ▼▼▼▼▼
				// オプションサービス契約ステータス判定
				String opSvcKeiStat = opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_STAT);
				if (
						JKKBatConst.CD_SBT_SVC_KEI_STAT_910.equals(opSvcKeiStat)
						|| JKKBatConst.CD_SBT_SVC_KEI_STAT_920.equals(opSvcKeiStat)
				)
				{
					// ステータスが「解約済」「キャンセル済」の場合、ワーニングログ出力
					printErrMsgOpSvcKei(svkeiNo, opsvkeiNo, opSvcKeiStat, taioNo);

					// 処理終了
					return null;
				}
				// ▲▲▲▲▲ 2013/09/13 ADD E N D ▲▲▲▲▲

				// オプションサービス契約の内容変更
				insertOpSvcKeiChge(opSvcKeiMap, inMap, systemDateTime1);

				// カレントレコードの取得(オプションサービス契約<ISP>)
				opsvkeiIspMap = getCurretRecOpSvcKeiIsp(opsvkeiNo, opsvkeiIspGeneAddDtm);

				// オプションサービス契約<ISP>の一部内容変更
				insertOpsvkeiIspUpd(opsvkeiIspMap, systemDateTime1, voipUserId, rrksMlad, addStat);
			}
			// ***********************************************************
			// 回復の場合
			// ***********************************************************
			else if("04".equals(taioNo) || "08".equals(taioNo) || "12".equals(taioNo))
			{
				// SEP-0007-00-00 進捗補足事項編集対応 ADD START
				// 進捗特記事項の操作モード設定文字列(回復)
				prgTkjkSosaStr = PRG_TKJK_SOSA_STR_KAIHK;
				// SEP-0007-00-00 ADD END

				// カレントレコードの取得(オプションサービス契約)
				opSvcKeiMap = getCurretRecOpSvcKei(opsvkeiNo, opsvkeiGeneAddDtm);

				// ▼▼▼▼▼ 2013/09/13 ADD START ▼▼▼▼▼
				// オプションサービス契約ステータス判定
				String opSvcKeiStat = opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_STAT);
				if (
						!JKKBatConst.CD_SBT_SVC_KEI_STAT_910.equals(opSvcKeiStat)
						&& !JKKBatConst.CD_SBT_SVC_KEI_STAT_920.equals(opSvcKeiStat)
				)
				{
					// ステータスが「解約済」「キャンセル済」以外の場合、ワーニングログ出力
					printErrMsgOpSvcKei(svkeiNo, opsvkeiNo, opSvcKeiStat, taioNo);

					// 処理終了
					return null;
				}

				// サービス契約ステータスの取得
				JBSbatCommonDBInterface svcKeiRec = getCurretRecSvcKei(svkeiNo);

				// サービス契約ステータス判定
				String svcKeiStat = svcKeiRec.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT);
				if (
						JKKBatConst.CD_SBT_SVC_KEI_STAT_910.equals(svcKeiStat)
						|| JKKBatConst.CD_SBT_SVC_KEI_STAT_920.equals(svcKeiStat)
				)
				{
					// ステータスが「解約済」「キャンセル済」の場合、ワーニングログ出力
					printErrMsgSvcKei(svkeiNo, svcKeiStat, taioNo);

					// 処理終了
					return null;
				}
				// ▲▲▲▲▲ 2013/09/13 ADD E N D ▲▲▲▲▲

				// +++++++++++++++++++++++++++++++++++++
				// 回復可能期間内の場合
				// +++++++++++++++++++++++++++++++++++++
				if(canKaihk(opSvcKeiMap, inMap))
				{
					// オプションサービス契約の回復(更新)
					insertOpSvcKeiKaihkUpd(opSvcKeiMap, inMap, systemDateTime1);

					// カレントレコードの取得(オプションサービス契約<ISP>)
					opsvkeiIspMap = getCurretRecOpSvcKeiIsp(opsvkeiNo, opsvkeiIspGeneAddDtm);

					// オプションサービス契約<ISP>の回復
					insertOpsvkeiIspUpd(opsvkeiIspMap, systemDateTime1, voipUserId, rrksMlad, addStat);
					
					// OM-2014-0000989 2014/03/18 start
					if(sbopSonzaiFlg){
						// サブオプションサービス契約の回復(更新)
						insertSbopSvcKeiKaihkUpd(sbopSvcKeiMap, inMap, systemDateTime1);

						// サブオプションサービス契約＜ISP＞の回復
						insertSbopsvkeiIspUpd(sbopsvkeiIspMap, systemDateTime1);
					}
					// OM-2014-0000989 2014/03/18 end
				}
				// +++++++++++++++++++++++++++++++++++++
				// 回復可能期間外の場合
				// +++++++++++++++++++++++++++++++++++++
				else
				{
					// シーケンスからオプションサービス契約番号を取得
					opsvkeiNo = JBSbatOracleSeqUtil.getFormatedNextSeq(commonItem.getConnection(), SEQ_OP_SVC_KEI_NO, "", 12);	// IT2-2012-0000894

					// オプションサービス契約の回復(作成)
					insertOpSvcKeiKaihkSaksei(inMap, systemDateTime1, opsvkeiNo);

					// オプションサービス契約<ISP>の回復
					insertOpsvkeiIspAdd(systemDateTime1, opsvkeiNo, voipUserId, rrksMlad, addStat);
					
					// OM-2014-0000989 2014/03/18 start
					if(sbopSonzaiFlg){
						// シーケンスからサブオプションサービス契約番号を取得
						sbopsvkeiNo = JBSbatOracleSeqUtil.getFormatedNextSeq(commonItem.getConnection(), SEQ_SBOP_SVC_KEI_NO, "", 12);
						
						// サブオプションサービス契約の回復(作成)
						insertSbopSvcKeiKaihkSaksei(sbopSvcKeiMap, inMap, systemDateTime1, opsvkeiNo, sbopsvkeiNo);
						
						// サブオプションサービス契約＜ISP＞の回復
						insertSbopsvkeiIspAdd(systemDateTime1, opsvkeiNo, sbopsvkeiNo);
					}
					// OM-2014-0000989 2014/03/18 end
				}
			}
			// ***********************************************************
			// 解約(キャンセル)の場合
			// ***********************************************************
			else if("15".equals(taioNo))
			{
				// カレントレコードの取得(オプションサービス契約)
				opSvcKeiMap = getCurretRecOpSvcKei(opsvkeiNo, opsvkeiGeneAddDtm);

				// ▼▼▼▼▼ 2013/09/13 ADD START ▼▼▼▼▼
				// オプションサービス契約ステータス判定
				String opSvcKeiStat = opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_STAT);
				if (
						JKKBatConst.CD_SBT_SVC_KEI_STAT_910.equals(opSvcKeiStat)
						|| JKKBatConst.CD_SBT_SVC_KEI_STAT_920.equals(opSvcKeiStat)
				)
				{
					// ステータスが「解約済」「キャンセル済」の場合、ワーニングログ出力
					printErrMsgOpSvcKei(svkeiNo, opsvkeiNo, opSvcKeiStat, taioNo);

					// 処理終了
					return null;
				}
				// ▲▲▲▲▲ 2013/09/13 ADD E N D ▲▲▲▲▲

				// ST1-2012-0000494 2012/09/12 ADD START
				// 取得したカレントレコードのオプションサービス契約ステータスが照査済以前ならキャンセルする。
				if (
						JKKBatConst.CD_SBT_SVC_KEI_STAT_010.equals(opSvcKeiStat)
						|| JKKBatConst.CD_SBT_SVC_KEI_STAT_020.equals(opSvcKeiStat)
				)
				{
					// SEP-0007-00-00 進捗補足事項編集対応 ADD START
					// 進捗特記事項の操作モード設定文字列(キャンセル)
					prgTkjkSosaStr = PRG_TKJK_SOSA_STR_CANCEL;
					// SEP-0007-00-00 ADD END

					// オプションサービス契約のキャンセル
					insertOpSvcKeiDslCancel(opSvcKeiMap, inMap, systemDateTime1);
				}
				else
				{
					// SEP-0007-00-00 進捗補足事項編集対応 ADD START
					// 進捗特記事項の操作モード設定文字列(解約)
					prgTkjkSosaStr = PRG_TKJK_SOSA_STR_DSL;
					// SEP-0007-00-00 ADD END

					// オプションサービス契約の解約
					insertOpSvcKeiDslUpd(opSvcKeiMap, inMap, systemDateTime1);
				}
				// ST1-2012-0000494 2012/09/12 ADD END

				// カレントレコードの取得(オプションサービス契約<ISP>)
				opsvkeiIspMap = getCurretRecOpSvcKeiIsp(opsvkeiNo, opsvkeiIspGeneAddDtm);

				// オプションサービス契約<ISP>の解約キャンセル
				insertOpsvkeiIspUpd(opsvkeiIspMap, systemDateTime1, voipUserId, rrksMlad, addStat);
			}
			// ***********************************************************
			// 解約の場合
			// ***********************************************************
			else if("16".equals(taioNo) || "14".equals(taioNo) || "17".equals(taioNo))
			{
				// SEP-0007-00-00 進捗補足事項編集対応 ADD START
				// 進捗特記事項の操作モード設定文字列(解約)
				prgTkjkSosaStr = PRG_TKJK_SOSA_STR_DSL;
				// SEP-0007-00-00 ADD END

				// カレントレコードの取得(オプションサービス契約)
				opSvcKeiMap = getCurretRecOpSvcKei(opsvkeiNo, opsvkeiGeneAddDtm);

				// ▼▼▼▼▼ 2013/09/13 ADD START ▼▼▼▼▼
				// オプションサービス契約ステータス判定
				String opSvcKeiStat = opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_STAT);
				if (
						JKKBatConst.CD_SBT_SVC_KEI_STAT_910.equals(opSvcKeiStat)
						|| JKKBatConst.CD_SBT_SVC_KEI_STAT_920.equals(opSvcKeiStat)
				)
				{
					// ステータスが「解約済」「キャンセル済」の場合、ワーニングログ出力
					printErrMsgOpSvcKei(svkeiNo, opsvkeiNo, opSvcKeiStat, taioNo);

					return null;
				}
				// ▲▲▲▲▲ 2013/09/13 ADD E N D ▲▲▲▲▲

				// オプションサービス契約の解約
				insertOpSvcKeiDslUpd(opSvcKeiMap, inMap, systemDateTime1);

				// カレントレコードの取得(オプションサービス契約<ISP>)
				opsvkeiIspMap = getCurretRecOpSvcKeiIsp(opsvkeiNo, opsvkeiIspGeneAddDtm);

				// オプションサービス契約<ISP>の解約
				insertOpsvkeiIspUpd(opsvkeiIspMap, systemDateTime1, voipUserId, rrksMlad, addStat);
				
				// OM-2014-0000989 2014/03/18 start
				if(sbopSonzaiFlg){
					// サブオプションサービス契約の解約
					insertSbopSvcKeiDslUpd(sbopSvcKeiMap, inMap, systemDateTime1);

					// サブオプションサービス契約＜ISP＞の解約
					insertSbopsvkeiIspUpd(sbopsvkeiIspMap, systemDateTime1);
				}
				// OM-2014-0000989 2014/03/18 end
			}
			// ***********************************************************
			// 履歴(解約)の場合
			// ***********************************************************
			else if("13".equals(taioNo))
			{
				// SEP-0007-00-00 進捗補足事項編集対応 ADD START
				// 進捗特記事項の操作モード設定文字列(解約)
				prgTkjkSosaStr = PRG_TKJK_SOSA_STR_DSL;
				// SEP-0007-00-00 ADD END

				// シーケンスからオプションサービス契約番号を取得
				opsvkeiNo = JBSbatOracleSeqUtil.getFormatedNextSeq(commonItem.getConnection(), SEQ_OP_SVC_KEI_NO, "", 12);	// IT2-2012-0000894

				// オプションサービス契約の登録
				insertOpSvcKeiDslSaksei(inMap, systemDateTime1, opsvkeiNo);

				// オプションサービス契約<ISP>の登録
				insertOpsvkeiIspAdd(systemDateTime1, opsvkeiNo, voipUserId, rrksMlad, addStat);
			}

			// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
			// サービス契約排他制御の最終更新年月日時分秒を更新
			Object[] svkeiExcCtrlParam = {
					systemDateTime1,	// 最終更新年月日時分秒
					svkeiNo,	// サービス契約番号
			};
			executeKK_T_SVKEI_EXC_CTRL_KK_UPDATE_002(svkeiExcCtrlParam);
			// ANK-0571-00-00：ADD END
		}
		
		// 進捗を登録
		if(opSvcKeiMap != null)
		{
			mskmDtlNo = opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.MSKM_DTL_NO); // 申込明細番号
		}
		
		insertPrg(inMap, systemDateTime1, mskmDtlNo, prgTkjkSosaStr);
		
		return null;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_KK_T_OP_SVC_KEI.close();
		db_KK_T_OPSVKEI_ISP.close();
		db_KK_T_PRG.close();
		db_KK_T_SVC_KEI.close();
		db_KK_M_OP_SVC.close();
		db_KK_M_PCRS.close();
		db_KK_T_SVKEI_EXC_CTRL.close();
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}


	/**
	 * エラーメッセージに関する項目値を格納されたHashMap<String, String>を生成します。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.エラーメッセージに関する項目値を格納されたHashMapを生成する。<br>
	 *
	 * 2.エラーメッセージに関する項目値を格納されたHashMapに値を設定する。<br>
	 * </pre>
	 * <p>
	 * @return HashMap<String, String>　エラーメッセージのリスト
	 */
	private HashMap<String, String> getItemvalueMap()
	{
		HashMap<String, String> itemvalueMapTable = new HashMap<String, String>();
		
		itemvalueMapTable.put("TXT-KKIFM168-INF1.SHUK_TRGT_PRD", "集計対象期間");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.SVKEI_NO", "サービス契約番号");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.FTRIAL_PRD_ENDYMD", "試用期間終了年月日");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.VOIP_USER_ID", "ＶｏＩＰユーザＩＤ");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.ADD_STAT", "登録状態");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.IP_TELNO", "ＩＰ電話番号");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.MLAD", "メールアドレス");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.EO_OP", "ｅｏオプション");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.SVC_DIV", "サービス区分");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.NAT_CHOU", "ＮＡＴ超え");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.FTRIAL_KANYU_YMD", "試用加入年月日");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.HONKANYU_IKO_YMD", "本加入移行期限年月日");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.HONKANYU_YMD", "本加入年月日");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.SVC_DSL_YMD", "サービス解約年月日");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.TRAN_DTM", "処理日付");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.TAIO_NO", "対応番号");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.OP_SVC_KEI_NO", "オプションサービス契約番号");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.OPSVKEI_GENE_ADD_DTM", "世代登録年月日時分秒");
		itemvalueMapTable.put("TXT-KKIFM168-INF1.OPSVKEI_ISP_GENE_ADD_DTM", "ＩＳＰ世代登録年月日時分秒");
		
		return itemvalueMapTable;
	}
	
	/**
	 * システム日付の1ミリ秒後を取得します。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数のシステム日付の1ミリ秒後を算出し、返却する。<br>
	 * ※連続でシステム日付を発行した場合に同値が取得される可能性があり、その可能性を排除するために使用する。<br>
	 * </pre>
	 * <p>
	 * @param systemDateTime システム日付
	 * @return String システム日付の1ミリ秒後
	 */
	private String getNextSystemDateTime(String systemDateTime)
	{
		int year = Integer.parseInt(systemDateTime.substring(0, 4)); 	// 年
		int month = Integer.parseInt(systemDateTime.substring(4, 6)); 	// 月
		int day = Integer.parseInt(systemDateTime.substring(6, 8)); 	// 日
		int hour = Integer.parseInt(systemDateTime.substring(8, 10)); 	// 時
		int minute = Integer.parseInt(systemDateTime.substring(10, 12)); 	// 分
		int second = Integer.parseInt(systemDateTime.substring(12, 14)); 	// 秒
		int milliSecond = Integer.parseInt(systemDateTime.substring(14, 17)); 	// ミリ秒
		
		GregorianCalendar cal = new GregorianCalendar(year, month - 1, day, hour, minute, second);
		cal.set(GregorianCalendar.MILLISECOND, milliSecond);
		
		// 1ミリ秒進める
		cal.add(GregorianCalendar.MILLISECOND, 1);


		SimpleDateFormat formatDateTimeStamp = new SimpleDateFormat("yyyyMMddHHmmssSSS");
		String strSystemDateTimeStamp = formatDateTimeStamp.format(cal.getTime());
		return strSystemDateTimeStamp;
	}

	/**
	 * オプションサービス契約のカレントレコード取得処理
	 * @param opSvcKeiNo オプションサービス契約番号
	 * @param opsvkeiGeneAddDtm　世代登録年月日
	 * @return JBSbatCommonDBInterface カレントレコード
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getCurretRecOpSvcKei(String opSvcKeiNo, String opsvkeiGeneAddDtm) throws Exception
	{
		JBSbatCommonDBInterface opSvcKeiMap = null;
		Object[] opSvcKeiWhereParam = {
				opSvcKeiNo,
				opsvkeiGeneAddDtm
			};
		
		opSvcKeiMap = executeKK_T_OP_SVC_KEI_PKSELECT(opSvcKeiWhereParam);
		
		return opSvcKeiMap;
	}
	
	/**
	 * オプションサービス契約＜ISP＞のカレントレコード取得処理
	 * @param opSvcKeiNo オプションサービス契約番号
	 * @param opsvkeiIspGeneAddDtm　世代登録年月日
	 * @return JBSbatCommonDBInterface カレントレコード
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getCurretRecOpSvcKeiIsp(String opSvcKeiNo, String opsvkeiIspGeneAddDtm) throws Exception
	{
		JBSbatCommonDBInterface opsvkeiIspMap = null;
		Object[] opsvkeiIspWhereParam = {
				opSvcKeiNo,
				opsvkeiIspGeneAddDtm
			};
		
		opsvkeiIspMap = executeKK_T_OPSVKEI_ISP_PKSELECT(opsvkeiIspWhereParam);
		
		return opsvkeiIspMap;
	}
	
	// OM-2014-0000989 2014/03/18 start
	/**
	 * オプションサービス契約のカレントレコード取得処理
	 * @param opSvcKeiNo オプションサービス契約番号
	 * @return JBSbatCommonDBInterface カレントレコード
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getCurretRecSbopSvcKei(String opSvcKeiNo) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue(opSvcKeiNo);
		whereMap.setValue(commonItem.getOpeDate());

		// DBアクセスを実行します
		db_KK_T_SBOP_SVC_KEI.selectBySqlDefine(whereMap, KK_T_SBOP_SVC_KEI_KK_SELECT_027);
		return db_KK_T_SBOP_SVC_KEI.selectNext();
	}

	/**
	 * サブオプションサービス契約＜ISP＞のカレントレコード取得処理
	 * @param whereParam オプションサービス契約番号、サブオプションサービス契約番号、世代登録年月日
	 * @return JBSbatCommonDBInterface カレントレコード
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface getCurretRecSbopSvcKeiIsp(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("OP_SVC_KEI_NO", whereParam[0]);
		whereMap.setValue("SBOP_SVC_KEI_NO", whereParam[1]);
		whereMap.setValue("GENE_ADD_DTM", whereParam[2]);

		// DBアクセスを実行します
		return db_KK_T_SBOPSVKEI_ISP.selectByPrimaryKeys(whereMap);
	}
	// OM-2014-0000989 2014/03/18 end
	
	/**
	 * 回復可能判定処理
	 * @param opSvcKeiMap オプションサービス契約マップ
	 * @param inMap　入力情報
	 * @return boolean 回復可能可否
	 * @throws Exception
	 */
	private boolean canKaihk(JBSbatCommonDBInterface opSvcKeiMap, JBSbatServiceInterfaceMap inMap) throws Exception
	{
		boolean ret = false;
		JBSbatCommonDBInterface opSvcRec = null;
		String svcEndymd = null;
		Integer kaihkPsbPrd = 0;
		String opSvcCd = getOpSvcCd(inMap);
		int year = 0;
		int month = 0;
		int day = 0;
		
		// サービス終了年月日の取得
		svcEndymd = opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_ENDYMD);
		
		Object[] opSvcWhereParam = {opSvcCd,	// オプションサービスコード
									this.commonItem.getOpeDate(),	// 運用日
									this.commonItem.getOpeDate()};	// 運用日
		
		executeKK_M_OP_SVC_KK_SELECT_004(opSvcWhereParam);
		opSvcRec = db_KK_M_OP_SVC.selectNext();
		
		if((opSvcRec != null) && (svcEndymd != null))
		{
			// 回復可能期間の取得
			kaihkPsbPrd = opSvcRec.getBigDecimal(JBSbatKK_M_OP_SVC.KAIHK_PSB_PRD).intValue();
			
			// 日付計算用にサービス終了年月日のカレンダークラスを取得
			year = Integer.parseInt(svcEndymd.substring(0, 4));
			month = Integer.parseInt(svcEndymd.substring(4, 6));
			day = Integer.parseInt(svcEndymd.substring(6, 8));
			Calendar calSvcEndymd = Calendar.getInstance();
			calSvcEndymd.set(year, (month - 1), day);
			// 回復可能期間を足しこむ
			calSvcEndymd.add(Calendar.DATE, kaihkPsbPrd);
			
			// 日付計算用に運用日のカレンダークラスを取得
			year = Integer.parseInt(super.opeDate.substring(0, 4));
			month = Integer.parseInt(super.opeDate.substring(4, 6));
			day = Integer.parseInt(super.opeDate.substring(6, 8));
			Calendar calOpeDate = Calendar.getInstance();
			calOpeDate.set(year, (month - 1), day);
			
			if(calSvcEndymd.compareTo(calOpeDate) > 0)
			{	// 回復期間内の場合
				ret = true;
			}
		}
		
		return ret;
	}
	
// ▼▼▼オプションサービス契約のインサート
	
	/**
	 * オプションサービス契約の作成(登録)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.サービス契約からSYSIDを取得<br>
	 *
	 * 2.料金プランから料金コースコードと料金プランコードを取得<br>
	 * 
	 * 3.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param	systemDateTime	システム日付。
	 * @param	inMap			入力情報
	 * @param	opsvkeiNo		オプションサービス契約番号
	 * @throws	Exception		業務サービス内で発生した例外全般。
	 */
	private void insertOpSvcKeiAdd(
			String systemDateTime,
			JBSbatServiceInterfaceMap inMap,
			String opsvkeiNo
	) throws Exception
	{
		// オプションサービスコードの取得
		String opSvcCd = getOpSvcCd(inMap);

		// SYSIDの取得
		String svkeiNo = inMap.getString(JBSbatKKIFM168.SVKEI_NO);
		Object[] svcKeiWhereParam = {
				svkeiNo,							// サービス契約番号
				this.commonItem.getOpeDate()		// 運用日
		};
		executeKK_T_SVC_KEI_KK_SELECT_144(svcKeiWhereParam);
		JBSbatCommonDBInterface svcKeiRec = db_KK_T_SVC_KEI.selectNext();
		if(svcKeiRec == null)
		{
			// エラーログ出力
			// OM-2013-0000332 2013/08/23 start
			commonItem.getLogPrint().printBusinessErrorLog(JPCBatchMessageConstant.EKKB0290AW, new String[]{"サービス契約にレコード"});
			// OM-2013-0000332 2013/08/23 end
			// エラーフラグ設定
			super.commonItem.setErrFlg(true);
			throw new JBSbatBusinessError();
		}

		// 料金コースコードと料金プランコードの取得
		Object[] pcrsWhereParam = {
				this.commonItem.getOpeDate(),		// 運用日
				opSvcCd,							// オプションサービスコード
				this.commonItem.getOpeDate(),		// 運用日
				this.commonItem.getOpeDate()		// 運用日
		};
		executeKK_M_PCRS_KK_SELECT_003(pcrsWhereParam);
		JBSbatCommonDBInterface prcsRec = db_KK_M_PCRS.selectNext();

		String[] setParam = {
				opsvkeiNo,															// オプションサービス契約番号
				systemDateTime,														// 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_SVCTKCHU,									// オプションサービス契約ステータス
				opSvcCd,															// オプションサービスコード
				prcsRec.getString(JBSbatKK_M_PPLAN.PCRS_CD),						// 料金コースコード
				prcsRec.getString(JBSbatKK_M_PPLAN.PPLAN_CD),						// 料金プランコード
				JBSbatKKConst.OYA_KEI_SKBT_CD_SVC_KEI,								// 親契約識別コード
				svkeiNo,															// サービス契約番号
				null,																// サービス契約内訳番号
				null,																// 法人サービス契約受付番号
				svcKeiRec.getString(JBSbatKK_T_SVC_KEI.SYSID),						// ＳＹＳＩＤ
				null,																// 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)),	// 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)),	// 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)),		// 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)),	// 本加入移行期限年月日
				null,																// サービス利用開始希望年月日
				null,																// 予約適用開始希望年月日
				null,																// オプションサービス契約後続業務依頼年月日
				null,																// 照査年月日
				null,																// 照査取消年月日
				null,																// 審査結果送信コード
				null,																// 契約締結年月日
				super.opeDate,														// 予約適用年月日
				null,																// 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX,									// 予約適用コード
				super.opeDate,														// プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),	// プラン終了年月日
				getKakinOpeDate(),													// プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),	// プラン課金終了年月日
				null,																// プラン終了種別コード
				null,																// サービスキャンセル年月日
				null,																// サービスキャンセル理由コード
				super.opeDate,														// サービス開始年月日
				null,																// サービス開始時分秒
				super.opeDate,														// 表示用サービス提供開始年月日
				getKakinOpeDate(),													// サービス課金開始年月日
				null,																// サービス停止年月日
				null,																// サービス停止理由コード
				null,																// サービス停止解除年月日
				null,																// サービス停止解除理由コード
				null,																// 休止中断コード
				null,																// サービス休止年月日
				null,																// サービス休止理由コード
				null,																// サービス休止理由メモ
				null,																// サービス休止解除年月日
				null,																// サービス休止解除理由コード
				null,																// サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),	// サービス終了年月日
				null,																// サービス終了時分秒
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),	// サービス課金終了年月日
				// ▼▼▼▼▼ ST1-2012-0000494 2012/09/12 MOD START ▼▼▼▼▼
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),	// サービス解約年月日
				// ▲▲▲▲▲ ST1-2012-0000494 2012/09/12 MOD E N D ▲▲▲▲▲
				null,																// サービス解約理由コード
				null,																// サービス解約理由メモ
				null,																// 解約担当ユーザーＩＤ
				null,																// サービス解約手続完了フラグ
				null,																// 回復年月日
				null,																// サービスキャンセル取消年月日
				null,																// サービス解約取消年月日
				null,																// 課金開始年月日補正有無
				null,																// サービス休止課金開始年月日
				null,																// オプションサービス契約引継発生年月日
				null,																// 違約金発生コード
				IDO_DIV_OP_SETE,													// 異動区分
				null,																// 照査解約完了コード
				null,																// サービス提供物消去処理実施年月日時分秒
				null,																// 登録年月日時分秒
				null,																// 登録オペレータアカウント
				null,																// 更新年月日時分秒
				null,																// 更新オペレータアカウント
				null,																// 削除年月日時分秒
				null,																// 削除オペレータアカウント
				null,																// 無効フラグ
				null,																// 登録運用年月日
				null,																// 登録処理ID
				null,																// 更新運用年月日
				null,																// 更新処理ID
				null,																// 削除運用年月日
				null																// 削除運用ID
		};

		executeKK_T_OP_SVC_KEI_PKINSERT(setParam);
	}
	
	/**
	 * オプションサービス契約の更新(一部内容変更)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param opSvcKeiMap カレントレコード。
	 * @param inMap 入力情報
	 * @param systemDateTime システム日付。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertOpSvcKeiIchibuChge(JBSbatCommonDBInterface opSvcKeiMap, JBSbatServiceInterfaceMap inMap, String systemDateTime) throws Exception
	{
		String[] setParam = {
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_NO),					// オプションサービス契約番号
				systemDateTime,																// 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_SVCTKCHU,											// オプションサービス契約ステータス
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_CD),						// オプションサービスコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PCRS_CD),						// 料金コースコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PPLAN_CD),						// 料金プランコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OYA_KEI_SKBT_CD),				// 親契約識別コード
				inMap.getString(JBSbatKKIFM168.SVKEI_NO),									// サービス契約番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_KEI_UCWK_NO),				// サービス契約内訳番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.HOJIN_SVC_KEI_UK_NO),			// 法人サービス契約受付番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SYSID),							// ＳＹＳＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.MSKM_DTL_NO),					// 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)),			// 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)),			// 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)),				// 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)),			// 本加入移行期限年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_USE_STA_KIBO_YMD),			// サービス利用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_TSTA_KIBO_YMD),				// 予約適用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_KZKWRK_REQYMD),		// オプションサービス契約後続業務依頼年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_YMD),						// 照査年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_CL_YMD),					// 照査取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SKEKKA_SEND_CD),				// 審査結果送信コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KEI_CNC_YMD),					// 契約締結年月日
				super.opeDate,																// 予約適用年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_CL_YMD),					// 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX,											// 予約適用コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_STAYMD),					// プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_CHRG_STAYMD),				// プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン課金終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_END_SBT_CD),				// プラン終了種別コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_YMD),				// サービスキャンセル年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_RSN_CD),				// サービスキャンセル理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STAYMD),					// サービス開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STA_HMS),					// サービス開始時分秒
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSP_SVCTK_STAYMD),				// 表示用サービス提供開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CHRG_STAYMD),				// サービス課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_YMD),					// サービス停止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RSN_CD),				// サービス停止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_YMD),				// サービス停止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_RSN_CD),			// サービス停止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PAUSE_STP_CD),					// 休止中断コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_YMD),					// サービス休止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_CD),				// サービス休止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_MEMO),			// サービス休止理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_YMD),				// サービス休止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_CD),			// サービス休止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO),		// サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_END_HMS),					// サービス終了時分秒
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス課金終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_YMD),					// サービス解約年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DLRE_CD),					// サービス解約理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DLRE_MEMO),					// サービス解約理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSL_TNT_USER_ID),				// 解約担当ユーザーＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_TTDKI_FIN_FLG),			// サービス解約手続完了フラグ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KAIHK_YMD),						// 回復年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_CL_YMD),				// サービスキャンセル取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_CL_YMD),				// サービス解約取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.CHRG_STA_YMD_HOSEI_UM),			// 課金開始年月日補正有無
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD),		// サービス休止課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_HKHASYMD),			// オプションサービス契約引継発生年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PNLTY_HASSEI_CD),				// 違約金発生コード
				IDO_DIV_OP_SETE,															// 異動区分
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_DSL_FIN_CD),				// 照査解約完了コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVCTK_BUT_DEL_TRN_JSSI_DTM),	// サービス提供物消去処理実施年月日時分秒
				null,																		// 登録年月日時分秒
				null,																		// 登録オペレータアカウント
				null,																		// 更新年月日時分秒
				null,																		// 更新オペレータアカウント
				null,																		// 削除年月日時分秒
				null,																		// 削除オペレータアカウント
				null,																		// 無効フラグ
				null,																		// 登録運用年月日
				null,																		// 登録処理ID
				null,																		// 更新運用年月日
				null,																		// 更新処理ID
				null,																		// 削除運用年月日
				null																		// 削除運用ID
		};

		executeKK_T_OP_SVC_KEI_PKINSERT(setParam);
	}
	
	/**
	 * オプションサービス契約の更新(内容変更)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param opSvcKeiMap カレントレコード。
	 * @param inMap 入力情報
	 * @param systemDateTime システム日付。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertOpSvcKeiChge(JBSbatCommonDBInterface opSvcKeiMap, JBSbatServiceInterfaceMap inMap, String systemDateTime) throws Exception
	{
		String[] setParam = {
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_NO),					// オプションサービス契約番号
				systemDateTime,																// 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_SVCTKCHU,											// オプションサービス契約ステータス
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_CD),						// オプションサービスコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PCRS_CD),						// 料金コースコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PPLAN_CD),						// 料金プランコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OYA_KEI_SKBT_CD),				// 親契約識別コード
				inMap.getString(JBSbatKKIFM168.SVKEI_NO),									// サービス契約番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_KEI_UCWK_NO),				// サービス契約内訳番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.HOJIN_SVC_KEI_UK_NO),			// 法人サービス契約受付番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SYSID),							// ＳＹＳＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.MSKM_DTL_NO),					// 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)),			// 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)),			// 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)),				// 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)),			// 本加入移行期限年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_USE_STA_KIBO_YMD),			// サービス利用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_TSTA_KIBO_YMD),				// 予約適用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_KZKWRK_REQYMD),		// オプションサービス契約後続業務依頼年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_YMD),						// 照査年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_CL_YMD),					// 照査取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SKEKKA_SEND_CD),				// 審査結果送信コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KEI_CNC_YMD),					// 契約締結年月日
				super.opeDate,																// 予約適用年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_CL_YMD),					// 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX,											// 予約適用コード
				super.opeDate,																// プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン終了年月日
				getKakinOpeDate(),															// プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン課金終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_END_SBT_CD),				// プラン終了種別コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_YMD),				// サービスキャンセル年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_RSN_CD),				// サービスキャンセル理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STAYMD),					// サービス開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STA_HMS),					// サービス開始時分秒
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSP_SVCTK_STAYMD),				// 表示用サービス提供開始年月日
				getKakinOpeDate(),															// サービス課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_YMD),					// サービス停止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RSN_CD),				// サービス停止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_YMD),				// サービス停止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_RSN_CD),			// サービス停止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PAUSE_STP_CD),					// 休止中断コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_YMD),					// サービス休止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_CD),				// サービス休止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_MEMO),			// サービス休止理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_YMD),				// サービス休止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_CD),			// サービス休止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO),		// サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_END_HMS),					// サービス終了時分秒
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス課金終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_YMD),					// サービス解約年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DLRE_CD),					// サービス解約理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DLRE_MEMO),					// サービス解約理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSL_TNT_USER_ID),				// 解約担当ユーザーＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_TTDKI_FIN_FLG),			// サービス解約手続完了フラグ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KAIHK_YMD),						// 回復年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_CL_YMD),				// サービスキャンセル取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_CL_YMD),				// サービス解約取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.CHRG_STA_YMD_HOSEI_UM),			// 課金開始年月日補正有無
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD),		// サービス休止課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_HKHASYMD),			// オプションサービス契約引継発生年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PNLTY_HASSEI_CD),				// 違約金発生コード
				IDO_DIV_OP_SETE,															// 異動区分
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_DSL_FIN_CD),				// 照査解約完了コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVCTK_BUT_DEL_TRN_JSSI_DTM),	// サービス提供物消去処理実施年月日時分秒
				null,																		// 登録年月日時分秒
				null,																		// 登録オペレータアカウント
				null,																		// 更新年月日時分秒
				null,																		// 更新オペレータアカウント
				null,																		// 削除年月日時分秒
				null,																		// 削除オペレータアカウント
				null,																		// 無効フラグ
				null,																		// 登録運用年月日
				null,																		// 登録処理ID
				null,																		// 更新運用年月日
				null,																		// 更新処理ID
				null,																		// 削除運用年月日
				null																		// 削除運用ID
		};

		executeKK_T_OP_SVC_KEI_PKINSERT(setParam);
	}
	
	
	/**
	 * オプションサービス契約を作成(回復)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.サービス契約からSYSIDを取得<br>
	 *
	 * 2.料金プランから料金コースコードと料金プランコードを取得<br>
	 * 
	 * 3.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param opSvcKeiMap カレントレコード。
	 * @param inMap 入力情報
	 * @param systemDateTime システム日付。
	 * @param opsvkeiNo オプションサービス契約番号
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertOpSvcKeiKaihkSaksei(JBSbatServiceInterfaceMap inMap,
			String systemDateTime, String opsvkeiNo) throws Exception
	{
		// オプションサービスコードの取得
		String opSvcCd = getOpSvcCd(inMap);
		
		// SYSIDの取得
		String svkeiNo = inMap.getString(JBSbatKKIFM168.SVKEI_NO);
		Object[] svcKeiWhereParam = {svkeiNo,	// サービス契約番号
									this.commonItem.getOpeDate()		// 運用日
		};
		executeKK_T_SVC_KEI_KK_SELECT_144(svcKeiWhereParam);
		JBSbatCommonDBInterface svcKeiRec = db_KK_T_SVC_KEI.selectNext();
		
		// 料金コースコードと料金プランコードの取得
		Object[] pcrsWhereParam = {this.commonItem.getOpeDate(),		// 運用日
									opSvcCd,	// オプションサービスコード
									this.commonItem.getOpeDate(),	// 運用日
									this.commonItem.getOpeDate()};	// 運用日
		executeKK_M_PCRS_KK_SELECT_003(pcrsWhereParam);
		JBSbatCommonDBInterface prcsRec = db_KK_M_PCRS.selectNext();
		
		String[] setParam = {
				opsvkeiNo, // オプションサービス契約番号
				systemDateTime, // 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_SVCTKCHU, // オプションサービス契約ステータス
				opSvcCd, // オプションサービスコード
				prcsRec.getString(JBSbatKK_M_PPLAN.PCRS_CD), // 料金コースコード
				prcsRec.getString(JBSbatKK_M_PPLAN.PPLAN_CD), // 料金プランコード
				JBSbatKKConst.OYA_KEI_SKBT_CD_SVC_KEI, // 親契約識別コード
				svkeiNo, // サービス契約番号
				null, // サービス契約内訳番号
				// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
				null,  // 法人サービス契約受付番号
				// ANK-0571-00-00 ADD END
				svcKeiRec.getString(JBSbatKK_T_SVC_KEI.SYSID), // ＳＹＳＩＤ
				null, // 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)), // 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)), // 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)), // 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)), // 本加入移行期限年月日
				null, // サービス利用開始希望年月日
				null, // 予約適用開始希望年月日
				null, // オプションサービス契約後続業務依頼年月日
				null, // 照査年月日
				null, // 照査取消年月日
				null, // 審査結果送信コード
				null, // 契約締結年月日
				super.opeDate, // 予約適用年月日
				null, // 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX, // 予約適用コード
				super.opeDate, // プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // プラン終了年月日
				getKakinOpeDate(), // プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),  // プラン課金終了年月日
				null, // プラン終了種別コード
				null, // サービスキャンセル年月日
				null, // サービスキャンセル理由コード
				super.opeDate, // サービス開始年月日
				null, // サービス開始時分秒
				// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
				super.opeDate, // 表示用サービス提供開始年月日
				// ANK-0571-00-00 ADD END
				getKakinOpeDate(), // サービス課金開始年月日
				null, // サービス停止年月日
				null, // サービス停止理由コード
				null, // サービス停止解除年月日
				null, // サービス停止解除理由コード
				null, // 休止中断コード
				null, // サービス休止年月日
				null, // サービス休止理由コード
				null, // サービス休止理由メモ
				null, // サービス休止解除年月日
				null, // サービス休止解除理由コード
				null, // サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // サービス終了年月日
				null, // サービス終了時分秒
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // サービス課金終了年月日
				//OM-2015-0000764 MOD START
				// ST1-2012-0000494 2012/09/12 MOD START
				//getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // サービス解約年月日
				//null, // サービス解約年月日
				// ST1-2012-0000494 2012/09/12 MOD END
				null,
				//OM-2015-0000764 MOD END
				null, // サービス解約理由コード
				null, // サービス解約理由メモ
				null, // 解約担当ユーザーＩＤ
				null, // サービス解約手続完了フラグ
				super.opeDate, // 回復年月日
				null, // サービスキャンセル取消年月日
				null, // サービス解約取消年月日
				null, // 課金開始年月日補正有無
				null, // サービス休止課金開始年月日
				null, // オプションサービス契約引継発生年月日
				null, // 違約金発生コード
				IDO_DIV_OP_SETE, // 異動区分
				null, // 照査解約完了コード
				null, // サービス提供物消去処理実施年月日時分秒
				null, // 登録年月日時分秒
				null, // 登録オペレータアカウント
				null, // 更新年月日時分秒
				null, // 更新オペレータアカウント
				null, // 削除年月日時分秒
				null, // 削除オペレータアカウント
				null, // 無効フラグ
				null,	// 登録運用年月日
				null,	// 登録処理ID
				null,	// 更新運用年月日
				null,	// 更新処理ID
				null,	// 削除運用年月日
				null	// 削除運用ID
			};

		executeKK_T_OP_SVC_KEI_PKINSERT(setParam);
	}
	
	// OM-2014-0000989 2014/03/18 start
	/**
	 * オプションサービス契約を作成(回復)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.サービス契約からSYSIDを取得<br>
	 *
	 * 2.料金プランから料金コースコードと料金プランコードを取得<br>
	 * 
	 * 3.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param opSvcKeiMap カレントレコード。
	 * @param inMap 入力情報
	 * @param systemDateTime システム日付。
	 * @param opsvkeiNo オプションサービス契約番号
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertSbopSvcKeiKaihkSaksei(
			JBSbatCommonDBInterface sbopSvcKeiMap,JBSbatServiceInterfaceMap inMap,
			String systemDateTime, String opsvkeiNo, String sbopsvkeiNo) throws Exception
	{
		String[] setParam = {
				opsvkeiNo, // オプションサービス契約番号
				sbopsvkeiNo, // サブオプションサービス契約番号
				systemDateTime, // 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_SVCTKCHU, // サブオプションサービス契約ステータス
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SBOP_SVC_CD), // サブオプションサービスコード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PCRS_CD), // 料金コースコード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PPLAN_CD), // 料金プランコード
				null, // 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)), // 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)), // 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)), // 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)), // 本加入移行期限年月日
				null, // サービス利用開始希望年月日
				null, // 予約適用開始希望年月日
				null, // サブオプションサービス契約後続業務依頼年月日
				null, // 照査年月日
				null, // 照査取消年月日
				null, // 契約締結年月日
				super.opeDate, // 予約適用年月日
				null, // 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX, // 予約適用コード
				super.opeDate, // プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // プラン終了年月日
				getKakinOpeDate(), // プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),  // プラン課金終了年月日
				null, // プラン終了種別コード
				null, // サービスキャンセル年月日
				null, // サービスキャンセル理由コード
				super.opeDate, // サービス開始年月日
				super.opeDate, // 表示用サービス提供開始年月日
				getKakinOpeDate(), // サービス課金開始年月日
				null, // サービス停止年月日
				null, // サービス停止理由コード
				null, // サービス停止解除年月日
				null, // サービス停止解除理由コード
				null, // 休止中断コード
				null, // サービス休止年月日
				null, // サービス休止理由コード
				null, // サービス休止理由メモ
				null, // サービス休止解除年月日
				null, // サービス休止解除理由コード
				null, // サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // サービス終了年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // サービス課金終了年月日
				//OM-2015-0000764 MOD START
				//getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // サービス解約年月日
				null,
				//OM-2015-0000764 MOD END
				null, // サービス解約理由コード
				null, // サービス解約理由メモ
				null, // サービス解約手続完了フラグ
				super.opeDate, // 回復年月日
				null, // サービスキャンセル取消年月日
				null, // サービス解約取消年月日
				null, // 審査結果送信コード
				null, // 課金開始年月日補正有無
				null, // サービス休止課金開始年月日
				null, // 違約金発生コード
				IDO_DIV_OP_SETE, // 異動区分
				null, // 照査解約完了コード
				null, // 登録年月日時分秒
				null, // 登録オペレータアカウント
				null, // 更新年月日時分秒
				null, // 更新オペレータアカウント
				null, // 削除年月日時分秒
				null, // 削除オペレータアカウント
				null, // 無効フラグ
				null,	// 登録運用年月日
				null,	// 登録処理ID
				null,	// 更新運用年月日
				null,	// 更新処理ID
				null,	// 削除運用年月日
				null	// 削除運用ID
			};

		executeKK_T_SBOP_SVC_KEI_PKINSERT(setParam);
	}
	// OM-2014-0000989 2014/03/18 end
	
	/**
	 * オプションサービス契約の更新(回復)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param	opSvcKeiMap		カレントレコード。
	 * @param	inMap			入力情報
	 * @param	systemDateTime	システム日付。
	 * @throws	Exception		業務サービス内で発生した例外全般。
	 */
	private void insertOpSvcKeiKaihkUpd(
			JBSbatCommonDBInterface opSvcKeiMap,
			JBSbatServiceInterfaceMap inMap,
			String systemDateTime
	) throws Exception
	{
		String[] setParam = {
				inMap.getString(JBSbatKKIFM168.OP_SVC_KEI_NO),								// オプションサービス契約番号
				systemDateTime,																// 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_SVCTKCHU,											// オプションサービス契約ステータス
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_CD),						// オプションサービスコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PCRS_CD),						// 料金コースコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PPLAN_CD),						// 料金プランコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OYA_KEI_SKBT_CD),				// 親契約識別コード
				inMap.getString(JBSbatKKIFM168.SVKEI_NO),									// サービス契約番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_KEI_UCWK_NO),				// サービス契約内訳番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.HOJIN_SVC_KEI_UK_NO),			// 法人サービス契約受付番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SYSID),							// ＳＹＳＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.MSKM_DTL_NO),					// 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)),			// 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)),			// 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)),				// 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)),			// 本加入移行期限年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_USE_STA_KIBO_YMD),			// サービス利用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_TSTA_KIBO_YMD),				// 予約適用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_KZKWRK_REQYMD),		// オプションサービス契約後続業務依頼年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_YMD),						// 照査年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_CL_YMD),					// 照査取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SKEKKA_SEND_CD),				// 審査結果送信コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KEI_CNC_YMD),					// 契約締結年月日
				super.opeDate,																// 予約適用年月日
				null,																		// 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX,											// 予約適用コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_STAYMD),					// プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_CHRG_STAYMD),				// プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン課金終了年月日
				//OM-2015-0000764 MOD START
				//opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_END_SBT_CD),				// プラン終了種別コード
				null,
				//OM-2015-0000764 MOD END
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_YMD),				// サービスキャンセル年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_RSN_CD),				// サービスキャンセル理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STAYMD),					// サービス開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STA_HMS),					// サービス開始時分秒
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSP_SVCTK_STAYMD),				// 表示用サービス提供開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CHRG_STAYMD),				// サービス課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_YMD),					// サービス停止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RSN_CD),				// サービス停止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_YMD),				// サービス停止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_RSN_CD),			// サービス停止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PAUSE_STP_CD),					// 休止中断コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_YMD),					// サービス休止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_CD),				// サービス休止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_MEMO),			// サービス休止理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_YMD),				// サービス休止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_CD),			// サービス休止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO),		// サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_END_HMS),					// サービス終了時分秒
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス課金終了年月日
				//OM-2015-0000764 MOD START
				// ▼▼▼▼▼ ST1-2012-0000494 2012/09/12 MOD START ▼▼▼▼▼
				//opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_YMD),					// サービス解約年月日
				// ▲▲▲▲▲ ST1-2012-0000494 2012/09/12 MOD E N D ▲▲▲▲▲
				null,
				//OM-2015-0000764 MOD END
				null,																		// サービス解約理由コード
				null,																		// サービス解約理由メモ
				null,																		// 解約担当ユーザーＩＤ
				null,																		// サービス解約手続完了フラグ
				super.opeDate,																// 回復年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_CL_YMD),				// サービスキャンセル取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_CL_YMD),				// サービス解約取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.CHRG_STA_YMD_HOSEI_UM),			// 課金開始年月日補正有無
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD),		// サービス休止課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_HKHASYMD),			// オプションサービス契約引継発生年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PNLTY_HASSEI_CD),				// 違約金発生コード
				IDO_DIV_OP_SETE,															// 異動区分
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_DSL_FIN_CD),				// 照査解約完了コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVCTK_BUT_DEL_TRN_JSSI_DTM),	// サービス提供物消去処理実施年月日時分秒
				null,																		// 登録年月日時分秒
				null,																		// 登録オペレータアカウント
				null,																		// 更新年月日時分秒
				null,																		// 更新オペレータアカウント
				null,																		// 削除年月日時分秒
				null,																		// 削除オペレータアカウント
				null,																		// 無効フラグ
				null,																		// 登録運用年月日
				null,																		// 登録処理ID
				null,																		// 更新運用年月日
				null,																		// 更新処理ID
				null,																		// 削除運用年月日
				null																		// 削除運用ID
		};

		executeKK_T_OP_SVC_KEI_PKINSERT(setParam);
	}

	// OM-2014-0000989 2014/03/18 start
	/**
	 * サブオプションサービス契約の更新(回復)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.サブオプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param	opSvcKeiMap		カレントレコード。
	 * @param	inMap			入力情報
	 * @param	systemDateTime	システム日付。
	 * @throws	Exception		業務サービス内で発生した例外全般。
	 */
	private void insertSbopSvcKeiKaihkUpd(
			JBSbatCommonDBInterface sbopSvcKeiMap,
			JBSbatServiceInterfaceMap inMap,
			String systemDateTime
	) throws Exception
	{
		String[] setParam = {
				inMap.getString(JBSbatKKIFM168.OP_SVC_KEI_NO),								// オプションサービス契約番号
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SBOP_SVC_KEI_NO),			// サブオプションサービス契約番号
				systemDateTime,																// 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_SVCTKCHU,											// サブオプションサービス契約ステータス
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SBOP_SVC_CD),						// サブオプションサービスコード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PCRS_CD),						// 料金コースコード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PPLAN_CD),						// 料金プランコード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.MSKM_DTL_NO),					// 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)),			// 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)),			// 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)),				// 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)),			// 本加入移行期限年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_USE_STA_KIBO_YMD),			// サービス利用開始希望年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.RSV_TSTA_KIBO_YMD),				// 予約適用開始希望年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SBOP_SVC_KEI_KZKWRK_REQYMD),		// オプションサービス契約後続業務依頼年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SHOSA_YMD),						// 照査年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SHOSA_CL_YMD),					// 照査取消年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.KEI_CNC_YMD),					// 契約締結年月日
				super.opeDate,																// 予約適用年月日
				null,																		// 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX,											// 予約適用コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PLAN_STAYMD),					// プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン終了年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PLAN_CHRG_STAYMD),				// プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン課金終了年月日
				//OM-2015-0000764 MOD START
				//sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PLAN_END_SBT_CD),				// プラン終了種別コード
				null,
				//OM-2015-0000764 MOD END
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_CANCEL_YMD),				// サービスキャンセル年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_CANCEL_RSN_CD),				// サービスキャンセル理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STAYMD),					// サービス開始年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.DSP_SVCTK_STAYMD),				// 表示用サービス提供開始年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_CHRG_STAYMD),				// サービス課金開始年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STP_YMD),					// サービス停止年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STP_RSN_CD),				// サービス停止理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STP_RLS_YMD),				// サービス停止解除年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STP_RLS_RSN_CD),			// サービス停止解除理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PAUSE_STP_CD),					// 休止中断コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_YMD),					// サービス休止年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RSN_CD),				// サービス休止理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RSN_MEMO),			// サービス休止理由メモ
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RLS_YMD),				// サービス休止解除年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RLS_RSN_CD),			// サービス休止解除理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO),		// サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス終了年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス課金終了年月日
				//OM-2015-0000764 MOD START
				//sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_DSL_YMD),					// サービス解約年月日
				null,
				//OM-2015-0000764 MOD END
				null,																		// サービス解約理由コード
				null,																		// サービス解約理由メモ
				null,																		// サービス解約手続完了フラグ
				super.opeDate,																// 回復年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_CANCEL_CL_YMD),				// サービスキャンセル取消年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_DSL_CL_YMD),				// サービス解約取消年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SKEKKA_SEND_CD),				// 審査結果送信コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.CHRG_STA_YMD_HOSEI_UM),			// 課金開始年月日補正有無
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD),		// サービス休止課金開始年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PNLTY_HASSEI_CD),				// 違約金発生コード
				IDO_DIV_OP_SETE,															// 異動区分
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SHOSA_DSL_FIN_CD),			// 照査解約完了コード
				null,																		// 登録年月日時分秒
				null,																		// 登録オペレータアカウント
				null,																		// 更新年月日時分秒
				null,																		// 更新オペレータアカウント
				null,																		// 削除年月日時分秒
				null,																		// 削除オペレータアカウント
				null,																		// 無効フラグ
				null,																		// 登録運用年月日
				null,																		// 登録処理ID
				null,																		// 更新運用年月日
				null,																		// 更新処理ID
				null,																		// 削除運用年月日
				null																		// 削除運用ID
		};

		executeKK_T_SBOP_SVC_KEI_PKINSERT(setParam);
	}
	// OM-2014-0000989 2014/03/18 end

	/**
	 * オプションサービス契約の更新(キャンセル)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param	opSvcKeiMap		カレントレコード。
	 * @param	inMap			入力情報
	 * @param	systemDateTime	システム日付。
	 * @throws	Exception		業務サービス内で発生した例外全般。
	 */
	private void insertOpSvcKeiCancel(
			JBSbatCommonDBInterface opSvcKeiMap,
			JBSbatServiceInterfaceMap inMap,
			String systemDateTime
	) throws Exception
	{
		String[] setParam = {
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_NO),					// オプションサービス契約番号
				systemDateTime,																// 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_CNCL_ZM,											// オプションサービス契約ステータス
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_CD),						// オプションサービスコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PCRS_CD),						// 料金コースコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PPLAN_CD),						// 料金プランコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OYA_KEI_SKBT_CD),				// 親契約識別コード
				inMap.getString(JBSbatKKIFM168.SVKEI_NO),									// サービス契約番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_KEI_UCWK_NO),				// サービス契約内訳番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.HOJIN_SVC_KEI_UK_NO),			// 法人サービス契約受付番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SYSID),							// ＳＹＳＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.MSKM_DTL_NO),					// 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)),			// 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)),			// 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)),				// 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)),			// 本加入移行期限年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_USE_STA_KIBO_YMD),			// サービス利用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_TSTA_KIBO_YMD),				// 予約適用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_KZKWRK_REQYMD),		// オプションサービス契約後続業務依頼年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_YMD),						// 照査年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_CL_YMD),					// 照査取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SKEKKA_SEND_CD),				// 審査結果送信コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KEI_CNC_YMD),					// 契約締結年月日
				super.opeDate,																// 予約適用年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_CL_YMD),					// 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX,											// 予約適用コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_STAYMD),					// プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_CHRG_STAYMD),				// プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン課金終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_END_SBT_CD),				// プラン終了種別コード
				super.opeDate,																// サービスキャンセル年月日
				JBSbatKKConst.SVC_CANCEL_RSN_CD_OTHER,										// サービスキャンセル理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STAYMD),					// サービス開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STA_HMS),					// サービス開始時分秒
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSP_SVCTK_STAYMD),				// 表示用サービス提供開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CHRG_STAYMD),				// サービス課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_YMD),					// サービス停止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RSN_CD),				// サービス停止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_YMD),				// サービス停止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_RSN_CD),			// サービス停止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PAUSE_STP_CD),					// 休止中断コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_YMD),					// サービス休止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_CD),				// サービス休止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_MEMO),			// サービス休止理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_YMD),				// サービス休止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_CD),			// サービス休止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO),		// サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_END_HMS),					// サービス終了時分秒
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス課金終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_YMD),					// サービス解約年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DLRE_CD),					// サービス解約理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DLRE_MEMO),					// サービス解約理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSL_TNT_USER_ID),				// 解約担当ユーザーＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_TTDKI_FIN_FLG),			// サービス解約手続完了フラグ
				//OM-2015-0000727 MOD START
				//opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KAIHK_YMD),						// 回復年月日
				null,
				//OM-2015-0000727 MOD END
				null,																		// サービスキャンセル取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_CL_YMD),				// サービス解約取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.CHRG_STA_YMD_HOSEI_UM),			// 課金開始年月日補正有無
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD),		// サービス休止課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_HKHASYMD),			// オプションサービス契約引継発生年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PNLTY_HASSEI_CD),				// 違約金発生コード
				IDO_DIV_OP_SETE,															// 異動区分
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_DSL_FIN_CD),				// 照査解約完了コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVCTK_BUT_DEL_TRN_JSSI_DTM),	// サービス提供物消去処理実施年月日時分秒
				null,																		// 登録年月日時分秒
				null,																		// 登録オペレータアカウント
				null,																		// 更新年月日時分秒
				null,																		// 更新オペレータアカウント
				null,																		// 削除年月日時分秒
				null,																		// 削除オペレータアカウント
				null,																		// 無効フラグ
				null,																		// 登録運用年月日
				null,																		// 登録処理ID
				null,																		// 更新運用年月日
				null,																		// 更新処理ID
				null,																		// 削除運用年月日
				null																		// 削除運用ID
		};

		executeKK_T_OP_SVC_KEI_PKINSERT(setParam);
	}
	
	/**
	 * オプションサービス契約の作成(解約)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param opSvcKeiMap カレントレコード。
	 * @param inMap 入力情報
	 * @param systemDateTime システム日付。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertOpSvcKeiDslSaksei(JBSbatServiceInterfaceMap inMap, String systemDateTime, String opsvkeiNo) throws Exception
	{
		// オプションサービスコードの取得
		String opSvcCd = getOpSvcCd(inMap);
		
		// SYSIDの取得
		String svkeiNo = inMap.getString(JBSbatKKIFM168.SVKEI_NO);
		Object[] svcKeiWhereParam = {svkeiNo,	// サービス契約番号
									this.commonItem.getOpeDate()		// 運用日
		};
		executeKK_T_SVC_KEI_KK_SELECT_144(svcKeiWhereParam);
		JBSbatCommonDBInterface svcKeiRec = db_KK_T_SVC_KEI.selectNext();
		
		// 料金コースコードと料金プランコードの取得
		Object[] pcrsWhereParam = {this.commonItem.getOpeDate(),		// 運用日
									opSvcCd,	// オプションサービスコード
									this.commonItem.getOpeDate(),	// 運用日
									this.commonItem.getOpeDate()};	// 運用日
		executeKK_M_PCRS_KK_SELECT_003(pcrsWhereParam);
		JBSbatCommonDBInterface prcsRec = db_KK_M_PCRS.selectNext();
		
		String[] setParam = {
				opsvkeiNo, // オプションサービス契約番号
				systemDateTime, // 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_DSL_ZM, // オプションサービス契約ステータス
				opSvcCd, // オプションサービスコード
				prcsRec.getString(JBSbatKK_M_PPLAN.PCRS_CD), // 料金コースコード
				prcsRec.getString(JBSbatKK_M_PPLAN.PPLAN_CD), // 料金プランコード
				JBSbatKKConst.OYA_KEI_SKBT_CD_SVC_KEI, // 親契約識別コード
				svkeiNo, // サービス契約番号
				null, // サービス契約内訳番号
				// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
				null,  // 法人サービス契約受付番号
				// ANK-0571-00-00 ADD END
				svcKeiRec.getString(JBSbatKK_T_SVC_KEI.SYSID), // ＳＹＳＩＤ
				null, // 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)), // 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)), // 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)), // 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)), // 本加入移行期限年月日
				null, // サービス利用開始希望年月日
				null, // 予約適用開始希望年月日
				null, // オプションサービス契約後続業務依頼年月日
				null, // 照査年月日
				null, // 照査取消年月日
				null, // 審査結果送信コード
				null, // 契約締結年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // 予約適用年月日
				null, // 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX, // 予約適用コード
				super.opeDate, // プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // プラン終了年月日
				getKakinOpeDate(), // プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // プラン課金終了年月日
				null, // プラン終了種別コード
				null, // サービスキャンセル年月日
				null, // サービスキャンセル理由コード
				super.opeDate, // サービス開始年月日
				null, // サービス開始時分秒
				// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
				super.opeDate, // 表示用サービス提供開始年月日
				// ANK-0571-00-00 ADD END
				getKakinOpeDate(), // サービス課金開始年月日
				null, // サービス停止年月日
				null, // サービス停止理由コード
				null, // サービス停止解除年月日
				null, // サービス停止解除理由コード
				null, // 休止中断コード
				null, // サービス休止年月日
				null, // サービス休止理由コード
				null, // サービス休止理由メモ
				null, // サービス休止解除年月日
				null, // サービス休止解除理由コード
				null, // サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // サービス終了年月日
				null, // サービス終了時分秒
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // サービス課金終了年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)), // サービス解約年月日
				JBSbatKKConst.SVC_DLRE_CD_NORMAL, // サービス解約理由コード
				null, // サービス解約理由メモ
				null, // 解約担当ユーザーＩＤ
				null, // サービス解約手続完了フラグ
				null, // 回復年月日
				null, // サービスキャンセル取消年月日
				null, // サービス解約取消年月日
				null, // 課金開始年月日補正有無
				null, // サービス休止課金開始年月日
				null, // オプションサービス契約引継発生年月日
				null, // 違約金発生コード
				IDO_DIV_OP_SETE, // 異動区分
				null, // 照査解約完了コード
				null, // サービス提供物消去処理実施年月日時分秒
				null, // 登録年月日時分秒
				null, // 登録オペレータアカウント
				null, // 更新年月日時分秒
				null, // 更新オペレータアカウント
				null, // 削除年月日時分秒
				null, // 削除オペレータアカウント
				null, // 無効フラグ
				null,	// 登録運用年月日
				null,	// 登録処理ID
				null,	// 更新運用年月日
				null,	// 更新処理ID
				null,	// 削除運用年月日
				null	// 削除運用ID
			};

		executeKK_T_OP_SVC_KEI_PKINSERT(setParam);
	}
	
	/**
	 * オプションサービス契約の更新(解約)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param opSvcKeiMap カレントレコード。
	 * @param inMap 入力情報
	 * @param systemDateTime システム日付。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertOpSvcKeiDslUpd(JBSbatCommonDBInterface opSvcKeiMap, JBSbatServiceInterfaceMap inMap, String systemDateTime) throws Exception
	{
		String[] setParam = {
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_NO),					// オプションサービス契約番号
				systemDateTime,																// 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_DSL_ZM,											// オプションサービス契約ステータス
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_CD),						// オプションサービスコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PCRS_CD),						// 料金コースコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PPLAN_CD),						// 料金プランコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OYA_KEI_SKBT_CD),				// 親契約識別コード
				inMap.getString(JBSbatKKIFM168.SVKEI_NO),									// サービス契約番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_KEI_UCWK_NO),				// サービス契約内訳番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.HOJIN_SVC_KEI_UK_NO),			// 法人サービス契約受付番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SYSID),							// ＳＹＳＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.MSKM_DTL_NO),					// 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)),			// 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)),			// 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)),				// 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)),			// 本加入移行期限年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_USE_STA_KIBO_YMD),			// サービス利用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_TSTA_KIBO_YMD),				// 予約適用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_KZKWRK_REQYMD),		// オプションサービス契約後続業務依頼年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_YMD),						// 照査年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_CL_YMD),					// 照査取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SKEKKA_SEND_CD),				// 審査結果送信コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KEI_CNC_YMD),					// 契約締結年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// 予約適用年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_CL_YMD),					// 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX,											// 予約適用コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_STAYMD),					// プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_CHRG_STAYMD),				// プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン課金終了年月日
				// ▼▼▼▼▼ ST1-2012-0000494 2012/09/12 MOD START ▼▼▼▼▼
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_END_SBT_CD),				//  プラン終了種別コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_YMD),				// サービスキャンセル年月日
				// ▲▲▲▲▲ ST1-2012-0000494 2012/09/12 MOD E N D ▲▲▲▲▲
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_RSN_CD),				// サービスキャンセル理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STAYMD),					// サービス開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STA_HMS),					// サービス開始時分秒
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSP_SVCTK_STAYMD),				// 表示用サービス提供開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CHRG_STAYMD),				// サービス課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_YMD),					// サービス停止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RSN_CD),				// サービス停止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_YMD),				// サービス停止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_RSN_CD),			// サービス停止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PAUSE_STP_CD),					// 休止中断コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_YMD),					// サービス休止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_CD),				// サービス休止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_MEMO),			// サービス休止理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_YMD),				// サービス休止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_CD),			// サービス休止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO),		// サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_END_HMS),					// サービス終了時分秒
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス課金終了年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス解約年月日
				JBSbatKKConst.SVC_DLRE_CD_NORMAL,											// サービス解約理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DLRE_MEMO),					// サービス解約理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSL_TNT_USER_ID),				// 解約担当ユーザーＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_TTDKI_FIN_FLG),			// サービス解約手続完了フラグ
				// ▼▼▼▼▼ ST1-2012-0000494 2012/09/12 MOD START ▼▼▼▼▼
				//OM-2015-0000727 MOD START
				//opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KAIHK_YMD),						// 回復年月日
				null,
				//OM-2015-0000727 MOD END
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_CL_YMD),				// サービスキャンセル取消年月日
				// ▲▲▲▲▲ ST1-2012-0000494 2012/09/12 MOD E N D ▲▲▲▲▲
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_CL_YMD),				// サービス解約取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.CHRG_STA_YMD_HOSEI_UM),			// 課金開始年月日補正有無
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD),		// サービス休止課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_HKHASYMD),			// オプションサービス契約引継発生年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PNLTY_HASSEI_CD),				// 違約金発生コード
				IDO_DIV_OP_SETE,															// 異動区分
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_DSL_FIN_CD),				// 照査解約完了コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVCTK_BUT_DEL_TRN_JSSI_DTM),	// サービス提供物消去処理実施年月日時分秒
				null,																		// 登録年月日時分秒
				null,																		// 登録オペレータアカウント
				null,																		// 更新年月日時分秒
				null,																		// 更新オペレータアカウント
				null,																		// 削除年月日時分秒
				null,																		// 削除オペレータアカウント
				null,																		// 無効フラグ
				null,																		// 登録運用年月日
				null,																		// 登録処理ID
				null,																		// 更新運用年月日
				null,																		// 更新処理ID
				null,																		// 削除運用年月日
				null																		// 削除運用ID
		};

		executeKK_T_OP_SVC_KEI_PKINSERT(setParam);
	}
	
	// OM-2014-0000989 2014/03/18 start
	/**
	 * サブオプションサービス契約の更新(解約)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.サブオプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param sbopSvcKeiMap カレントレコード。
	 * @param inMap 入力情報
	 * @param systemDateTime システム日付。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertSbopSvcKeiDslUpd(JBSbatCommonDBInterface sbopSvcKeiMap, JBSbatServiceInterfaceMap inMap, String systemDateTime) throws Exception
	{
		String[] setParam = {
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.OP_SVC_KEI_NO),					// オプションサービス契約番号
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SBOP_SVC_KEI_NO),					// サブオプションサービス契約番号
				systemDateTime,																// 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_DSL_ZM,											// オプションサービス契約ステータス
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SBOP_SVC_CD),						// サブオプションサービスコード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PCRS_CD),						// 料金コースコード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PPLAN_CD),						// 料金プランコード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.MSKM_DTL_NO),					// 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)),			// 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)),			// 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)),				// 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)),			// 本加入移行期限年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_USE_STA_KIBO_YMD),			// サービス利用開始希望年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.RSV_TSTA_KIBO_YMD),				// 予約適用開始希望年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SBOP_SVC_KEI_KZKWRK_REQYMD),		// サブオプションサービス契約後続業務依頼年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SHOSA_YMD),						// 照査年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SHOSA_CL_YMD),					// 照査取消年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.KEI_CNC_YMD),					// 契約締結年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// 予約適用年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.RSV_CL_YMD),					// 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX,											// 予約適用コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PLAN_STAYMD),					// プラン開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン終了年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PLAN_CHRG_STAYMD),				// プラン課金開始年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// プラン課金終了年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PLAN_END_SBT_CD),				//  プラン終了種別コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_CANCEL_YMD),				// サービスキャンセル年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_CANCEL_RSN_CD),				// サービスキャンセル理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STAYMD),					// サービス開始年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.DSP_SVCTK_STAYMD),				// 表示用サービス提供開始年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_CHRG_STAYMD),				// サービス課金開始年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STP_YMD),					// サービス停止年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STP_RSN_CD),				// サービス停止理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STP_RLS_YMD),				// サービス停止解除年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_STP_RLS_RSN_CD),			// サービス停止解除理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PAUSE_STP_CD),					// 休止中断コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_YMD),					// サービス休止年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RSN_CD),				// サービス休止理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RSN_MEMO),			// サービス休止理由メモ
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RLS_YMD),				// サービス休止解除年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RLS_RSN_CD),			// サービス休止解除理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO),		// サービス休止解除理由メモ
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス終了年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス課金終了年月日
				getValueOrMaxvalue(inMap.getString(JBSbatKKIFM168.SVC_DSL_YMD)),			// サービス解約年月日
				JBSbatKKConst.SVC_DLRE_CD_NORMAL,											// サービス解約理由コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_DLRE_MEMO),					// サービス解約理由メモ
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_DSL_TTDKI_FIN_FLG),			// サービス解約手続完了フラグ
				//OM-2015-0000727 MOD START
				//sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.KAIHK_YMD),						// 回復年月日
				null,								
				//OM-2015-0000727 MOD END
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_CANCEL_CL_YMD),				// サービスキャンセル取消年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_DSL_CL_YMD),				// サービス解約取消年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SKEKKA_SEND_CD),				// 審査結果送信コード
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.CHRG_STA_YMD_HOSEI_UM),			// 課金開始年月日補正有無
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD),		// サービス休止課金開始年月日
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.PNLTY_HASSEI_CD),				// 違約金発生コード
				IDO_DIV_OP_SETE,															// 異動区分
				sbopSvcKeiMap.getString(JBSbatKK_T_SBOP_SVC_KEI.SHOSA_DSL_FIN_CD),				// 照査解約完了コード
				null,																		// 登録年月日時分秒
				null,																		// 登録オペレータアカウント
				null,																		// 更新年月日時分秒
				null,																		// 更新オペレータアカウント
				null,																		// 削除年月日時分秒
				null,																		// 削除オペレータアカウント
				null,																		// 無効フラグ
				null,																		// 登録運用年月日
				null,																		// 登録処理ID
				null,																		// 更新運用年月日
				null,																		// 更新処理ID
				null,																		// 削除運用年月日
				null																		// 削除運用ID
		};

		executeKK_T_SBOP_SVC_KEI_PKINSERT(setParam);
 	}
	// OM-2014-0000989 2014/03/18 end
	
	/**
	 * オプションサービス契約の更新(キャンセル)<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param	opSvcKeiMap		カレントレコード。
	 * @param	inMap			入力情報
	 * @param	systemDateTime	システム日付。
	 * @throws	Exception		業務サービス内で発生した例外全般。
	 */
	private void insertOpSvcKeiDslCancel(
			JBSbatCommonDBInterface opSvcKeiMap,
			JBSbatServiceInterfaceMap inMap,
			String systemDateTime
	) throws Exception
	{
		String[] setParam = {
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_NO),					// オプションサービス契約番号
				systemDateTime,																// 世代登録年月日時分秒
				JKKBatConst.SVC_KEI_STAT_CNCL_ZM,											// オプションサービス契約ステータス
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_CD),						// オプションサービスコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PCRS_CD),						// 料金コースコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PPLAN_CD),						// 料金プランコード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OYA_KEI_SKBT_CD),				// 親契約識別コード
				inMap.getString(JBSbatKKIFM168.SVKEI_NO),									// サービス契約番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_KEI_UCWK_NO),				// サービス契約内訳番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.HOJIN_SVC_KEI_UK_NO),			// 法人サービス契約受付番号
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SYSID),							// ＳＹＳＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.MSKM_DTL_NO),					// 申込明細番号
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_KANYU_YMD)),			// 試用加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.FTRIAL_PRD_ENDYMD)),			// 試用期間終了年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_YMD)),				// 本加入年月日
				getValueOrNull(inMap.getString(JBSbatKKIFM168.HONKANYU_IKO_YMD)),			// 本加入移行期限年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_USE_STA_KIBO_YMD),			// サービス利用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_TSTA_KIBO_YMD),				// 予約適用開始希望年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_KZKWRK_REQYMD),		// オプションサービス契約後続業務依頼年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_YMD),						// 照査年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_CL_YMD),					// 照査取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SKEKKA_SEND_CD),				// 審査結果送信コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KEI_CNC_YMD),					// 契約締結年月日
				super.opeDate,																// 予約適用年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.RSV_CL_YMD),					// 予約取消年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX,											// 予約適用コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_STAYMD),					// プラン開始年月日
				// ▼▼▼▼▼ ST1-2012-0000494 2012/09/12 MOD START ▼▼▼▼▼
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_ENDYMD),					// プラン終了年月日
				// ▲▲▲▲▲ ST1-2012-0000494 2012/09/12 MOD E N D ▲▲▲▲▲
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_CHRG_STAYMD),				// プラン課金開始年月日
				// ▼▼▼▼▼ ST1-2012-0000494 2012/09/12 MOD START ▼▼▼▼▼
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_CHRG_ENDYMD),				// プラン課金終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PLAN_END_SBT_CD),				// プラン終了種別コード
				// ▲▲▲▲▲ ST1-2012-0000494 2012/09/12 MOD E N D ▲▲▲▲▲
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_YMD),				// サービスキャンセル年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_RSN_CD),				// サービスキャンセル理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STAYMD),					// サービス開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STA_HMS),					// サービス開始時分秒
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSP_SVCTK_STAYMD),				// 表示用サービス提供開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CHRG_STAYMD),				// サービス課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_YMD),					// サービス停止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RSN_CD),				// サービス停止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_YMD),				// サービス停止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_STP_RLS_RSN_CD),			// サービス停止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PAUSE_STP_CD),					// 休止中断コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_YMD),					// サービス休止年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_CD),				// サービス休止理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RSN_MEMO),			// サービス休止理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_YMD),				// サービス休止解除年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_CD),			// サービス休止解除理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO),		// サービス休止解除理由メモ
				// ▼▼▼▼▼ ST1-2012-0000494 2012/09/12 MOD START ▼▼▼▼▼
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_ENDYMD),					// サービス終了年月日
				// ▲▲▲▲▲ ST1-2012-0000494 2012/09/12 MOD E N D ▲▲▲▲▲
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_END_HMS),					// サービス終了時分秒
				// ▼▼▼▼▼ ST1-2012-0000494 2012/09/12 MOD START ▼▼▼▼▼
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CHRG_ENDYMD),				// サービス課金終了年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_YMD),					// サービス解約年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DLRE_CD),					// サービス解約理由コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DLRE_MEMO),					// サービス解約理由メモ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.DSL_TNT_USER_ID),				// 解約担当ユーザーＩＤ
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_TTDKI_FIN_FLG),			// サービス解約手続完了フラグ
				//OM-2015-0000727 MOD START
				//opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.KAIHK_YMD),						// 回復年月日
				null,								
				//OM-2015-0000727 MOD END
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_CANCEL_CL_YMD),				// サービスキャンセル取消年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_DSL_CL_YMD),				// サービス解約取消年月日
				// ▲▲▲▲▲ ST1-2012-0000494 2012/09/12 MOD E N D ▲▲▲▲▲
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.CHRG_STA_YMD_HOSEI_UM),			// 課金開始年月日補正有無
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD),		// サービス休止課金開始年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_HKHASYMD),			// オプションサービス契約引継発生年月日
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.PNLTY_HASSEI_CD),				// 違約金発生コード
				IDO_DIV_OP_SETE,															// 異動区分
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SHOSA_DSL_FIN_CD),				// 照査解約完了コード
				opSvcKeiMap.getString(JBSbatKK_T_OP_SVC_KEI.SVCTK_BUT_DEL_TRN_JSSI_DTM),	// サービス提供物消去処理実施年月日時分秒
				null,																		// 登録年月日時分秒
				null,																		// 登録オペレータアカウント
				null,																		// 更新年月日時分秒
				null,																		// 更新オペレータアカウント
				null,																		// 削除年月日時分秒
				null,																		// 削除オペレータアカウント
				null,																		// 無効フラグ
				null,																		// 登録運用年月日
				null,																		// 登録処理ID
				null,																		// 更新運用年月日
				null,																		// 更新処理ID
				null,																		// 削除運用年月日
				null																		// 削除運用ID
		};

		executeKK_T_OP_SVC_KEI_PKINSERT(setParam);
	}
// ▲▲▲オプションサービス契約のインサート
	
	
	/**
	 * オプションサービス契約＜ISP＞の作成<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約＜ISP＞の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param systemDateTime システム日付。
	 * @param opsvkeino オプションサービス契約番号。
	 * @param voipUserId VoIPユーザID。
	 * @param rrksMlad 連絡先メールアドレス
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertOpsvkeiIspAdd(
			String systemDateTime,
			String opsvkeino,
			String voipUserId,
			String rrksMlad,
			String addStat
	) throws Exception
	{
		String[] setParam = {
				opsvkeino, // オプションサービス契約番号
				systemDateTime, // 世代登録年月日時分秒
				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, // ホスティング初期メール管理者ＰＯＰＩＤパスワード
				null, // ホスティングメール管理者メールアドレス
				null, // ホスティングメール管理者メールボックス容量
				null, // ダイヤルパッドＩＤ
				null, // ダイヤルパッドＩＳＰＩＤ
				null, // ダイヤルパッドＭＡＰＩＤ
				null, // ダイヤルパッドＰＩＮ
				null, // ダイヤルパッドメールアドレス
				null, // ダイヤルパッドＩＤ公開要否
				null, // ダイヤルアップ接続用認証ID
				voipUserId, // ＶｏＩＰユーザーＩＤ
				null, // ＶｏＩＰ電話番号
				null, // ＤＮＳ設定コード
				null, // メールゲートウェイ管理者ＩＤ
				null, // メールゲートウェイ管理者ＩＤパスワード
				null, // メールゲートウェイ管理者メールアドレス
				null, // メールゲートウェイ受信メールサーバーＩＰアドレス
				null, // メールゲートウェイ送信メールサーバーＩＰアドレス
				null, // メールゲートウェイアカウント数
				null, // 公衆網電話番号
				null, // スポット有害サイトブロック対象ＳＹＳＩＤ
// ▼▼▼▼▼ 2013/09/23 OM-2013-0002497 UPD START ▼▼▼▼▼
				addStat, // ＳＩＰ登録状態コード
//				JBSbatKKConst.SIP_ADD_STAT_NOT_FIN, // ＳＩＰ登録状態コード
// ▲▲▲▲▲ 2013/09/23 OM-2013-0002497 UPD E N D ▲▲▲▲▲
				rrksMlad, // サービス個別設定連絡先メールアドレス
				null, // 通話明細公開要否
				// 2013/05/05 予約適用コード未設定対応 START
				//null, // 予約適用コード
				JKKBatConst.RSV_APLY_CD_RSV_FIX, // 予約適用コード
				// 2013/05/05 予約適用コード未設定対応 END
				null, // 他システム連携サービス契約コード通番
				null, // ドメイン代行申請有無
				null, // eo光ネット代行申請有無
				null, // WISHオーナーID
				null, // IPv6アドレス(インターフェイスID)
				// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
				null, // フェムトセル事業者コード
				null, // フェムトセル事業者使用コード
				null, // フェムトセル用認証ID
				null, //フェムトセル用認証IDパスワード
				// ANK-0571-00-00 ADD END
				null, // 登録年月日時分秒
				null, // 登録オペレータアカウント
				null, // 更新年月日時分秒
				null, // 更新オペレータアカウント
				null, // 削除年月日時分秒
				null, // 削除オペレータアカウント
				null, // 無効フラグ
				null,	// 登録運用年月日
				null,	// 登録処理ID
				null,	// 更新運用年月日
				null,	// 更新処理ID
				null,	// 削除運用年月日
				null	// 削除運用ID
			};

		executeKK_T_OPSVKEI_ISP_PKINSERT(setParam);
	}
	
	// OM-2014-0000989 2014/03/18 start
	/**
	 * サブオプションサービス契約＜ISP＞の作成<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.サブオプションサービス契約＜ISP＞の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param systemDateTime システム日付。
	 * @param opsvkeino オプションサービス契約番号。
	 * @param sbopsvkeino サブオプションサービス契約番号。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertSbopsvkeiIspAdd(
			String systemDateTime,
			String opsvkeino,
			String sbopsvkeino
	) throws Exception
	{
		String[] setParam = {
				opsvkeino, // オプションサービス契約番号
				sbopsvkeino, // サブオプションサービス契約番号
				systemDateTime, // 世代登録年月日時分秒
				null, // 追加容量
				null, // エイリアス
				null, // エイリアス変更年月日
				JKKBatConst.RSV_APLY_CD_RSV_FIX, // 予約適用コード
				null, // 登録年月日時分秒
				null, // 登録オペレータアカウント
				null, // 更新年月日時分秒
				null, // 更新オペレータアカウント
				null, // 削除年月日時分秒
				null, // 削除オペレータアカウント
				null, // 無効フラグ
				null,	// 登録運用年月日
				null,	// 登録処理ID
				null,	// 更新運用年月日
				null,	// 更新処理ID
				null,	// 削除運用年月日
				null	// 削除運用ID
			};

		executeKK_T_SBOPSVKEI_ISP_PKINSERT(setParam);
	}
	// OM-2014-0000989 2014/03/18 end
	
	/**
	 * オプションサービス契約＜ISP＞の更新<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約＜ISP＞の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param opsvkeiIspMap カレントレコード
	 * @param systemDateTime システム日付。
	 * @param opsvkeino オプションサービス契約番号。
	 * @param voipUserId VoIPユーザID。
	 * @param rrksMlad 連絡先メールアドレス
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertOpsvkeiIspUpd(
			JBSbatCommonDBInterface opsvkeiIspMap,
			String systemDateTime,
			String voipUserId,
			String rrksMlad,
			String addStat
	) throws Exception
	{
		String[] setParam = {
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.OP_SVC_KEI_NO), // オプションサービス契約番号
				systemDateTime, // 世代登録年月日時分秒
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.KIBO_ML_ACCOUNT_1), // 希望メールアドレス１
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.KIBO_ML_ACCOUNT_2), // 希望メールアドレス２
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.KIBO_ML_ACCOUNT_3), // 希望メールアドレス３
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLTISE_SESSION_CNT), // マルチセッション用セッション数
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLTISE_SHK_NINSHO_ID_PWD), // マルチセッション用初期認証ＩＤパスワード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLTISE_NINSHO_ID), // マルチセッション用認証ＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLTISE_NINSHO_ID_PWD), // マルチセッション用認証ＩＤパスワード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.KOTEI_IP_AD), // 固定ＩＰアドレス
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.NETMASK), // ネットマスク
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.SHK_POP_ID_PWD), // 初期ＰＯＰパスワード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.POP_ID), // ＰＯＰＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLAD), // メールアドレス
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLAD_CHGE_YMD), // メールアドレス変更年月日
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.CAPA), // 容量
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.SHK_WEB_ID_PWD), // 初期ＷｅｂＩＤパスワード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.WEB_ID), // ＷｅｂＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.URL_DOMAIN), // ＵＲＬ（ドメイン）
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.URL_ACCOUNT), // ＵＲＬ（アカウント）
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLLIST_NM), // メーリングリスト名
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLLIST_KOSHO), // メーリングリスト呼称
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLLIST_KOKAI_YH), // メーリングリスト公開要否
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLLIST_MAX_USER_CNT), // メーリングリスト最大ユーザー数
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MLLIST_KRISHA_MLAD), // メーリングリスト管理者メールアドレス
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DOKUJI_DOMAIN_NM), // 独自ドメイン名
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.HOSML_ACCOUNT_CNT), // ホスティングメールアカウント数
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.HOSML_BOX_CAPA), // ホスティングメールボックス総容量
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.HOSML_KRISHA_ID), // ホスティングメール管理者ＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.HOSTING_SHKM_KRISHA_ID_PWD), // ホスティング初期メール管理者ＩＤパスワード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.HOSML_KRISHA_POP_ID), // ホスティングメール管理者ＰＯＰＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.HOS_SHKM_KRISHA_POP_ID_PWD), // ホスティング初期メール管理者ＰＯＰＩＤパスワード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.HOSML_KRISHA_MLAD), // ホスティングメール管理者メールアドレス
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.HOSML_KRISHA_MAIL_BOX_CAPA), // ホスティングメール管理者メールボックス容量
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DPAD_ID), // ダイヤルパッドＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DPAD_ISP_ID), // ダイヤルパッドＩＳＰＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DPAD_MAPID), // ダイヤルパッドＭＡＰＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DPAD_PIN), // ダイヤルパッドＰＩＮ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DPAD_MLAD), // ダイヤルパッドメールアドレス
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DPAD_ID_KOKAI_YH), // ダイヤルパッドＩＤ公開要否
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DUPCON_NINSHO_ID), // ダイヤルアップ接続用認証ID
				voipUserId, // ＶｏＩＰユーザーＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.VOIP_TELNO), // ＶｏＩＰ電話番号
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DNS_SETTE_CD), // ＤＮＳ設定コード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MAIL_GW_KRISHA_ID), // メールゲートウェイ管理者ＩＤ
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MAIL_GW_KRISHA_ID_PWD), // メールゲートウェイ管理者ＩＤパスワード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MAIL_GW_KRISHA_MLAD), // メールゲートウェイ管理者メールアドレス
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MAIL_GW_RCV_MSERVER_IP_AD), // メールゲートウェイ受信メールサーバーＩＰアドレス
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.MAIL_GW_SEND_MSERVER_IP_AD), // メールゲートウェイ送信メールサーバーＩＰアドレス
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.ML_GW_ACCOUNT_CNT), // メールゲートウェイアカウント数
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.KOSHUMO_TELNO), // 公衆網電話番号
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.SPOT_YGSITEBLCK_TRGT_SYSID), // スポット有害サイトブロック対象ＳＹＳＩＤ
// ▼▼▼▼▼ 2013/09/23 OM-2013-0002497 UPD START ▼▼▼▼▼
				addStat, // ＳＩＰ登録状態コード
//				JBSbatKKConst.SIP_ADD_STAT_NOT_FIN, // ＳＩＰ登録状態コード
// ▲▲▲▲▲ 2013/09/23 OM-2013-0002497 UPD E N D ▲▲▲▲▲
				rrksMlad, // サービス個別設定連絡先メールアドレス
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.TUWA_DTL_KOKAI_YH), // 通話明細公開要否
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.RSV_APLY_CD), // 予約適用コード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.TSYRN_SVKEI_CD_SEQ), // 他システム連携サービス契約コード通番
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.DOMAIN_DAIKO_SHINSEI_UM), // ドメイン代行申請有無
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.EOHNT_DAIKO_SHINSEI_UM), // eo光ネット代行申請有無
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.WISH_OWNR_ID), // WISHオーナーID
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.IPV6_AD_IFID), // IPv6アドレス(インターフェイスID)
				// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.FMTCEL_JGS_CD), // フェムトセル事業者コード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.FMTCEL_JGS_USE_CD), // フェムトセル事業者使用コード
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.FMTCEL_NINSHO_ID), // フェムトセル用認証ID
				opsvkeiIspMap.getString(JBSbatKK_T_OPSVKEI_ISP.FMTCEL_NINSHO_ID_PWD), //フェムトセル用認証IDパスワード
				// ANK-0571-00-00 ADD END
				null, // 登録年月日時分秒
				null, // 登録オペレータアカウント
				null, // 更新年月日時分秒
				null, // 更新オペレータアカウント
				null, // 削除年月日時分秒
				null, // 削除オペレータアカウント
				null, // 無効フラグ
				null,	// 登録運用年月日
				null,	// 登録処理ID
				null,	// 更新運用年月日
				null,	// 更新処理ID
				null,	// 削除運用年月日
				null	// 削除運用ID
			};

		executeKK_T_OPSVKEI_ISP_PKINSERT(setParam);
	}

	// OM-2014-0000989 2014/03/18 start
	/**
	 * オプションサービス契約＜ISP＞の更新<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.オプションサービス契約＜ISP＞の全項目挿入<br>
	 * </pre>
	 * <p>
	 * @param opsvkeiIspMap カレントレコード
	 * @param systemDateTime システム日付。
	 * @param opsvkeino オプションサービス契約番号。
	 * @param voipUserId VoIPユーザID。
	 * @param rrksMlad 連絡先メールアドレス
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertSbopsvkeiIspUpd(
			JBSbatCommonDBInterface sbopsvkeiIspMap,
			String systemDateTime
	) throws Exception
	{
		String[] setParam = {
				sbopsvkeiIspMap.getString(JBSbatKK_T_SBOPSVKEI_ISP.OP_SVC_KEI_NO), // オプションサービス契約番号
				sbopsvkeiIspMap.getString(JBSbatKK_T_SBOPSVKEI_ISP.SBOP_SVC_KEI_NO), // サブオプションサービス契約番号
				systemDateTime, // 世代登録年月日時分秒
				sbopsvkeiIspMap.getString(JBSbatKK_T_SBOPSVKEI_ISP.ADD_CAPA), // 追加容量
				sbopsvkeiIspMap.getString(JBSbatKK_T_SBOPSVKEI_ISP.ALIAS), // エイリアス
				sbopsvkeiIspMap.getString(JBSbatKK_T_SBOPSVKEI_ISP.ALIAS_CHGE_YMD), // エイリアス変更年月日
				sbopsvkeiIspMap.getString(JBSbatKK_T_SBOPSVKEI_ISP.RSV_APLY_CD), // 予約適用コード
				null, // 登録年月日時分秒
				null, // 登録オペレータアカウント
				null, // 更新年月日時分秒
				null, // 更新オペレータアカウント
				null, // 削除年月日時分秒
				null, // 削除オペレータアカウント
				null, // 無効フラグ
				null,	// 登録運用年月日
				null,	// 登録処理ID
				null,	// 更新運用年月日
				null,	// 更新処理ID
				null,	// 削除運用年月日
				null	// 削除運用ID
			};

		executeKK_T_SBOPSVKEI_ISP_PKINSERT(setParam);
	}
	// OM-2014-0000989 2014/03/18 end

	/**
	 * 進捗テーブルを登録します。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目の配列を作ります。<br>
	 *
	 * 2.進捗全項目登録処理を実行します。<br>
	 * </pre>
	 * <p>
	 * @param inMap 入力情報
	 * @param systemDateTime システム日付。
	 * @param mskmDtlNo 申込明細番号。
	 * @param prgTkjkSosaStr 進捗特記事項の操作モード設定文字列
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void insertPrg(JBSbatServiceInterfaceMap inMap, String systemDateTime,  String mskmDtlNo, String prgTkjkSosaStr) throws Exception
	{
		String svcKeiNo = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.SVKEI_NO));			// サービス契約番号
		String opSvcKeiNo = JBSbatStringUtil.trim(inMap.getString(JBSbatKKIFM168.OP_SVC_KEI_NO));	// オプションサービス契約番号
		
		// SEP-0007-00-00 進捗補足事項編集対応 ADD START
		StringBuffer prgTkjkSb = new StringBuffer();
		prgTkjkSb.append(getOpSbtStr(inMap)).append("情報");	// オプション設定
		prgTkjkSb.append(prgTkjkSosaStr);						// 操作モード
		// SEP-0007-00-00 ADD END
		
		// 進捗番号をシーケンスより取得
		String prgNO = JBSbatOracleSeqUtil.getFormatedNextSeq(commonItem.getConnection(), SEQ_PRG_NO, "", 12);	// 2012/06/14 IT2-2012-0000894対応

		//2013/01/09 進捗年月日時分秒を運用日付に修正する START
		String[] setParam = {
				prgNO, // 進捗番号
				mskmDtlNo, // 申込明細番号
				null, // 請求契約番号
				null, // 請求方法番号（口座）
				null, // 請求方法番号（クレジットカード）
				svcKeiNo, // サービス契約番号
				null, // サービス契約内訳番号
				null, // サービス契約回線内訳番号
				null, // 機器提供サービス契約番号
				opSvcKeiNo, // オプションサービス契約番号
				null, // 請求オプションサービス契約番号
				null, // サブオプションサービス契約番号
				null, // 割引サービス契約番号
				IDO_DIV_OP_SETE, // 異動区分
				systemDateTime, // 異動年月日時分秒
				PRG_STAT_OP_SETE_FIN, // 進捗ステータス
				JKKBatCommon.getOpeDateTimeStamp(commonItem), // 進捗年月日時分秒
				null, // 進捗メモ
				prgTkjkSb.toString(), // 進捗特記事項1
				null, // 進捗特記事項2
				null, // 登録年月日時分秒
				null, // 登録オペレータアカウント
				null, // 更新年月日時分秒
				null, // 更新オペレータアカウント
				null, // 削除年月日時分秒
				null, // 削除オペレータアカウント
				null, // 無効フラグ
				null, // 登録運用年月日
				null, // 登録処理ID
				null, // 更新運用年月日
				null, // 更新処理ID
				null, // 削除運用年月日
				null  // 削除処理ID
			};
		//2013/01/09 進捗年月日時分秒を運用日付に修正する END

		executeKK_T_PRG_PKINSERT(setParam);
	}
	
	/**
	 * 入力した値か、最大値を取得
	 * @param value　入力値
	 * @return String　入力値 or 最大値
	 */
	private String getValueOrMaxvalue(String value)
	{
		String ret = value;
		
		if((value == null) || "".equals(value))
		{
			ret = MAX_VALUE;
		}
		
		return ret;
	}
	/**
	 * 入力した値か、Nullを取得
	 * @param value　入力値
	 * @return String　入力値 or 最大値
	 */
	private String getValueOrNull(String value)
	{
		String ret = value;
		
		if((value == null) || "".equals(value))
		{
			ret = null;
		}
		
		return ret;
	}
	
	/**
	 * オプションサービスコード取得処理
	 * @param inMap　入力情報
	 * @return String　オプションサービスコード
	 * @throws Exception 業務サービス内で発生した例外全般
	 */
	private String getOpSvcCd(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		String opSvcCd = null;
		String eoOp = inMap.getString(JBSbatKKIFM167.EO_OP);
		
		
		if(eoOp.equals(EO_OP_TEL))
		{	// TELvisonの場合
			
			opSvcCd = JBSbatKKConst.OP_SVC_CD_TEL;
		}
		else if(eoOp.equals(EO_OP_EONETPH))
		{	// eoネットフォンの場合
			
			opSvcCd = JBSbatKKConst.OP_SVC_CD_EONETPH;
		}
		
		if(opSvcCd == null)
		{
			// エラーログ出力
			commonItem.getLogPrint().printBusinessErrorLog(JPCBatchMessageConstant.EKKB0130CE, new String[]{"eoオプション"});
			// エラーフラグ設定
			super.commonItem.setErrFlg(true);
			throw new JBSbatBusinessError();
		}
		
		return opSvcCd;
	}
	
	// SEP-0007-00-00 進捗補足事項編集対応 ADD START
	/**
	 * オプション種別から進捗特記事項設定用の文字列を取得する
	 * @param inMap　入力情報
	 * @return String　進捗特記事項設定用文字列
	 * @throws Exception 業務サービス内で発生した例外全般
	 */
	private String getOpSbtStr(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		String eoOp = inMap.getString(JBSbatKKIFM167.EO_OP);
		String opSbtStr = null;
		
		if(eoOp.equals(EO_OP_TEL))
		{	// TELvisonの場合
			
			opSbtStr = PRG_TKJK_OP_STR_TEL;
		}
		else if(eoOp.equals(EO_OP_EONETPH))
		{	// eoネットフォンの場合
			
			opSbtStr = PRG_TKJK_OP_STR_EONETPH;
		}
		else
		{
			// エラーログ出力
			commonItem.getLogPrint().printBusinessErrorLog(JPCBatchMessageConstant.EKKB0130CE, new String[]{"eoオプション"});
			// エラーフラグ設定
			super.commonItem.setErrFlg(true);
			throw new JBSbatBusinessError();
		}
		
		return opSbtStr;
	}
	// SEP-0007-00-00 ADD END
	
	/**
	 * 課金開始年月日の取得処理
	 * @return String　課金開始年月日
	 */
	private String getKakinOpeDate()
	{
		int year = Integer.parseInt(super.opeDate.substring(0, 4)); 	// 年
		int month = Integer.parseInt(super.opeDate.substring(4, 6)); 	// 月
		
		Calendar cal = Calendar.getInstance();
		cal.set(year, (month - 1), 1);
		cal.add(Calendar.MONTH, 1);
		
		return (new SimpleDateFormat("yyyyMMdd")).format(cal.getTime());
	}

	// ▼▼▼▼▼ 2013/09/13 ADD START ▼▼▼▼▼
	/**
	 * サービス契約のカレントレコード取得処理<br>
	 * <br>
	 * @param	svcKeiNo				サービス契約番号
	 * @return	JBSbatCommonDBInterface	カレントレコード
	 * @throws	Exception
	 */
	private JBSbatCommonDBInterface getCurretRecSvcKei(String svcKeiNo) throws Exception
	{
		// サービス契約ステータスの取得
		Object[] svcKeiWhereParam = {
				svcKeiNo,							// サービス契約番号
				this.commonItem.getOpeDate()		// 運用日
		};
		executeKK_T_SVC_KEI_KK_SELECT_273(svcKeiWhereParam);

		JBSbatCommonDBInterface svcKeiRec = db_KK_T_SVC_KEI.selectNext();

		return svcKeiRec;
	}

	private void printErrMsgOpSvcKei(
			String svcKeiNo,
			String opSvcKeiNo,
			String opSvcKeiStat,
			String taioNo
	)
	{
		// ワーニングログ出力
		commonItem.getLogPrint().printBusinessErrorLog(
				JPCBatchMessageConstant.EKKB0310JW,
				new String[]{
						"オプションサービス契約",
						"ステータス",
						"対応番号：" + taioNo
						+ "　サービス：" + svcKeiNo
						+ "　オプション：" + opSvcKeiNo
						+ "　オプション状態：" + opSvcKeiStat
				}
		);
	}

	private void printErrMsgSvcKei(
			String svcKeiNo,
			String svcKeiStat,
			String taioNo
	)
	{
		// ワーニングログ出力
		commonItem.getLogPrint().printBusinessErrorLog(
				JPCBatchMessageConstant.EKKB0310JW,
				new String[]{
						"サービス契約",
						"ステータス",
						"対応番号：" + taioNo
						+ "　サービス：" + svcKeiNo
						+ "　サービス状態：" + svcKeiStat
				}
		);
	}
	// ▲▲▲▲▲ 2013/09/13 ADD E N D ▲▲▲▲▲

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	
	/**
	 *入力情報（ＳＩＰ情報連携ＯＰ情報更新ファイル）の単項目チェックを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.単項目チェックを行います。<br>
	 * 
	 * 2.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		rsMap:(項目、値)を(key、value)として、データをrsMapに入れます
	 *		itemvalueMap:埋め込み文字の値をitemvalueMapに入れます。キーの値は、以下に説明します。
	 *			 TXT-KKIFM168-INF1.SHUK_TRGT_PRD			ＳＩＰ情報連携ＯＰ情報更新ファイル.集計対象期間
	 *			 TXT-KKIFM168-INF1.SVKEI_NO			ＳＩＰ情報連携ＯＰ情報更新ファイル.サービス契約番号
	 *			 TXT-KKIFM168-INF1.SVKEI_NO			ＳＩＰ情報連携ＯＰ情報更新ファイル.サービス契約番号
	 *			 TXT-KKIFM168-INF1.SVKEI_NO			ＳＩＰ情報連携ＯＰ情報更新ファイル.サービス契約番号
	 *			 TXT-KKIFM168-INF1.FTRIAL_PRD_ENDYMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.試用期間終了年月日
	 *			 TXT-KKIFM168-INF1.FTRIAL_PRD_ENDYMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.試用期間終了年月日
	 *			 TXT-KKIFM168-INF1.VOIP_USER_ID			ＳＩＰ情報連携ＯＰ情報更新ファイル.ＶｏＩＰユーザＩＤ
	 *			 TXT-KKIFM168-INF1.VOIP_USER_ID			ＳＩＰ情報連携ＯＰ情報更新ファイル.ＶｏＩＰユーザＩＤ
	 *			 TXT-KKIFM168-INF1.VOIP_USER_ID			ＳＩＰ情報連携ＯＰ情報更新ファイル.ＶｏＩＰユーザＩＤ
	 *			 TXT-KKIFM168-INF1.ADD_STAT			ＳＩＰ情報連携ＯＰ情報更新ファイル.登録状態
	 *			 TXT-KKIFM168-INF1.ADD_STAT			ＳＩＰ情報連携ＯＰ情報更新ファイル.登録状態
	 *			 TXT-KKIFM168-INF1.ADD_STAT			ＳＩＰ情報連携ＯＰ情報更新ファイル.登録状態
	 *			 TXT-KKIFM168-INF1.IP_TELNO			ＳＩＰ情報連携ＯＰ情報更新ファイル.ＩＰ電話番号
	 *			 TXT-KKIFM168-INF1.IP_TELNO			ＳＩＰ情報連携ＯＰ情報更新ファイル.ＩＰ電話番号
	 *			 TXT-KKIFM168-INF1.MLAD			ＳＩＰ情報連携ＯＰ情報更新ファイル.メールアドレス
	 *			 TXT-KKIFM168-INF1.MLAD			ＳＩＰ情報連携ＯＰ情報更新ファイル.メールアドレス
	 *			 TXT-KKIFM168-INF1.MLAD			ＳＩＰ情報連携ＯＰ情報更新ファイル.メールアドレス
	 *			 TXT-KKIFM168-INF1.EO_OP			ＳＩＰ情報連携ＯＰ情報更新ファイル.ｅｏオプション
	 *			 TXT-KKIFM168-INF1.EO_OP			ＳＩＰ情報連携ＯＰ情報更新ファイル.ｅｏオプション
	 *			 TXT-KKIFM168-INF1.EO_OP			ＳＩＰ情報連携ＯＰ情報更新ファイル.ｅｏオプション
	 *			 TXT-KKIFM168-INF1.SVC_DIV			ＳＩＰ情報連携ＯＰ情報更新ファイル.サービス区分
	 *			 TXT-KKIFM168-INF1.SVC_DIV			ＳＩＰ情報連携ＯＰ情報更新ファイル.サービス区分
	 *			 TXT-KKIFM168-INF1.NAT_CHOU			ＳＩＰ情報連携ＯＰ情報更新ファイル.ＮＡＴ超え
	 *			 TXT-KKIFM168-INF1.FTRIAL_KANYU_YMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.試用加入年月日
	 *			 TXT-KKIFM168-INF1.FTRIAL_KANYU_YMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.試用加入年月日
	 *			 TXT-KKIFM168-INF1.HONKANYU_IKO_YMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.本加入移行期限年月日
	 *			 TXT-KKIFM168-INF1.HONKANYU_IKO_YMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.本加入移行期限年月日
	 *			 TXT-KKIFM168-INF1.HONKANYU_YMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.本加入年月日
	 *			 TXT-KKIFM168-INF1.HONKANYU_YMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.本加入年月日
	 *			 TXT-KKIFM168-INF1.SVC_DSL_YMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.サービス解約年月日
	 *			 TXT-KKIFM168-INF1.SVC_DSL_YMD			ＳＩＰ情報連携ＯＰ情報更新ファイル.サービス解約年月日
	 *			 TXT-KKIFM168-INF1.TRAN_DTM			ＳＩＰ情報連携ＯＰ情報更新ファイル.処理日付
	 *			 TXT-KKIFM168-INF1.TRAN_DTM			ＳＩＰ情報連携ＯＰ情報更新ファイル.処理日付
	 *			 TXT-KKIFM168-INF1.TAIO_NO			ＳＩＰ情報連携ＯＰ情報更新ファイル.対応番号
	 *			 TXT-KKIFM168-INF1.TAIO_NO			ＳＩＰ情報連携ＯＰ情報更新ファイル.対応番号
	 *			 TXT-KKIFM168-INF1.TAIO_NO			ＳＩＰ情報連携ＯＰ情報更新ファイル.対応番号
	 *			 TXT-KKIFM168-INF1.OP_SVC_KEI_NO			ＳＩＰ情報連携ＯＰ情報更新ファイル.オプションサービス契約番号
	 *			 TXT-KKIFM168-INF1.OP_SVC_KEI_NO			ＳＩＰ情報連携ＯＰ情報更新ファイル.オプションサービス契約番号
	 *			 TXT-KKIFM168-INF1.OPSVKEI_GENE_ADD_DTM			ＳＩＰ情報連携ＯＰ情報更新ファイル.世代登録年月日時分秒
	 *			 TXT-KKIFM168-INF1.OPSVKEI_GENE_ADD_DTM			ＳＩＰ情報連携ＯＰ情報更新ファイル.世代登録年月日時分秒
	 *			 TXT-KKIFM168-INF1.OPSVKEI_ISP_GENE_ADD_DTM			ＳＩＰ情報連携ＯＰ情報更新ファイル.ＩＳＰ世代登録年月日時分秒
	 *			 TXT-KKIFM168-INF1.OPSVKEI_ISP_GENE_ADD_DTM			ＳＩＰ情報連携ＯＰ情報更新ファイル.ＩＳＰ世代登録年月日時分秒
	 * </pre>
	 * <p>
	 * @param rsMap 入力データ（TXT又はDB）を格納されたHashMap。
	 * @param itemvalueMap エラーメッセージに関する項目値を格納されたHashMap。
	 * @return  boolean trueである場合、エラーがありません。falseである場合、エラーを発生しました。
	 */
	private boolean isSingleCheckKKIFM168_INF1(HashMap rsMap, HashMap itemvalueMap)
	{
		// 単項目チェックを行います
		String strValue = null;

		// 集計対象期間項目チェック
		strValue = (String)rsMap.get("SHUK_TRGT_PRD");
		// ST1-2012-0000494 ADD START
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SHUK_TRGT_PRD")});
			return false;
		}
		// ST1-2012-0000494 ADD END
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SHUK_TRGT_PRD")});
			return false;
		}
		// ST1-2012-0000494 ADD START
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakusuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SHUK_TRGT_PRD")});
			return false;
		}
		// ST1-2012-0000494 ADD 

		// サービス契約番号項目チェック
		strValue = (String)rsMap.get("SVKEI_NO");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SVKEI_NO")});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "10"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SVKEI_NO")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SVKEI_NO")});
			return false;
		}

		// 試用期間終了年月日項目チェック
		strValue = (String)rsMap.get("FTRIAL_PRD_ENDYMD");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.FTRIAL_PRD_ENDYMD")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.FTRIAL_PRD_ENDYMD")});
			return false;
		}

		// ＶｏＩＰユーザＩＤ項目チェック
		strValue = (String)rsMap.get("VOIP_USER_ID");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.VOIP_USER_ID")});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "16"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.VOIP_USER_ID")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.VOIP_USER_ID")});
			return false;
		}

		// 登録状態項目チェック
		strValue = (String)rsMap.get("ADD_STAT");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.ADD_STAT")});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.ADD_STAT")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.ADD_STAT")});
			return false;
		}

		// ＩＰ電話番号項目チェック
		strValue = (String)rsMap.get("IP_TELNO");
		// ST1-2012-0000494 ADD START
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.IP_TELNO")});
			return false;
		}
		// ST1-2012-0000494 ADD END
		// 桁数チェック
		// ST1-2012-0000494  MOD START
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "7"}))
//		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "11"}))
		// ST1-2012-0000494  MOD END
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.IP_TELNO")});
			return false;
		}
		// 属性チェック
		// ST1-2012-0000494  MOD START
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
//		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"tel2"}))
		// ST1-2012-0000494  MOD END
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.IP_TELNO")});
			return false;
		}

		// メールアドレス項目チェック
		strValue = (String)rsMap.get("MLAD");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.MLAD")});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "256"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.MLAD")});
			return false;
		}
		// 属性チェック
		// ST1-2012-0000494 MOD START
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"e-mail"}))
		//if(!JBSbatCheckUtil.invoke(strValue, new String[]{"e-mail2"}))
		// ST1-2012-0000494 MOD END
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.MLAD")});
			return false;
		}

		// ｅｏオプション項目チェック
		strValue = (String)rsMap.get("EO_OP");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.EO_OP")});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "2"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.EO_OP")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.EO_OP")});
			return false;
		}

		// サービス区分項目チェック
		strValue = (String)rsMap.get("SVC_DIV");
		// ST1-2012-0000494 ADD START
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SVC_DIV")});
			return false;
		}
		// ST1-2012-0000494 ADD END
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "2"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SVC_DIV")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SVC_DIV")});
			return false;
		}

		// ＮＡＴ超え項目チェック
		strValue = (String)rsMap.get("NAT_CHOU");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "10"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.NAT_CHOU")});
			return false;
		}
		// ST1-2012-0000494 ADD START
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakusuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.NAT_CHOU")});
			return false;
		}
		// ST1-2012-0000494 ADD END

		// 試用加入年月日項目チェック
		strValue = (String)rsMap.get("FTRIAL_KANYU_YMD");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.FTRIAL_KANYU_YMD")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.FTRIAL_KANYU_YMD")});
			return false;
		}

		// 本加入移行期限年月日項目チェック
		strValue = (String)rsMap.get("HONKANYU_IKO_YMD");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.HONKANYU_IKO_YMD")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.HONKANYU_IKO_YMD")});
			return false;
		}

		// 本加入年月日項目チェック
		strValue = (String)rsMap.get("HONKANYU_YMD");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.HONKANYU_YMD")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.HONKANYU_YMD")});
			return false;
		}

		// サービス解約年月日項目チェック
		strValue = (String)rsMap.get("SVC_DSL_YMD");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "8"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SVC_DSL_YMD")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.SVC_DSL_YMD")});
			return false;
		}

		// 処理日付項目チェック
		strValue = (String)rsMap.get("TRAN_DTM");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "14"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.TRAN_DTM")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"day_hour4"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.TRAN_DTM")});
			return false;
		}

		// 対応番号項目チェック
		strValue = (String)rsMap.get("TAIO_NO");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.TAIO_NO")});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "2"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.TAIO_NO")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakusuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.TAIO_NO")});
			return false;
		}

		// オプションサービス契約番号項目チェック
		strValue = (String)rsMap.get("OP_SVC_KEI_NO");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "12"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.OP_SVC_KEI_NO")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.OP_SVC_KEI_NO")});
			return false;
		}

		// 世代登録年月日時分秒項目チェック
		strValue = (String)rsMap.get("OPSVKEI_GENE_ADD_DTM");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "17"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.OPSVKEI_GENE_ADD_DTM")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"day_hour1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.OPSVKEI_GENE_ADD_DTM")});
			return false;
		}

		// ＩＳＰ世代登録年月日時分秒項目チェック
		strValue = (String)rsMap.get("OPSVKEI_ISP_GENE_ADD_DTM");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "17"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.OPSVKEI_ISP_GENE_ADD_DTM")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"day_hour1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFM168-INF1.OPSVKEI_ISP_GENE_ADD_DTM")});
			return false;
		}

		return true;
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	オプションサービス契約番号				OP_SVC_KEI_NO
	 *		 	世代登録年月日時分秒				GENE_ADD_DTM
	 *		 	オプションサービス契約ステータス				OP_SVC_KEI_STAT
	 *		 	オプションサービスコード				OP_SVC_CD
	 *		 	料金コースコード				PCRS_CD
	 *		 	料金プランコード				PPLAN_CD
	 *		 	サービス契約番号				SVC_KEI_NO
	 *		 	サービス契約内訳番号				SVC_KEI_UCWK_NO
	 *		 	ＳＹＳＩＤ				SYSID
	 *		 	申込明細番号				MSKM_DTL_NO
	 *		 	試用加入年月日				FTRIAL_KANYU_YMD
	 *		 	試用期間終了年月日				FTRIAL_PRD_ENDYMD
	 *		 	本加入年月日				HONKANYU_YMD
	 *		 	本加入移行期限年月日				HONKANYU_IKO_KIGEN_YMD
	 *		 	サービス利用開始希望年月日				SVC_USE_STA_KIBO_YMD
	 *		 	予約適用開始希望年月日				RSV_TSTA_KIBO_YMD
	 *		 	オプションサービス契約後続業務依頼年月日				OP_SVC_KEI_KZKWRK_REQYMD
	 *		 	照査年月日				SHOSA_YMD
	 *		 	照査取消年月日				SHOSA_CL_YMD
	 *		 	審査結果送信コード				SKEKKA_SEND_CD
	 *		 	契約締結年月日				KEI_CNC_YMD
	 *		 	予約適用年月日				RSV_APLY_YMD
	 *		 	予約取消年月日				RSV_CL_YMD
	 *		 	予約適用コード				RSV_APLY_CD
	 *		 	プラン開始年月日				PLAN_STAYMD
	 *		 	プラン終了年月日				PLAN_ENDYMD
	 *		 	プラン課金開始年月日				PLAN_CHRG_STAYMD
	 *		 	プラン課金終了年月日				PLAN_CHRG_ENDYMD
	 *		 	サービスキャンセル年月日				SVC_CANCEL_YMD
	 *		 	サービスキャンセル理由コード				SVC_CANCEL_RSN_CD
	 *		 	サービス開始年月日時分秒				SVC_STA_DTM
	 *		 	サービス課金開始年月日				SVC_CHRG_STAYMD
	 *		 	サービス停止年n年月日				SVC_STP_YMD
	 *		 	サービス停止理由コード				SVC_STP_RSN_CD
	 *		 	サービス停止解除年月日時分秒				SVC_STP_RLS_YMD
	 *		 	サービス停止解除理由コード				SVC_STP_RLS_RSN_CD
	 *		 	休止中断コード				PAUSE_STP_CD
	 *		 	サービス休止年月日				SVC_PAUSE_YMD
	 *		 	サービス休止理由コード				SVC_PAUSE_RSN_CD
	 *		 	サービス休止理由メモ				SVC_PAUSE_RSN_MEMO
	 *		 	サービス休止解除年月日				SVC_PAUSE_RLS_YMD
	 *		 	サービス休止解除理由コード				SVC_PAUSE_RLS_RSN_CD
	 *		 	サービス休止解除理由メモ				SVC_PAUSE_RLS_RSN_MEMO
	 *		 	サービス終了年月日時分秒				SVC_END_DTM
	 *		 	サービス課金終了年月日				SVC_CHRG_ENDYMD
	 *		 	サービス解約年月日				SVC_DSL_YMD
	 *		 	サービス解約理由コード				SVC_DLRE_CD
	 *		 	サービス解約理由メモ				SVC_DLRE_MEMO
	 *		 	解約担当ユーザーＩＤ				DSL_TNT_USER_ID
	 *		 	サービス解約手続完了フラグ				SVC_DSL_TTDKI_FIN_FLG
	 *		 	回復年月日				KAIHK_YMD
	 *		 	サービスキャンセル取消年月日				SVC_CANCEL_CL_YMD
	 *		 	サービス解約取消年月日				SVC_DSL_CL_YMD
	 *		 	課金開始年月日補正有無				CHRG_STA_YMD_HOSEI_UM
	 *		 	サービス休止課金開始年月日				SVC_PAUSE_CHRG_STA_YMD
	 *		 	オプションサービス契約引継発生年月日				OP_SVC_KEI_HKHASYMD
	 *		 	違約金発生コード				PNLTY_HASSEI_CD
	 *		 	異動区分				IDO_DIV
	 *		 	照査解約完了コード				SHOSA_DSL_FIN_CD
	 *		 	備考				BIKO
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_OP_SVC_KEI_PKINSERT(Object[] setParam) throws Exception
	{
		int idx = 0;
		
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("OP_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("GENE_ADD_DTM", setParam[idx++]);
		setMap.setValue("OP_SVC_KEI_STAT", setParam[idx++]);
		setMap.setValue("OP_SVC_CD", setParam[idx++]);
		setMap.setValue("PCRS_CD", setParam[idx++]);
		setMap.setValue("PPLAN_CD", setParam[idx++]);
		setMap.setValue("OYA_KEI_SKBT_CD", setParam[idx++]);
		setMap.setValue("SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("SVC_KEI_UCWK_NO", setParam[idx++]);
		// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
		setMap.setValue("HOJIN_SVC_KEI_UK_NO", setParam[idx++]);  // 法人サービス契約受付番号
		// ANK-0571-00-00 ADD END
		setMap.setValue("SYSID", setParam[idx++]);
		setMap.setValue("MSKM_DTL_NO", setParam[idx++]);
		setMap.setValue("FTRIAL_KANYU_YMD", setParam[idx++]);
		setMap.setValue("FTRIAL_PRD_ENDYMD", setParam[idx++]);
		setMap.setValue("HONKANYU_YMD", setParam[idx++]);
		setMap.setValue("HONKANYU_IKO_KIGEN_YMD", setParam[idx++]);
		setMap.setValue("SVC_USE_STA_KIBO_YMD", setParam[idx++]);
		setMap.setValue("RSV_TSTA_KIBO_YMD", setParam[idx++]);
		setMap.setValue("OP_SVC_KEI_KZKWRK_REQYMD", setParam[idx++]);
		setMap.setValue("SHOSA_YMD", setParam[idx++]);
		setMap.setValue("SHOSA_CL_YMD", setParam[idx++]);
		setMap.setValue("SKEKKA_SEND_CD", setParam[idx++]);
		setMap.setValue("KEI_CNC_YMD", setParam[idx++]);
		setMap.setValue("RSV_APLY_YMD", setParam[idx++]);
		setMap.setValue("RSV_CL_YMD", setParam[idx++]);
		setMap.setValue("RSV_APLY_CD", setParam[idx++]);
		setMap.setValue("PLAN_STAYMD", setParam[idx++]);
		setMap.setValue("PLAN_ENDYMD", setParam[idx++]);
		setMap.setValue("PLAN_CHRG_STAYMD", setParam[idx++]);
		setMap.setValue("PLAN_CHRG_ENDYMD", setParam[idx++]);
		setMap.setValue("PLAN_END_SBT_CD", setParam[idx++]);
		setMap.setValue("SVC_CANCEL_YMD", setParam[idx++]);
		setMap.setValue("SVC_CANCEL_RSN_CD", setParam[idx++]);
		setMap.setValue("SVC_STAYMD", setParam[idx++]);
		setMap.setValue("SVC_STA_HMS", setParam[idx++]);
		// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
		setMap.setValue("DSP_SVCTK_STAYMD", setParam[idx++]);  // 法人サービス契約受付番号
		// ANK-0571-00-00 ADD END
		setMap.setValue("SVC_CHRG_STAYMD", setParam[idx++]);
		setMap.setValue("SVC_STP_YMD", setParam[idx++]);
		setMap.setValue("SVC_STP_RSN_CD", setParam[idx++]);
		setMap.setValue("SVC_STP_RLS_YMD", setParam[idx++]);
		setMap.setValue("SVC_STP_RLS_RSN_CD", setParam[idx++]);
		setMap.setValue("PAUSE_STP_CD", setParam[idx++]);
		setMap.setValue("SVC_PAUSE_YMD", setParam[idx++]);
		setMap.setValue("SVC_PAUSE_RSN_CD", setParam[idx++]);
		setMap.setValue("SVC_PAUSE_RSN_MEMO", setParam[idx++]);
		setMap.setValue("SVC_PAUSE_RLS_YMD", setParam[idx++]);
		setMap.setValue("SVC_PAUSE_RLS_RSN_CD", setParam[idx++]);
		setMap.setValue("SVC_PAUSE_RLS_RSN_MEMO", setParam[idx++]);
		setMap.setValue("SVC_ENDYMD", setParam[idx++]);
		setMap.setValue("SVC_END_HMS", setParam[idx++]);
		setMap.setValue("SVC_CHRG_ENDYMD", setParam[idx++]);
		setMap.setValue("SVC_DSL_YMD", setParam[idx++]);
		setMap.setValue("SVC_DLRE_CD", setParam[idx++]);
		setMap.setValue("SVC_DLRE_MEMO", setParam[idx++]);
		setMap.setValue("DSL_TNT_USER_ID", setParam[idx++]);
		setMap.setValue("SVC_DSL_TTDKI_FIN_FLG", setParam[idx++]);
		setMap.setValue("KAIHK_YMD", setParam[idx++]);
		setMap.setValue("SVC_CANCEL_CL_YMD", setParam[idx++]);
		setMap.setValue("SVC_DSL_CL_YMD", setParam[idx++]);
		setMap.setValue("CHRG_STA_YMD_HOSEI_UM", setParam[idx++]);
		setMap.setValue("SVC_PAUSE_CHRG_STA_YMD", setParam[idx++]);
		setMap.setValue("OP_SVC_KEI_HKHASYMD", setParam[idx++]);
		setMap.setValue("PNLTY_HASSEI_CD", setParam[idx++]);
		setMap.setValue("IDO_DIV", setParam[idx++]);
		setMap.setValue("SHOSA_DSL_FIN_CD", setParam[idx++]);
		setMap.setValue("SVCTK_BUT_DEL_TRN_JSSI_DTM", 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++]);
	
		// DBアクセスを実行します
		db_KK_T_OP_SVC_KEI.insertByPrimaryKeys(setMap);
	}

	// OM-2014-0000989 2014/03/18 start
	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SBOP_SVC_KEI_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("OP_SVC_KEI_NO", setParam[0]);
		setMap.setValue("SBOP_SVC_KEI_NO", setParam[1]);
		setMap.setValue("GENE_ADD_DTM", setParam[2]);
		setMap.setValue("SBOP_SVC_KEI_STAT", setParam[3]);
		setMap.setValue("SBOP_SVC_CD", setParam[4]);
		setMap.setValue("PCRS_CD", setParam[5]);
		setMap.setValue("PPLAN_CD", setParam[6]);
		setMap.setValue("MSKM_DTL_NO", setParam[7]);
		setMap.setValue("FTRIAL_KANYU_YMD", setParam[8]);
		setMap.setValue("FTRIAL_PRD_ENDYMD", setParam[9]);
		setMap.setValue("HONKANYU_YMD", setParam[10]);
		setMap.setValue("HONKANYU_IKO_KIGEN_YMD", setParam[11]);
		setMap.setValue("SVC_USE_STA_KIBO_YMD", setParam[12]);
		setMap.setValue("RSV_TSTA_KIBO_YMD", setParam[13]);
		setMap.setValue("SBOP_SVC_KEI_KZKWRK_REQYMD", setParam[14]);
		setMap.setValue("SHOSA_YMD", setParam[15]);
		setMap.setValue("SHOSA_CL_YMD", setParam[16]);
		setMap.setValue("KEI_CNC_YMD", setParam[17]);
		setMap.setValue("RSV_APLY_YMD", setParam[18]);
		setMap.setValue("RSV_CL_YMD", setParam[19]);
		setMap.setValue("RSV_APLY_CD", setParam[20]);
		setMap.setValue("PLAN_STAYMD", setParam[21]);
		setMap.setValue("PLAN_ENDYMD", setParam[22]);
		setMap.setValue("PLAN_CHRG_STAYMD", setParam[23]);
		setMap.setValue("PLAN_CHRG_ENDYMD", setParam[24]);
		setMap.setValue("PLAN_END_SBT_CD", setParam[25]);
		setMap.setValue("SVC_CANCEL_YMD", setParam[26]);
		setMap.setValue("SVC_CANCEL_RSN_CD", setParam[27]);
		setMap.setValue("SVC_STAYMD", setParam[28]);
		setMap.setValue("DSP_SVCTK_STAYMD", setParam[29]);
		setMap.setValue("SVC_CHRG_STAYMD", setParam[30]);
		setMap.setValue("SVC_STP_YMD", setParam[31]);
		setMap.setValue("SVC_STP_RSN_CD", setParam[32]);
		setMap.setValue("SVC_STP_RLS_YMD", setParam[33]);
		setMap.setValue("SVC_STP_RLS_RSN_CD", setParam[34]);
		setMap.setValue("PAUSE_STP_CD", setParam[35]);
		setMap.setValue("SVC_PAUSE_YMD", setParam[36]);
		setMap.setValue("SVC_PAUSE_RSN_CD", setParam[37]);
		setMap.setValue("SVC_PAUSE_RSN_MEMO", setParam[38]);
		setMap.setValue("SVC_PAUSE_RLS_YMD", setParam[39]);
		setMap.setValue("SVC_PAUSE_RLS_RSN_CD", setParam[40]);
		setMap.setValue("SVC_PAUSE_RLS_RSN_MEMO", setParam[41]);
		setMap.setValue("SVC_ENDYMD", setParam[42]);
		setMap.setValue("SVC_CHRG_ENDYMD", setParam[43]);
		setMap.setValue("SVC_DSL_YMD", setParam[44]);
		setMap.setValue("SVC_DLRE_CD", setParam[45]);
		setMap.setValue("SVC_DLRE_MEMO", setParam[46]);
		setMap.setValue("SVC_DSL_TTDKI_FIN_FLG", setParam[47]);
		setMap.setValue("KAIHK_YMD", setParam[48]);
		setMap.setValue("SVC_CANCEL_CL_YMD", setParam[49]);
		setMap.setValue("SVC_DSL_CL_YMD", setParam[50]);
		setMap.setValue("SKEKKA_SEND_CD", setParam[51]);
		setMap.setValue("CHRG_STA_YMD_HOSEI_UM", setParam[52]);
		setMap.setValue("SVC_PAUSE_CHRG_STA_YMD", setParam[53]);
		setMap.setValue("PNLTY_HASSEI_CD", setParam[54]);
		setMap.setValue("IDO_DIV", setParam[55]);
		setMap.setValue("SHOSA_DSL_FIN_CD", setParam[56]);
		setMap.setValue("ADD_DTM", setParam[57]);
		setMap.setValue("ADD_OPEACNT", setParam[58]);
		setMap.setValue("UPD_DTM", setParam[59]);
		setMap.setValue("UPD_OPEACNT", setParam[60]);
		setMap.setValue("DEL_DTM", setParam[61]);
		setMap.setValue("DEL_OPEACNT", setParam[62]);
		setMap.setValue("MK_FLG", setParam[63]);
	
		// DBアクセスを実行します
		db_KK_T_SBOP_SVC_KEI.insertByPrimaryKeys(setMap);
	}
	// OM-2014-0000989 2014/03/18 end

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	オプションサービス契約番号				OP_SVC_KEI_NO
	 *		 	世代登録年月日時分秒				GENE_ADD_DTM
	 *		 	希望メールアドレス１				KIBO_MLAD_1
	 *		 	希望メールアドレス２				KIBO_MLAD_2
	 *		 	希望メールアドレス３				KIBO_MLAD_3
	 *		 	マルチセッション用初期認証ＩＤパスワード				MLTISE_SHK_NINSHO_ID_PWD
	 *		 	マルチセッション用認証ＩＤ				MLTISE_NINSHO_ID
	 *		 	マルチセッション用認証ＩＤパスワード				MLTISE_NINSHO_ID_PWD
	 *		 	固定ＩＰアドレス				KOTEI_IP_AD
	 *		 	ネットマスク				NETMASK
	 *		 	初期ＰＯＰパスワード				SHK_POP_PWD
	 *		 	ＰＯＰＩＤ				POP_ID
	 *		 	ＰＯＰパスワード				POP_PWD
	 *		 	メールアドレス				MLAD
	 *		 	メールアドレス変更年月日				MLAD_CHGE_YMD
	 *		 	容量				CAPA
	 *		 	初期ＷｅｂＩＤパスワード				SHK_WEB_ID_PWD
	 *		 	ＷｅｂＩＤ				WEB_ID
	 *		 	ＷｅｂＩＤパスワード				WEB_ID_PWD
	 *		 	ＵＲＬ（ドメイン）				URL_DOMAIN
	 *		 	ＵＲＬ（アカウント）				URL_ACCOUNT
	 *		 	メーリングリスト名				MLLIST_NM
	 *		 	メーリングリスト呼称				MLLIST_KOSHO
	 *		 	メーリングリスト公開要否				MLLIST_KOKAI_YH
	 *		 	メーリングリスト最大ユーザー数				MLLIST_MAX_USER_CNT
	 *		 	メーリングリスト管理者メールアドレス				MLLIST_KRISHA_MLAD
	 *		 	独自ドメイン名				DOKUJI_DOMAIN_NM
	 *		 	ホスティングメールアカウント数				HOSML_ACCOUNT_CNT
	 *		 	ホスティングメールボックス総容量				HOSML_BOX_CAPA
	 *		 	ホスティングメール管理者ＩＤ				HOSML_KRISHA_ID
	 *		 	ホスティング初期メール管理者ＩＤパスワード				HOSTING_SHKM_KRISHA_ID_PWD
	 *		 	ホスティングメール管理者ＰＯＰＩＤ				HOSML_KRISHA_POP_ID
	 *		 	ホスティング初期メール管理者ＰＯＰＩＤパスワード				HOSTING_SHKM_KRISHA_POP_PWD
	 *		 	ホスティングメール管理者メールアドレス				HOSML_KRISHA_MLAD
	 *		 	ホスティングメール管理者メールボックス容量				HOSML_KRISHA_MAIL_BOX_CAPA
	 *		 	ダイヤルパッドＩＤ				DPAD_ID
	 *		 	ダイヤルパッドＩＳＰＩＤ				DPAD_ISP_ID
	 *		 	ダイヤルパッドＭＡＰＩＤ				DPAD_MAPID
	 *		 	ダイヤルパッドＰＩＮ				DPAD_PIN
	 *		 	ダイヤルパッドメールアドレス				DPAD_MLAD
	 *		 	ダイヤルパッドＩＤ公開要否				DPAD_ID_KOKAI_YH
	 *		 	ＶｏＩＰユーザーＩＤ				VOIP_USER_ID
	 *		 	ＶｏＩＰ電話番号				VOIP_TELNO
	 *		 	ＤＮＳ設定コード				DNS_SETTE_CD
	 *		 	メールゲートウェイ管理者ＩＤ				MAIL_GW_KRISHA_ID
	 *		 	メールゲートウェイ管理者ＩＤパスワード				MAIL_GW_KRISHA_ID_PWD
	 *		 	メールゲートウェイ管理者メールアドレス				MAIL_GW_KRISHA_MLAD
	 *		 	メールゲートウェイ受信メールサーバーＩＰアドレス				MAIL_GW_RCV_MSERVER_IP_AD
	 *		 	メールゲートウェイ送信メールサーバーＩＰアドレス				MAIL_GW_SEND_MSERVER_IP_AD
	 *		 	メールゲートウェイアカウント数				ML_GW_ACCOUNT_CNT
	 *		 	公衆網電話番号				KOSHUMO_TELNO
	 *		 	スポット有害サイトブロック対象ＳＹＳＩＤ				SPOT_YGSITEBLCK_TRGT_SYSID
	 *		 	ＳＩＰ登録状態コード				SIP_ADD_STAT_CD
	 *		 	サービス個別設定連絡先メールアドレス				SVC_KBT_SET_RRKS_MLAD
	 *		 	通話明細公開要否				TUWA_DTL_KOKAI_YH
	 *		 	予約適用コード				RSV_APLY_CD
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_OPSVKEI_ISP_PKINSERT(Object[] setParam) throws Exception
	{
		int idx = 0;
		
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("OP_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("GENE_ADD_DTM", setParam[idx++]);
		setMap.setValue("KIBO_ML_ACCOUNT_1", setParam[idx++]);
		setMap.setValue("KIBO_ML_ACCOUNT_2", setParam[idx++]);
		setMap.setValue("KIBO_ML_ACCOUNT_3", setParam[idx++]);
		setMap.setValue("MLTISE_SESSION_CNT", setParam[idx++]);
		setMap.setValue("MLTISE_SHK_NINSHO_ID_PWD", setParam[idx++]);
		setMap.setValue("MLTISE_NINSHO_ID", setParam[idx++]);
		setMap.setValue("MLTISE_NINSHO_ID_PWD", setParam[idx++]);
		setMap.setValue("KOTEI_IP_AD", setParam[idx++]);
		setMap.setValue("NETMASK", setParam[idx++]);
		setMap.setValue("SHK_POP_ID_PWD", setParam[idx++]);
		setMap.setValue("POP_ID", setParam[idx++]);
		setMap.setValue("MLAD", setParam[idx++]);
		setMap.setValue("MLAD_CHGE_YMD", setParam[idx++]);
		setMap.setValue("CAPA", setParam[idx++]);
		setMap.setValue("SHK_WEB_ID_PWD", setParam[idx++]);
		setMap.setValue("WEB_ID", setParam[idx++]);
		setMap.setValue("URL_DOMAIN", setParam[idx++]);
		setMap.setValue("URL_ACCOUNT", setParam[idx++]);
		setMap.setValue("MLLIST_NM", setParam[idx++]);
		setMap.setValue("MLLIST_KOSHO", setParam[idx++]);
		setMap.setValue("MLLIST_KOKAI_YH", setParam[idx++]);
		setMap.setValue("MLLIST_MAX_USER_CNT", setParam[idx++]);
		setMap.setValue("MLLIST_KRISHA_MLAD", setParam[idx++]);
		setMap.setValue("DOKUJI_DOMAIN_NM", setParam[idx++]);
		setMap.setValue("HOSML_ACCOUNT_CNT", setParam[idx++]);
		setMap.setValue("HOSML_BOX_CAPA", setParam[idx++]);
		setMap.setValue("HOSML_KRISHA_ID", setParam[idx++]);
		setMap.setValue("HOSTING_SHKM_KRISHA_ID_PWD", setParam[idx++]);
		setMap.setValue("HOSML_KRISHA_POP_ID", setParam[idx++]);
		setMap.setValue("HOS_SHKM_KRISHA_POP_ID_PWD", setParam[idx++]);
		setMap.setValue("HOSML_KRISHA_MLAD", setParam[idx++]);
		setMap.setValue("HOSML_KRISHA_MAIL_BOX_CAPA", setParam[idx++]);
		setMap.setValue("DPAD_ID", setParam[idx++]);
		setMap.setValue("DPAD_ISP_ID", setParam[idx++]);
		setMap.setValue("DPAD_MAPID", setParam[idx++]);
		setMap.setValue("DPAD_PIN", setParam[idx++]);
		setMap.setValue("DPAD_MLAD", setParam[idx++]);
		setMap.setValue("DPAD_ID_KOKAI_YH", setParam[idx++]);
		setMap.setValue("DUPCON_NINSHO_ID", setParam[idx++]);
		setMap.setValue("VOIP_USER_ID", setParam[idx++]);
		setMap.setValue("VOIP_TELNO", setParam[idx++]);
		setMap.setValue("DNS_SETTE_CD", setParam[idx++]);
		setMap.setValue("MAIL_GW_KRISHA_ID", setParam[idx++]);
		setMap.setValue("MAIL_GW_KRISHA_ID_PWD", setParam[idx++]);
		setMap.setValue("MAIL_GW_KRISHA_MLAD", setParam[idx++]);
		setMap.setValue("MAIL_GW_RCV_MSERVER_IP_AD", setParam[idx++]);
		setMap.setValue("MAIL_GW_SEND_MSERVER_IP_AD", setParam[idx++]);
		setMap.setValue("ML_GW_ACCOUNT_CNT", setParam[idx++]);
		setMap.setValue("KOSHUMO_TELNO", setParam[idx++]);
		setMap.setValue("SPOT_YGSITEBLCK_TRGT_SYSID", setParam[idx++]);
		setMap.setValue("SIP_ADD_STAT_CD", setParam[idx++]);
		setMap.setValue("SVC_KBT_SET_RRKS_MLAD", setParam[idx++]);
		setMap.setValue("TUWA_DTL_KOKAI_YH", setParam[idx++]);
		setMap.setValue("RSV_APLY_CD", setParam[idx++]);
		setMap.setValue("TSYRN_SVKEI_CD_SEQ", setParam[idx++]);
		setMap.setValue("DOMAIN_DAIKO_SHINSEI_UM", setParam[idx++]);
		setMap.setValue("EOHNT_DAIKO_SHINSEI_UM", setParam[idx++]);
		setMap.setValue("WISH_OWNR_ID", setParam[idx++]);
		setMap.setValue("IPV6_AD_IFID", setParam[idx++]);
		// ANK-0571-00-00：オプションサービス開始日変更対応 ADD START
		setMap.setValue("FMTCEL_JGS_CD", setParam[idx++]); // フェムトセル事業者コード
		setMap.setValue("FMTCEL_JGS_USE_CD", setParam[idx++]); // フェムトセル事業者使用コード
		setMap.setValue("FMTCEL_NINSHO_ID", setParam[idx++]); // フェムトセル用認証ID
		setMap.setValue("FMTCEL_NINSHO_ID_PWD", setParam[idx++]); //フェムトセル用認証IDパスワード
		// ANK-0571-00-00 ADD END
		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++]);
	
		// DBアクセスを実行します
		db_KK_T_OPSVKEI_ISP.insertByPrimaryKeys(setMap);
	}

	// OM-2014-0000989 2014/03/18 start
	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。
	 * 
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SBOPSVKEI_ISP_PKINSERT(Object[] setParam) throws Exception
	{
		int idx = 0;
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("OP_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("SBOP_SVC_KEI_NO", setParam[idx++]);
		setMap.setValue("GENE_ADD_DTM", setParam[idx++]);
		setMap.setValue("ADD_CAPA", setParam[idx++]);
		setMap.setValue("ALIAS", setParam[idx++]);
		setMap.setValue("ALIAS_CHGE_YMD", setParam[idx++]);
		setMap.setValue("RSV_APLY_CD", 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++]);
	
		// DBアクセスを実行します
		db_KK_T_SBOPSVKEI_ISP.insertByPrimaryKeys(setMap);
	}
	// OM-2014-0000989 2014/03/18 end

	/**
	 * PK(ＰＫ　検索)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で条件マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	OP_SVC_KEI_NO
	 *		 	GENE_ADD_DTM
	 * </pre>
	 * <p>
	 * @param whereParam 条件項目の値。
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private JBSbatCommonDBInterface executeKK_T_OP_SVC_KEI_PKSELECT(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("OP_SVC_KEI_NO", whereParam[0]);
		whereMap.setValue("GENE_ADD_DTM", whereParam[1]);

		// DBアクセスを実行します
		return db_KK_T_OP_SVC_KEI.selectByPrimaryKeys(whereMap);
	}

	/**
	 * PK(ＰＫ　検索)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で条件マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	OP_SVC_KEI_NO
	 *		 	GENE_ADD_DTM
	 * </pre>
	 * <p>
	 * @param whereParam 条件項目の値。
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private JBSbatCommonDBInterface executeKK_T_OPSVKEI_ISP_PKSELECT(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("OP_SVC_KEI_NO", whereParam[0]);
		whereMap.setValue("GENE_ADD_DTM", whereParam[1]);

		// DBアクセスを実行します
		return db_KK_T_OPSVKEI_ISP.selectByPrimaryKeys(whereMap);
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	進捗番号				PRG_NO
	 *		 	申込明細番号				MSKM_DTL_NO
	 *		 	請求契約番号				SEIKY_KEI_NO
	 *		 	請求方法番号（口座）				SEIKY_WAY_NO_KOZA
	 *		 	請求方法番号（クレジットカード）				SEIKY_WAY_NO_CRECARD
	 *		 	サービス契約番号				SVC_KEI_NO
	 *		 	サービス契約内訳番号				SVC_KEI_UCWK_NO
	 *		 	サービス契約回線内訳番号				SVC_KEI_KAISEN_UCWK_NO
	 *		 	機器提供サービス契約番号				KKTK_SVC_KEI_NO
	 *		 	オプションサービス契約番号				OP_SVC_KEI_NO
	 *		 	請求オプションサービス契約番号				SEIOPSVC_KEI_NO
	 *		 	サブオプションサービス契約番号				SBOP_SVC_KEI_NO
	 *		 	割引サービス契約番号				WRIB_SVC_KEI_NO
	 *		 	異動区分				IDO_DIV
	 *		 	異動年月日時分秒				IDO_DTM
	 *		 	進捗ステータス				PRG_STAT
	 *		 	進捗年月日時分秒				PRG_DTM
	 *		 	進捗メモ				PRG_MEMO
	 *		 	進捗特記事項１				PRG_TKJK_1
	 *		 	進捗特記事項２				PRG_TKJK_2
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_PRG_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("PRG_NO", setParam[0]);
		setMap.setValue("MSKM_DTL_NO", setParam[1]);
		setMap.setValue("SEIKY_KEI_NO", setParam[2]);
		setMap.setValue("SEIKY_WAY_NO_KOZA", setParam[3]);
		setMap.setValue("SEIKY_WAY_NO_CRECARD", setParam[4]);
		setMap.setValue("SVC_KEI_NO", setParam[5]);
		setMap.setValue("SVC_KEI_UCWK_NO", setParam[6]);
		setMap.setValue("SVC_KEI_KAISEN_UCWK_NO", setParam[7]);
		setMap.setValue("KKTK_SVC_KEI_NO", setParam[8]);
		setMap.setValue("OP_SVC_KEI_NO", setParam[9]);
		setMap.setValue("SEIOPSVC_KEI_NO", setParam[10]);
		setMap.setValue("SBOP_SVC_KEI_NO", setParam[11]);
		setMap.setValue("WRIB_SVC_KEI_NO", setParam[12]);
		setMap.setValue("IDO_DIV", setParam[13]);
		setMap.setValue("IDO_DTM", setParam[14]);
		setMap.setValue("PRG_STAT", setParam[15]);
		setMap.setValue("PRG_DTM", setParam[16]);
		setMap.setValue("PRG_MEMO", setParam[17]);
		setMap.setValue("PRG_TKJK_1", setParam[18]);
		setMap.setValue("PRG_TKJK_2", setParam[19]);
		setMap.setValue("ADD_DTM", setParam[20]);
		setMap.setValue("ADD_OPEACNT", setParam[21]);
		setMap.setValue("UPD_DTM", setParam[22]);
		setMap.setValue("UPD_OPEACNT", setParam[23]);
		setMap.setValue("DEL_DTM", setParam[24]);
		setMap.setValue("DEL_OPEACNT", setParam[25]);
		setMap.setValue("MK_FLG", setParam[26]);
		setMap.setValue("ADD_UNYO_YMD", setParam[27]);
		setMap.setValue("ADD_TRN_ID", setParam[28]);
		setMap.setValue("UPD_UNYO_YMD", setParam[29]);
		setMap.setValue("UPD_TRN_ID", setParam[30]);
		setMap.setValue("DEL_UNYO_YMD", setParam[31]);
		setMap.setValue("DEL_TRN_ID", setParam[32]);
	
		// DBアクセスを実行します
		db_KK_T_PRG.insertByPrimaryKeys(setMap);
	}

	/**
	 * SQLKEY(KK_SELECT_144)で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_144(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_144);
	}

	/**
	 * SQLKEY(KK_SELECT_273)で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_273(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_273);
	}

	/**
	 * 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_OP_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());

		// DBアクセスを実行します
		db_KK_M_OP_SVC.selectBySqlDefine(paramList, KK_M_OP_SVC_KK_SELECT_004);
	}
	
	/**
	 * SQLKEY(KK_SELECT_003)で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_PCRS_KK_SELECT_003(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_PCRS.selectBySqlDefine(paramList, KK_M_PCRS_KK_SELECT_003);
	}
	
	/**
	 * SQLKEY(KK_SELECT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	SEC.SVC_KEI_NO
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVKEI_EXC_CTRL_KK_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_SVKEI_EXC_CTRL.selectBySqlDefine(paramList, KK_T_SVKEI_EXC_CTRL_KK_SELECT_001);
	}

	/**
	 * SQLKEY(KK_UPDATE_002)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	LAST_UPD_DTM
	 *		 	SVC_KEI_NO
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVKEI_EXC_CTRL_KK_UPDATE_002(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_SVKEI_EXC_CTRL.executeBySqlDefine(paramList, KK_T_SVKEI_EXC_CTRL_KK_UPDATE_002);
	}
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
}
