/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom					 *
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatSCEMChrgInfDataTrkm
*	ソースファイル名	：JBSbatSCEMChrgInfDataTrkm.java
*	作成者				：富士通　
*	作成日				：2011年06月24日
*＜機能概要＞
*　EM課金情報データ取込部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2011/06/24   富士通		新規作成
*	v8.00.00	2014/03/20   FJ)阪口	【OM-2014-0001030】EM契約者とサービス契約が１対１でない
*	v8.00.01	2014/04/24   FJ)阪口	【OM-2014-0001630】精算対象となるべきサービス契約情報が対象とならない
*	v8.00.02	2014/05/27   FJ)阪口	【OM-2014-0001947】EM課金情報取込みにてオーダ設定登録
*********************************************************************/
package eo.business.service;

import java.util.HashMap;
import java.util.ArrayList;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JCCBatCommon;
import eo.business.common.JSCBatCommon;
import eo.business.util.file.JBSbatSCIFE027;
import eo.business.util.table.JBSbatKK_T_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_SVC_KEI_EOMOBA;
import eo.common.constant.JSCStrConstant;
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.application.JBSbatBusinessException;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.util.JBSbatCheckUtil;
import eo.framework.util.JBSbatDateUtil;
import eo.framework.util.JBSbatOracleSeqUtil;
import eo.framework.util.JBSbatStringUtil;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatSCEMChrgInfDataTrkm extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(EMオーダ送受信情報)*/
	private static final String D_TBL_NAME_SC_T_EM_ODR_SRINF = "SC_T_EM_ODR_SRINF";

	/** テーブル(モバイルオーダ)*/
	private static final String D_TBL_NAME_SC_T_MOBILE_ORDER = "SC_T_MOBILE_ORDER";

	/** テーブル(サービス契約排他制御)*/
	private static final String D_TBL_NAME_KK_T_SVKEI_EXC_CTRL = "KK_T_SVKEI_EXC_CTRL";

	/** テーブル(サービス契約)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI = "KK_T_SVC_KEI";

	/** テーブル(サービス契約＜ｅｏモバイル＞)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI_EOMOBA = "KK_T_SVC_KEI_EOMOBA";

	/** テーブル(オーダ情報作成ワーク)*/
	private static final String D_TBL_NAME_KK_T_ODR_INF_SKSI_WK = "KK_T_ODR_INF_SKSI_WK";

	/** テーブル(オーダ発行条件)*/
	private static final String D_TBL_NAME_KK_T_ODR_HAKKO_JOKEN = "KK_T_ODR_HAKKO_JOKEN";

	/** SQL定義キー(SC_UPDATE_002)*/
	private static final String SC_T_EM_ODR_SRINF_SC_UPDATE_002 = "SC_UPDATE_002";

	/** SQL定義キー(SC_UPDATE_002)*/
	private static final String SC_T_MOBILE_ORDER_SC_UPDATE_002 = "SC_UPDATE_002";

	/** SQL定義キー(SC_SELECT_001)*/
	private static final String SC_T_EM_ODR_SRINF_SC_SELECT_001 = "SC_SELECT_001";

	/** SQL定義キー(SC_SELECT_002)*/
	private static final String SC_T_MOBILE_ORDER_SC_SELECT_002 = "SC_SELECT_002";

	/** SQL定義キー(SC_SELECT_002)*/
	private static final String KK_T_SVC_KEI_SC_SELECT_002 = "SC_SELECT_002";
	
	/** SQL定義キー(SC_SELECT_001)*/
	private static final String KK_T_SVC_KEI_EOMOBA_SC_SELECT_001 = "SC_SELECT_001";

	/** SQL定義キー(SC_SELECT_003)*/
	private static final String KK_T_SVC_KEI_SC_SELECT_003 = "SC_SELECT_003";

	/** テーブルアクセスクラス(EMオーダ送受信情報)*/
	private JBSbatSQLAccess db_SC_T_EM_ODR_SRINF = null;

	/** テーブルアクセスクラス(モバイルオーダ)*/
	private JBSbatSQLAccess db_SC_T_MOBILE_ORDER = null;

	/** テーブルアクセスクラス(サービス契約排他制御)*/
	private JBSbatSQLAccess db_KK_T_SVKEI_EXC_CTRL = null;

	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI = null;

	/** テーブルアクセスクラス(サービス契約＜ｅｏモバイル＞)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI_EOMOBA = null;
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	
	/** テーブル(ＵＱオーダ)*/
	private static final String D_TBL_NAME_SC_T_UQ_ORDER = "SC_T_UQ_ODR_SRINF";

	/** テーブル(ＳＰＯＴオーダ送受信情報)*/
	private static final String D_TBL_NAME_SC_T_SPOT_ODR_SRINF = "SC_T_SPOT_ODR_SRINF";
	
	/** テーブルアクセスクラス(オーダ情報作成ワーク)*/
	private JBSbatSQLAccess db_KK_T_ODR_INF_SKSI_WK = null;
	
	/** テーブルアクセスクラス(オーダ発行条件)*/
	private JBSbatSQLAccess db_KK_T_ODR_HAKKO_JOKEN = null;
	
	/** テーブルアクセスクラス(ＵＱオーダ送受信情報) */
	private JBSbatSQLAccess db_SC_T_UQ_ODR_SRINF = null;
	
	/** テーブルアクセスクラス(ＳＰＯＴオーダ送受信情報) */
	private JBSbatSQLAccess db_SC_T_SPOT_ODR_SRINF = null;
	
	/**
	 * オーダ発行条件番号(オーダ情報作成ワーク・オーダ発行条件書込用)
	 */
	protected String odrHakkoJokenNo = "";
	
	/**
	 * サービス契約番号(オーダ情報作成ワーク・オーダ発行条件書込用)
	 */
	protected String odrSvcKeiNo = "";
	
	/**
	 * 世代登録年月日時分秒(オーダ情報作成ワーク・オーダ発行条件書込用)
	 */
	protected String odrGeneAddDtm = "";

	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_SC_T_EM_ODR_SRINF = new JBSbatSQLAccess(commonItem, D_TBL_NAME_SC_T_EM_ODR_SRINF);
		db_SC_T_MOBILE_ORDER = new JBSbatSQLAccess(commonItem, D_TBL_NAME_SC_T_MOBILE_ORDER);
		db_KK_T_SVKEI_EXC_CTRL = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVKEI_EXC_CTRL);
		db_KK_T_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
		db_KK_T_SVC_KEI_EOMOBA = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI_EOMOBA);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
		
		db_KK_T_ODR_INF_SKSI_WK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ODR_INF_SKSI_WK);
		db_KK_T_ODR_HAKKO_JOKEN = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ODR_HAKKO_JOKEN);
		db_SC_T_UQ_ODR_SRINF = new JBSbatSQLAccess(commonItem, D_TBL_NAME_SC_T_UQ_ORDER);
		db_SC_T_SPOT_ODR_SRINF = new JBSbatSQLAccess(commonItem, D_TBL_NAME_SC_T_SPOT_ODR_SRINF);
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		// 入力レコードに異常があった場合
		if(inMap.isInputErrorFlg())
		{
			// エラー処理
			throw new JBSbatBusinessError("ESCB0060CE");
		}
		// 属性チェックを行う。 現行システムで課金開始日だけをチェックしているので、
		// ＥＭ設定年月日２だけ、属性チェックを行う。
		HashMap<String , String> hm = new HashMap<String , String>();
		hm.put("TXT-SCIFE027-INF1.SVC_KEI_NO", (String)inMap.get("SVC_KEI_NO"));
		hm.put("TXT-SCIFE027-INF1.EM_SET_YMD_2", (String)inMap.get("EM_SET_YMD_2"));
		if (!isSingleCheckSCIFE027_INF1(inMap.getMap(), hm)) 
		{
			throw new JBSbatBusinessError();
		}
		
		String sodWorkRnkiStat = "";
		String yokyuMtAplSbtCd = "";
		
		// EMオーダ送受信情報
		// パラメータを設定する
		String[] param1 = {
				inMap.getString("SVC_KEI_NO"),				// サービス契約者番号
				inMap.getString("EM_KEISHA_CD"),			// EM契約者コード
				JSCStrConstant.MOBILE_YOKYU_CHRG_UK_RSLT,	// モバイル要求種別コード 課金受付結果(012)を設定
				JSCStrConstant.MK_FLG_YUKO					// 無効フラグ(0)を設定
		};
		// select文実行
		executeSC_T_EM_ODR_SRINF_SC_SELECT_001(param1);
		
		JBSbatCommonDBInterface emSelectData = new JBSbatCommonDBInterface();	
		
		// 検索結果を格納
		emSelectData = this.db_SC_T_EM_ODR_SRINF.selectNext();
		
		// ファイルから読み取った値に対応するレコードがEM送受信情報テーブルに存在するか、
		// 確認する。
		if(null == emSelectData)
		{
			
			// 存在しない場合
			
			// 課金情報の再販事業者様管理コード（サービス契約番号）の退避
			String svcKeiNo = inMap.getString("SVC_KEI_NO");
			
			// EM契約者コードをKEYにサービス契約＜eoモバイル＞よりサービス契約番号を取得する
			String[] eomobaparam = {
					inMap.getString("EM_KEISHA_CD"),	// EM契約者コード
			};
			executeKK_T_SVC_KEI_EOMOBA_SC_SELECT_001(eomobaparam);
			
			JBSbatCommonDBInterface eomobaSelectData = new JBSbatCommonDBInterface();
			
			eomobaSelectData = this.db_KK_T_SVC_KEI_EOMOBA.selectNext();
			
			// サービス契約番号格納用リスト
			ArrayList<String> svcKeiNoList = new ArrayList<String>();
			
			// サービス契約＜eoモバイル＞から取得したのサービス契約番号をリストに格納する
			while(eomobaSelectData != null)
			{
				svcKeiNoList.add(eomobaSelectData.getString(JBSbatKK_T_SVC_KEI_EOMOBA.SVC_KEI_NO));
				eomobaSelectData = this.db_KK_T_SVC_KEI_EOMOBA.selectNext();
			}
			
			// コンシューマ(個人)判断用フラグ
			boolean consFlg = false;
			// サービス契約＜eoモバイル＞更新判断用フラグ
			boolean eomobaUpdFlg = false;
			
			// サービス契約番号格納用リストサイズ取得
			int listSize = svcKeiNoList.size();
			
			if(listSize == 0)
			{
				// サービス契約＜eoモバイル＞からサービス契約番号が取得出来なかった場合、法人と判断する
				consFlg = false;
				eomobaUpdFlg = false;
			}
			else if(listSize == 1)
			{
				// サービス契約＜eoモバイル＞からサービス契約番号が1件取得出来た場合、個人と判断する
				consFlg = true;
				eomobaUpdFlg = true;
				// サービス契約番号を上書きする
				svcKeiNo = svcKeiNoList.get(0);
			}
			else if(("".equals(svcKeiNo) || svcKeiNo == null))
			{
				// サービス契約＜eoモバイル＞からサービス契約番号が2件以上取得出来て
				// 且つ、課金情報の再販事業者様管理コード（サービス契約番号）が未設定の場合
				// 個人(サービス契約＜eoモバイル＞は更新しない)と判断し、ワーニングメッセージを出力する
				consFlg = true;
				eomobaUpdFlg = false;
				
				// ログ出力
				commonItem.getLogPrint().printBusinessErrorLog("ESCB0740KW");
				commonItem.getLogPrint().printBusinessErrorLog("ESCB0750KI");
				commonItem.getLogPrint().printBusinessErrorLog("ESCB0760KI",
						new String[]{inMap.getString("EM_KEISHA_CD")});
			}
			else
			{
				// サービス契約＜eoモバイル＞からサービス契約番号が2件以上取得出来た場合
				// 且つ、課金情報の再販事業者様管理コード（サービス契約番号）が設定されている場合
				for(int i = 0; i < svcKeiNoList.size(); i++)
				{
					if(svcKeiNo.equals(svcKeiNoList.get(i)))
					{
						// サービス契約＜eoモバイル＞に課金情報の再販事業者様管理コードと一致するサービス契約番号が存在する場合、個人と判断する
						consFlg = true;
						eomobaUpdFlg = true;
						// サービス契約番号を上書きする
						svcKeiNo = svcKeiNoList.get(i);
						break;
					}
					else
					{
						// サービス契約＜eoモバイル＞に課金情報の再販事業者様管理コードと一致するサービス契約番号が存在しない場合、法人と判断する
						consFlg = false;
						eomobaUpdFlg = false;
					}
				}
			}
				
			if(consFlg)
			{
				// 個人の場合
				if(eomobaUpdFlg)
				{
					// サービス契約＜eoモバイル＞を更新する場合
					
					// inMapにサービス契約番号を設定する
					inMap.setString("SVC_KEI_NO", svcKeiNo);
					
					// サービス契約.サービス契約ステータスを取得
					String svcKeiStat = getSvcKeiStat(inMap);
					
					// サービス契約ステータスが「サービス提供中」or「休止・中断中」or「停止中」である場合
					if(!"".equals(svcKeiStat) && svcKeiStat != null
							&& (JSCStrConstant.CD00037_SVCTK_CHU.equals(svcKeiStat)
									|| JSCStrConstant.CD00037_KYUSHI_CHUDAN_CHU.equals(svcKeiStat)
									|| JSCStrConstant.CD00037_TEISHI_CHU.equals(svcKeiStat)))
					{
						// オーダ情報作成ワーク登録
						insOdrInfSksiWk();
						
						// オーダ発行条件登録
						insOdrHakkoJoken();
					}
					
					// システム日付の取得
					String sysDateTimeStamp = JCCBatCommon.getSysDateTimeStamp();
					
					// サービス契約＜eoモバイル＞の更新
					updateKK_T_SVC_KEI_EOMOBA(inMap, sysDateTimeStamp);
				}
				
				// 要求元アプリ種別を"B"(Batch)とする
				yokyuMtAplSbtCd = JSCStrConstant.YOKYU_SBT_CD_BATCH;
				
				// SOD業務連携ステータス(004)
				sodWorkRnkiStat = JSCStrConstant.SOD_RNKI_STAT_FIN;
			}
			else
			{
				// 法人の場合
				// 要求元アプリ種別を"C"(Claris)とする
				yokyuMtAplSbtCd = JSCStrConstant.YOKYU_SBT_CD_CLARIS;
				
				// SOD業務連携ステータス(003)
				sodWorkRnkiStat = JSCStrConstant.SOD_RNKI_STAT_WAIT_FIN;
			}
			
			String mobileOrderNo = null;
			String timestamp = JCCBatCommon.getSysDateTimeStamp();
			// モバイルオーダ送受信情報
			mobileOrderNo = insMobileOrder(inMap, timestamp, svcKeiNo, yokyuMtAplSbtCd, sodWorkRnkiStat);
			// EMオーダ送受信情報
			insEmOdrSrif(inMap, mobileOrderNo, timestamp, svcKeiNo, yokyuMtAplSbtCd, sodWorkRnkiStat);
			
			// 処理を抜ける
			return null;
		}
		// モバイルオーダ
		// パラメータを設定する
		String[] param2 = {
				inMap.getString("SVC_KEI_NO"),				//サービス契約者番号
				JSCStrConstant.MOBILE_YOKYU_CHRG_UK_RSLT,	//モバイル要求種別コード 課金受付結果(012)を設定
				JSCStrConstant.MK_FLG_YUKO,					//無効フラグ(0)を設定
		};
		// select文実行
		executeSC_T_MOBILE_ORDER_SC_SELECT_002(param2);
		
		JBSbatCommonDBInterface moSelectData = new JBSbatCommonDBInterface();
		
		// 検索結果を格納
		moSelectData = this.db_SC_T_MOBILE_ORDER.selectNext();
		
		// 更新条件に合致したデータがEMオーダ送受信情報とモバイルオーダの両方に存在する場合
		if((emSelectData != null) && (moSelectData != null))
		{
			sodWorkRnkiStat = "";
			yokyuMtAplSbtCd = emSelectData.getString("YOKYU_MT_APL_SBT_CD");
			//要求元アプリ種別が"C"
			if(JSCStrConstant.YOKYU_SBT_CD_CLARIS.equalsIgnoreCase(yokyuMtAplSbtCd))
			{
				sodWorkRnkiStat = JSCStrConstant.SOD_RNKI_STAT_WAIT_FIN;	// SOD業務連携ステータス(003)
			}
			else
			{
				// データが法人でない場合
				// システム日付の取得
				String sysDateTimeStamp = JCCBatCommon.getSysDateTimeStamp();
				
				// サービス契約＜eoモバイル＞の更新
				updateKK_T_SVC_KEI_EOMOBA(inMap, sysDateTimeStamp);
				
				sodWorkRnkiStat = JSCStrConstant.SOD_RNKI_STAT_FIN;			// SOD業務連携ステータス(004)
			}
			
			// EMオーダ送受信情報更新
			// パラメータの設定
			String[] param3 = {
					inMap.getString("IDO_YMD") + inMap.getString("IDO_HMS") + "000",	// SOD結果登録年月日時分秒
					JSCStrConstant.MOBILE_YOKYU_CHRG_UK_INFO,							// モバイル要求種別コード(013)
					sodWorkRnkiStat,													// SOD業務連携ステータス
					inMap.getString("EM_SET_YMD_2"),									// EM設定年月日2
					JCCBatCommon.getSysDateTimeStamp(),									// 更新年月日時分秒
					commonItem.getBatchUserId(),										// 更新オペレータアカウント
					inMap.getString("SVC_KEI_NO"),										// サービス契約者番号
					inMap.getString("EM_KEISHA_CD"),									// EM契約者コード
					JSCStrConstant.MOBILE_YOKYU_CHRG_UK_RSLT,							// モバイル要求種別コード(012)
					JSCStrConstant.MK_FLG_YUKO											// 無効フラグ(0)
			};
			// UPDATE文実行
			executeSC_T_EM_ODR_SRINF_SC_UPDATE_002(param3);
			
			
			// モバイルオーダ更新
			// パラメータの設定
			String[] param4 = {
					inMap.getString("IDO_YMD") + inMap.getString("IDO_HMS") + "000",	// モバイルオーダ結果取込年月日時分秒
					JSCStrConstant.MOBILE_YOKYU_CHRG_UK_INFO,							// モバイル要求種別コード(013)
					sodWorkRnkiStat,													// SOD業務連携ステータス
					JCCBatCommon.getSysDateTimeStamp(),									// 更新年月日時分秒
					commonItem.getBatchUserId(),										// 更新オペレータアカウント
					inMap.getString("SVC_KEI_NO"),										// サービス契約者番号
					JSCStrConstant.MOBILE_YOKYU_CHRG_UK_RSLT,							// モバイル要求種別コード(012)
					JSCStrConstant.MK_FLG_YUKO											// 無効フラグ(0)
			};
			// UPDATE文実行
			executeSC_T_MOBILE_ORDER_SC_UPDATE_002(param4);
		}
		else
		{
			// エラー処理
			super.logPrint.printBusinessErrorLog("ESCB0100CE",
					new String[] {inMap.getString("SVC_KEI_NO"),
					inMap.getString("EM_KEISHA_CD"),
					D_TBL_NAME_SC_T_MOBILE_ORDER});
			throw new JBSbatBusinessError();
		}
		
		// ファイル出力がないので、nullを返却する
		return null;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_SC_T_EM_ODR_SRINF.close();
		db_SC_T_MOBILE_ORDER.close();
		db_KK_T_SVKEI_EXC_CTRL.close();
		db_KK_T_SVC_KEI.close();
		db_KK_T_SVC_KEI_EOMOBA.close();
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * サービス契約のサービス契約ステータスを取得する<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.ヘッダー部の出力を行います。<br>
	 * </pre>
	 * <p>
	 * @param inMap　入力電文
	 * @return サービス契約ステータス
	 * @throws Exception 
	 */
	private String getSvcKeiStat(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		// サービス契約番号に該当するカレントレコードのサービス契約ステータスを取得する。
		
		String svcKeiStat = "";
		
		Object[] whereParam = new Object[1];
		whereParam = new Object[2];
		whereParam[0] = inMap.getString("SVC_KEI_NO");
		whereParam[1] = this.opeDate;
		
		JBSbatCommonDBInterface svcKeiMap = new JBSbatCommonDBInterface();
		this.executeKK_T_SVC_KEI_SC_SELECT_003(whereParam);
		svcKeiMap = db_KK_T_SVC_KEI.selectNext();
		
		if (null != svcKeiMap)
		{
			// 検索結果より各パラメタを取得する。
			svcKeiStat = svcKeiMap.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT);
			
			odrSvcKeiNo = svcKeiMap.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
			odrGeneAddDtm = svcKeiMap.getString(JBSbatKK_T_SVC_KEI.GENE_ADD_DTM);
		}
		
		return svcKeiStat;
	}

	/**
	 * サービス契約<eoモバイル>の事業者課金開始年月日を更新する<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.ヘッダー部の出力を行います。<br>
	 * </pre>
	 * <p>
	 * @param inMap　入力電文
	 * @param sysDateTimeStamp　システム日時
	 * @throws Exception 
	 */
	private void updateKK_T_SVC_KEI_EOMOBA(JBSbatServiceInterfaceMap inMap, String sysDateTimeStamp) throws Exception
	{
		/** @サービス契約排他制御
		 *  サービス契約番号に該当するサービス契約排他制御を取得する。 */
		Object[] whereParam = new Object[1];
		whereParam[0] = inMap.getString("SVC_KEI_NO")
		;
		JBSbatCommonDBInterface svkeiExcCtrlMap = null;
		svkeiExcCtrlMap = executeKK_T_SVKEI_EXC_CTRL_PKSELECT(whereParam);
		
		if (null == svkeiExcCtrlMap)
		{
			super.logPrint.printDebugLog("サービス契約排他制御にレコードが存在しません。");
			throw new JBSbatBusinessException("ESCB0490CW",
					new String[] {"サービス契約番号",
					inMap.getString("SVC_KEI_NO"),
					"サービス契約排他制御"});
		}
		
		/** Aサービス契約
		 *  サービス契約番号に該当するカレントレコードのKEY項目を取得する。 */
		
		whereParam = new Object[2];
		whereParam[0] = inMap.getString("SVC_KEI_NO");
		whereParam[1] = this.opeDate;
		
		JBSbatCommonDBInterface svKeiKeyMap = new JBSbatCommonDBInterface();
		this.executeKK_T_SVC_KEI_SC_SELECT_002(whereParam);
		svKeiKeyMap = db_KK_T_SVC_KEI.selectNext();
		
		if (null == svKeiKeyMap)
		{
			super.logPrint.printDebugLog("サービス契約にレコードが存在しません。");
			throw new JBSbatBusinessException("ESCB0490CW",
					new String[] {"サービス契約番号",
					inMap.getString("SVC_KEI_NO"),
					"サービス契約"});
		}
		
		/** Bサービス契約<eoモバイル>
		 *  サービス契約番号、世代登録年月日時分秒に該当するサービス契約<eoモバイル>を取得する */
		whereParam = new Object[2];
		whereParam[0] = svKeiKeyMap.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		whereParam[1] = svKeiKeyMap.getString(JBSbatKK_T_SVC_KEI.GENE_ADD_DTM);
		JBSbatCommonDBInterface svKeiEoMbMap = executeKK_T_SVC_KEI_EOMOBA_PKSELECT(whereParam);
		
		if (null == svKeiEoMbMap)
		{
			super.logPrint.printDebugLog("サービス契約<eoモバイル>にレコードが存在しません。");
			throw new JBSbatBusinessException("ESCB0490CW",
					new String[] {"サービス契約番号",
					inMap.getString("SVC_KEI_NO"),
					"サービス契約<eoモバイル>"});
		}

		/** Cサービス契約<eoモバイル>
		 *  サービス契約<eoモバイル>の最新レコードを更新する */
		Object[] setParam = new Object[1];
		setParam[0] = inMap.get("EM_SET_YMD_2");
		executeKK_T_SVC_KEI_EOMOBA_PKUPDATE(setParam, whereParam);
		
		// サービス契約排他制御更新のため、同じKEYでもう一度SELECTする
		svKeiEoMbMap = executeKK_T_SVC_KEI_EOMOBA_PKSELECT(whereParam);
		
		/** Dサービス契約排他制御
		 *  サービス契約番号に該当するサービス契約排他制御の最終更新年月日時分秒を更新する。 */
		setParam = new Object[1];
		setParam[0] = svKeiEoMbMap.getString("UPD_DTM");
		this.executeKK_T_SVKEI_EXC_CTRL_PKUPDATE(setParam, whereParam);
	}
	
	/**
	 * EMオーダ送受信情報登録処理
	 * @param inMap				入力電文
	 * @param mobileOrderNo		モバイルオーダ番号
	 * @param timestamp			システム日時
	 * @param yokyuMtAplSbtCd	要求元アプリ種別コード
	 * @throws Exception
	 */
	private void insEmOdrSrif(JBSbatServiceInterfaceMap inMap, String mobileOrderNo, String timestamp,  String svcKeiNo,
									String yokyuMtAplSbtCd, String sodWorkRnkiStat) throws Exception
	{
		String[] setParam = new String[37];
		// 送受信情報管理番号
		setParam[0] = JSCBatCommon.getEmOrdSRInfNo(commonItem, db_SC_T_EM_ODR_SRINF);
		// SODステータス
		setParam[2] = JSCStrConstant.SOD_STAT_ACK_NORMAL;
		// 要求元アプリ種別コード
		setParam[3] = yokyuMtAplSbtCd;
		// 要求種別コード
		setParam[4] = JSCStrConstant.YOKYU_SBT_NEW;
		// モバイルオーダコード
		setParam[5] = JSCStrConstant.MOBILE_ODER_CD_CHG;
		// ＳＯＤ送信プライオリティコード
		setParam[6] = "1";
		// サービス契約番号
		setParam[7] = svcKeiNo;
		// スケジュール年月日
		setParam[8] = "";
		// ＳＯＤ連携通番
		setParam[9] = mobileOrderNo;
		// ＳＯＤ受付年月日時分秒
		setParam[12] = timestamp;
		// モバイル要求種別コード
		setParam[17] = JSCStrConstant.MOBILE_YOKYU_CHRG_UK_INFO;
		// SOD業務連携ステータス
		setParam[18] = sodWorkRnkiStat;
		// ＥＭ契約者コード
		setParam[20] = inMap.getString(JBSbatSCIFE027.EM_KEISHA_CD);
		// ＥＭ事業者識別コード
		setParam[19] = JSCStrConstant.EM_JIGOSHA_SKBT_CD_IDO;
		// ＥＭ設定年月日１
		// ＥＭ設定年月日２
		setParam[22] = inMap.getString(JBSbatSCIFE027.EM_SET_YMD_2);
		// ＥＭ設定年月日３
		//setParam[23] = inMap.getString(JBSbatSCIFE027.EM_SET_YMD_3);
		// SOD結果登録日時
		setParam[14] = inMap.getString(JBSbatSCIFE027.IDO_YMD) + inMap.getString(JBSbatSCIFE027.IDO_HMS) + "000";
		// SOD処理結果コード	設定しない
		// SOD処理結果詳細コード	設定しない
		
		executeSC_T_EM_ODR_SRINF_PKINSERT(setParam);
	}
	
	/**
	 * モバイルオーダ登録処理
	 * @param inMap				入力電文
	 * @param timestamp			システム日時
	 * @param yokyuMtAplSbtCd	要求元アプリ種別コード
	 * @param sodWorkRnkiStat	SOD業務連携ステータス
	 * @return	モバイルオーダー番号
	 * @throws Exception
	 */
	private String insMobileOrder(JBSbatServiceInterfaceMap inMap, String timestamp, String svcKeiNo,
										String yokyuMtAplSbtCd, String sodWorkRnkiStat) throws Exception
	{
		
		String mobileOrderNo = null;
		String[] setParam = new String[36];
		
		// モバイルオーダ番号
		mobileOrderNo = JSCBatCommon.getMobileOrderNo(commonItem, db_SC_T_UQ_ODR_SRINF, db_SC_T_SPOT_ODR_SRINF, db_SC_T_EM_ODR_SRINF, db_SC_T_MOBILE_ORDER);
		setParam[0] = mobileOrderNo;
		// モバイルオーダステータス
		setParam[1] = JSCStrConstant.SOD_STAT_ACK_NORMAL;
		// 要求元アプリ種別コード
		setParam[2] = yokyuMtAplSbtCd;
		// 要求種別コード
		setParam[3] = JSCStrConstant.YOKYU_SBT_NEW;
		// モバイルオーダコード
		setParam[4] = JSCStrConstant.MOBILE_ODER_CD_CHG;
		
		if(JSCStrConstant.YOKYU_SBT_CD_CLARIS.equals(yokyuMtAplSbtCd))
		{
			// 要求元アプリ種別が"C(Claris)"の場合は、法人ｅｏ読替サービス契約番号
			setParam[5] = "";
			setParam[8] = svcKeiNo;
		}
		else
		{
			// 要求元アプリ種別が"B(バッチ)"の場合は、サービス契約番号
			setParam[5] = svcKeiNo;
			setParam[8] = "";
		}
		
		// サービス契約内訳番号
		setParam[6] = "";
		// モバイルオーダ受付年月日時分秒
		setParam[9] = timestamp;
		// スケジュール年月日
		setParam[10] = "";
		// モバイル要求種別コード
		setParam[12] = JSCStrConstant.MOBILE_YOKYU_CHRG_UK_INFO;
		// SOD業務連携ステータス
		setParam[13] = sodWorkRnkiStat;
		
		// モバイルオーダ結果取込年月日時分秒
		setParam[11] = inMap.getString(JBSbatSCIFE027.IDO_YMD) + inMap.getString(JBSbatSCIFE027.IDO_HMS) + "000";
		// 登録を実行する
		executeSC_T_MOBILE_ORDER_PKINSERT(setParam);
		
		return mobileOrderNo;
	}
	
	/**
	 * オーダ情報作成ワークを登録します。
	 * <br>
	 * @throws Exception 
	 */
	private void insOdrInfSksiWk() throws Exception
	{
		// 登録用データ格納
		Object[] param_add = new Object[36];
		
		// システム日付を取得
		String sysdate = JBSbatDateUtil.getSystemDateTimeStamp();
		
		// オーダ情報作成ワーク番号を取得
		String odrInfSksiWkNo = JBSbatStringUtil.padNumFormString(JBSbatOracleSeqUtil.getNextSeq(
				commonItem.getConnection(), "SEQ_ODR_INF_SKSI_WK_NO"), 12);// オーダ情報作成ワーク番号 → 自動採番
		
		odrHakkoJokenNo = "";
		// オーダ発行条件番号を取得
		odrHakkoJokenNo = JBSbatStringUtil.padNumFormString(JBSbatOracleSeqUtil.getNextSeq(
				commonItem.getConnection(), "SEQ_ODR_HAKKO_JOKEN_NO"), 12);// オーダ発行条件番号 → 自動採番
		
		// オーダ情報作成ワーク番号
		param_add[0] = odrInfSksiWkNo;
		// オーダ発行条件番号
		param_add[1] = odrHakkoJokenNo;
		// オーダ内容コード
		param_add[2] = "312";
		// サービス契約番号
		param_add[3] = odrSvcKeiNo;
		// サービス契約世代登録年月日時分秒
		param_add[4] = odrGeneAddDtm;
		// サービス契約内訳番号
		param_add[5] = "";
		// サービス契約内訳世代登録年月日時分秒
		param_add[6] = "";
		// 機器提供サービス契約番号
		param_add[7] = "";
		// 機器提供サービス契約世代登録年月日時分秒
		param_add[8] = "";
		// オプションサービス契約番号
		param_add[9] = "";
		// オプションサービス契約世代登録年月日時分秒
		param_add[10] = "";
		// サブオプションサービス契約番号
		param_add[11] = "";
		// サブオプションサービス契約世代登録年月日時分秒
		param_add[12] = "";
		// 請求オプションサービス契約番号
		param_add[13] = "";
		// 請求オプションサービス契約世代登録年月日時分秒
		param_add[14] = "";
		// 付加情報契約番号
		param_add[15] = "";
		// 付加情報契約世代登録年月日時分秒
		param_add[16] = "";
		// 変更前サービス契約世代登録年月日時分秒
		param_add[17] = "";
		// 変更前サービス契約内訳世代登録年月日時分秒
		param_add[18] = "";
		// 変更前機器提供サービス契約世代登録年月日時分秒
		param_add[19] = "";
		// 変更前オプションサービス契約世代登録年月日時分秒
		param_add[20] = "";
		// 変更前サブオプション契約世代登録年月日時分秒
		param_add[21] = "";
		// 変更前請求オプション契約世代登録年月日時分秒
		param_add[22] = "";
		
		// オーダ情報作成ワークの登録を行います。
		this.executeKK_T_ODR_INF_SKSI_WK_PKINSERT(param_add);
	}

	/**
	 * オーダ発行条件を登録します。
	 * <br>
	 * @throws Exception 
	 */
	private void insOdrHakkoJoken() throws Exception
	{
		// 登録用データ格納
		Object[] param_add = new Object[30];
		
		// システム日付を取得
		String sysdate = JBSbatDateUtil.getSystemDateTimeStamp();
		
		// オーダ発行条件番号
		param_add[0] = odrHakkoJokenNo;
		// サービス契約番号
		param_add[1] = odrSvcKeiNo;
		// サービス契約内訳番号
		param_add[2] = "";
		// 機器提供サービス契約番号
		param_add[3] = "";
		// オプションサービス契約番号
		param_add[4] = "";
		// サブオプションサービス契約番号
		param_add[5] = "";
		// 請求オプションサービス契約番号
		param_add[6] = "";
		// オーダ種別コード
		param_add[7] = "3";
		// サービスオーダコード
		param_add[8] = "11";
		// 要求種別コード
		param_add[9] = "02";
		// オーダ発行条件コード
		param_add[10] = "01";
		// 同一処理番号
		param_add[11] = "";
		// 宅内機器型式コード
		param_add[12] = "";
		// 機器製造番号
		param_add[13] = "";
		// メールアドレス
		param_add[14] = "";
		// スポットログインSYSID
		param_add[15] = "";
		// 送信依頼完了年月日時分秒
		param_add[16] = "";
		
		// オーダ発行条件の登録を行います。
		this.executeKK_T_ODR_HAKKO_JOKEN_PKINSERT(param_add);
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/

	/**
	 *入力情報（ＥＭ課金情報データ）の単項目チェックを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.単項目チェックを行います。<br>
	 * 
	 * 2.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		rsMap:(項目、値)を(key、value)として、データをrsMapに入れます
	 *		itemvalueMap:埋め込み文字の値をitemvalueMapに入れます。キーの値は、以下に説明します。
	 *			 TXT-SCIFE027-INF1.SVC_KEI_NO			ＥＭ課金情報データ.サービス契約番号
	 *			 TXT-SCIFE027-INF1.EM_SET_YMD_2			ＥＭ課金情報データ.ＥＭ設定年月日２
	 * </pre>
	 * <p>
	 * @param rsMap 入力データ（TXT又はDB）を格納されたHashMap。
	 * @param itemvalueMap エラーメッセージに関する項目値を格納されたHashMap。
	 * @return  boolean trueである場合、エラーがありません。falseである場合、エラーを発生しました。
	 */
	private boolean isSingleCheckSCIFE027_INF1(HashMap rsMap, HashMap itemvalueMap)
	{
		// 単項目チェックを行います
		String strValue = null;

		// ＥＭ設定年月日２項目チェック
		strValue = (String)rsMap.get("EM_SET_YMD_2");
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"year_month_day1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("ESCB0090CE", new String[]{
															(String)itemvalueMap.get("TXT-SCIFE027-INF1.SVC_KEI_NO"),
															(String)itemvalueMap.get("TXT-SCIFE027-INF1.EM_SET_YMD_2")});
			return false;
		}

		return true;
	}

	/**
	 * SQLKEY(SC_UPDATE_002)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	SOD結果登録年月日時分秒
	 *		 	モバイル要求種別コード
	 *		 	SOD業務連携ステータス
	 *		 	EM設定年月日2
	 *		 	更新オペレータアカウント
	 *		 	更新年月日時分秒
	 *		 	サービス契約番号
	 *		 	EM契約者コード
	 *		 	モバイル要求種別コード
	 *		 	無効フラグ
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeSC_T_EM_ODR_SRINF_SC_UPDATE_002(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		paramList.setValue(param[9].toString());

		// DBアクセスを実行します
		db_SC_T_EM_ODR_SRINF.executeBySqlDefine(paramList, SC_T_EM_ODR_SRINF_SC_UPDATE_002);
	}

	/**
	 * SQLKEY(SC_UPDATE_002)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	モバイルオーダ結果取込年月日時分秒
	 *		 	モバイル要求種別コード
	 *		 	SOD業務連携ステータス
	 *		 	更新オペレータアカウント
	 *		 	更新年月日時分秒
	 *		 	サービス契約番号
	 *		 	モバイル要求種別コード
	 *		 	無効フラグ
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeSC_T_MOBILE_ORDER_SC_UPDATE_002(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());

		// DBアクセスを実行します
		db_SC_T_MOBILE_ORDER.executeBySqlDefine(paramList, SC_T_MOBILE_ORDER_SC_UPDATE_002);
	}

	/**
	 * SQLKEY(SC_SELECT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	EM契約者コード
	 *		 	モバイル要求種別コード
	 *		 	無効フラグ
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeSC_T_EM_ODR_SRINF_SC_SELECT_001(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_SC_T_EM_ODR_SRINF.selectBySqlDefine(paramList, SC_T_EM_ODR_SRINF_SC_SELECT_001);
	}

	/**
	 * SQLKEY(SC_SELECT_002)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	モバイル要求種別コード
	 *		 	無効フラグ
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeSC_T_MOBILE_ORDER_SC_SELECT_002(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_SC_T_MOBILE_ORDER.selectBySqlDefine(paramList, SC_T_MOBILE_ORDER_SC_SELECT_002);
	}

	/**
	 * PK(ＰＫ　検索)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で条件マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	SVC_KEI_NO
	 * </pre>
	 * <p>
	 * @param whereParam 条件項目の値。
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private JBSbatCommonDBInterface executeKK_T_SVKEI_EXC_CTRL_PKSELECT(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("SVC_KEI_NO", whereParam[0]);

		// DBアクセスを実行します　レコードロックを取得する。（wait指定） 
		return db_KK_T_SVKEI_EXC_CTRL.selectByPrimaryKeysForUpdateWait(whereMap);
	}

	/**
	 * SQLKEY(SC_SELECT_002)で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_SC_SELECT_002(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_SC_SELECT_002);
	}

	/**
	 * SQLKEY(SC_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_T_SVC_KEI_SC_SELECT_003(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_SC_SELECT_003);
	}

	/**
	 * PK(ＰＫ　検索)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で条件マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	SVC_KEI_NO
	 *		 	GENE_ADD_DTM
	 * </pre>
	 * <p>
	 * @param whereParam 条件項目の値。
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private JBSbatCommonDBInterface executeKK_T_SVC_KEI_EOMOBA_PKSELECT(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("SVC_KEI_NO", whereParam[0]);
		whereMap.setValue("GENE_ADD_DTM", whereParam[1]);

		// DBアクセスを実行します
		return db_KK_T_SVC_KEI_EOMOBA.selectByPrimaryKeys(whereMap);
	}

	/**
	 * PK(ＰＫ　更新)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.引数で条件マップを作ります。<br>
	 *
	 * 3.DBアクセスを実行します。<br>
	 * 
	 * 4.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	SVC_KEI_NO
	 *		 	GENE_ADD_DTM
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @param whereParam 条件項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_EOMOBA_PKUPDATE(Object[] setParam, Object[] whereParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("JGS_CHRG_STAYMD", setParam[0]);

		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("SVC_KEI_NO", whereParam[0]);
		whereMap.setValue("GENE_ADD_DTM", whereParam[1]);

		// DBアクセスを実行します
		db_KK_T_SVC_KEI_EOMOBA.updateByPrimaryKeys(whereMap, setMap);
	}

	/**
	 * PK(ＰＫ　更新)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.引数で条件マップを作ります。<br>
	 *
	 * 3.DBアクセスを実行します。<br>
	 * 
	 * 4.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	最終更新年月日時分秒				LAST_UPD_DTM
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	SVC_KEI_NO
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @param whereParam 条件項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVKEI_EXC_CTRL_PKUPDATE(Object[] setParam, Object[] whereParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("LAST_UPD_DTM", setParam[0]);
	
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("SVC_KEI_NO", whereParam[0]);

		// DBアクセスを実行します
		db_KK_T_SVKEI_EXC_CTRL.updateByPrimaryKeys(whereMap, setMap);
	}

	/**
	 * SQLKEY(SC_SELECT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	事業者用契約ID
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_EOMOBA_SC_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_SVC_KEI_EOMOBA.selectBySqlDefine(paramList, KK_T_SVC_KEI_EOMOBA_SC_SELECT_001);
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	送受信情報管理番号				SRINF_KANRI_NO
	 *		 	ＳＯＤ送信キー				SOD_SEND_KEY
	 *		 	ＳＯＤステータス				SOD_STAT
	 *		 	要求元アプリ種別コード				YOKYU_MT_APL_SBT_CD
	 *		 	要求種別コード				YOKYU_SBT_CD
	 *		 	モバイルオーダコード				MOBILE_ORDER_CD
	 *		 	ＳＯＤ送信プライオリティコード				SOD_SEND_PRIORITY_CD
	 *		 	サービス契約番号				SVC_KEI_NO
	 *		 	スケジュール年月日				SCHEDULE_YMD
	 *		 	ＳＯＤ連携通番				SOD_RENKEI_SEQ
	 *		 	旧ＳＯＤ連携通番				OLD_SOD_RENKEI_SEQ
	 *		 	ＳＯＤ連絡データ				SOD_RRK_DATA
	 *		 	ＳＯＤ受付年月日時分秒				SOD_UK_DTM
	 *		 	ＳＯＤ投入年月日時分秒				SOD_TONYU_DTM
	 *		 	ＳＯＤ結果登録年月日時分秒				SOD_RSLT_ADD_DTM
	 *		 	ＳＯＤ処理結果コード				SOD_TRAN_RSLT_CD
	 *		 	ＳＯＤ処理結果詳細コード				SOD_TRAN_RSLT_DTAIL_CD
	 *		 	モバイル要求種別コード				MOBILE_YOKYU_SBT_CD
	 *		 	ＳＯＤ業務連携ステータス				SOD_WORK_RNKI_STAT
	 *		 	ＥＭ事業者識別コード				EM_JGYOSHA_SKBT_CD
	 *		 	ＥＭ契約者コード				EM_KEISHA_CD
	 *		 	ＥＭ設定年月日１				EM_SET_YMD_1
	 *		 	ＥＭ設定年月日２				EM_SET_YMD_2
	 *		 	ＥＭ設定年月日３				EM_SET_YMD_3
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録運用年月日				ADD_UNYO_YMD
	 *		 	登録処理ＩＤ				ADD_TRN_ID
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新運用年月日				UPD_UNYO_YMD
	 *		 	更新処理ＩＤ				UPD_TRN_ID
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除運用年月日				DEL_UNYO_YMD
	 *		 	削除処理ＩＤ				DEL_TRN_ID
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeSC_T_EM_ODR_SRINF_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("SRINF_KANRI_NO", setParam[0]);
		setMap.setValue("SOD_SEND_KEY", setParam[1]);
		setMap.setValue("SOD_STAT", setParam[2]);
		setMap.setValue("YOKYU_MT_APL_SBT_CD", setParam[3]);
		setMap.setValue("YOKYU_SBT_CD", setParam[4]);
		setMap.setValue("MOBILE_ORDER_CD", setParam[5]);
		setMap.setValue("SOD_SEND_PRIORITY_CD", setParam[6]);
		setMap.setValue("SVC_KEI_NO", setParam[7]);
		setMap.setValue("SCHEDULE_YMD", setParam[8]);
		setMap.setValue("SOD_RENKEI_SEQ", setParam[9]);
		setMap.setValue("OLD_SOD_RENKEI_SEQ", setParam[10]);
		setMap.setValue("SOD_RRK_DATA", setParam[11]);
		setMap.setValue("SOD_UK_DTM", setParam[12]);
		setMap.setValue("SOD_TONYU_DTM", setParam[13]);
		setMap.setValue("SOD_RSLT_ADD_DTM", setParam[14]);
		setMap.setValue("SOD_TRAN_RSLT_CD", setParam[15]);
		setMap.setValue("SOD_TRAN_RSLT_DTAIL_CD", setParam[16]);
		setMap.setValue("MOBILE_YOKYU_SBT_CD", setParam[17]);
		setMap.setValue("SOD_WORK_RNKI_STAT", setParam[18]);
		setMap.setValue("EM_JGYOSHA_SKBT_CD", setParam[19]);
		setMap.setValue("EM_KEISHA_CD", setParam[20]);
		setMap.setValue("EM_SET_YMD_1", setParam[21]);
		setMap.setValue("EM_SET_YMD_2", setParam[22]);
		setMap.setValue("EM_SET_YMD_3", setParam[23]);
		setMap.setValue("ADD_DTM", setParam[24]);
		setMap.setValue("ADD_UNYO_YMD", setParam[25]);
		setMap.setValue("ADD_TRN_ID", setParam[26]);
		setMap.setValue("ADD_OPEACNT", setParam[27]);
		setMap.setValue("UPD_DTM", setParam[28]);
		setMap.setValue("UPD_UNYO_YMD", setParam[29]);
		setMap.setValue("UPD_TRN_ID", setParam[30]);
		setMap.setValue("UPD_OPEACNT", setParam[31]);
		setMap.setValue("DEL_DTM", setParam[32]);
		setMap.setValue("DEL_UNYO_YMD", setParam[33]);
		setMap.setValue("DEL_TRN_ID", setParam[34]);
		setMap.setValue("DEL_OPEACNT", setParam[35]);
		setMap.setValue("MK_FLG", setParam[36]);
	
		// DBアクセスを実行します
		db_SC_T_EM_ODR_SRINF.insertByPrimaryKeys(setMap);
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	モバイルオーダ番号				MOBILE_ORDER_NO
	 *		 	モバイルオーダステータス				MOBILE_ORDER_STAT
	 *		 	要求元アプリ種別コード				YOKYU_MT_APL_SBT_CD
	 *		 	要求種別コード				YOKYU_SBT_CD
	 *		 	モバイルオーダコード				MOBILE_ORDER_CD
	 *		 	サービス契約番号				SVC_KEI_NO
	 *		 	サービス契約内訳番号				SVC_KEI_UCWK_NO
	 *		 	法人サービス契約番号				HOJIN_SVC_KEI_NO
	 *		 	法人ｅｏ読替サービス契約番号				HJIN_EO_YKAE_SVKEI_NO
	 *		 	モバイルオーダ受付年月日時分秒				MOBILE_ORDER_UK_DTM
	 *		 	スケジュール年月日				SCHEDULE_YMD
	 *		 	モバイルオーダ結果取込年月日時分秒				MOBILE_ODR_RSLT_TRKM_DTM
	 *		 	モバイル要求種別コード				MOBILE_YOKYU_SBT_CD
	 *		 	ＳＯＤ業務連携ステータス				SOD_WORK_RNKI_STAT
	 *		 	ＳＹＳＩＤ				SYSID
	 *		 	ＳＰＯＴ＿セッション数変更有無				SPOT_SESSION_CNT_CHGUM
	 *		 	ＳＰＯＴ＿セッション数				SPOT_SESSION_CNT
	 *		 	ＵＱ認証ＩＤ				UQ_NINSHO_ID
	 *		 	ＵＱ認証ＩＤパスワード				UQ_NINSHO_ID_PWD
	 *		 	ＵＱＭＡＣアドレス				UQ_MACAD
	 *		 	ＵＱＲＯＭ種別コード				UQ_ROM_SBT_CD
	 *		 	ＥＭ再販事業者様設定課金開始日				EM_SIJGSHA_SET_CHRG_STAYMD
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録運用年月日				ADD_UNYO_YMD
	 *		 	登録処理ＩＤ				ADD_TRN_ID
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新運用年月日				UPD_UNYO_YMD
	 *		 	更新処理ＩＤ				UPD_TRN_ID
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除運用年月日				DEL_UNYO_YMD
	 *		 	削除処理ＩＤ				DEL_TRN_ID
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeSC_T_MOBILE_ORDER_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("MOBILE_ORDER_NO", setParam[0]);
		setMap.setValue("MOBILE_ORDER_STAT", setParam[1]);
		setMap.setValue("YOKYU_MT_APL_SBT_CD", setParam[2]);
		setMap.setValue("YOKYU_SBT_CD", setParam[3]);
		setMap.setValue("MOBILE_ORDER_CD", setParam[4]);
		setMap.setValue("SVC_KEI_NO", setParam[5]);
		setMap.setValue("SVC_KEI_UCWK_NO", setParam[6]);
		setMap.setValue("HOJIN_SVC_KEI_NO", setParam[7]);
		setMap.setValue("HJIN_EO_YKAE_SVKEI_NO", setParam[8]);
		setMap.setValue("MOBILE_ORDER_UK_DTM", setParam[9]);
		setMap.setValue("SCHEDULE_YMD", setParam[10]);
		setMap.setValue("MOBILE_ODR_RSLT_TRKM_DTM", setParam[11]);
		setMap.setValue("MOBILE_YOKYU_SBT_CD", setParam[12]);
		setMap.setValue("SOD_WORK_RNKI_STAT", setParam[13]);
		setMap.setValue("SYSID", setParam[14]);
		setMap.setValue("SPOT_SESSION_CNT_CHGUM", setParam[15]);
		setMap.setValue("SPOT_SESSION_CNT", setParam[16]);
		setMap.setValue("UQ_NINSHO_ID", setParam[17]);
		setMap.setValue("UQ_NINSHO_ID_PWD", setParam[18]);
		setMap.setValue("UQ_MACAD", setParam[19]);
		setMap.setValue("UQ_ROM_SBT_CD", setParam[20]);
		setMap.setValue("EM_SIJGSHA_SET_CHRG_STAYMD", setParam[21]);
		setMap.setValue("ADD_DTM", setParam[22]);
		setMap.setValue("ADD_UNYO_YMD", setParam[23]);
		setMap.setValue("ADD_TRN_ID", setParam[24]);
		setMap.setValue("ADD_OPEACNT", setParam[25]);
		setMap.setValue("UPD_DTM", setParam[26]);
		setMap.setValue("UPD_UNYO_YMD", setParam[27]);
		setMap.setValue("UPD_TRN_ID", setParam[28]);
		setMap.setValue("UPD_OPEACNT", setParam[29]);
		setMap.setValue("DEL_DTM", setParam[30]);
		setMap.setValue("DEL_UNYO_YMD", setParam[31]);
		setMap.setValue("DEL_TRN_ID", setParam[32]);
		setMap.setValue("DEL_OPEACNT", setParam[33]);
		setMap.setValue("MK_FLG", setParam[34]);
	
		// DBアクセスを実行します
		db_SC_T_MOBILE_ORDER.insertByPrimaryKeys(setMap);
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	オーダ情報作成ワーク番号				ODR_INF_SKSI_WK_NO
	 *		 	オーダ発行条件番号				ODR_HAKKO_JOKEN_NO
	 *		 	オーダ内容コード				ODR_NAIYO_CD
	 *		 	サービス契約番号				SVC_KEI_NO
	 *		 	サービス契約世代登録年月日時分秒				SVKEI_GADTM
	 *		 	サービス契約内訳番号				SVC_KEI_UCWK_NO
	 *		 	サービス契約内訳世代登録年月日時分秒				SVKEIUW_GADTM
	 *		 	機器提供サービス契約番号				KKTK_SVC_KEI_NO
	 *		 	機器提供サービス契約世代登録年月日時分秒				KKTSVKEI_GADTM
	 *		 	オプションサービス契約番号				OP_SVC_KEI_NO
	 *		 	オプションサービス契約世代登録年月日時分秒				OPSVKEI_GADTM
	 *		 	サブオプションサービス契約番号				SBOP_SVC_KEI_NO
	 *		 	サブオプションサービス契約世代登録年月日時分秒				SBOPSVKEI_GADTM
	 *		 	請求オプションサービス契約番号				SEIOPSVC_KEI_NO
	 *		 	請求オプションサービス契約世代登録年月日時分秒				SEIOPSVKEI_GADTM
	 *		 	付加情報契約番号				HUKA_INF_KEI_NO
	 *		 	付加情報契約世代登録年月日時分秒				HUKA_INF_KEI_GADTM
	 *		 	変更前サービス契約世代登録年月日時分秒				CHBF_SVKEI_GADTM
	 *		 	変更前サービス契約内訳世代登録年月日時分秒				CHBF_SVKEIUW_GADTM
	 *		 	変更前機器提供サービス契約世代登録年月日時分秒				CHBF_KKTSVKEI_GADTM
	 *		 	変更前オプションサービス契約世代登録年月日時分秒				CHBF_OPSVKEI_GADTM
	 *		 	変更前サブオプション契約世代登録年月日時分秒				CHBF_SBOPSVKEI_GADTM
	 *		 	変更前請求オプション契約世代登録年月日時分秒				CHBF_SEIOPSVKEI_GADTM
	 *			変更前付加情報契約世代登録年月日時分秒						CHBF_HUKA_INF_KEI_GADTM
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 *		 	登録運用年月日				ADD_UNYO_YMD
	 *		 	登録処理ＩＤ				ADD_TRN_ID
	 *		 	更新運用年月日				UPD_UNYO_YMD
	 *		 	更新処理ＩＤ				UPD_TRN_ID
	 *		 	削除運用年月日				DEL_UNYO_YMD
	 *		 	削除処理ＩＤ				DEL_TRN_ID
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_ODR_INF_SKSI_WK_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("ODR_INF_SKSI_WK_NO", setParam[0]);
		setMap.setValue("ODR_HAKKO_JOKEN_NO", setParam[1]);
		setMap.setValue("ODR_NAIYO_CD", setParam[2]);
		setMap.setValue("SVC_KEI_NO", setParam[3]);
		setMap.setValue("SVKEI_GADTM", setParam[4]);
		setMap.setValue("SVC_KEI_UCWK_NO", setParam[5]);
		setMap.setValue("SVKEIUW_GADTM", setParam[6]);
		setMap.setValue("KKTK_SVC_KEI_NO", setParam[7]);
		setMap.setValue("KKTSVKEI_GADTM", setParam[8]);
		setMap.setValue("OP_SVC_KEI_NO", setParam[9]);
		setMap.setValue("OPSVKEI_GADTM", setParam[10]);
		setMap.setValue("SBOP_SVC_KEI_NO", setParam[11]);
		setMap.setValue("SBOPSVKEI_GADTM", setParam[12]);
		setMap.setValue("SEIOPSVC_KEI_NO", setParam[13]);
		setMap.setValue("SEIOPSVKEI_GADTM", setParam[14]);
		setMap.setValue("HUKA_INF_KEI_NO", setParam[15]);
		setMap.setValue("HUKA_INF_KEI_GADTM", setParam[16]);
		setMap.setValue("CHBF_SVKEI_GADTM", setParam[17]);
		setMap.setValue("CHBF_SVKEIUW_GADTM", setParam[18]);
		setMap.setValue("CHBF_KKTSVKEI_GADTM", setParam[19]);
		setMap.setValue("CHBF_OPSVKEI_GADTM", setParam[20]);
		setMap.setValue("CHBF_SBOPSVKEI_GADTM", setParam[21]);
		setMap.setValue("CHBF_SEIOPSVKEI_GADTM", setParam[22]);
		setMap.setValue("CHBF_HUKA_INF_KEI_GADTM", "");
		setMap.setValue("ADD_DTM", setParam[23]);
		setMap.setValue("ADD_OPEACNT", setParam[24]);
		setMap.setValue("UPD_DTM", setParam[25]);
		setMap.setValue("UPD_OPEACNT", setParam[26]);
		setMap.setValue("DEL_DTM", setParam[27]);
		setMap.setValue("DEL_OPEACNT", setParam[28]);
		setMap.setValue("MK_FLG", setParam[29]);
		setMap.setValue("ADD_UNYO_YMD", setParam[30]);
		setMap.setValue("ADD_TRN_ID", setParam[31]);
		setMap.setValue("UPD_UNYO_YMD", setParam[32]);
		setMap.setValue("UPD_TRN_ID", setParam[33]);
		setMap.setValue("DEL_UNYO_YMD", setParam[34]);
		setMap.setValue("DEL_TRN_ID", setParam[35]);
	
		// DBアクセスを実行します
		db_KK_T_ODR_INF_SKSI_WK.insertByPrimaryKeys(setMap);
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	オーダ発行条件番号				ODR_HAKKO_JOKEN_NO
	 *		 	サービス契約番号				SVC_KEI_NO
	 *		 	サービス契約内訳番号				SVC_KEI_UCWK_NO
	 *		 	機器提供サービス契約番号				KKTK_SVC_KEI_NO
	 *		 	オプションサービス契約番号				OP_SVC_KEI_NO
	 *		 	サブオプションサービス契約番号				SBOP_SVC_KEI_NO
	 *		 	請求オプションサービス契約番号				SEIOPSVC_KEI_NO
	 *		 	オーダ種別コード				ORDER_SBT_CD
	 *		 	サービスオーダコード				SVC_ORDER_CD
	 *		 	要求種別コード				YOKYU_SBT_CD
	 *		 	オーダ発行条件コード				ODR_HAKKO_JOKEN_CD
	 *			契約サービス制御要求オーダ識別コード		KEI_SVC_CTL_YOKYU_ODR_SKCD
	 *		 	同一処理番号				SAME_TRN_NO
	 *		 	宅内機器型式コード				TAKNKIKI_MODEL_CD
	 *		 	機器製造番号				KIKI_SEIZO_NO
	 *		 	メールアドレス				MLAD
	 *		 	スポットログインＳＹＳＩＤ				SPOT_LOGIN_SYSID
	 *			サービス契約回線内訳番号	SVC_KEI_KAISEN_UCWK_NO
	 *		 	送信依頼完了年月日時分秒				SEND_REQ_FIN_DTM
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 *		 	登録運用年月日				ADD_UNYO_YMD
	 *		 	登録処理ＩＤ				ADD_TRN_ID
	 *		 	更新運用年月日				UPD_UNYO_YMD
	 *		 	更新処理ＩＤ				UPD_TRN_ID
	 *		 	削除運用年月日				DEL_UNYO_YMD
	 *		 	削除処理ＩＤ				DEL_TRN_ID
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_ODR_HAKKO_JOKEN_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("ODR_HAKKO_JOKEN_NO", setParam[0]);
		setMap.setValue("SVC_KEI_NO", setParam[1]);
		setMap.setValue("SVC_KEI_UCWK_NO", setParam[2]);
		setMap.setValue("KKTK_SVC_KEI_NO", setParam[3]);
		setMap.setValue("OP_SVC_KEI_NO", setParam[4]);
		setMap.setValue("SBOP_SVC_KEI_NO", setParam[5]);
		setMap.setValue("SEIOPSVC_KEI_NO", setParam[6]);
		setMap.setValue("ORDER_SBT_CD", setParam[7]);
		setMap.setValue("SVC_ORDER_CD", setParam[8]);
		setMap.setValue("YOKYU_SBT_CD", setParam[9]);
		setMap.setValue("ODR_HAKKO_JOKEN_CD", setParam[10]);
		setMap.setValue("KEI_SVC_CTL_YOKYU_ODR_SKCD", "");
		setMap.setValue("SAME_TRN_NO", setParam[11]);
		setMap.setValue("TAKNKIKI_MODEL_CD", setParam[12]);
		setMap.setValue("KIKI_SEIZO_NO", setParam[13]);
		setMap.setValue("MLAD", setParam[14]);
		setMap.setValue("SPOT_LOGIN_SYSID", setParam[15]);
		setMap.setValue("SVC_KEI_KAISEN_UCWK_NO", "");
		setMap.setValue("SEND_REQ_FIN_DTM", setParam[16]);
		setMap.setValue("ADD_DTM", setParam[17]);
		setMap.setValue("ADD_OPEACNT", setParam[18]);
		setMap.setValue("UPD_DTM", setParam[19]);
		setMap.setValue("UPD_OPEACNT", setParam[20]);
		setMap.setValue("DEL_DTM", setParam[21]);
		setMap.setValue("DEL_OPEACNT", setParam[22]);
		setMap.setValue("MK_FLG", setParam[23]);
		setMap.setValue("ADD_UNYO_YMD", setParam[24]);
		setMap.setValue("ADD_TRN_ID", setParam[25]);
		setMap.setValue("UPD_UNYO_YMD", setParam[26]);
		setMap.setValue("UPD_TRN_ID", setParam[27]);
		setMap.setValue("DEL_UNYO_YMD", setParam[28]);
		setMap.setValue("DEL_TRN_ID", setParam[29]);
	
		// DBアクセスを実行します
		db_KK_T_ODR_HAKKO_JOKEN.insertByPrimaryKeys(setMap);
	}
	
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
}
