/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKNrkeFinKikiHktgi
*	ソースファイル名	：JBSbatKKNrkeFinKikiHktgi.java
*	作成者				：富士通　
*	作成日				：2024年08月01日
*＜機能概要＞
*　当日に、既存ネット⇔シンプルプランの乗換完了後、ダミーで登録されている機器の引継ぎ処理を行う。
*　また、引継完了した機器情報を「機器引継完了リスト」に出力する。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v72.00.00	2024/08/01  FJ）明石	【ANK-4577-00-00】eo光ネット「シンプルプラン」追加対応(Step2)
*	v72.00.01	2024/10/23  FJ）明石	【ANK-4577-00-00】eo光ネット「シンプルプラン」追加対応(Step2)
*	v74.00.00	2025/02/10  GDC)J.Tagongtong	【ANK-4656-00-00】eo光シンプルプラン提供(STEP3)
*********************************************************************/
package eo.business.service;

import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.ArrayList;
import java.util.List;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JBSbatKKConst;
import eo.business.common.JCCBatCommon;
import eo.business.common.JKKBatCommon;
import eo.business.common.JKKBatConst;
import eo.business.common.JKKBatPrgUtil;
import eo.business.util.file.JBSbatKKIFM964;
import eo.business.util.table.JBSbatDK_T_HAISO_TG_BPIN;
import eo.business.util.table.JBSbatDK_T_HMPIN_KIKI;
import eo.business.util.table.JBSbatKK_T_KKOP_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_KKTK_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_PRG;
import eo.business.util.table.JBSbatKK_T_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_SVC_KEI_UCWK;
import eo.business.util.table.JBSbatKK_T_SVKEI_KAISEN_UW;
import eo.business.util.table.JBSbatKU_T_KJAK_TG_TKKIKI;
import eo.business.util.table.JBSbatZM_M_WORK_PARAM_KNRI;
import eo.common.constant.JKKStrConst;
import eo.common.constant.JPCBatchMessageConstant;
import eo.common.util.JKKCommonUtil;
import eo.common.util.JKKStringUtil;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatServiceInterfaceMap;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.util.JBSbatDateUtil;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKNrkeFinKikiHktgi extends JBSbatBusinessService
{
	
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	
	/** テーブルアクセスクラス(業務パラメータ管理)*/
	private JBSbatSQLAccess db_ZM_M_WORK_PARAM_KNRI = null;
	/** テーブルアクセスクラス(機器提供サービス契約)*/
	private JBSbatSQLAccess db_KK_T_KKTK_SVC_KEI = null;
	/** テーブルアクセスクラス(機器提供サービス契約)*/
	private JBSbatSQLAccess db_KK_T_KKTK_SVC_KEI_SAKI = null;
	/** テーブルアクセスクラス(機器提供サービス契約)*/
	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI = null;
	/** テーブルアクセスクラス(機器オプションサービス契約)*/
	private JBSbatSQLAccess db_KK_T_KKOP_SVC_KEI = null;
	/** テーブルアクセスクラス(配送対象物品)*/
	private JBSbatSQLAccess db_DK_T_HAISO_TG_BPIN = null;
	/** テーブルアクセスクラス(返品機器)*/
	private JBSbatSQLAccess db_DK_T_HMPIN_KIKI = null;
	/** テーブルアクセスクラス(返品機器)*/
	private JBSbatSQLAccess db_DK_T_HMPIN_KIKI_MOTO = null;
	/** テーブルアクセスクラス(サービス契約回線内訳)*/
	private JBSbatSQLAccess db_KK_T_SVKEI_KAISEN_UW = null;
	/** テーブルアクセスクラス(オーダ設定)*/
	private JBSbatSQLAccess db_KK_T_ODR_SET = null;
	/** テーブルアクセスクラス(サービス契約内訳)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI_UCWK = null;
	/** テーブルアクセスクラス(オーダ発行条件)*/
	private JBSbatSQLAccess db_KK_T_ODR_HAKKO_JOKEN = null;
	/** テーブルアクセスクラス(オーダ情報作成ワーク)*/
	private JBSbatSQLAccess db_KK_T_ODR_INF_SKSI_WK = null;
	/** テーブルアクセスクラス(進捗)*/
	private JBSbatSQLAccess db_KK_T_PRG = null;
	// ANK-4656-00-00 ADD START
	/** テーブルアクセスクラス(工事案件対象宅内機器)*/
	private JBSbatSQLAccess db_KU_T_KJAK_TG_TKKIKI = null;
	// ANK-4656-00-00 ADD END
	
	/** テーブル(業務パラメータ管理)*/
	private static final String D_TBL_NAME_ZM_M_WORK_PARAM_KNRI = "ZM_M_WORK_PARAM_KNRI";
	/** テーブル(機器提供サービス契約)*/
	private static final String D_TBL_NAME_KK_T_KKTK_SVC_KEI = "KK_T_KKTK_SVC_KEI";
	/** テーブル(サービス契約)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI = "KK_T_SVC_KEI";
	/** テーブル(機器オプションサービス契約)*/
	private static final String D_TBL_NAME_KK_T_KKOP_SVC_KEI = "KK_T_KKOP_SVC_KEI";
	/** テーブル(配送対象物品)*/
	private static final String D_TBL_NAME_DK_T_HAISO_TG_BPIN = "DK_T_HAISO_TG_BPIN";
	/** テーブル(返品機器)*/
	private static final String D_TBL_NAME_DK_T_HMPIN_KIKI = "DK_T_HMPIN_KIKI";
	/** テーブル(サービス契約回線内訳)*/
	private static final String D_TBL_NAME_KK_T_SVKEI_KAISEN_UW = "KK_T_SVKEI_KAISEN_UW";
	/** テーブル(オーダ設定)*/
	private static final String D_TBL_NAME_KK_T_ODR_SET = "KK_T_ODR_SET";
	/** テーブル(サービス契約内訳)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI_UCWK = "KK_T_SVC_KEI_UCWK";
	/** テーブル(オーダ発行条件)*/
	private static final String D_TBL_NAME_KK_T_ODR_HAKKO_JOKEN = "KK_T_ODR_HAKKO_JOKEN";
	/** テーブル(オーダ情報作成ワーク)*/
	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_PRG = "KK_T_PRG";
	// ANK-4656-00-00 ADD START
	/** テーブル(工事案件対象宅内機器)*/
	private static final String D_TBL_NAME_KU_T_KJAK_TG_TKKIKI = "KU_T_KJAK_TG_TKKIKI";
	// ANK-4656-00-00 ADD END
	
	/** SQL定義キー(KK_SELECT_016)*/
	private static final String ZM_M_WORK_PARAM_KNRI_KK_SELECT_016 = "KK_SELECT_016";
	/** SQL定義キー(KK_SELECT_280)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_280 = "KK_SELECT_280";
	/** SQL定義キー(KK_SELECT_281)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_281 = "KK_SELECT_281";
	/** SQL定義キー(KK_SELECT_282)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_282 = "KK_SELECT_282";
	/** SQL定義キー(KK_SELECT_384)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_384 = "KK_SELECT_384";
	/** SQL定義キー(KK_SELECT_386)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_386 = "KK_SELECT_386";
	/** SQL定義キー(KK_SELECT_035)*/
	private static final String KK_T_KKOP_SVC_KEI_KK_SELECT_035 = "KK_SELECT_035";
	/** SQL定義キー(KK_SELECT_036)*/
	private static final String KK_T_KKOP_SVC_KEI_KK_SELECT_036 = "KK_SELECT_036";
	/** SQL定義キー(KK_SELECT_008)*/
	private static final String DK_T_HAISO_TG_BPIN_KK_SELECT_008 = "KK_SELECT_008";
	/** SQL定義キー(KK_SELECT_016)*/
	private static final String DK_T_HMPIN_KIKI_KK_SELECT_016 = "KK_SELECT_016";
	/** SQL定義キー(KK_SELECT_007)*/
	private static final String KK_T_SVKEI_KAISEN_UW_KK_SELECT_007 = "KK_SELECT_007";
	/** SQL定義キー(KK_SELECT_028)*/
	private static final String KK_T_ODR_SET_KK_SELECT_028 = "KK_SELECT_028";
	/** SQL定義キー(KK_SELECT_143)*/
	private static final String KK_T_SVC_KEI_UCWK_KK_SELECT_143 = "KK_SELECT_143";
	// ANK-4656-00-00 ADD START
	/** SQL定義キー(KK_SELECT_016)*/
	private static final String KU_T_KJAK_TG_TKKIKI_KK_SELECT_016 = "KK_SELECT_016";
	// ANK-4656-00-00 ADD END
	
	private static final List<String> KK_T_KKTK_SVC_KEI_COL_LIST = Collections.unmodifiableList(
		    Arrays.asList(new String[] 
		                             {JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO,
		    							JBSbatKK_T_KKTK_SVC_KEI.GENE_ADD_DTM,
										JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_STAT,
										JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_CD,
										JBSbatKK_T_KKTK_SVC_KEI.PCRS_CD,
										JBSbatKK_T_KKTK_SVC_KEI.PPLAN_CD,
										JBSbatKK_T_KKTK_SVC_KEI.TK_HOSHIKI_KEI_NO,
										JBSbatKK_T_KKTK_SVC_KEI.KKTK_SBT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.HAMBAI_SBT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_USE_STA_KIBO_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.RSV_TSTA_KIBO_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.KIBO_MAKER_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SHITEI_SBT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.TAKNKIKI_SBT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.TAKNKIKI_MODEL_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SEIZO_NO,
										JBSbatKK_T_KKTK_SVC_KEI.HUZOKUHIN_SBT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.HUZOKUHIN_MODEL_CD,
										JBSbatKK_T_KKTK_SVC_KEI.TAKNKIKI_SETHIN_MODEL_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_CHG_NO,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_CHG_RSN_CD,
										JBSbatKK_T_KKTK_SVC_KEI.TSUSHIN_KIKI_SET_CD,
										JBSbatKK_T_KKTK_SVC_KEI.HDD_CAPA_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_PLACE_NO,
										JBSbatKK_T_KKTK_SVC_KEI.OYA_KEI_SKBT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_KEI_NO,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_KEI_UCWK_NO,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_KEI_KAISEN_UCWK_NO,
										JBSbatKK_T_KKTK_SVC_KEI.OP_SVC_KEI_NO,
										JBSbatKK_T_KKTK_SVC_KEI.SYSID,
										JBSbatKK_T_KKTK_SVC_KEI.MSKM_DTL_NO,
										JBSbatKK_T_KKTK_SVC_KEI.LINK_STB_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_HKAT_SHITEI_SOKO_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_HKAT_SHITEI_SKDN_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STI_JI_KRIPLACE_SKCD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STI_JI_KOCOMP_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STI_JI_KOCOMP_SLF_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STI_JI_YTKSKOF_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STI_JI_YTKSKOF_SLF_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_HKHASYMD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SORYO_UM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SORYO_SAKSEI_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_KANA,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_AD_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_PCD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_STATE_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_CITY_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_OAZTSU_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_AZCHO_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_BNCHIGO,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_ADRTTM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_ADRRM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SHS_AD_MAN_INPUT_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_TELNO,
										JBSbatKK_T_KKTK_SVC_KEI.MANSION_BUKKEN_NO,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SOHUS_KSH_AD_SAI_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SHS_KBT_SHITEI_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SHS_HSK_CD_1,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SHS_HSK_CD_2,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_SHS_HSK_MEMO,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_KANA,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_AD_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_PCD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_STATE_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_CITY_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_OAZTSU_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_AZCHO_NM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_BNCHIGO,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_ADRTTM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_ADRRM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SK_KSH_AD_SAI_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SK_TELNO,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STS_KKK_SEIRI_CHU_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.AD_MI_FIX_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.AUTO_ADD_CD,
										JBSbatKK_T_KKTK_SVC_KEI.AD_MI_FIX_RLS_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.CHRG_STA_YMD_HOSEI_UM,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STS_HSK_CD_1,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STS_HSK_CD_2,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_STS_HSK_MEMO,
										JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_KZKWRK_REQYMD,
										JBSbatKK_T_KKTK_SVC_KEI.SHOSA_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SHOSA_CL_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.HAISO_DIV,
										JBSbatKK_T_KKTK_SVC_KEI.HAISO_KIGEN_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.HAISO_ARIV_SHITEI_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.FTRIAL_KANYU_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.FTRIAL_PRD_ENDYMD,
										JBSbatKK_T_KKTK_SVC_KEI.HONKANYU_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.HONKANYU_IKO_KIGEN_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.KEI_CNC_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.JCCC_KANYU_BUNSHO_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.HOSHO_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVKEI_HOKI,
										JBSbatKK_T_KKTK_SVC_KEI.HOSHO_STAYMD,
										JBSbatKK_T_KKTK_SVC_KEI.HOSHO_END_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.RSV_APLY_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.RSV_CL_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.RSV_APLY_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_CHG_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.PLAN_STAYMD,
										JBSbatKK_T_KKTK_SVC_KEI.PLAN_ENDYMD,
										JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_STAYMD,
										JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_ENDYMD,
										JBSbatKK_T_KKTK_SVC_KEI.PLAN_END_SBT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_CANCEL_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_CANCEL_RSN_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_STA_KISAN_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_STA_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_CHRG_STAYMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_STP_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVCTK_CHU_USE_FAIL_SBT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_STP_RSN_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_STP_RLS_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_STP_RLS_RSN_CD,
										JBSbatKK_T_KKTK_SVC_KEI.PAUSE_STP_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_PAUSE_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_PAUSE_RSN_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_PAUSE_RSN_MEMO,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_PAUSE_RLS_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_PAUSE_RLS_RSN_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_ENDYMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_CHRG_ENDYMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_DSL_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_DLRE_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_DLRE_MEMO,
										JBSbatKK_T_KKTK_SVC_KEI.ZANCHI_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_DSL_TTDKI_FIN_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.KAIHK_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_CANCEL_CL_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_DSL_CL_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SKEKKA_SEND_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.PNLTY_HASSEI_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_NINSHO_ID,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_NINSHO_ID_PWD,
										JBSbatKK_T_KKTK_SVC_KEI.IDO_DIV,
										JBSbatKK_T_KKTK_SVC_KEI.KKST_JSEKI_UK_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.EO_TV_KKST_SNN_STAT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KKST_SNN_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.TAKNKIKI_IDO_CD,
										JBSbatKK_T_KKTK_SVC_KEI.CAS_CARD_USE_KYODAK_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD,
										JBSbatKK_T_KKTK_SVC_KEI.SHOSA_DSL_FIN_CD,
										JBSbatKK_T_KKTK_SVC_KEI.ROUTER_DSL_RSV_TRN_STAT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.ROUTER_DSL_RSV_TRN_RSLT_CD,
										JBSbatKK_T_KKTK_SVC_KEI.HAISO_WAY_CD,
										JBSbatKK_T_KKTK_SVC_KEI.KIKI_ITENS_MV_JSSIS_SKCD,
										JBSbatKK_T_KKTK_SVC_KEI.KAISHU_KIKI_UM,
										JBSbatKK_T_KKTK_SVC_KEI.HAISO_REQ_SHITEI_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.SHKA_FIN_JI_SYRZM_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.SVC_STA_JI_HIS_JOKYO_SKCD,
										JBSbatKK_T_KKTK_SVC_KEI.ADD_DTM,
										JBSbatKK_T_KKTK_SVC_KEI.ADD_OPEACNT,
										JBSbatKK_T_KKTK_SVC_KEI.UPD_DTM,
										JBSbatKK_T_KKTK_SVC_KEI.UPD_OPEACNT,
										JBSbatKK_T_KKTK_SVC_KEI.DEL_DTM,
										JBSbatKK_T_KKTK_SVC_KEI.DEL_OPEACNT,
										JBSbatKK_T_KKTK_SVC_KEI.MK_FLG,
										JBSbatKK_T_KKTK_SVC_KEI.ADD_UNYO_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.ADD_TRN_ID,
										JBSbatKK_T_KKTK_SVC_KEI.UPD_UNYO_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.UPD_TRN_ID,
										JBSbatKK_T_KKTK_SVC_KEI.DEL_UNYO_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.DEL_TRN_ID,
										JBSbatKK_T_KKTK_SVC_KEI.HCPRD_STAD_SNSTSTD_YMD,
										JBSbatKK_T_KKTK_SVC_KEI.HCPRD_STAD_SNSTSTD_YMD_IKF,
										JBSbatKK_T_KKTK_SVC_KEI.HCPRD_STAD_SNSTSTD_YMD_SCD
		                             }));
	
	private static final List<String> KK_T_KKOP_SVC_KEI_COL_LIST = Collections.unmodifiableList(
		    Arrays.asList(new String[] 
		                             {
							    		JBSbatKK_T_KKOP_SVC_KEI.KKOP_SVC_KEI_NO,
							    		JBSbatKK_T_KKOP_SVC_KEI.GENE_ADD_DTM,
							    		JBSbatKK_T_KKOP_SVC_KEI.KKOP_SVC_KEI_STAT,
							    		JBSbatKK_T_KKOP_SVC_KEI.KKOP_SVC_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.PCRS_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.PPLAN_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.KKTK_SVC_KEI_NO,
							    		JBSbatKK_T_KKOP_SVC_KEI.SYSID,
							    		JBSbatKK_T_KKOP_SVC_KEI.MSKM_DTL_NO,
							    		JBSbatKK_T_KKOP_SVC_KEI.RSV_APLY_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.RSV_CL_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.RSV_APLY_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.FTRIAL_KANYU_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.FTRIAL_PRD_ENDYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.HONKANYU_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.HONKANYU_IKO_KIGEN_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_USE_STA_KIBO_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.RSV_TSTA_KIBO_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SHOSA_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SHOSA_CL_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SKEKKA_SEND_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.KEI_CNC_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_STAYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_ENDYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_CHRG_STAYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_CHRG_ENDYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.KEIZK_SVC_STAYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.KEIZK_SVC_CHRG_STAYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.PLAN_STAYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.PLAN_ENDYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.PLAN_CHRG_STAYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.PLAN_CHRG_ENDYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.PLAN_END_SBT_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_CANCEL_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_CANCEL_RSN_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_CANCEL_CL_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_STP_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_STP_RSN_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_STP_RLS_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_STP_RLS_RSN_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.PAUSE_STP_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_PAUSE_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_PAUSE_CHRG_STA_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_PAUSE_RSN_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_PAUSE_RSN_MEMO,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_PAUSE_RLS_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_PAUSE_RLS_RSN_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_PAUSE_RLS_RSN_MEMO,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_DSL_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_DLRE_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_DLRE_MEMO,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_DSL_CL_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.SVC_DSL_TTDKI_FIN_FLG,
							    		JBSbatKK_T_KKOP_SVC_KEI.KAIHK_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.CHRG_STA_YMD_HOSEI_UM,
							    		JBSbatKK_T_KKOP_SVC_KEI.KKOP_SVC_KEI_HKHASYMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.PNLTY_HASSEI_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.IDO_DIV,
							    		JBSbatKK_T_KKOP_SVC_KEI.SHOSA_DSL_FIN_CD,
							    		JBSbatKK_T_KKOP_SVC_KEI.KIKI_RNTAI_KEI_CHGECHU_FLG,
							    		JBSbatKK_T_KKOP_SVC_KEI.ADD_DTM,
							    		JBSbatKK_T_KKOP_SVC_KEI.ADD_OPEACNT,
							    		JBSbatKK_T_KKOP_SVC_KEI.UPD_DTM,
							    		JBSbatKK_T_KKOP_SVC_KEI.UPD_OPEACNT,
							    		JBSbatKK_T_KKOP_SVC_KEI.DEL_DTM,
							    		JBSbatKK_T_KKOP_SVC_KEI.DEL_OPEACNT,
							    		JBSbatKK_T_KKOP_SVC_KEI.MK_FLG,
							    		JBSbatKK_T_KKOP_SVC_KEI.ADD_UNYO_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.ADD_TRN_ID,
							    		JBSbatKK_T_KKOP_SVC_KEI.UPD_UNYO_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.UPD_TRN_ID,
							    		JBSbatKK_T_KKOP_SVC_KEI.DEL_UNYO_YMD,
							    		JBSbatKK_T_KKOP_SVC_KEI.DEL_TRN_ID,
							    		JBSbatKK_T_KKOP_SVC_KEI.NEW_PCRS_APLY_FLG,
		                             }));
	
	private static final List<String> KK_T_SVKEI_KAISEN_UW_COL_LIST = Collections.unmodifiableList(
		    Arrays.asList(new String[] 								
		                             {JBSbatKK_T_SVKEI_KAISEN_UW.SVC_KEI_KAISEN_UCWK_NO,
										JBSbatKK_T_SVKEI_KAISEN_UW.GENE_ADD_DTM,
										JBSbatKK_T_SVKEI_KAISEN_UW.SVC_KEI_KAISEN_UCWK_STAT,
										JBSbatKK_T_SVKEI_KAISEN_UW.MSKM_DTL_NO,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_PLC_AD_MI_FIX_FLG,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_PLC_AD_MI_FIX_RLS_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLC_KSH_AD_SAI_FLG,
										JBSbatKK_T_SVKEI_KAISEN_UW.CUST_SKK_AD_MI_FIX_FLG,
										JBSbatKK_T_SVKEI_KAISEN_UW.CUST_SOS_USE_UM,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.MANSION_BUKKEN_NO,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_TELNO,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLC_KANA,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_AD_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_PCD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_STATE_NM,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_CITY_NM,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_OAZTSU_NM,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_AZCHO_NM,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_BNCHIGO,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_ADRTTM,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_ADRRM,
										JBSbatKK_T_SVKEI_KAISEN_UW.SKS_YO_KISN_PLACE_AD_RM_NO,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_NO,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_PLC_KKK_SEIRI_CHU_FLG,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_PLC_HSK_CD_1,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_PLC_HSK_CD_2,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_PLC_HSK_MEMO,
										JBSbatKK_T_SVKEI_KAISEN_UW.USE_STAYMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.AD_FORM_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.SHUNKO_RSV_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.EPOWER_SODEN_RSV_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.NYUKYO_RSV_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.HIKIWATASHI_RSV_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.HIKKOSHI_RSV_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.SKS_SHS_AD_CHG_UM,
										JBSbatKK_T_SVKEI_KAISEN_UW.SKS_SHS_AD_CHG_KIBO_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KSHAD_CHG_UM,
										JBSbatKK_T_SVKEI_KAISEN_UW.KSHAD_CHG_KIBO_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.XZAHYO,
										JBSbatKK_T_SVKEI_KAISEN_UW.YZAHYO,
										JBSbatKK_T_SVKEI_KAISEN_UW.LGTD,
										JBSbatKK_T_SVKEI_KAISEN_UW.LTTD,
										JBSbatKK_T_SVKEI_KAISEN_UW.ZAHYO_HOSEI_UM,
										JBSbatKK_T_SVKEI_KAISEN_UW.TV_KOBET_TAIO_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.TV_ANTENNA_UM,
										JBSbatKK_T_SVKEI_KAISEN_UW.DIRECTION_CD_1,
										JBSbatKK_T_SVKEI_KAISEN_UW.DIRECTION_CD_2,
										JBSbatKK_T_SVKEI_KAISEN_UW.KODATE_KCKU_FLR_CNT_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.SHUGJ_NYUKYO_FLR_CNT_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.PON_SBT_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.LOOPBACK_TEST_FIN_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_TK_COMP_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.VDSL_USE_TEL_KISN_SBT_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.VDSL_USE_DKSN_SWCH_RSV_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.VDSL_USE_TG_DBKSN_SBT_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.VDSL_USE_TG_TELNO,
										JBSbatKK_T_SVKEI_KAISEN_UW.TEL_BAS_HOST_ID,
										JBSbatKK_T_SVKEI_KAISEN_UW.TEL_VLAN_ID,
										JBSbatKK_T_SVKEI_KAISEN_UW.VLAN_ID_FIX_FLG,
										JBSbatKK_T_SVKEI_KAISEN_UW.TEL_VLAN_ID_TRKM_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.IDO_DIV,
										JBSbatKK_T_SVKEI_KAISEN_UW.HIKKOSHI_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.GAITO_AREA_SVC_STAYMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.TEKKYO_KOJI_KIBO_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.USE_ENDYMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KITEN_HDSHO_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.SHYAKK_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.SVC_CANCEL_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.SVC_CANCEL_RSN_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.SVKEI_KISN_UW_CNCL_CL_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KEPCO_BUSIOFFICE_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.ADD_DTM,
										JBSbatKK_T_SVKEI_KAISEN_UW.ADD_OPEACNT,
										JBSbatKK_T_SVKEI_KAISEN_UW.UPD_DTM,
										JBSbatKK_T_SVKEI_KAISEN_UW.UPD_OPEACNT,
										JBSbatKK_T_SVKEI_KAISEN_UW.DEL_DTM,
										JBSbatKK_T_SVKEI_KAISEN_UW.DEL_OPEACNT,
										JBSbatKK_T_SVKEI_KAISEN_UW.MK_FLG,
										JBSbatKK_T_SVKEI_KAISEN_UW.ADD_UNYO_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.ADD_TRN_ID,
										JBSbatKK_T_SVKEI_KAISEN_UW.UPD_UNYO_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.UPD_TRN_ID,
										JBSbatKK_T_SVKEI_KAISEN_UW.DEL_UNYO_YMD,
										JBSbatKK_T_SVKEI_KAISEN_UW.DEL_TRN_ID,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_TOU_INFO,
										JBSbatKK_T_SVKEI_KAISEN_UW.ROZETT_STC_STAT_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.CONSNT_STC_NYO_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.TNMT_STC_FLR_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_TD_SETPLC_1_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_TD_SETPLC_2_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_TD_STC_KASHO_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_TD_SETPLC_1_OTR,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_TD_SETPLC_2_OTR,
										JBSbatKK_T_SVKEI_KAISEN_UW.KISN_TD_STC_KASHO_OTR,
										JBSbatKK_T_SVKEI_KAISEN_UW.TANMT_STC_MEN_CD,
										JBSbatKK_T_SVKEI_KAISEN_UW.KAISEN_PLACE_RENBAN,
										JBSbatKK_T_SVKEI_KAISEN_UW.HGW_KKN_FFG,
		                             }));
	
	/** オーダ発行条件番号シーケンス */
	private static final String SEQ_ODR_HAKKO_JOKEN_NO = "SEQ_ODR_HAKKO_JOKEN_NO";
	// ANK-4577-00-00 DEL START
//	/** 同一処理番号シーケンス */
//	private static final String SEQ_SAME_TRN_NO = "SEQ_SAME_TRN_NO";
	// ANK-4577-00-00 DEL END
	/** オーダ情報作成ワーク番号シーケンス */
	private static final String SEQ_ODR_INF_SKSI_WK_NO = "SEQ_ODR_INF_SKSI_WK_NO";
	
	/** 不明機器（業務パラメータ管理のキーリスト）*/
	private static final String[] HUMEI_MODEL_CD_ARRAY =
	{
		JKKStrConst.KK_SBRY_DUMMY_ONU
		, JKKStrConst.KK_SBRY_DUMMY_TKNRT
		, JKKStrConst.KK_SBRY_DUMMY_HGW
		, JKKStrConst.KK_SBRY_DUMMY_MESH
		, JKKStrConst.KK_SBRY_DUMMY_MLAN
	};
	
	/** 不明機器マップ*/
	private HashMap<String, String> humeiModelCdMap = new HashMap<String, String>();
	
	/** 機器提供サービス契約番号リスト*/
	private ArrayList<String> kktkSvcKeiNoList = new ArrayList<String>();
	
	/** 宅内機器型式リスト*/
	private String taknkikiModelList;
	

	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
		db_ZM_M_WORK_PARAM_KNRI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_ZM_M_WORK_PARAM_KNRI);
		db_KK_T_KKTK_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KKTK_SVC_KEI);
		db_KK_T_KKTK_SVC_KEI_SAKI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KKTK_SVC_KEI);
		db_KK_T_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
		db_KK_T_KKOP_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KKOP_SVC_KEI);
		db_DK_T_HAISO_TG_BPIN = new JBSbatSQLAccess(commonItem, D_TBL_NAME_DK_T_HAISO_TG_BPIN);
		db_DK_T_HMPIN_KIKI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_DK_T_HMPIN_KIKI);
		db_DK_T_HMPIN_KIKI_MOTO = new JBSbatSQLAccess(commonItem, D_TBL_NAME_DK_T_HMPIN_KIKI);
		db_KK_T_SVKEI_KAISEN_UW = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVKEI_KAISEN_UW);
		db_KK_T_ODR_SET = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ODR_SET);
		db_KK_T_SVC_KEI_UCWK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI_UCWK);
		db_KK_T_ODR_HAKKO_JOKEN = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ODR_HAKKO_JOKEN);
		db_KK_T_ODR_INF_SKSI_WK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ODR_INF_SKSI_WK);
		db_KK_T_PRG = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_PRG);
		// ANK-4656-00-00 ADD START
		db_KU_T_KJAK_TG_TKKIKI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_KJAK_TG_TKKIKI);
		// ANK-4656-00-00 ADD END
		
		// 不明機器を取得
		JBSbatCommonDBInterface mapWorkParamKnri = new JBSbatCommonDBInterface();
		Object[] whereWorkParamKnri = new Object[3];
		whereWorkParamKnri[1] = this.opeDate;
		whereWorkParamKnri[2] = this.opeDate;
		
		for (int i = 0; i < HUMEI_MODEL_CD_ARRAY.length; i++)
		{
			// 業務パラメータ管理の取得条件を設定
			whereWorkParamKnri[0] = HUMEI_MODEL_CD_ARRAY[i];
			executeZM_M_WORK_PARAM_KNRI_KK_SELECT_016(whereWorkParamKnri);
			
			// 業務パラメータ管理のデータ取得
			mapWorkParamKnri = db_ZM_M_WORK_PARAM_KNRI.selectNext();
			
			// nullの場合は未設定
			if(null != mapWorkParamKnri)
			{
				// 不明機器マップを作成
				humeiModelCdMap.put(HUMEI_MODEL_CD_ARRAY[i],mapWorkParamKnri.getString(JBSbatZM_M_WORK_PARAM_KNRI.WORK_PARAM_SETTE_VALUE));
			}
		}

	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		// 出力情報
		JBSbatOutputItem outputItem = new JBSbatOutputItem();
		
		// (1)以下の変数を初期化
		// 機器提供サービス契約番号リストをクリア
		kktkSvcKeiNoList.clear();
		// 宅内機器型式リストをクリア
		taknkikiModelList = "";
		
		String mskmDtlNo = null;
		String idoDiv = null;
		String addDtm = null;
		
		String svcKeiGeneAddSaki = null;
		String svcStaYmdSaki = null;
		
		try
		{
			// 乗換先サービス契約番号
			String sakiSvcKeiNo = inMap.getString("SVC_KEI_NO");
			// 乗換元サービス契約番号
			String motoSvcKeiNo = inMap.getString("NRKEMT_SVKEI_NO");
			
			super.logPrint.printDebugLog("乗換先サービス契約番号：" + sakiSvcKeiNo + "／乗換元サービス契約番号：" + motoSvcKeiNo);
			
			// (2)@乗換先の機器提供サービス契約情報を取得
			JBSbatCommonDBInterface mapKktkSvcKeiSaki = null;
			
			// 乗換先の機器提供サービス契約のデータ取得
			executeKK_T_KKTK_SVC_KEI_KK_SELECT_280(sakiSvcKeiNo, humeiModelCdMap.get(JKKStrConst.KK_SBRY_DUMMY_ONU), humeiModelCdMap.get(JKKStrConst.KK_SBRY_DUMMY_TKNRT)
					, humeiModelCdMap.get(JKKStrConst.KK_SBRY_DUMMY_HGW), humeiModelCdMap.get(JKKStrConst.KK_SBRY_DUMMY_MESH), humeiModelCdMap.get(JKKStrConst.KK_SBRY_DUMMY_MLAN));
			
			// (2)A乗換先のサービス契約（最小）のデータ取得
			executeKK_T_SVC_KEI_KK_SELECT_386(sakiSvcKeiNo);
			
			JBSbatCommonDBInterface mapSvcKeiSakiMin = db_KK_T_SVC_KEI.selectNext();
			
			if(null != mapSvcKeiSakiMin)
			{
				// 乗換先のサービス契約（最小）.申込明細番号
				mskmDtlNo = mapSvcKeiSakiMin.getString(JBSbatKK_T_SVC_KEI.MSKM_DTL_NO);
				// 乗換先のサービス契約（最小）.異動区分
				idoDiv = mapSvcKeiSakiMin.getString(JBSbatKK_T_SVC_KEI.IDO_DIV);
				// 乗換先のサービス契約（最小）.登録年月日時分秒
				addDtm = mapSvcKeiSakiMin.getString(JBSbatKK_T_SVC_KEI.ADD_DTM);
			}
			else
			{
				return null;
			}
			
			// (2)B乗換先のサービス契約（カレント）のデータ取得
			executeKK_T_SVC_KEI_KK_SELECT_384(sakiSvcKeiNo);
			
			JBSbatCommonDBInterface mapSvcKeiSakiCrnt = db_KK_T_SVC_KEI.selectNext();
			
			if(null != mapSvcKeiSakiCrnt)
			{
				// 乗換先のサービス契約（カレント）.世代登録年月日時分秒
				svcKeiGeneAddSaki = mapSvcKeiSakiCrnt.getString(JBSbatKK_T_SVC_KEI.GENE_ADD_DTM);
				// 乗換先のサービス契約（カレント）.サービス開始年月日
				svcStaYmdSaki = mapSvcKeiSakiCrnt.getString(JBSbatKK_T_SVC_KEI.SVC_STA_YMD);
			}
			else
			{
				return null;
			}
			
			// (3)乗換先の機器提供サービス契約情報の取得分ループ
			while(null != (mapKktkSvcKeiSaki = db_KK_T_KKTK_SVC_KEI_SAKI.selectNext()))
			{
				HashMap<String, String> kktkSvcKeiMap = new HashMap<String, String>();
				HashMap<String, String> kkopSvcKeiMap = new HashMap<String, String>();
				HashMap<String, String> svkeiKaisenUwMap = new HashMap<String, String>();
				
				String kktkSvcKeiNoSaki = null;
				String kktkSvcKeiGeneAddSaki = null;
				String pcrsCdSaki = null;
				String taknkikiSbtCdSaki = null;
				String kikiChgNoSaki = null;
				String oyaKeiSkbtCd = null;
				String svcKeiKaisenUcwkNoSaki = null;
				
				String kktkSvcKeiNoMoto = null;
				// ANK-4577-00-00 DEL START
//				String kktkSvcKeiGeneAddMoto = null;
				// ANK-4577-00-00 DEL END
				String taknkikiModelCdMoto = null;
				String kikiSeizoNoMoto = null;
				String kikiChgNoMoto = null;
				String kikiStcSakiPlaceNoMoto = null;
				String svcKeiKaisenUcwkNoMoto = null;
				String kktkSvcKeiEndymdMoto = null;
				
				
				String kkopSvcKeiNoSaki = null;
				String kkopSvcKeiGeneAddSaki = null;
				
				// ANK-4577-00-00 DEL START
//				String kkopSvcKeiNoMoto = null;
//				String kkopSvcKeiGeneAddMoto = null;
				// ANK-4577-00-00 DEL END
				String kkopSvcKeiEndymdMoto = null;
				
				String haisoTaibpinNo = null;
				
				String hmpinKikiNo = null;
				
				// ANK-4577-00-00 DEL START
//				String svcKeiKaizenUcwkGeneAddMoto = null;
				// ANK-4577-00-00 DEL END
				String ponSbtCdMoto = null;
				
				// ANK-4577-00-00 DEL START
//				String svcKeiGeneAddMoto = null;
				// ANK-4577-00-00 DEL END
				
				String svcKeiUcwkNoSaki = null;
				String svcKeiUcwkGeneAddSaki = null;
				
				String kkTKktkSvcKeiGeneAdd = null;
				String kkTKkopSvcKeiGeneAdd = null;
				String kkTSvkeiKaisenUwGeneAdd = null;
				boolean dbExistsFlg = true;
				
				// 乗換先の機器提供サービス契約.機器提供サービス契約番号
				kktkSvcKeiNoSaki = mapKktkSvcKeiSaki.getString(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO);
				// 乗換先の機器提供サービス契約.世代登録年月日時分秒
				kktkSvcKeiGeneAddSaki = mapKktkSvcKeiSaki.getString(JBSbatKK_T_KKTK_SVC_KEI.GENE_ADD_DTM);
				// 乗換先の機器提供サービス契約.料金コースコード
				pcrsCdSaki = mapKktkSvcKeiSaki.getString(JBSbatKK_T_KKTK_SVC_KEI.PCRS_CD);
				// 乗換先の機器提供サービス契約.宅内機器種別コード
				taknkikiSbtCdSaki = mapKktkSvcKeiSaki.getString(JBSbatKK_T_KKTK_SVC_KEI.TAKNKIKI_SBT_CD);
				// 乗換先の機器提供サービス契約.機器変更番号
				kikiChgNoSaki = mapKktkSvcKeiSaki.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_CHG_NO);
				// 乗換先の機器提供サービス契約.親契約識別コード
				oyaKeiSkbtCd = mapKktkSvcKeiSaki.getString(JBSbatKK_T_KKTK_SVC_KEI.OYA_KEI_SKBT_CD);
				// 乗換先の機器提供サービス契約.サービス契約回線内訳番号
				svcKeiKaisenUcwkNoSaki = mapKktkSvcKeiSaki.getString(JBSbatKK_T_KKTK_SVC_KEI.SVC_KEI_KAISEN_UCWK_NO);
				
				super.logPrint.printDebugLog("乗換先機器提供サービス契約番号：" + kktkSvcKeiNoSaki);
				
				// (3)@乗換先親契約識別コード が "02"(サービス契約回線内訳)の場合
				if(JKKStrConst.CD_DIV_OYAKEISKBTCD_SVKEIKSNUW.equals(oyaKeiSkbtCd))
				{
					// (3)@(a)乗換元の機器提供サービス契約（回線機器）のデータ取得
					executeKK_T_KKTK_SVC_KEI_KK_SELECT_281(motoSvcKeiNo, taknkikiSbtCdSaki, addDtm);
				}
				else
				{
					// (3)@(b)乗換元の機器提供サービス契約（サービス契約機器）のデータ取得
					executeKK_T_KKTK_SVC_KEI_KK_SELECT_282(motoSvcKeiNo, taknkikiSbtCdSaki, pcrsCdSaki, addDtm);
				}
				
				// 機器提供サービス契約番号リストに存在しないレコードを取得
				JBSbatCommonDBInterface mapKktkSvcKeiMoto = null;
				while(null != (mapKktkSvcKeiMoto = db_KK_T_KKTK_SVC_KEI.selectNext()))
				{
					if(kktkSvcKeiNoList.contains(mapKktkSvcKeiMoto.getString(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO)))
					{
						continue;
					}
					else
					{
						break;
					}
				}
				
				// (3)A乗換元の機器提供サービス契約が存在しない場合
				if(null == mapKktkSvcKeiMoto)
				{
					// スキップ
					continue;
				}
				
				// 乗換元の機器提供サービス契約.機器提供サービス契約番号
				kktkSvcKeiNoMoto = mapKktkSvcKeiMoto.getString(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO);
				// ANK-4577-00-00 DEL START
				// 乗換元の機器提供サービス契約.世代登録年月日時分秒
//				kktkSvcKeiGeneAddMoto = mapKktkSvcKeiMoto.getString(JBSbatKK_T_KKTK_SVC_KEI.GENE_ADD_DTM);
				// ANK-4577-00-00 DEL END
				// 乗換元の機器提供サービス契約.宅内機器型式コード
				taknkikiModelCdMoto = mapKktkSvcKeiMoto.getString(JBSbatKK_T_KKTK_SVC_KEI.TAKNKIKI_MODEL_CD);
				// 乗換元の機器提供サービス契約.機器製造番号
				kikiSeizoNoMoto = mapKktkSvcKeiMoto.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_SEIZO_NO);
				// 乗換元の機器提供サービス契約.機器変更番号
				kikiChgNoMoto = mapKktkSvcKeiMoto.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_CHG_NO);
				// 乗換元の機器提供サービス契約.機器設置先場所番号
				kikiStcSakiPlaceNoMoto = mapKktkSvcKeiMoto.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_PLACE_NO);
				// 乗換元の機器提供サービス契約.サービス契約回線内訳番号
				svcKeiKaisenUcwkNoMoto = mapKktkSvcKeiMoto.getString(JBSbatKK_T_KKTK_SVC_KEI.SVC_KEI_KAISEN_UCWK_NO);
				// 乗換元の機器提供サービス契約.サービス課金終了年月日
				kktkSvcKeiEndymdMoto = mapKktkSvcKeiMoto.getString(JBSbatKK_T_KKTK_SVC_KEI.SVC_CHRG_ENDYMD);
				
				super.logPrint.printDebugLog("乗換元機器提供サービス契約番号：" + kktkSvcKeiNoMoto);
				
				// 機器提供サービス契約番号リストに対象の機器提供サービス契約番号を追加
				kktkSvcKeiNoList.add(kktkSvcKeiNoMoto);
				
				// 乗換元の機器提供サービス契約.サービス課金終了年月日の翌月１日を算出
				String kktkSvcKeiNextMonth = null;
				
				// 取得した基準年月日が空でなく、桁数が8桁以上の場合
				if (!JKKStringUtil.isNullBlank(kktkSvcKeiEndymdMoto) && 8 <= kktkSvcKeiEndymdMoto.length())
				{
					// 基準年月日の翌月1日を設定
					String date = JBSbatDateUtil.adjustMonth(kktkSvcKeiEndymdMoto, 1);
					kktkSvcKeiNextMonth = date.substring(0, 6) + "01";
				}
				
				// (3)B乗換先の機器提供サービス契約のPK検索
				JBSbatCommonDBInterface kkTKktkSvcKeiPkSelectMap = executeKK_T_KKTK_SVC_KEI_PKSELECT(kktkSvcKeiNoSaki, kktkSvcKeiGeneAddSaki);
				if(null != kkTKktkSvcKeiPkSelectMap)
				{
					for (String key: KK_T_KKTK_SVC_KEI_COL_LIST)
					{
						kktkSvcKeiMap.put(key, kkTKktkSvcKeiPkSelectMap.getString(key));
					}
				}
				
				// 登録する機器提供サービス契約.世代登録年月日を保持
				kkTKktkSvcKeiGeneAdd = JKKBatCommon.getSysDateTimeStamp();
				
				// (3)C機器提供サービス契約の登録項目を設定
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.GENE_ADD_DTM, kkTKktkSvcKeiGeneAdd);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_STAT, JKKStrConst.CD00056_STAT_TEIKYO_CHU);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.TAKNKIKI_MODEL_CD, taknkikiModelCdMoto);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.KIKI_SEIZO_NO, kikiSeizoNoMoto);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.KIKI_STC_SAKI_PLACE_NO, kikiStcSakiPlaceNoMoto);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.KEI_CNC_YMD, this.opeDate);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.RSV_APLY_YMD, this.opeDate);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.RSV_APLY_CD, JKKStrConst.CD00343_2);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.PLAN_STAYMD, svcStaYmdSaki);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_STAYMD, kktkSvcKeiNextMonth);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.PLAN_ENDYMD, JKKStrConst.END_YMD_DEFAULT);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_ENDYMD, JKKStrConst.END_YMD_DEFAULT);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.SVC_STA_YMD, svcStaYmdSaki);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.SVC_CHRG_STAYMD, kktkSvcKeiNextMonth);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.SVC_ENDYMD, JKKStrConst.END_YMD_DEFAULT);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.SVC_CHRG_ENDYMD, JKKStrConst.END_YMD_DEFAULT);
				kktkSvcKeiMap.put(JBSbatKK_T_KKTK_SVC_KEI.SHKA_FIN_JI_SYRZM_FLG, JKKStrConst.CD00581_1);
				
				// 乗換先の機器提供サービス契約を登録
				executeKK_T_KKTK_SVC_KEI_PKINSERT(kktkSvcKeiMap);
				
				JBSbatCommonDBInterface mapKkopSvcKeiSaki = null;
				JBSbatCommonDBInterface mapKkopSvcKeiMoto = null;
				
				// (3)D乗換先宅内機器種別コードが "R0"(多機能ルーター)または"S0"(HGW)の場合
				if(JKKStrConst.TAKNKIKI_SBT_CD_TAKINORT.equals(taknkikiSbtCdSaki) || JKKStrConst.TAKNKIKI_SBT_CD_HGW.equals(taknkikiSbtCdSaki))
				{
					// (3)D(a)乗換先の機器オプションサービス契約を取得
					executeKK_T_KKOP_SVC_KEI_KK_SELECT_035(kktkSvcKeiNoSaki);
					
					mapKkopSvcKeiSaki = db_KK_T_KKOP_SVC_KEI.selectNext();
					
					if(null != mapKkopSvcKeiSaki)
					{
						// 乗換先の機器オプションサービス契約.機器オプションサービス契約番号
						kkopSvcKeiNoSaki = mapKkopSvcKeiSaki.getString(JBSbatKK_T_KKOP_SVC_KEI.KKOP_SVC_KEI_NO);
						// 乗換先の機器オプションサービス契約.世代登録年月日時分秒
						kkopSvcKeiGeneAddSaki = mapKkopSvcKeiSaki.getString(JBSbatKK_T_KKOP_SVC_KEI.GENE_ADD_DTM);
						
						// (3)D(b)乗換先の機器オプションサービス契約を取得
						executeKK_T_KKOP_SVC_KEI_KK_SELECT_036(kktkSvcKeiNoMoto, addDtm);
						
						mapKkopSvcKeiMoto = db_KK_T_KKOP_SVC_KEI.selectNext();
						
						if(null != mapKkopSvcKeiMoto)
						{
							// ANK-4577-00-00 DEL START
//							// 乗換元の機器オプションサービス契約.機器オプションサービス契約番号
//							kkopSvcKeiNoMoto = mapKkopSvcKeiMoto.getString(JBSbatKK_T_KKOP_SVC_KEI.KKOP_SVC_KEI_NO);
//							// 乗換元の機器オプションサービス契約.世代登録年月日時分秒
//							kkopSvcKeiGeneAddMoto = mapKkopSvcKeiMoto.getString(JBSbatKK_T_KKOP_SVC_KEI.GENE_ADD_DTM);
							// ANK-4577-00-00 DEL END
							// 乗換元の機器オプションサービス契約.サービス課金終了年月日
							kkopSvcKeiEndymdMoto = mapKkopSvcKeiMoto.getString(JBSbatKK_T_KKOP_SVC_KEI.SVC_CHRG_ENDYMD);
							
							// 乗換元の機器オプションサービス契約.サービス課金終了年月日の翌月１日を算出
							String kkopSvcKeiNextMonth = null;
							
							// 取得した基準年月日が空でなく、桁数が8桁以上の場合
							if (!JKKStringUtil.isNullBlank(kkopSvcKeiEndymdMoto) && 8 <= kkopSvcKeiEndymdMoto.length())
							{
								// 基準年月日の翌月1日を設定
								String date = JBSbatDateUtil.adjustMonth(kkopSvcKeiEndymdMoto, 1);
								kkopSvcKeiNextMonth = date.substring(0, 6) + "01";
							}
							
							// (3)D(c)乗換先の機器オプションサービス契約のPK検索
							JBSbatCommonDBInterface kkTKkopSvcKeiPkSelectMap = executeKK_T_KKOP_SVC_KEI_PKSELECT(kkopSvcKeiNoSaki, kkopSvcKeiGeneAddSaki);
							if(null != kkTKkopSvcKeiPkSelectMap)
							{
								for (String key: KK_T_KKOP_SVC_KEI_COL_LIST)
								{
									kkopSvcKeiMap.put(key, kkTKkopSvcKeiPkSelectMap.getString(key));
								}
							}
							
							// 登録する機器オプションサービス契約.世代登録年月日を保持
							kkTKkopSvcKeiGeneAdd = JKKBatCommon.getSysDateTimeStamp();
							
							// (3)D(d)機器オプションサービス契約の登録項目を設定
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.GENE_ADD_DTM, kkTKkopSvcKeiGeneAdd);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.KKOP_SVC_KEI_STAT, JKKStrConst.CD00056_STAT_TEIKYO_CHU);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.KEI_CNC_YMD, this.opeDate);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.RSV_APLY_YMD, this.opeDate);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.RSV_APLY_CD, JKKStrConst.CD00343_2);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.PLAN_STAYMD, svcStaYmdSaki);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.PLAN_CHRG_STAYMD, kkopSvcKeiNextMonth);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.PLAN_ENDYMD, JKKStrConst.END_YMD_DEFAULT);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.PLAN_CHRG_ENDYMD, JKKStrConst.END_YMD_DEFAULT);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.SVC_STAYMD, svcStaYmdSaki);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.SVC_CHRG_STAYMD, kkopSvcKeiNextMonth);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.SVC_ENDYMD, JKKStrConst.END_YMD_DEFAULT);
							kkopSvcKeiMap.put(JBSbatKK_T_KKOP_SVC_KEI.SVC_CHRG_ENDYMD, JKKStrConst.END_YMD_DEFAULT);
							
							// 乗換先の機器オプションサービス契約を登録
							executeKK_T_KKOP_SVC_KEI_PKINSERT(kkopSvcKeiMap);
						}
						else
						{
							dbExistsFlg = false;
						}
					}
					else
					{
						dbExistsFlg = false;
					}
				}
				
				// (3)E乗換元の配送対象物品を取得
				executeDK_T_HAISO_TG_BPIN_KK_SELECT_008(kktkSvcKeiNoMoto, kikiChgNoMoto);
				
				JBSbatCommonDBInterface mapHaisoTgBpin = db_DK_T_HAISO_TG_BPIN.selectNext();
				
				if(null != mapHaisoTgBpin)
				{
					// 乗換元の配送対象物品.配送対象物品番号
					haisoTaibpinNo = mapHaisoTgBpin.getString(JBSbatDK_T_HAISO_TG_BPIN.HAISO_TAIBPIN_NO);
					
					// (3)F乗換元の配送対象物品を更新
					executeDK_T_HAISO_TG_BPIN_PKUPDATE(new Object[] {
							kktkSvcKeiNoSaki, 
							kikiChgNoSaki
						}, new Object[] {
							haisoTaibpinNo
					});
				}
				
				
				// (3)G乗換元の返品機器情報を取得
				executeDK_T_HMPIN_KIKI_KK_SELECT_016(kktkSvcKeiNoMoto, kikiChgNoMoto);
				
				JBSbatCommonDBInterface mapHmpinKiki = null;
				
				while(null !=  (mapHmpinKiki = db_DK_T_HMPIN_KIKI_MOTO.selectNext()))
				{
					// 乗換元の返品機器番号
					hmpinKikiNo = mapHmpinKiki.getString(JBSbatDK_T_HMPIN_KIKI.HMPIN_KIKI_NO);
					
					executeDK_T_HMPIN_KIKI_PKUPDATE(new Object[] {
							JBSbatKKConst.CD00296_HMPIN_KIKI_STAT_004,
							this.opeDate, 
							JBSbatKKConst.CD00633_HMPIN_KIKI_CLRE_CD_99
						}, new Object[] {
							hmpinKikiNo
					});
				}
				
				// (3)H乗換先親契約識別コード が "02"(サービス契約回線内訳)の場合
				if(JKKStrConst.CD_DIV_OYAKEISKBTCD_SVKEIKSNUW.equals(oyaKeiSkbtCd))
				{
					
					// (3)I乗換元のサービス契約回線内訳を取得
					executeKK_T_SVKEI_KAISEN_UW_KK_SELECT_007(svcKeiKaisenUcwkNoMoto);
					
					JBSbatCommonDBInterface mapSvkeiKaisenUwMoto = db_KK_T_SVKEI_KAISEN_UW.selectNext();
					
					if(null != mapSvkeiKaisenUwMoto)
					{
						// ANK-4577-00-00 DEL START
						// 乗換元のサービス契約回線内訳.世代登録年月日時分秒
//						svcKeiKaizenUcwkGeneAddMoto = mapSvkeiKaisenUwMoto.getString(JBSbatKK_T_SVKEI_KAISEN_UW.GENE_ADD_DTM);
						// ANK-4577-00-00 DEL END
						// 乗換元のサービス契約回線内訳.PON種別コード
						ponSbtCdMoto = mapSvkeiKaisenUwMoto.getString(JBSbatKK_T_SVKEI_KAISEN_UW.PON_SBT_CD);
						
						// (3)J乗換先のサービス契約回線内訳を取得
						executeKK_T_SVKEI_KAISEN_UW_KK_SELECT_007(svcKeiKaisenUcwkNoSaki);
						
						JBSbatCommonDBInterface mapSvkeiKaisenUwSaki = db_KK_T_SVKEI_KAISEN_UW.selectNext();
						
						if(null != mapSvkeiKaisenUwSaki)
						{
							// 乗換先のサービス契約回線内訳.世代登録年月日
							kkTSvkeiKaisenUwGeneAdd = mapSvkeiKaisenUwSaki.getString(JBSbatKK_T_SVKEI_KAISEN_UW.GENE_ADD_DTM);
							
							// (3)K乗換先宅内機器種別コードが "D0"(ONU)または"S0"(HGW)の場合
							if(JKKStrConst.TAKNKIKI_SBT_CD_ONU.equals(taknkikiSbtCdSaki) || JKKStrConst.TAKNKIKI_SBT_CD_HGW.equals(taknkikiSbtCdSaki))
							{
								for (String key: KK_T_SVKEI_KAISEN_UW_COL_LIST)
								{
									svkeiKaisenUwMap.put(key, mapSvkeiKaisenUwSaki.getString(key));
								}
								
								// 登録するサービス契約回線内訳.世代登録年月日を保持
								kkTSvkeiKaisenUwGeneAdd = JKKBatCommon.getSysDateTimeStamp();
								
								// (3)K(a)サービス契約回線内訳の登録項目を設定
								svkeiKaisenUwMap.put(JBSbatKK_T_SVKEI_KAISEN_UW.GENE_ADD_DTM, kkTSvkeiKaisenUwGeneAdd);
								svkeiKaisenUwMap.put(JBSbatKK_T_SVKEI_KAISEN_UW.PON_SBT_CD, ponSbtCdMoto);
								
								// 乗換先のサービス契約回線内訳を登録
								executeKK_T_SVKEI_KAISEN_UW_PKINSERT(svkeiKaisenUwMap);
							}
						}
						else
						{
							dbExistsFlg = false;
						}
					}
					else
					{
						dbExistsFlg = false;
					}
					
					// (3)L乗換先宅内機器種別コードが "R0"(多機能ルーター)または"S0"(HGW)の場合 且つ DB存在フラグが true の場合
					if((JKKStrConst.TAKNKIKI_SBT_CD_TAKINORT.equals(taknkikiSbtCdSaki) || JKKStrConst.TAKNKIKI_SBT_CD_HGW.equals(taknkikiSbtCdSaki)) && dbExistsFlg)
					{
						// ANK-4577-00-00 DEL START
//						// (3)L(a)乗換元のオーダ設定を取得
//						executeKK_T_ODR_SET_KK_SELECT_028(kktkSvcKeiNoMoto, svcKeiKaisenUcwkNoMoto, taknkikiModelCdMoto, kikiSeizoNoMoto);
//						
//						JBSbatCommonDBInterface mapOdrSet = db_KK_T_ODR_SET.selectNext();
//						
//						// 同一処理番号
//						String sameTrnNo = null;
//						
//						// (3)L(b)乗換元のオーダ設定が取得できない場合
//						if(null == mapOdrSet)
//						{
//							// (3)L(b)-1.乗換元のサービス契約を取得
//							executeKK_T_SVC_KEI_KK_SELECT_384(motoSvcKeiNo);
//							
//							JBSbatCommonDBInterface mapSvcKeiMoto = db_KK_T_SVC_KEI.selectNext();
//							
//							if(null != mapSvcKeiMoto)
//							{
//								// 乗換元のサービス契約.世代登録年月日時分秒
//								svcKeiGeneAddMoto = mapSvcKeiMoto.getString(JBSbatKK_T_SVC_KEI.GENE_ADD_DTM);
//									
//								// オーダ発行条件番号をシーケンスから取得（解約用）
//								String odrHakkoJokenNoDsl = JCCBatCommon.getFormatedNextSeq(commonItem, SEQ_ODR_HAKKO_JOKEN_NO,"",12);
//								// オーダ発行条件番号をシーケンスから取得（消去用）
//								String odrHakkoJokenNoDel = JCCBatCommon.getFormatedNextSeq(commonItem, SEQ_ODR_HAKKO_JOKEN_NO,"",12);
//								// 同一処理番号
//								sameTrnNo = JCCBatCommon.getFormatedNextSeq(commonItem, SEQ_SAME_TRN_NO,"",12);
//								
//								
//								// (3)L(b)-3.乗換元のオーダ発行条件（解約・消去SOD）の全項目登録
//								// (3)L(b)-4.乗換元のオーダ情報作成ワーク（解約・消去SOD）の全項目登録
//								Object[] setParamInsHakkoJoken = new Object[32];
//								Object[] setParamInsInfSksiWk = new Object[44];
//								
//								setParamInsHakkoJoken[1] = motoSvcKeiNo;
//								setParamInsHakkoJoken[3] = kktkSvcKeiNoMoto;
//								setParamInsHakkoJoken[7] = JKKBatConst.ORDER_SBT_CD_TEL;
//								setParamInsHakkoJoken[8] = JKKBatConst.SVC_ORDER_CD_MULTI_RUTA;
//								setParamInsHakkoJoken[10] = JKKBatConst.ODR_HAKKO_JOKEN_CD_SKGHAKKO;
//								setParamInsHakkoJoken[12] = sameTrnNo;
//								setParamInsHakkoJoken[13] = taknkikiModelCdMoto;
//								setParamInsHakkoJoken[14] = kikiSeizoNoMoto;
//								setParamInsHakkoJoken[17] = svcKeiKaisenUcwkNoMoto;
//								
//								setParamInsInfSksiWk[3] = motoSvcKeiNo;
//								setParamInsInfSksiWk[4] = svcKeiGeneAddMoto;
//								setParamInsInfSksiWk[7] = kktkSvcKeiNoMoto;
//								setParamInsInfSksiWk[8] = kktkSvcKeiGeneAddMoto;
//								setParamInsInfSksiWk[15] = svcKeiKaisenUcwkNoMoto;
//								setParamInsInfSksiWk[16] = svcKeiKaizenUcwkGeneAddMoto;
//								setParamInsInfSksiWk[37] = kkopSvcKeiNoMoto;
//								setParamInsInfSksiWk[38] = kkopSvcKeiGeneAddMoto;
//								
//								for(int i = 0; i < 2; i++)
//								{
//									// 1件目の場合
//									if(i == 0)
//									{
//										// 解約
//										setParamInsHakkoJoken[0] = odrHakkoJokenNoDsl;
//										setParamInsHakkoJoken[9] = JKKBatConst.YOKYU_SBT_CD_DSL;
//										setParamInsInfSksiWk[0] = JCCBatCommon.getFormatedNextSeq(commonItem, SEQ_ODR_INF_SKSI_WK_NO,"",12);
//										setParamInsInfSksiWk[1] = odrHakkoJokenNoDsl;
//										setParamInsInfSksiWk[2] = JBSbatKKConst.ORDER_NAIYO_CD_TAKINORT_DSL_DSL;
//									}
//									else
//									{
//										// 消去
//										setParamInsHakkoJoken[0] = odrHakkoJokenNoDel;
//										setParamInsHakkoJoken[9] = JKKBatConst.YOKYU_SBT_CD_DEL;
//										setParamInsInfSksiWk[0] = JCCBatCommon.getFormatedNextSeq(commonItem, SEQ_ODR_INF_SKSI_WK_NO,"",12);
//										setParamInsInfSksiWk[1] = odrHakkoJokenNoDel;
//										setParamInsInfSksiWk[2] = JBSbatKKConst.ORDER_NAIYO_CD_TAKINORT_DSL_DEL;
//									}
//									
//									executeKK_T_ODR_HAKKO_JOKEN_PKINSERT(setParamInsHakkoJoken);
//									executeKK_T_ODR_INF_SKSI_WK_PKINSERT(setParamInsInfSksiWk);
//								}
//							}
//						}
						// ANK-4577-00-00 DEL END
						
						// (3)L(c)乗換先のサービス契約内訳を取得
						executeKK_T_SVC_KEI_UCWK_KK_SELECT_143(sakiSvcKeiNo);
						
						JBSbatCommonDBInterface mapSvcKeiUcwkSaki = db_KK_T_SVC_KEI_UCWK.selectNext();
						
						if(null != mapSvcKeiUcwkSaki)
						{
							// 乗換先のサービス契約内訳.サービス契約内訳番号
							svcKeiUcwkNoSaki = mapSvcKeiUcwkSaki.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO);
							// 乗換先のサービス契約内訳.世代登録年月日時分秒
							svcKeiUcwkGeneAddSaki = mapSvcKeiUcwkSaki.getString(JBSbatKK_T_SVC_KEI_UCWK.GENE_ADD_DTM);
							
							// オーダ発行条件番号をシーケンスから取得（新規用）
							String odrHakkoJokenNoNew = JCCBatCommon.getFormatedNextSeq(commonItem, SEQ_ODR_HAKKO_JOKEN_NO,"",12);
							
							// (3)L(d)乗換先のオーダ発行条件（解約・消去SOD）の全項目登録
							// (3)L(e)乗換先のオーダ情報作成ワーク（解約・消去SOD）の全項目登録
							Object[] setParamInsHakkoJoken = new Object[32];
							Object[] setParamInsInfSksiWk = new Object[44];
							
							setParamInsHakkoJoken[0] = odrHakkoJokenNoNew;
							setParamInsHakkoJoken[1] = sakiSvcKeiNo;
							setParamInsHakkoJoken[2] = svcKeiUcwkNoSaki;
							setParamInsHakkoJoken[3] = kktkSvcKeiNoSaki;
							setParamInsHakkoJoken[7] = JKKBatConst.ORDER_SBT_CD_TEL;
							setParamInsHakkoJoken[8] = JKKBatConst.SVC_ORDER_CD_MULTI_RUTA;
							setParamInsHakkoJoken[9] = JKKBatConst.YOKYU_SBT_CD_NEW;
							setParamInsHakkoJoken[10] = JKKBatConst.ODR_HAKKO_JOKEN_CD_SKGHAKKO;
							// ANK-4577-00-00 DEL START
//							setParamInsHakkoJoken[12] = sameTrnNo;
							// ANK-4577-00-00 DEL END
							setParamInsHakkoJoken[13] = taknkikiModelCdMoto;
							setParamInsHakkoJoken[14] = kikiSeizoNoMoto;
							setParamInsHakkoJoken[17] = svcKeiKaisenUcwkNoSaki;
							
							setParamInsInfSksiWk[0] = JCCBatCommon.getFormatedNextSeq(commonItem, SEQ_ODR_INF_SKSI_WK_NO,"",12);
							setParamInsInfSksiWk[1] = odrHakkoJokenNoNew;
							setParamInsInfSksiWk[2] = JBSbatKKConst.ORDER_NAIYO_CD_TAKINORT_ADD;
							setParamInsInfSksiWk[3] = sakiSvcKeiNo;
							setParamInsInfSksiWk[4] = svcKeiGeneAddSaki;
							setParamInsInfSksiWk[5] = svcKeiUcwkNoSaki;
							setParamInsInfSksiWk[6] = svcKeiUcwkGeneAddSaki;
							setParamInsInfSksiWk[7] = kktkSvcKeiNoSaki;
							setParamInsInfSksiWk[8] = kkTKktkSvcKeiGeneAdd;
							setParamInsInfSksiWk[15] = svcKeiKaisenUcwkNoSaki;
							setParamInsInfSksiWk[16] = kkTSvkeiKaisenUwGeneAdd;
							setParamInsInfSksiWk[37] = kkopSvcKeiNoSaki;
							setParamInsInfSksiWk[38] = kkTKkopSvcKeiGeneAdd;
							
							executeKK_T_ODR_HAKKO_JOKEN_PKINSERT(setParamInsHakkoJoken);
							executeKK_T_ODR_INF_SKSI_WK_PKINSERT(setParamInsInfSksiWk);
						}
					}
				}
				
				// ANK-4656-00-00 ADD START
				// 転送元の工事案件対象宅内機器を取得する
				executeKU_T_KJAK_TG_TKKIKI_KK_SELECT_016(kktkSvcKeiNoMoto, taknkikiModelCdMoto, kikiSeizoNoMoto);

				JBSbatCommonDBInterface mapKjakTgTkkiki = db_KU_T_KJAK_TG_TKKIKI.selectNext();
				
				if(null != mapKjakTgTkkiki)
				{
					// 工事案件対象宅内機器番号
					String kojiakTrgtTaknkikiNo = mapKjakTgTkkiki.getString(JBSbatKU_T_KJAK_TG_TKKIKI.KOJIAK_TRGT_TAKNKIKI_NO);
								
					if (!JKKCommonUtil.isNull(kojiakTrgtTaknkikiNo))
					{
						// システム日付を取得
						String sysdate = JBSbatDateUtil.getSystemDateTimeStamp();

						boolean chgKikiChgNoFlg = false;
						
						// 変更機器変更番号値が設定されているかどうかを確認する
						if(JKKStringUtil.isNullBlank(mapKjakTgTkkiki.getString(JBSbatKU_T_KJAK_TG_TKKIKI.CHGE_KIKI_CHG_NO)))
						{
							chgKikiChgNoFlg = true;
						}

						// 工事案件対象宅内機器のPK更新を実行
						executeKU_T_KJAK_TG_TKKIKI_PKUPDATE(new Object[] {
								kikiChgNoSaki,
								kktkSvcKeiNoSaki,
								sysdate
							}, new Object[] {
								kojiakTrgtTaknkikiNo
							}, chgKikiChgNoFlg
						);
					}
				}
				// ANK-4656-00-00 ADD END
				
				// (3)M機器引継完了リスト（KKIFM964）を出力
				JBSbatServiceInterfaceMap outMap = new JBSbatServiceInterfaceMap();
				
				// サービス契約番号
				outMap.setString(JBSbatKKIFM964.SVC_KEI_NO, sakiSvcKeiNo);
				// 機器提供サービス契約番号
				outMap.setString(JBSbatKKIFM964.KKTK_SVC_KEI_NO, kktkSvcKeiNoSaki);
				// 宅内機器型式コード
				outMap.setString(JBSbatKKIFM964.TAKNKIKI_MODEL_CD, taknkikiModelCdMoto);
				// 機器製造番号
				outMap.setString(JBSbatKKIFM964.KIKI_SEIZO_NO, kikiSeizoNoMoto);
				// 宅内機器ステータス
				outMap.setString(JBSbatKKIFM964.TAKNKIKI_STAT, JKKStrConst.CD01704_STC);
				// 宅内機器種別コード
				outMap.setString(JBSbatKKIFM964.TAKNKIKI_SBT_CD, taknkikiSbtCdSaki);
				// 乗換元サービス契約回線内訳番号
				outMap.setString(JBSbatKKIFM964.NRKEMT_SVC_KEI_KAISEN_UCWK_NO, svcKeiKaisenUcwkNoMoto);
				
				outMap.setOutFlg(true);
				
				outputItem.addOutMapList(outMap);
				
				// (3)N宅内機器型式リストを設定
				if(JKKStringUtil.isNullBlank(taknkikiModelList))
				{
					taknkikiModelList = taknkikiModelCdMoto;
				}
				else
				{
					taknkikiModelList = taknkikiModelList + "、" + taknkikiModelCdMoto;
				}
				
				super.logPrint.printDebugLog("宅内機器型式リスト：" + taknkikiModelList);
			}
			
			// (4)@乗換先の進捗の全項目登録
			if(!(JKKStringUtil.isNullBlank(taknkikiModelList)))
			{
				// 進捗特記事項1の編集
				String prgTkjk1 = "接続機器引継[乗換元お客さまID：" + motoSvcKeiNo + "　引継型番号：" + taknkikiModelList + "]";
				
				HashMap<String, String> insertMap = new HashMap<String, String>();
				
				insertMap.put(JBSbatKK_T_PRG.PRG_NO, JCCBatCommon.getFormatedNextSeq(commonItem, JKKStrConst.SEQ_PRG_NO, "", 12));
				insertMap.put(JBSbatKK_T_PRG.MSKM_DTL_NO, mskmDtlNo);
				insertMap.put(JBSbatKK_T_PRG.SEIKY_KEI_NO, null);
				insertMap.put(JBSbatKK_T_PRG.SEIKY_WAY_NO_KOZA, null);
				insertMap.put(JBSbatKK_T_PRG.SEIKY_WAY_NO_CRECARD, null);
				insertMap.put(JBSbatKK_T_PRG.SVC_KEI_NO, sakiSvcKeiNo);
				insertMap.put(JBSbatKK_T_PRG.SVC_KEI_UCWK_NO, null);
				insertMap.put(JBSbatKK_T_PRG.SVC_KEI_KAISEN_UCWK_NO, null);
				insertMap.put(JBSbatKK_T_PRG.KKTK_SVC_KEI_NO, null);
				insertMap.put(JBSbatKK_T_PRG.OP_SVC_KEI_NO, null);
				insertMap.put(JBSbatKK_T_PRG.SBOP_SVC_KEI_NO, null);
				insertMap.put(JBSbatKK_T_PRG.SEIOPSVC_KEI_NO, null);
				insertMap.put(JBSbatKK_T_PRG.WRIB_SVC_KEI_NO, null);
				insertMap.put(JBSbatKK_T_PRG.IDO_DIV, idoDiv);
				insertMap.put(JBSbatKK_T_PRG.IDO_DTM, JKKBatPrgUtil.getIdoDtmMax(commonItem, sakiSvcKeiNo, idoDiv, db_KK_T_PRG));
				insertMap.put(JBSbatKK_T_PRG.PRG_STAT, JKKStrConst.CD00647_CONNECT_KK_HKTGI_FIN);
				insertMap.put(JBSbatKK_T_PRG.PRG_DTM, this.opeDate + JKKBatCommon.getSysDateTimeStamp().substring(8));
				insertMap.put(JBSbatKK_T_PRG.PRG_MEMO, null);
				insertMap.put(JBSbatKK_T_PRG.PRG_TKJK_1, prgTkjk1);
				insertMap.put(JBSbatKK_T_PRG.PRG_TKJK_2, null);
				
				this.executeKK_T_PRG_PKINSERT(insertMap);
			}
			
			//正常終了の場合コミット
			commonItem.getConnection().commit();
		}
		catch(Exception e)
		{
			// コネクションのロールバック
			commonItem.getConnection().rollback();
			// エラーログ出力
			commonItem.getLogPrint().printBusinessErrorLog(JPCBatchMessageConstant.EKKB0010CW, 
					new String[]{e.getMessage()});
			// エラーフラグ設定
			super.commonItem.setErrFlg(true);
			
			// 出力情報を初期化
			outputItem = new JBSbatOutputItem();
			
			return outputItem;
		}
		
		return outputItem;

	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
		db_ZM_M_WORK_PARAM_KNRI.close();
		db_KK_T_KKTK_SVC_KEI.close();
		db_KK_T_KKTK_SVC_KEI_SAKI.close();
		db_KK_T_SVC_KEI.close();
		db_KK_T_KKOP_SVC_KEI.close();
		db_DK_T_HAISO_TG_BPIN.close();
		db_DK_T_HMPIN_KIKI.close();
		db_DK_T_HMPIN_KIKI_MOTO.close();
		db_KK_T_SVKEI_KAISEN_UW.close();
		db_KK_T_ODR_SET.close();
		db_KK_T_SVC_KEI_UCWK.close();
		db_KK_T_ODR_HAKKO_JOKEN.close();
		db_KK_T_ODR_INF_SKSI_WK.close();
		db_KK_T_PRG.close();
		// ANK-4656-00-00 ADD START
		db_KU_T_KJAK_TG_TKKIKI.close();
		// ANK-4656-00-00 ADD END
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/

	/**
	 * SQLKEY(KK_SELECT_016)で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 executeZM_M_WORK_PARAM_KNRI_KK_SELECT_016(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_ZM_M_WORK_PARAM_KNRI.selectBySqlDefine(paramList, ZM_M_WORK_PARAM_KNRI_KK_SELECT_016);
	}

	/**
	 * 機器提供サービス契約のPK検索を行う。
	 * @param kktkSvcKeiNo 機器提供サービス契約番号
	 * @param geneAddDtm 世代登録年月日時分秒
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface executeKK_T_KKTK_SVC_KEI_PKSELECT(String kktkSvcKeiNo, String geneAddDtm) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		// 機器提供サービス契約番号
		whereMap.setValue(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO, kktkSvcKeiNo);
		// 世代登録年月日時分秒
		whereMap.setValue(JBSbatKK_T_KKTK_SVC_KEI.GENE_ADD_DTM, geneAddDtm);
		
		// DBアクセスを実行します
		return db_KK_T_KKTK_SVC_KEI.selectByPrimaryKeys(whereMap);
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	機器提供サービス契約番号				KKTK_SVC_KEI_NO
	 *		 	世代登録年月日時分秒				GENE_ADD_DTM
	 *		 	機器提供サービス契約ステータス				KKTK_SVC_KEI_STAT
	 *		 	機器提供サービスコード				KKTK_SVC_CD
	 *		 	料金コースコード				PCRS_CD
	 *		 	料金プランコード				PPLAN_CD
	 *		 	提供方式契約番号				TK_HOSHIKI_KEI_NO
	 *		 	機器提供種別コード				KKTK_SBT_CD
	 *		 	販売種別コード				HAMBAI_SBT_CD
	 *		 	サービス利用開始希望年月日				SVC_USE_STA_KIBO_YMD
	 *		 	予約適用開始希望年月日				RSV_TSTA_KIBO_YMD
	 *		 	希望メーカーコード				KIBO_MAKER_CD
	 *		 	機器指定種別コード				KIKI_SHITEI_SBT_CD
	 *		 	宅内機器種別コード				TAKNKIKI_SBT_CD
	 *		 	宅内機器型式コード				TAKNKIKI_MODEL_CD
	 *		 	機器製造番号				KIKI_SEIZO_NO
	 *		 	付属品種別コード				HUZOKUHIN_SBT_CD
	 *		 	付属品型式コード				HUZOKUHIN_MODEL_CD
	 *		 	宅内機器セット品型コード				TAKNKIKI_SETHIN_MODEL_CD
	 *		 	機器変更番号				KIKI_CHG_NO
	 *		 	機器変更理由コード				KIKI_CHG_RSN_CD
	 *		 	通信機器セットコード				TSUSHIN_KIKI_SET_CD
	 *		 	ＨＤＤ容量コード				HDD_CAPA_CD
	 *		 	機器設置先場所番号				KIKI_STC_SAKI_PLACE_NO
	 *		 	親契約識別コード				OYA_KEI_SKBT_CD
	 *		 	サービス契約番号				SVC_KEI_NO
	 *		 	サービス契約内訳番号				SVC_KEI_UCWK_NO
	 *		 	サービス契約回線内訳番号				SVC_KEI_KAISEN_UCWK_NO
	 *		 	オプションサービス契約番号				OP_SVC_KEI_NO
	 *		 	ＳＹＳＩＤ				SYSID
	 *		 	申込明細番号				MSKM_DTL_NO
	 *		 	リンクＳＴＢフラグ				LINK_STB_FLG
	 *		 	機器引当指定倉庫コード				KIKI_HKAT_SHITEI_SOKO_CD
	 *		 	機器引当指定倉庫棚コード				KIKI_HKAT_SHITEI_SKDN_CD
	 *		 	機器指定時管理場所識別コード				KIKI_STI_JI_KRIPLACE_SKCD
	 *		 	機器指定時工事会社コード				KIKI_STI_JI_KOCOMP_CD
	 *		 	機器指定時工事会社棚コード				KIKI_STI_JI_KOCOMP_SLF_CD
	 *		 	機器指定時預託先オフィスコード				KIKI_STI_JI_YTKSKOF_CD
	 *		 	機器指定時預託先オフィス棚コード				KIKI_STI_JI_YTKSKOF_SLF_CD
	 *		 	機器提供サービス契約引継発生年月日				KKTK_SVC_KEI_HKHASYMD
	 *		 	機器送料有無				KIKI_SORYO_UM
	 *		 	機器送料作成年月日				KIKI_SORYO_SAKSEI_YMD
	 *		 	機器送付先名				KIKI_SOHUS_NM
	 *		 	機器送付先カナ名				KIKI_SOHUS_KANA
	 *		 	機器送付先住所コード				KIKI_SOHUS_AD_CD
	 *		 	機器送付先郵便番号				KIKI_SOHUS_PCD
	 *		 	機器送付先都道府県名				KIKI_SOHUS_STATE_NM
	 *		 	機器送付先市区町村名				KIKI_SOHUS_CITY_NM
	 *		 	機器送付先大字通称名				KIKI_SOHUS_OAZTSU_NM
	 *		 	機器送付先字丁目名				KIKI_SOHUS_AZCHO_NM
	 *		 	機器送付先番地号				KIKI_SOHUS_BNCHIGO
	 *		 	機器送付先住所補記・建物名				KIKI_SOHUS_ADRTTM
	 *		 	機器送付先住所補記・部屋番号				KIKI_SOHUS_ADRRM
	 *		 	機器送付先住所手動入力フラグ				KIKI_SHS_AD_MAN_INPUT_FLG
	 *		 	機器送付先電話番号				KIKI_SOHUS_TELNO
	 *		 	マンション物件番号				MANSION_BUKKEN_NO
	 *		 	機器送付先＿契約者住所差異フラグ				KIKI_SOHUS_KSH_AD_SAI_FLG
	 *		 	機器送付先個別指定フラグ				KIKI_SHS_KBT_SHITEI_FLG
	 *		 	機器送付先補足コード１				KIKI_SHS_HSK_CD_1
	 *		 	機器送付先補足コード２				KIKI_SHS_HSK_CD_2
	 *		 	機器送付先補足メモ				KIKI_SHS_HSK_MEMO
	 *		 	機器設置先名				KIKI_STC_SAKI_NM
	 *		 	機器設置先カナ名				KIKI_STC_SAKI_KANA
	 *		 	機器設置先住所コード				KIKI_STC_SAKI_AD_CD
	 *		 	機器設置先郵便番号				KIKI_STC_SAKI_PCD
	 *		 	機器設置先都道府県名				KIKI_STC_SAKI_STATE_NM
	 *		 	機器設置先市区町村名				KIKI_STC_SAKI_CITY_NM
	 *		 	機器設置先大字通称名				KIKI_STC_SAKI_OAZTSU_NM
	 *		 	機器設置先字丁目名				KIKI_STC_SAKI_AZCHO_NM
	 *		 	機器設置先番地号				KIKI_STC_SAKI_BNCHIGO
	 *		 	機器設置先住所補記・建物名				KIKI_STC_SAKI_ADRTTM
	 *		 	機器設置先住所補記・部屋番号				KIKI_STC_SAKI_ADRRM
	 *		 	機器設置先＿契約者住所差異フラグ				KIKI_STC_SK_KSH_AD_SAI_FLG
	 *		 	機器設置先電話番号				KIKI_STC_SK_TELNO
	 *		 	機器設置先区画整理中フラグ				KIKI_STS_KKK_SEIRI_CHU_FLG
	 *		 	住所未確定フラグ				AD_MI_FIX_FLG
	 *		 	自動登録コード				AUTO_ADD_CD
	 *		 	住所未確定解除年月日				AD_MI_FIX_RLS_YMD
	 *		 	課金開始年月日補正有無					CHRG_STA_YMD_HOSEI_UM
	 *		 	機器設置先補足コード１						KIKI_STS_HSK_CD_1
	 *		 	機器設置先補足コード２						KIKI_STS_HSK_CD_2
	 *		 	機器設置先補足メモ						KIKI_STS_HSK_MEMO
	 *		 	機器提供サービス契約後続業務依頼年月日		KKTK_SVC_KEI_KZKWRK_REQYMD
	 *		 	照査年月日							SHOSA_YMD
	 *		 	照査取消年月日							SHOSA_CL_YMD
	 *		 	配送区分								HAISO_DIV
	 *		 	配送期限年月日							HAISO_KIGEN_YMD
	 *		 	配送到着指定年月日						HAISO_ARIV_SHITEI_YMD
	 *		 	試用加入年月日							FTRIAL_KANYU_YMD
	 *		 	試用期間終了年月日						FTRIAL_PRD_ENDYMD
	 *		 	本加入年月日							HONKANYU_YMD
	 *		 	本加入移行期限年月日					HONKANYU_IKO_KIGEN_YMD
	 *		 	契約締結年月日							KEI_CNC_YMD
	 *		 	ＪＣＣＣ加入書記入年月日					JCCC_KANYU_BUNSHO_YMD
	 *		 	保証コード								HOSHO_CD
	 *		 	機器提供サービス契約補記					KKTK_SVKEI_HOKI
	 *		 	保証開始年月日							HOSHO_STAYMD
	 *		 	保証終了年月日							HOSHO_END_YMD
	 *		 	予約適用年月日							RSV_APLY_YMD
	 *		 	予約取消年月日							RSV_CL_YMD
	 *		 	予約適用コード							RSV_APLY_CD
	 *		 	機器変更年月日							KIKI_CHG_YMD
	 *		 	プラン開始年月日							PLAN_STAYMD
	 *		 	プラン終了年月日							PLAN_ENDYMD
	 *		 	プラン課金開始年月日						PLAN_CHRG_STAYMD
	 *		 	プラン課金終了年月日						PLAN_CHRG_ENDYMD
	 *		 	プラン終了種別コード						PLAN_END_SBT_CD
	 *		 	サービスキャンセル年月日						SVC_CANCEL_YMD
	 *		 	サービスキャンセル理由コード					SVC_CANCEL_RSN_CD
	 *		 	サービス開始起算年月日					SVC_STA_KISAN_YMD
	 *		 	サービス開始年月日						SVC_STA_YMD
	 *		 	サービス課金開始年月日					SVC_CHRG_STAYMD
	 *		 	サービス停止年月日						SVC_STP_YMD
	 *		 	サービス提供中使用不可種別コード				SVCTK_CHU_USE_FAIL_SBT_CD
	 *		 	サービス停止理由コード						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_ENDYMD
	 *		 	サービス課金終了年月日					SVC_CHRG_ENDYMD
	 *		 	サービス解約年月日						SVC_DSL_YMD
	 *		 	サービス解約理由コード						SVC_DLRE_CD
	 *		 	サービス解約理由メモ						SVC_DLRE_MEMO
	 *		 	残置フラグ								ZANCHI_FLG
	 *		 	サービス解約手続完了フラグ					SVC_DSL_TTDKI_FIN_FLG
	 *		 	回復年月日							KAIHK_YMD
	 *		 	サービスキャンセル取消年月日					SVC_CANCEL_CL_YMD
	 *		 	サービス解約取消年月日					SVC_DSL_CL_YMD
	 *		 	審査結果送信コード						SKEKKA_SEND_CD
	 *		 	サービス休止課金開始年月日					SVC_PAUSE_CHRG_STA_YMD
	 *		 	違約金発生コード							PNLTY_HASSEI_CD
	 *		 	機器認証ＩＤ							KIKI_NINSHO_ID
	 *		 	機器認証ＩＤパスワード						KIKI_NINSHO_ID_PWD
	 *		 	異動区分								IDO_DIV
	 *		 	機器設置実績受付年月日					KKST_JSEKI_UK_YMD
	 *		 	ｅｏＴＶ機器設置承認状態コード				EO_TV_KKST_SNN_STAT_CD
	 *		 	機器設置承認年月日						KKST_SNN_YMD
	 *		 	宅内機器異動コード						TAKNKIKI_IDO_CD
	 *		 	ＣＡＳカード使用許諾年月日					CAS_CARD_USE_KYODAK_YMD
	 *		 	機器付加情報コード						KIKI_HUKA_INFO_CD
	 *		 	照査解約完了コード						SHOSA_DSL_FIN_CD
	 *		 	ルーター解約予約処理状態コード				ROUTER_DSL_RSV_TRN_STAT_CD
	 *		 	ルーター解約予約処理結果コード				ROUTER_DSL_RSV_TRN_RSLT_CD
	 *		 	配送方法コード							HAISO_WAY_CD
	 *		 	機器移転先移動実施者識別コード				KIKI_ITENS_MV_JSSIS_SKCD
	 *		 	回収機器有無							KAISHU_KIKI_UM
	 *		 	配送依頼指定年月日						HAISO_REQ_SHITEI_YMD
	 *		 	出荷完了時処理済フラグ					SHKA_FIN_JI_SYRZM_FLG
	 *		 	サービス開始時配送状況識別コード				SVC_STA_JI_HIS_JOKYO_SKCD
	 *		 	登録年月日時分秒						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
	 *			保証・補償期間開始日算出基準年月日			HCPRD_STAD_SNSTSTD_YMD
	 *			保証・補償期間開始日算出基準年月日移行フラグ	HCPRD_STAD_SNSTSTD_YMD_IKF
	 *			保証・補償期間開始日算出基準年月日識別コード	HCPRD_STAD_SNSTSTD_YMD_SCD
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKTK_SVC_KEI_PKINSERT(HashMap<String, String> insertMap) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		
		for (String key : insertMap.keySet()) {
			setMap.setValue(key, insertMap.get(key));
		}
		
		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.insertByPrimaryKeys(setMap);
	}

	/**
	 * SQLKEY(KK_SELECT_280)で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_KKTK_SVC_KEI_KK_SELECT_280(String nrkeSakiSvcKeiNo, String onuDummyKiki, String tknrtDummyKiki, String hgwDummyKiki, String meshDummyKiki, String mlanDummyKiki) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(nrkeSakiSvcKeiNo);
		paramList.setValue(this.opeDate);
		paramList.setValue(this.opeDate);
		paramList.setValue(this.opeDate);
		paramList.setValue(onuDummyKiki);
		paramList.setValue(tknrtDummyKiki);
		paramList.setValue(hgwDummyKiki);
		paramList.setValue(nrkeSakiSvcKeiNo);
		paramList.setValue(this.opeDate);
		paramList.setValue(meshDummyKiki);
		paramList.setValue(mlanDummyKiki);

		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI_SAKI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_280);
	}

	/**
	 * SQLKEY(KK_SELECT_281)で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_KKTK_SVC_KEI_KK_SELECT_281(String nrkeMotoSvcKeiNo, String taknkikiSbtCd, String nrkeSakiAddDtm) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(nrkeMotoSvcKeiNo);
		paramList.setValue(this.opeDate);
		paramList.setValue(this.opeDate);
		paramList.setValue(this.opeDate);
		paramList.setValue(taknkikiSbtCd);
		paramList.setValue(nrkeSakiAddDtm);

		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_281);
	}

	/**
	 * SQLKEY(KK_SELECT_282)で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_KKTK_SVC_KEI_KK_SELECT_282(String nrkeMotoSvcKeiNo, String taknkikiSbtCd, String pcrsCd, String nrkeSakiAddDtm) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(nrkeMotoSvcKeiNo);
		paramList.setValue(this.opeDate);
		paramList.setValue(taknkikiSbtCd);
		paramList.setValue(pcrsCd);
		paramList.setValue(nrkeSakiAddDtm);

		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_282);
	}

	/**
	 * SQLKEY(KK_SELECT_384)で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_384(String svcKeiNo) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(svcKeiNo);
		paramList.setValue(this.opeDate);

		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_384);
	}

	/**
	 * SQLKEY(KK_SELECT_386)で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_386(String nrkeSakiSvcKeiNo) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(nrkeSakiSvcKeiNo);
		paramList.setValue(this.opeDate);

		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_386);
	}

	/**
	 * 機器オプションサービス契約のPK検索を行う。
	 * @param KKOP_SVC_KEI_NO 機器オプションサービス契約番号
	 * @param geneAddDtm 世代登録年月日時分秒
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception
	 */
	private JBSbatCommonDBInterface executeKK_T_KKOP_SVC_KEI_PKSELECT(String kkopSvcKeiNo, String geneAddDtm) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		// 機器提供サービス契約番号
		whereMap.setValue(JBSbatKK_T_KKOP_SVC_KEI.KKOP_SVC_KEI_NO, kkopSvcKeiNo);
		// 世代登録年月日時分秒
		whereMap.setValue(JBSbatKK_T_KKOP_SVC_KEI.GENE_ADD_DTM, geneAddDtm);
		
		// DBアクセスを実行します
		return db_KK_T_KKOP_SVC_KEI.selectByPrimaryKeys(whereMap);
	}
	
	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	機器オプションサービス契約番号				KKOP_SVC_KEI_NO
	 *		 	世代登録年月日時分秒				GENE_ADD_DTM
	 *		 	機器オプションサービス契約ステータス				KKOP_SVC_KEI_STAT
	 *		 	機器オプションサービスコード				KKOP_SVC_CD
	 *		 	料金コースコード				PCRS_CD
	 *		 	料金プランコード				PPLAN_CD
	 *		 	機器提供サービス契約番号				KKTK_SVC_KEI_NO
	 *		 	ＳＹＳＩＤ				SYSID
	 *		 	申込明細番号				MSKM_DTL_NO
	 *		 	予約適用年月日				RSV_APLY_YMD
	 *		 	予約取消年月日				RSV_CL_YMD
	 *		 	予約適用コード				RSV_APLY_CD
	 *		 	試用加入年月日				FTRIAL_KANYU_YMD
	 *		 	試用期間終了年月日				FTRIAL_PRD_ENDYMD
	 *		 	本加入年月日				HONKANYU_YMD
	 *		 	本加入移行期限年月日				HONKANYU_IKO_KIGEN_YMD
	 *		 	サービス利用開始希望年月日				SVC_USE_STA_KIBO_YMD
	 *		 	予約適用開始希望年月日				RSV_TSTA_KIBO_YMD
	 *		 	照査年月日				SHOSA_YMD
	 *		 	照査取消年月日				SHOSA_CL_YMD
	 *		 	審査結果送信コード				SKEKKA_SEND_CD
	 *		 	契約締結年月日				KEI_CNC_YMD
	 *		 	サービス開始年月日				SVC_STAYMD
	 *		 	サービス終了年月日				SVC_ENDYMD
	 *		 	サービス課金開始年月日				SVC_CHRG_STAYMD
	 *		 	サービス課金終了年月日				SVC_CHRG_ENDYMD
	 *		 	継続サービス開始年月日				KEIZK_SVC_STAYMD
	 *		 	継続サービス課金開始年月日				KEIZK_SVC_CHRG_STAYMD
	 *		 	プラン開始年月日				PLAN_STAYMD
	 *		 	プラン終了年月日				PLAN_ENDYMD
	 *		 	プラン課金開始年月日				PLAN_CHRG_STAYMD
	 *		 	プラン課金終了年月日				PLAN_CHRG_ENDYMD
	 *		 	プラン終了種別コード				PLAN_END_SBT_CD
	 *		 	サービスキャンセル年月日				SVC_CANCEL_YMD
	 *		 	サービスキャンセル理由コード				SVC_CANCEL_RSN_CD
	 *		 	サービスキャンセル取消年月日				SVC_CANCEL_CL_YMD
	 *		 	サービス停止年月日				SVC_STP_YMD
	 *		 	サービス停止理由コード				SVC_STP_RSN_CD
	 *		 	サービス停止解除年月日				SVC_STP_RLS_YMD
	 *		 	サービス停止解除理由コード				SVC_STP_RLS_RSN_CD
	 *		 	休止中断コード				PAUSE_STP_CD
	 *		 	サービス休止年月日				SVC_PAUSE_YMD
	 *		 	サービス休止課金開始年月日				SVC_PAUSE_CHRG_STA_YMD
	 *		 	サービス休止理由コード				SVC_PAUSE_RSN_CD
	 *		 	サービス休止理由メモ				SVC_PAUSE_RSN_MEMO
	 *		 	サービス休止解除年月日				SVC_PAUSE_RLS_YMD
	 *		 	サービス休止解除理由コード				SVC_PAUSE_RLS_RSN_CD
	 *		 	サービス休止解除理由メモ				SVC_PAUSE_RLS_RSN_MEMO
	 *		 	サービス解約年月日				SVC_DSL_YMD
	 *		 	サービス解約理由コード				SVC_DLRE_CD
	 *		 	サービス解約理由メモ				SVC_DLRE_MEMO
	 *		 	サービス解約取消年月日				SVC_DSL_CL_YMD
	 *		 	サービス解約手続完了フラグ				SVC_DSL_TTDKI_FIN_FLG
	 *		 	回復年月日				KAIHK_YMD
	 *		 	課金開始年月日補正有無				CHRG_STA_YMD_HOSEI_UM
	 *		 	機器オプションサービス契約引継発生年月日				KKOP_SVC_KEI_HKHASYMD
	 *		 	違約金発生コード				PNLTY_HASSEI_CD
	 *		 	異動区分				IDO_DIV
	 *		 	照査解約完了コード				SHOSA_DSL_FIN_CD
	 *		 	機器連帯契約変更手続中フラグ				KIKI_RNTAI_KEI_CHGECHU_FLG
	 *		 	登録年月日時分秒				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_KKOP_SVC_KEI_PKINSERT(HashMap<String, String> insertMap) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		
		for (String key : insertMap.keySet()) {
			setMap.setValue(key, insertMap.get(key));
		}
		
		// DBアクセスを実行します
		db_KK_T_KKOP_SVC_KEI.insertByPrimaryKeys(setMap);
	}

	/**
	 * SQLKEY(KK_SELECT_035)で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_KKOP_SVC_KEI_KK_SELECT_035(String nrkeSakiKktkSvcKeiNo) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(nrkeSakiKktkSvcKeiNo);
		paramList.setValue(this.opeDate);

		// DBアクセスを実行します
		db_KK_T_KKOP_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKOP_SVC_KEI_KK_SELECT_035);
	}

	/**
	 * SQLKEY(KK_SELECT_036)で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_KKOP_SVC_KEI_KK_SELECT_036(String nrkeMotoKktkSvcKeiNo, String nrkeSakiAddDtm) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(nrkeMotoKktkSvcKeiNo);
		paramList.setValue(this.opeDate);
		paramList.setValue(nrkeSakiAddDtm);

		// DBアクセスを実行します
		db_KK_T_KKOP_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKOP_SVC_KEI_KK_SELECT_036);
	}

	/**
	 * 配送対象物品のPK更新を行う。
	 * @param setParam
	 * @param whereParam
	 * @throws Exception
	 */
	private void executeDK_T_HAISO_TG_BPIN_PKUPDATE(Object[] setParam, Object[] whereParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		// 機器提供サービス契約番号
		setMap.setValue(JBSbatDK_T_HAISO_TG_BPIN.KKTK_SVC_KEI_NO, setParam[0]);
		// 機器変更番号
		setMap.setValue(JBSbatDK_T_HAISO_TG_BPIN.KIKI_CHG_NO, setParam[1]);
	
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		// 配送対象物品番号
		whereMap.setValue(JBSbatDK_T_HAISO_TG_BPIN.HAISO_TAIBPIN_NO, whereParam[0]);

		// DBアクセスを実行します
		db_DK_T_HAISO_TG_BPIN.updateByPrimaryKeys(whereMap, setMap);
	}

	/**
	 * SQLKEY(KK_SELECT_008)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	乗換元機器提供サービス契約番号
	 *		 	乗換元機器変更番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeDK_T_HAISO_TG_BPIN_KK_SELECT_008(String nrkeMotoKktkSvcKeiNo, String nrkeMotoKikiChgNo) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(nrkeMotoKktkSvcKeiNo);
		paramList.setValue(nrkeMotoKikiChgNo);

		// DBアクセスを実行します
		db_DK_T_HAISO_TG_BPIN.selectBySqlDefine(paramList, DK_T_HAISO_TG_BPIN_KK_SELECT_008);
	}

	/**
	 * 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項目は以下に説明します。
	 *		 	HMPIN_KIKI_NO
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @param whereParam 条件項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeDK_T_HMPIN_KIKI_PKUPDATE(Object[] setParam, Object[] whereParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("HMPIN_KIKI_STAT", setParam[0]);
		setMap.setValue("HMPIN_KIKI_CL_YMD", setParam[1]);
		setMap.setValue("HMPIN_KIKI_CLRE_CD", setParam[2]);
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("HMPIN_KIKI_NO", whereParam[0]);

		// DBアクセスを実行します
		db_DK_T_HMPIN_KIKI.updateByPrimaryKeys(whereMap, setMap);
	}

	/**
	 * SQLKEY(KK_SELECT_016)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	乗換元機器提供サービス契約番号
	 *		 	乗換元機器変更番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeDK_T_HMPIN_KIKI_KK_SELECT_016(String nrkeMotoKktkSvcKeiNo, String nrkeMotoKikiChgNo) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(nrkeMotoKktkSvcKeiNo);
		paramList.setValue(nrkeMotoKikiChgNo);

		// DBアクセスを実行します
		db_DK_T_HMPIN_KIKI_MOTO.selectBySqlDefine(paramList, DK_T_HMPIN_KIKI_KK_SELECT_016);
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *			サービス契約回線内訳番号		SVC_KEI_KAISEN_UCWK_NO
	 *			世代登録年月日時分秒		GENE_ADD_DTM
	 *			サービス契約回線内訳ステータス		SVC_KEI_KAISEN_UCWK_STAT
	 *			申込明細番号		MSKM_DTL_NO
	 *			回線場所住所未確定フラグ		KISN_PLC_AD_MI_FIX_FLG
	 *			回線場所住所未確定解除年月日		KISN_PLC_AD_MI_FIX_RLS_YMD
	 *			回線場所＿契約者住所差異フラグ		KAISEN_PLC_KSH_AD_SAI_FLG
	 *			お客様申告住所未確定フラグ		CUST_SKK_AD_MI_FIX_FLG
	 *			お客様ＳＯＳ利用有無		CUST_SOS_USE_UM
	 *			回線コード		KAISEN_CD
	 *			マンション物件番号		MANSION_BUKKEN_NO
	 *			回線場所電話番号		KAISEN_PLACE_TELNO
	 *			回線場所カナ名		KAISEN_PLC_KANA
	 *			回線場所住所コード		KAISEN_PLACE_AD_CD
	 *			回線場所郵便番号		KAISEN_PLACE_PCD
	 *			回線場所都道府県名		KAISEN_PLACE_STATE_NM
	 *			回線場所市区町村名		KAISEN_PLACE_CITY_NM
	 *			回線場所大字通称名		KAISEN_PLACE_OAZTSU_NM
	 *			回線場所字丁目名		KAISEN_PLACE_AZCHO_NM
	 *			回線場所番地号		KAISEN_PLACE_BNCHIGO
	 *			回線場所住所補記・建物名		KAISEN_PLACE_ADRTTM
	 *			回線場所住所補記・部屋番号		KAISEN_PLACE_ADRRM
	 *			請求書用回線場所住所部屋番号		SKS_YO_KISN_PLACE_AD_RM_NO
	 *			回線場所番号		KAISEN_PLACE_NO
	 *			回線場所区画整理中フラグ		KISN_PLC_KKK_SEIRI_CHU_FLG
	 *			回線場所補足コード１		KISN_PLC_HSK_CD_1
	 *			回線場所補足コード２		KISN_PLC_HSK_CD_2
	 *			回線場所補足メモ		KISN_PLC_HSK_MEMO
	 *			使用開始年月日		USE_STAYMD
	 *			住所形態コード		AD_FORM_CD
	 *			竣工予定年月日		SHUNKO_RSV_YMD
	 *			電力送電予定年月日		EPOWER_SODEN_RSV_YMD
	 *			入居予定年月日		NYUKYO_RSV_YMD
	 *			引渡し予定年月日		HIKIWATASHI_RSV_YMD
	 *			引越し予定年月日		HIKKOSHI_RSV_YMD
	 *			請求書送付先住所変更有無		SKS_SHS_AD_CHG_UM
	 *			請求書送付先住所変更希望年月日		SKS_SHS_AD_CHG_KIBO_YMD
	 *			契約者住所変更有無		KSHAD_CHG_UM
	 *			契約者住所変更希望年月日		KSHAD_CHG_KIBO_YMD
	 *			Ｘ座標		XZAHYO
	 *			Ｙ座標		YZAHYO
	 *			経度		LGTD
	 *			緯度		LTTD
	 *			座標補正有無		ZAHYO_HOSEI_UM
	 *			テレビ個別対応コード		TV_KOBET_TAIO_CD
	 *			ＴＶアンテナ有無		TV_ANTENNA_UM
	 *			方角コード１		DIRECTION_CD_1
	 *			方角コード２		DIRECTION_CD_2
	 *			戸建建築階数コード		KODATE_KCKU_FLR_CNT_CD
	 *			集合住宅入居階数コード		SHUGJ_NYUKYO_FLR_CNT_CD
	 *			ＰＯＮ種別コード		PON_SBT_CD
	 *			ループバックテスト完了年月日		LOOPBACK_TEST_FIN_YMD
	 *			回線提供会社コード		KAISEN_TK_COMP_CD
	 *			ＶＤＳＬ利用電話回線種別コード		VDSL_USE_TEL_KISN_SBT_CD
	 *			ＶＤＳＬ利用電話回線切替予定年月日		VDSL_USE_DKSN_SWCH_RSV_YMD
	 *			ＶＤＳＬ利用対象電話番号回線種別コード		VDSL_USE_TG_DBKSN_SBT_CD
	 *			ＶＤＳＬ利用対象電話番号		VDSL_USE_TG_TELNO
	 *			電話ＢＡＳホストＩＤ		TEL_BAS_HOST_ID
	 *			電話ＶＬＡＮ−ＩＤ		TEL_VLAN_ID
	 *			ＶＬＡＮ−ＩＤ確定フラグ		VLAN_ID_FIX_FLG
	 *			電話ＶＬＡＮ−ＩＤ取込年月日		TEL_VLAN_ID_TRKM_YMD
	 *			異動区分		IDO_DIV
	 *			引越し年月日		HIKKOSHI_YMD
	 *			該当エリアサービス開始年月日		GAITO_AREA_SVC_STAYMD
	 *			撤去工事希望年月日		TEKKYO_KOJI_KIBO_YMD
	 *			使用終了年月日		USE_ENDYMD
	 *			起点変電所コード		KITEN_HDSHO_CD
	 *			集約局コード		SHYAKK_CD
	 *			サービスキャンセル年月日		SVC_CANCEL_YMD
	 *			サービスキャンセル理由コード		SVC_CANCEL_RSN_CD
	 *			サービス契約回線内訳キャンセル取消年月日		SVKEI_KISN_UW_CNCL_CL_YMD
	 *			関電営業所コード		KEPCO_BUSIOFFICE_CD
	 *			登録年月日時分秒		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
	 *			回線場所棟情報		KAISEN_PLACE_TOU_INFO
	 *			ローゼット設置状態コード		ROZETT_STC_STAT_CD
	 *			コンセント設置内容コード		CONSNT_STC_NYO_CD
	 *			端末設置フロアコード		TNMT_STC_FLR_CD
	 *			回線終端装置設置場所1コード		KISN_TD_SETPLC_1_CD
	 *			回線終端装置設置場所2コード		KISN_TD_SETPLC_2_CD
	 *			回線終端装置設置箇所コード		KISN_TD_STC_KASHO_CD
	 *			回線終端装置設置場所1その他		KISN_TD_SETPLC_1_OTR
	 *			回線終端装置設置場所2その他		KISN_TD_SETPLC_2_OTR
	 *			回線終端装置設置箇所その他		KISN_TD_STC_KASHO_OTR
	 *			端末設置面コード		TANMT_STC_MEN_CD
	 *			回線場所連番		KAISEN_PLACE_RENBAN
	 *			HGW交換不可フラグ	HGW_KKN_FFG
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVKEI_KAISEN_UW_PKINSERT(HashMap<String, String> insertMap) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		
		for (String key : insertMap.keySet()) {
			setMap.setValue(key, insertMap.get(key));
		}
		
		// DBアクセスを実行します
		db_KK_T_SVKEI_KAISEN_UW.insertByPrimaryKeys(setMap);
	}

	/**
	 * SQLKEY(KK_SELECT_007)で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_SVKEI_KAISEN_UW_KK_SELECT_007(String svcKeiKaisenUcwkNo) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(svcKeiKaisenUcwkNo);

		// DBアクセスを実行します
		db_KK_T_SVKEI_KAISEN_UW.selectBySqlDefine(paramList, KK_T_SVKEI_KAISEN_UW_KK_SELECT_007);
	}

	/**
	 * SQLKEY(KK_SELECT_028)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	乗換元機器提供サービス契約番号
	 *		 	乗換元サービス契約回線内訳番号
	 *		 	乗換元宅内機器型式コード
	 *		 	乗換元機器製造番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	// ANK-4577-00-00 DEL START
//	private void executeKK_T_ODR_SET_KK_SELECT_028(String nrkeMotoKktkSvcKeiNo, String nrkeMotoSvcKeiKaisenUcwkNo
//			, String nrkeMototaknkikiModelCd, String nrkeMotoKikiSeizoNo) throws Exception
//	{
//		// バイント変数のリストを生成します
//		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
//		paramList.setValue(nrkeMotoKktkSvcKeiNo);
//		paramList.setValue(nrkeMotoSvcKeiKaisenUcwkNo);
//		paramList.setValue(nrkeMototaknkikiModelCd);
//		paramList.setValue(nrkeMotoKikiSeizoNo);
//
//		// DBアクセスを実行します
//		db_KK_T_ODR_SET.selectBySqlDefine(paramList, KK_T_ODR_SET_KK_SELECT_028);
//	}
	// ANK-4577-00-00 DEL END

	/**
	 * SQLKEY(KK_SELECT_143)で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_UCWK_KK_SELECT_143(String nrkeSakiSvcKeiNo) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(nrkeSakiSvcKeiNo);
		paramList.setValue(this.opeDate);

		// DBアクセスを実行します
		db_KK_T_SVC_KEI_UCWK.selectBySqlDefine(paramList, KK_T_SVC_KEI_UCWK_KK_SELECT_143);
	}
	
	// ANK-4656-00-00 ADD START
	/**
	 * SQLKEY(KK_SELECT_016)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	機器提供サービス契約番号
	 *			宅内機器型式コード
	 *			機器製造番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKU_T_KJAK_TG_TKKIKI_KK_SELECT_016(String kktkSvcKeiNo, String tnkkiMdlCd, String kikiSeizoNo) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(kktkSvcKeiNo);
		paramList.setValue(tnkkiMdlCd);
		paramList.setValue(kikiSeizoNo);

		// DBアクセスを実行します
		db_KU_T_KJAK_TG_TKKIKI.selectBySqlDefine(paramList, KU_T_KJAK_TG_TKKIKI_KK_SELECT_016);
	}
	
	/**
	 * 工事案件対象宅内機器のPK更新を実行
	 * @param setParam 設定値
	 * @param whereParam 条件
	 * @throws Exception
	 */
	private void executeKU_T_KJAK_TG_TKKIKI_PKUPDATE(Object[] setParam, Object[] whereParam, boolean chgKikiChgNoFlg) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		// 変更機器変更番号値が設定されているかどうかを確認する
		if(chgKikiChgNoFlg)
		{
			setMap.setValue(JBSbatKU_T_KJAK_TG_TKKIKI.RSV_KIKI_CHG_NO, setParam[0]);
		}
		else 
		{
			setMap.setValue(JBSbatKU_T_KJAK_TG_TKKIKI.CHGE_KIKI_CHG_NO, setParam[0]);
		}
		setMap.setValue(JBSbatKU_T_KJAK_TG_TKKIKI.KKTK_SVC_KEI_NO, setParam[1]);
		setMap.setValue(JBSbatKU_T_KJAK_TG_TKKIKI.UPD_DTM, setParam[2]);
		
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue(JBSbatKU_T_KJAK_TG_TKKIKI.KOJIAK_TRGT_TAKNKIKI_NO, whereParam[0]);

		// DBアクセスを実行します
		db_KU_T_KJAK_TG_TKKIKI.updateByPrimaryKeys(whereMap, setMap);
	}
	// ANK-4656-00-00 ADD END

	/**
	 * 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
	 *			スポットログインSYSID				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
	 *			登録処理ID				ADD_TRN_ID
	 *			更新運用年月日				UPD_UNYO_YMD
	 *			更新処理ID				UPD_TRN_ID
	 *			削除運用年月日				DEL_UNYO_YMD
	 *			削除処理ID				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", setParam[11]);
		setMap.setValue("SAME_TRN_NO", setParam[12]);
		setMap.setValue("TAKNKIKI_MODEL_CD", setParam[13]);
		setMap.setValue("KIKI_SEIZO_NO", setParam[14]);
		setMap.setValue("MLAD", setParam[15]);
		setMap.setValue("SPOT_LOGIN_SYSID", setParam[16]);
		setMap.setValue("SVC_KEI_KAISEN_UCWK_NO", setParam[17]);
		setMap.setValue("SEND_REQ_FIN_DTM", setParam[18]);
		setMap.setValue("ADD_DTM", setParam[19]);
		setMap.setValue("ADD_OPEACNT", setParam[20]);
		setMap.setValue("UPD_DTM", setParam[21]);
		setMap.setValue("UPD_OPEACNT", setParam[22]);
		setMap.setValue("DEL_DTM", setParam[23]);
		setMap.setValue("DEL_OPEACNT", setParam[24]);
		setMap.setValue("MK_FLG", setParam[25]);
		setMap.setValue("ADD_UNYO_YMD", setParam[26]);
		setMap.setValue("ADD_TRN_ID", setParam[27]);
		setMap.setValue("UPD_UNYO_YMD", setParam[28]);
		setMap.setValue("UPD_TRN_ID", setParam[29]);
		setMap.setValue("DEL_UNYO_YMD", setParam[30]);
		setMap.setValue("DEL_TRN_ID", setParam[31]);
	
		// DBアクセスを実行します
		db_KK_T_ODR_HAKKO_JOKEN.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
	 *			登録処理ID				ADD_TRN_ID
	 *			更新運用年月日				UPD_UNYO_YMD
	 *			更新処理ID				UPD_TRN_ID
	 *			削除運用年月日				DEL_UNYO_YMD
	 *			削除処理ID				DEL_TRN_ID
	 *			機器オプションサービス契約番号1				KKOP_SVC_KEI_NO_1
	 *			機器オプションサービス契約世代登録年月日時分秒1				KKOSVKEI_GADTM_1
	 *			変更前機器オプション契約世代登録年月日時分秒1				CHBF_KKOSVKEI_GADTM_1
	 *			機器オプションサービス契約番号2				KKOP_SVC_KEI_NO_2
	 *			機器オプションサービス契約世代登録年月日時分秒2				KKOSVKEI_GADTM_2
	 *			変更前機器オプション契約世代登録年月日時分秒2				CHBF_KKOSVKEI_GADTM_2
	 *			電話番号				TELNO
	 * </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", setParam[23]);
		setMap.setValue("ADD_DTM", setParam[24]);
		setMap.setValue("ADD_OPEACNT", setParam[25]);
		setMap.setValue("UPD_DTM", setParam[26]);
		setMap.setValue("UPD_OPEACNT", setParam[27]);
		setMap.setValue("DEL_DTM", setParam[28]);
		setMap.setValue("DEL_OPEACNT", setParam[29]);
		setMap.setValue("MK_FLG", setParam[30]);
		setMap.setValue("ADD_UNYO_YMD", setParam[31]);
		setMap.setValue("ADD_TRN_ID", setParam[32]);
		setMap.setValue("UPD_UNYO_YMD", setParam[33]);
		setMap.setValue("UPD_TRN_ID", setParam[34]);
		setMap.setValue("DEL_UNYO_YMD", setParam[35]);
		setMap.setValue("DEL_TRN_ID", setParam[36]);
		setMap.setValue("KKOP_SVC_KEI_NO_1", setParam[37]);
		setMap.setValue("KKOSVKEI_GADTM_1", setParam[38]);
		setMap.setValue("CHBF_KKOSVKEI_GADTM_1", setParam[39]);
		setMap.setValue("KKOP_SVC_KEI_NO_2", setParam[40]);
		setMap.setValue("KKOSVKEI_GADTM_2", setParam[41]);
		setMap.setValue("CHBF_KKOSVKEI_GADTM_2", setParam[42]);
		setMap.setValue("TELNO", setParam[43]);
	
		// 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マップに入れます。項目キーは以下に説明します。
	 *		 	進捗番号				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
	 *		 	登録運用年月日				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_PRG_PKINSERT(HashMap<String, String> insertMap) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		
		for (String key : insertMap.keySet()) {
			setMap.setValue(key, insertMap.get(key));
		}
		
		// DBアクセスを実行します
		db_KK_T_PRG.insertByPrimaryKeys(setMap);
	}

}
