/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom						 *
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKKicjknAdd
*	ソースファイル名	：JBSbatKKKicjknAdd.java
*	作成者				：富士通　
*	作成日				：2011年08月05日
*＜機能概要＞
*　契約一時金登録部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2011/08/05  FJ)久保田	新規作成
*	v1.01.00	2012/02/13  FJ)倉上 	ST2-2012-0000196障害対応
*	v2.00.00	2012/04/12  FJ)久保田	【ST2-2012-0000678】障害対応。
*	v2.01.00	2012/04/12  FJ)久保田	【TAI-2012-0000027】排他制御対応
*	v3.00.00	2012/05/01	FJ)藤本		【巻@登録テーブル項目同期】対応
*	v3.01.00	2012/05/25  FJ)藤本		【ANK-0377-00-00（OPMS連携）】巻@対応
*	v4.00.00	2012/10/10  FJ)桑島		【ANK-1223-00-00】案件対応
*	v4.01.00	2012/11/28  FJ)柳		【IT1-2012-0002267】スキマ変更対応
*	v4.02.00	2012/12/29  FJ)中作		【ST4-2012-0000301】障害対応
*	v5.00.00	2012/12/26  FJ)桑島		【ANK-1306-00-00】一時金キャンセルの対応
*	v5.00.01	2013/04/24  FJ)藤本		【ST2-2013-0001583】RULE0079の設定について修正
*	v5.00.02	2013/05/24  FJ)藤本		【SG1-2013-0000069】RULE0079の設定について修正
*	v5.00.03	2013/05/28  FJ)藤本		【IT2-2013-0000451】RULE0079の設定について修正
*	v5.00.04	2013/06/21  FJ)藤本		【LT-2013-0000086】標準外工事費情報の処理修正
*	v5.00.05	2013/07/14  FJ)藤本		【LT-2013-0000427】ネットの場合の標準外工事費情報の処理修正
*	v5.00.06	2013/08/01  FJ)藤本		【LT-2013-0000678】標準外工事費情報の処理修正
*	v5.00.07	2013/08/26  FJ)中作		【OM-2013-0000845,864】障害対応
*	v5.00.08	2013/09/03  FJ)中作		【OM-2013-0001555】障害対応
*	v5.00.09	2013/09/04  FJ)中作		【OM-2013-0001622】障害対応
*	v5.00.10	2013/09/29  FJ)中作		【OM-2013-0001727】障害対応
*	v5.00.11	2013/10/27  FJ)中作		【OM-2013-0003571】障害対応
*	v5.00.12	2013/11/06  FJ)岡田		【OM-2013-0003931】障害対応
*	v5.00.13	2013/11/06  FJ)岡田		【OM-2013-0004059】障害対応
*	v5.00.14	2013/11/15  FJ)団		【OM-2013-0003995】障害対応
*	v5.00.15	2013/11/25  FJ)小野		【OM-2013-0003204】障害対応
*	v5.00.16	2013/11/25  FJ)小野		【OM-2013-0003997】障害対応
*	v6.00.00	2013/12/10  FJ)中作		【OM-2013-0004783】障害対応
*	v6.00.01	2013/12/12  FJ)中作		【OM-2013-0004842】障害対応
*	v6.00.02	2013/12/23  FJ)桑島		【OM-2013-0004731】障害対応
*	v8.00.00	2014/01/24  FJ)岡田		【ANK-1589-00-00】案件対応　消費増税に伴う料金施策対応
*	v8.00.01	2014/04/03  FJ)石原		【OM-2014-0001306】障害対応
*	v8.00.02	2014/04/21  FJ)小野		【OM-2014-0001514】障害対応
*	v8.00.03	2014/05/11  FJ)桑島		【OM-2014-0001678】障害対応
*	v10.00.00	2014/10/03  FJ)起塚		【IT1-2014-0000319】障害対応
*	v15.00.00	2015/09/02  FJ)安田		【OM-2015-0001236】ワーニングメッセージの出力条件修正
*	v22.00.00	2015/11/19  FJ)広部		【ANK-2732-00-00】プロジェクト正常化施策 ソースの可読性向上
*	v26.00.00	2016/07/20	FJ)佐々木	【ANK-2821-00-00】OPMS連携工事費作成時の不備対応
*	v35.00.00	2017/10/25	FJ)森脇		【OM-2017-0000966】工事費取込エラー対応
*	v34.00.00	2018/01/25	FJ)河邊		【OM-2017-0001317】ネットの内訳合計金額の不備
*	v36.00.00	2018/01/16	FJ)永井		【ANK-3296-00-00】標準工事費分割請求
*	v37.00.00	2018/02/13	FJ)周藤		【ANK-3366-00-00】eo光設備卸対応
*	v37.00.01	2018/06/06	FJ)周藤		【OM-2018-0000614】障害対応
*	v40.00.00	2018/11/19	FJ)木村		【ANK-3412-00-00】５ギガ・１０ギガコース導入対応
*	v41.00.00	2019/01/31	FJ)周藤		【ANK-3387-00-00】マンションタイプ光コンセントサービス導入
*	v45.00.00	2019/05/24	FJ)黒田		【ANK-3636-00-00】消費増税対応（8%⇒10%）
*	v53.00.00	2021/05/31	FJ)謝		【ANK-4042-00-00】旧工事費発生抑止対応
*	v56.00.00	2021/09/07	GDC)k.abuan	【ANK-4038-00-00】光ローゼット化対応
*	v61.00.00	2023/03/03	FJ)孫		【ANK-4315-00-00】eo定期 eoホームゲートウェイ導入対応
*	v70.00.00	2024/03/26	FJ)永井		【#84355】ONU交換工事費(MT)の金額不正
*	v71.00.00	2024/05/15	FJ)明石		【ANK-4468-16-00】eo光ネット「シンプルプラン」追加対応_仕変16
**********************************************************************/
package eo.business.service;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;

import com.fujitsu.futurity.rule.common.JRuleXMLHandler;
import com.fujitsu.futurity.rule.xml.compare.JRuleXMLPattern;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JBSbatInterface;
import eo.business.common.JBSbatKKConst;
import eo.business.common.JCCBatCommon;
import eo.business.common.JKKBatCommon;
import eo.business.common.JKKBatConst;
import eo.business.util.file.JBSbatKKIFM085;
import eo.business.util.table.JBSbatCH_M_PRC_SCHDL_TEIGI;
import eo.business.util.table.JBSbatKK_M_TMP_PAY_PRC;
import eo.business.util.table.JBSbatKK_T_ADCHG_DTL;
import eo.business.util.table.JBSbatKK_T_DMPS_ANKEN;
import eo.business.util.table.JBSbatKK_T_ICJKN_SETTE;
import eo.business.util.table.JBSbatKK_T_KAISEN_TG_SVKEI;
import eo.business.util.table.JBSbatKK_T_KOJIHI_KAP_KEI;
import eo.business.util.table.JBSbatKK_T_KOJIHI_SNST_WK;
import eo.business.util.table.JBSbatKK_T_MANSION_BUKKEN;
import eo.business.util.table.JBSbatKK_T_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_TK_HOSHIKI_KEI;
import eo.business.util.table.JBSbatKK_T_TK_HSK_KEI_PRC;
import eo.business.util.table.JBSbatKU_T_KJAK_EOH_NET;
import eo.business.util.table.JBSbatKU_T_KJAK_EOH_NTMANS;
import eo.business.util.table.JBSbatKU_T_KOJIAK;
import eo.business.util.table.JBSbatKU_T_SVKEI_KOJIAK;
import eo.common.constant.JKKStrConst;
import eo.common.util.JPCUtilCommon;
import eo.framework.application.JBSbatBusinessException;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatServiceInterfaceMap;
import eo.framework.log.JBSbatLogUtil;
import eo.framework.util.JBSbatDateUtil;
import eo.framework.util.JBSbatOracleSeqUtil;
import eo.framework.util.JBSbatStringUtil;


/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKKicjknAdd extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(一時金設定)*/
	private static final String D_TBL_NAME_KK_T_ICJKN_SETTE = "KK_T_ICJKN_SETTE";

	/** テーブル(サービス契約)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI = "KK_T_SVC_KEI";

	/** テーブル(サービス契約＿工事案件)*/
	private static final String D_TBL_NAME_KU_T_SVKEI_KOJIAK = "KU_T_SVKEI_KOJIAK";

	/** テーブル(工事案件)*/
	private static final String D_TBL_NAME_KU_T_KOJIAK = "KU_T_KOJIAK";

	/** テーブル(提供方式契約)*/
	private static final String D_TBL_NAME_KK_T_TK_HOSHIKI_KEI = "KK_T_TK_HOSHIKI_KEI";

	/** テーブル(提供方式契約料金)*/
	private static final String D_TBL_NAME_KK_T_TK_HSK_KEI_PRC = "KK_T_TK_HSK_KEI_PRC";

	/** テーブル(一時支払料金)*/
	private static final String D_TBL_NAME_KK_M_TMP_PAY_PRC = "KK_M_TMP_PAY_PRC";

	/** テーブル(工事費算出ワーク)*/
	private static final String D_TBL_NAME_KK_T_KOJIHI_SNST_WK = "KK_T_KOJIHI_SNST_WK";

	/** テーブル(料金項目出力名称)*/
	private static final String D_TBL_NAME_CH_M_PRC_KMK_OPUT_NM = "CH_M_PRC_KMK_OPUT_NM";

	/** テーブル(料金スケジュール定義)*/
	private static final String D_TBL_NAME_CH_M_PRC_SCHDL_TEIGI = "CH_M_PRC_SCHDL_TEIGI";

// ANK-3296-00-00 ADD START
	/** テーブル(工事費割賦契約)*/
	private static final String D_TBL_NAME_KK_T_KOJIHI_KAP_KEI = "KK_T_KOJIHI_KAP_KEI";
// ANK-3296-00-00 ADD END

	/** テーブル(契約一時金)*/
	private static final String D_TBL_NAME_KK_T_KICJKN = "KK_T_KICJKN";

	/** テーブル(進捗)*/
	private static final String D_TBL_NAME_KK_T_PRG = "KK_T_PRG";

	/** テーブル(回線対象サービス契約)*/
	private static final String D_TBL_NAME_KK_T_KAISEN_TG_SVKEI = "KK_T_KAISEN_TG_SVKEI";
	// =========== OM-2013-0003997対応 start ==============
	/** テーブル(住所変更明細)*/
	private static final String D_TBL_NAME_KK_T_ADCHG_DTL = "KK_T_ADCHG_DTL";
	// =========== OM-2013-0003997対応 end ==============
	
// ANK-4038-00-00 ADD START
	/** テーブル(工事案件＜ｅｏ光ネット＞)*/
	private static final String D_TBL_NAME_KU_T_KJAK_EOH_NET = "KU_T_KJAK_EOH_NET";

	/** テーブル(工事案件＜eo光ネットマンション＞)*/
	private static final String D_TBL_NAME_KU_T_KJAK_EOH_NTMANS = "KU_T_KJAK_EOH_NTMANS";
// ANK-4038-00-00 ADD END


	/** SQL定義キー(KK_SELECT_004)*/
	private static final String KK_T_ICJKN_SETTE_KK_SELECT_004 = "KK_SELECT_004";

	/** SQL定義キー(KK_SELECT_171)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_171 = "KK_SELECT_171";

	/** SQL定義キー(KK_SELECT_003)*/
	private static final String KU_T_SVKEI_KOJIAK_KK_SELECT_003 = "KK_SELECT_003";

	/** SQL定義キー(KK_SELECT_029)*/
	private static final String KK_T_TK_HOSHIKI_KEI_KK_SELECT_029 = "KK_SELECT_029";

	/** SQL定義キー(KK_SELECT_005)*/
	private static final String KK_T_TK_HSK_KEI_PRC_KK_SELECT_005 = "KK_SELECT_005";

	/** SQL定義キー(KK_SELECT_001)*/
	private static final String KK_T_KOJIHI_SNST_WK_KK_SELECT_001 = "KK_SELECT_001";

	/** SQL定義キー(KK_SELECT_001)*/
	private static final String CH_M_PRC_KMK_OPUT_NM_KK_SELECT_001 = "KK_SELECT_001";

	/** SQL定義キー(KK_SELECT_006)*/
	private static final String CH_M_PRC_SCHDL_TEIGI_KK_SELECT_006 = "KK_SELECT_006";

	/** SQL定義キー(KK_SELECT_013)*/
	private static final String CH_M_PRC_SCHDL_TEIGI_KK_SELECT_013 = "KK_SELECT_013";

	/** SQL定義キー(KK_SELECT_033)*/
	private static final String KK_T_KAISEN_TG_SVKEI_KK_SELECT_033 = "KK_SELECT_033";

// ANK-3296-00-00 ADD START
	/** SQL定義キー(KK_SELECT_001)*/
	private static final String KK_T_KOJIHI_KAP_KEI_KK_SELECT_001 = "KK_SELECT_001";
// ANK-3296-00-00 ADD END
// ANK-4042-00-00 ADD START
	/** SQL定義キー(KK_SELECT_006)*/
	private static final String KK_T_KOJIHI_KAP_KEI_KK_SELECT_006 = "KK_SELECT_006";
// ANK-4042-00-00 ADD END

	/** SQL定義キー(KK_SELECT_023)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_023 = "KK_SELECT_023";

	/** SQL定義キー(KK_SELECT_014)*/
	private static final String KU_T_SVKEI_KOJIAK_KK_SELECT_014 = "KK_SELECT_014";

	// =========== OM-2013-0003204対応 start ==============
	/** SQL定義キー(KK_SELECT_277)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_277 = "KK_SELECT_277";
	// =========== OM-2013-0003204対応 end ==============

	// =========== OM-2013-0003997対応 start ==============
	/** SQL定義キー(KK_SELECT_033)*/
	private static final String KK_T_ADCHG_DTL_KK_SELECT_033 = "KK_SELECT_033";

	/** SQL定義キー(KK_SELECT_034)*/
	private static final String KK_T_ADCHG_DTL_KK_SELECT_034 = "KK_SELECT_034";
	// =========== OM-2013-0003997対応 end ==============

	/* ++++++++++ v10.00.00 追加開始 ++++++++++ */
	/** SQL定義キー(KK_SELECT_037)*/
	private static final String KK_T_TK_HOSHIKI_KEI_KK_SELECT_037 = "KK_SELECT_037";
	/* ++++++++++ v10.00.00 追加終了 ++++++++++ */

	/** テーブルアクセスクラス(一時金設定)*/
	private JBSbatSQLAccess db_KK_T_ICJKN_SETTE = null;

	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI = null;

	/** テーブルアクセスクラス(サービス契約＿工事案件)*/
	private JBSbatSQLAccess db_KU_T_SVKEI_KOJIAK = null;

	/** テーブルアクセスクラス(サービス契約＿工事案件)*/
	private JBSbatSQLAccess db_KU_T_SVKEI_KOJIAK_014 = null;

	/** テーブルアクセスクラス(工事案件)*/
	private JBSbatSQLAccess db_KU_T_KOJIAK = null;

	/** テーブルアクセスクラス(提供方式契約)*/
	private JBSbatSQLAccess db_KK_T_TK_HOSHIKI_KEI = null;

	/** テーブルアクセスクラス(提供方式契約料金)*/
	private JBSbatSQLAccess db_KK_T_TK_HSK_KEI_PRC = null;

	/** テーブルアクセスクラス(一時支払料金)*/
	private JBSbatSQLAccess db_KK_M_TMP_PAY_PRC = null;

	/** テーブルアクセスクラス(工事費算出ワーク)*/
	private JBSbatSQLAccess db_KK_T_KOJIHI_SNST_WK = null;

	/** テーブルアクセスクラス(料金項目出力名称)*/
	private JBSbatSQLAccess db_CH_M_PRC_KMK_OPUT_NM = null;

	/** テーブルアクセスクラス(料金スケジュール定義)*/
	private JBSbatSQLAccess db_CH_M_PRC_SCHDL_TEIGI = null;

// ANK-3296-00-00 ADD START
	/** テーブルアクセスクラス(工事費割賦契約)*/
	private JBSbatSQLAccess db_KK_T_KOJIHI_KAP_KEI = null;
// ANK-3296-00-00 ADD END
// ANK-4042-00-00 ADD START
	/** テーブルアクセスクラス(工事費割賦契約)*/
	private JBSbatSQLAccess db_KK_T_KOJIHI_KAP_KEI_2 = null;
// ANK-4042-00-00 ADD END

	/** テーブルアクセスクラス(契約一時金)*/
	private JBSbatSQLAccess db_KK_T_KICJKN = null;

	/** テーブルアクセスクラス(進捗)*/
	private JBSbatSQLAccess db_KK_T_PRG = null;

	/** テーブルアクセスクラス(回線対象サービス契約)*/
	private JBSbatSQLAccess db_KK_T_KAISEN_TG_SVKEI = null;

	// =========== OM-2013-0003204対応 start ==============
	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI_277 = null;
	// =========== OM-2013-0003204対応 end ==============

	// =========== OM-2013-0003997対応 start ==============
	/** テーブルアクセスクラス(住所変更明細)*/
	private JBSbatSQLAccess db_KK_T_ADCHG_DTL = null;
	// =========== OM-2013-0003997対応 end ==============

// ANK-4038-00-00 ADD START
	/** テーブルアクセスクラス(工事案件＜ｅｏ光ネット＞)*/
	private JBSbatSQLAccess db_KU_T_KJAK_EOH_NET = null;

	/** テーブルアクセスクラス(工事案件＜eo光ネットマンション＞)*/
	private JBSbatSQLAccess db_KU_T_KJAK_EOH_NTMANS = null;
// ANK-4038-00-00 ADD END
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/

	/** テーブルアクセスクラス(共通部品)*/
	private JBSbatSQLAccess stmt = null;

	/** 進捗番号採番キー */
	private static final String KEY_SEQ_PRG_NO = "SEQ_PRG_NO";

	// ++++++++++ v22.00.00 削除開始 ++++++++++
//	/** 進捗ステータス (登録) */
//	private static final String PRG_STAT_INSERT = "9720";
	// ++++++++++ v22.00.00 削除終了 ++++++++++

	/** 業務パラメータＩＤ(KK_TPPN_STAX_APLYYMD:一時支払料金番号（5%）適用年月日) */
	private static final String PARAM_ID_KK_TPPN_STAX_APLYYMD = "KK_TPPN_STAX_APLYYMD";
	
// ANK-3636-00-00 ADD START
	/** 業務パラメータＩＤ(KK_TPPN_STAX_APLYYMD_8:一時支払料金番号（8%）適用年月日) */
	private static final String PARAM_ID_KK_TPPN_STAX_APLYYMD_8 = "KK_TPPN_STAX_APYMD08";
// ANK-3636-00-00 ADD END
	
	/** 一時支払料金番号変換情報ファイル名:一時支払料金番号変換情報（消費税率8%） */
	private static final String KK_TMP_PAY_PRC_NO_CNV_LIST_STAX_8 = "KKTmpPayPrcNoCnvList.txt";
	
	// ========== OM-2014-0001306対応 START ==========
//	/** 一時支払料金番号変換情報ファイル名:一時支払料金番号変換情報（消費税率5%） */
//	private static final String KK_TMP_PAY_PRC_NO_CNV_LIST_STAX_5 = "KKTmpPayPrcNoCnvList2.txt";
	// ========== OM-2014-0001306対応 END ==========
	
	/** 一時支払料金番号の変換情報保持用マップ（一時支払料金番号変換情報（消費税率8%）） */
	private HashMap<String, String> tmpPayPrcNoCnvMapStax8 = null;
	
	// ========== OM-2014-0001306対応 START ==========
//	/** 一時支払料金番号の変換情報保持用マップ（一時支払料金番号変換情報（消費税率5%）） */
//	private HashMap<String, String> tmpPayPrcNoCnvMapStax5 = null;
	// ========== OM-2014-0001306対応 END ==========
	
	// ++++++++++ v22.00.00 削除開始 ++++++++++
//	/* ++++++++++ v10.00.00 追加開始 ++++++++++ */
//	/** 提供方式パターンコード（イーサネット） */
//	private static final String TK_HOSHIKI_PATTERN_CD_10 = "10";
//	
//	/** 提供方式パターンコード（VDSL1） */
//	private static final String TK_HOSHIKI_PATTERN_CD_31 = "31";
//	
//	/** 提供方式パターンコード（VDSL2） */
//	private static final String TK_HOSHIKI_PATTERN_CD_32 = "32";
//	
//	/** 提供方式パターンコード（VDSL3） */
//	private static final String TK_HOSHIKI_PATTERN_CD_33 = "33";
//	
//	/** 提供方式パターンコード（VDSL4） */
//	private static final String TK_HOSHIKI_PATTERN_CD_34 = "34";
//	
//	/** 提供方式パターンコード（VDSL5） */
//	private static final String TK_HOSHIKI_PATTERN_CD_35 = "35";
//	/* ++++++++++ v10.00.00 追加終了 ++++++++++ */
	// ++++++++++ v22.00.00 削除終了 ++++++++++
	
	/**
	 * 業務パラメータ設定値
	 */
	/** 一時支払料金番号（5%）適用年月日 */
	private String wrsvParamStr = "";
	
// ANK-3636-00-00 ADD START
	/** 一時支払料金番号（8%）適用年月日 */
	private String wrsvParamStr8 = "";
// ANK-3636-00-00 ADD END
	
// ANK-4038-00-00 ADD START
	/** 工事範囲コード 070：ローゼット済工事不要案件 */
	private static final String KOJI_SCOPE_070 = "070";
// ANK-4038-00-00 ADD END


	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);
		
		// DBアクセスクラスを生成します
		db_KK_T_ICJKN_SETTE = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ICJKN_SETTE);
		db_KK_T_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
		db_KU_T_SVKEI_KOJIAK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_SVKEI_KOJIAK);
		db_KU_T_SVKEI_KOJIAK_014 = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_SVKEI_KOJIAK);
		db_KU_T_KOJIAK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_KOJIAK);
		db_KK_T_TK_HOSHIKI_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_TK_HOSHIKI_KEI);
		db_KK_T_TK_HSK_KEI_PRC = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_TK_HSK_KEI_PRC);
		db_KK_M_TMP_PAY_PRC = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_M_TMP_PAY_PRC);
		db_KK_T_KOJIHI_SNST_WK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KOJIHI_SNST_WK);
		db_CH_M_PRC_KMK_OPUT_NM = new JBSbatSQLAccess(commonItem, D_TBL_NAME_CH_M_PRC_KMK_OPUT_NM);
		db_CH_M_PRC_SCHDL_TEIGI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_CH_M_PRC_SCHDL_TEIGI);
// ANK-3296-00-00 ADD START
		db_KK_T_KOJIHI_KAP_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KOJIHI_KAP_KEI);
// ANK-3296-00-00 ADD END
// ANK-4042-00-00 ADD START
		db_KK_T_KOJIHI_KAP_KEI_2 = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KOJIHI_KAP_KEI);
// ANK-4042-00-00 ADD END
		db_KK_T_KICJKN = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KICJKN);
		db_KK_T_PRG = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_PRG);
		db_KK_T_KAISEN_TG_SVKEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KAISEN_TG_SVKEI);
		// =========== OM-2013-0003204対応 start ==============
		db_KK_T_SVC_KEI_277 = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
		// =========== OM-2013-0003204対応 end ==============
		// =========== OM-2013-0003997対応 start ==============
		db_KK_T_ADCHG_DTL = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ADCHG_DTL);
		// =========== OM-2013-0003997対応 end ==============
// ANK-4038-00-00 ADD START
		db_KU_T_KJAK_EOH_NET = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_KJAK_EOH_NET);
		db_KU_T_KJAK_EOH_NTMANS = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_KJAK_EOH_NTMANS);
// ANK-4038-00-00 ADD END
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
		
		// 共通部品用
		stmt = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_PRG);
		
		// 一時支払料金番号の変換情報（一時支払料金番号変換情報（消費税率8%））を読み込み、マップに保持します。
		tmpPayPrcNoCnvMapStax8 = this.createTmpPayPrcNoCnvMap(KK_TMP_PAY_PRC_NO_CNV_LIST_STAX_8);
		
		// ========== OM-2014-0001306対応 START ==========
//		// 一時支払料金番号の変換情報（一時支払料金番号変換情報（消費税率5%））を読み込み、マップに保持します。
//		tmpPayPrcNoCnvMapStax5 = this.createTmpPayPrcNoCnvMap(KK_TMP_PAY_PRC_NO_CNV_LIST_STAX_5);
		// ========== OM-2014-0001306対応 END ==========
		
// ANK-3636-00-00 MOD START
//		// 業務パラメータ取得共通部品を呼び出し、一時支払料金番号（5%）適用年月日情報を取得します。
//		wrsvParamStr = JBSbatStringUtil.Rtrim(
//				JKKBatCommon.getWorkParamSetteValue(commonItem, PARAM_ID_KK_TPPN_STAX_APLYYMD));
//		
//		super.logPrint.printDebugLog("業務パラメータ管理．業務パラメータID    ：" + PARAM_ID_KK_TPPN_STAX_APLYYMD);
//		super.logPrint.printDebugLog("業務パラメータ管理．業務パラメータ設定値：" + wrsvParamStr);
//		
//		// 業務パラメータ管理検索結果がない場合
//		if ("".equals(wrsvParamStr))
//		{
//			super.logPrint.printDebugLog("業務パラメータ管理情報が存在しません。");
//			
//			// MSG 業務パラメータ管理テーブルに業務パラメータID:KK_TPPN_STAX_APLYYMDが存在しません。
//			throw new JBSbatBusinessException("EKKB0210CE", new String[]{"業務パラメータ管理", "業務パラメータID:"
//					+ PARAM_ID_KK_TPPN_STAX_APLYYMD});
//		}
		//業務パラメータ取得共通部品を呼び出し、一時支払料金番号（5%）適用年月日情報を取得します。
		wrsvParamStr = getWorkParamSetteValue(PARAM_ID_KK_TPPN_STAX_APLYYMD);
		//業務パラメータ取得共通部品を呼び出し、一時支払料金番号（8%）適用年月日情報を取得します。
		wrsvParamStr8 = getWorkParamSetteValue(PARAM_ID_KK_TPPN_STAX_APLYYMD_8);
// ANK-3636-00-00 MOD END
		
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}
	
	/**
	 * 主処理
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		super.logPrint.printDebugLog("execute_START");
		
		// サービス契約番号、工事案件番号のキー格納用
		ArrayList<String> keyList = null;
		
		// 工事完了ワークファイルを読み込み、件数分繰り返す。
		ArrayList<JBSbatServiceInterfaceMap> kojiList = this.getInputFile();
		if(null != kojiList && 0 != kojiList.size())
		{
			keyList = new ArrayList<String>();
			
			for(JBSbatServiceInterfaceMap inMap:kojiList)
			{
				// 工事完了ワークファイルよりサービス契約番号を取得
				String svc_kei_no = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.SVC_KEI_NO));
				
				super.logPrint.printDebugLog("工事完了ワークファイルよりサービス契約番号:::" + svc_kei_no);
				
				// 工事完了ワークファイルより工事案件番号を取得
				String kojiak_no = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJIAK_NO));
				
				super.logPrint.printDebugLog("工事完了ワークファイルより工事案件番号:::" + kojiak_no);
				
				// サービス契約番号と工事案件番号で文字列を生成
				String svc_koji = svc_kei_no + kojiak_no;
				
				// 標準工事費情報はサービス契約番号、工事案件番号で複数ある場合、
				// １回の処理とする。リストに存在しないキーの場合
				if(!keyList.contains(svc_koji))
				{
					
					// 工事案件種別コード
					String kojiakSbtCd = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJIAK_SBT_CD));
					
					// 工事受付契機異動区分
					String kojiUkOptntyIdoDiv = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJI_UK_OPTNTY_IDO_DIV));
					
					super.logPrint.printDebugLog("工事案件種別コード★★★★" + kojiakSbtCd);
					super.logPrint.printDebugLog("工事受付契機異動区分★★★★" + kojiUkOptntyIdoDiv);
					
					// 工事案件種別コード="002:撤去(解約)"かつ、工事受付契機異動区分="00019:住所変更・登録"
					// 工事案件種別コード="004:住所変更(撤去)"かつ、工事受付契機異動区分="00019:住所変更・登録"
					// 上記以外は処理対象
					// ++++++++++ v22.00.00 変更開始 ++++++++++
//					if("00019".equals(kojiUkOptntyIdoDiv))
//					{
//						if("002".equals(kojiakSbtCd) || "004".equals(kojiakSbtCd))
					
					if(JBSbatKKConst.CD00576_IDO_DIV_00019.equals(kojiUkOptntyIdoDiv))
					{
						if(JBSbatKKConst.KOJIAK_SBT_CD_TEKKYO_DSL.equals(kojiakSbtCd) || JBSbatKKConst.KOJIAK_SBT_CD_ADCHG_TEKKYO.equals(kojiakSbtCd))
						// ++++++++++ v22.00.00 変更終了 ++++++++++
						{
							super.logPrint.printDebugLog("標準工事費情報の対象外----サービス契約番号------------" + svc_kei_no);
						}
						else
						{
							super.logPrint.printDebugLog("標準工事費情報の対象:::::::サービス契約番号::::::::" + svc_kei_no);
							// 標準工事費情報の取得を行う。
							this.execStdardHiInf(inMap);
						}
					}
					else
					{
						super.logPrint.printDebugLog("標準工事費情報の対象:::::::サービス契約番号::::::::" + svc_kei_no);
						// 標準工事費情報の取得を行う。
						this.execStdardHiInf(inMap);
					}
					
					// 標準外工事費情報の取得を行う。
					this.execStdardGaiHiInf(inMap);
					
					keyList.add(svc_koji);
				}
			}
		}
		
		super.logPrint.printDebugLog("execute_END");
		
		return null;
		
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}
	
	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_KK_T_ICJKN_SETTE.close();
		db_KK_T_SVC_KEI.close();
		db_KU_T_SVKEI_KOJIAK.close();
		db_KU_T_SVKEI_KOJIAK_014.close();
		db_KU_T_KOJIAK.close();
		db_KK_T_TK_HOSHIKI_KEI.close();
		db_KK_T_TK_HSK_KEI_PRC.close();
		db_KK_M_TMP_PAY_PRC.close();
		db_KK_T_KOJIHI_SNST_WK.close();
		db_CH_M_PRC_KMK_OPUT_NM.close();
		db_CH_M_PRC_SCHDL_TEIGI.close();
// ANK-3296-00-00 ADD START
		db_KK_T_KOJIHI_KAP_KEI.close();
// ANK-3296-00-00 ADD END
// ANK-4042-00-00 ADD START
		db_KK_T_KOJIHI_KAP_KEI_2.close();
// ANK-4042-00-00 ADD END
		db_KK_T_KICJKN.close();
		db_KK_T_PRG.close();
		db_KK_T_KAISEN_TG_SVKEI.close();
		// =========== OM-2013-0003204対応 start ==============
		db_KK_T_SVC_KEI_277.close();
		// =========== OM-2013-0003204対応 end ==============
		// =========== OM-2013-0003997対応 start ==============
		db_KK_T_ADCHG_DTL.close();
		// =========== OM-2013-0003997対応 end ==============
// ANK-4038-00-00 ADD START
		db_KU_T_KJAK_EOH_NET.close();
		db_KU_T_KJAK_EOH_NTMANS.close();
// ANK-4038-00-00 ADD END
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
		
		// 共通部品用
		stmt.close();
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}
	
	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	/**
	 * SQLKEY(KK_SELECT_014)で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_SVKEI_KOJIAK_KK_SELECT_014(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		
		// DBアクセスを実行します
		db_KU_T_SVKEI_KOJIAK_014.selectBySqlDefine(paramList, KU_T_SVKEI_KOJIAK_KK_SELECT_014);
	}
	
	/**
	 * SQLKEY(KK_SELECT_004)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	工事案件番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_ICJKN_SETTE_KK_SELECT_004(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		
		// DBアクセスを実行します
		db_KK_T_ICJKN_SETTE.selectBySqlDefine(paramList, KK_T_ICJKN_SETTE_KK_SELECT_004);
	}
	
	/**
	 * SQLKEY(KK_SELECT_171)で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_171(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		
		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_171);
	}
	
	/**
	 * SQLKEY(KK_SELECT_003)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	工事案件番号
	 *		 	サービス契約番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKU_T_SVKEI_KOJIAK_KK_SELECT_003(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		
		// DBアクセスを実行します
		db_KU_T_SVKEI_KOJIAK.selectBySqlDefine(paramList, KU_T_SVKEI_KOJIAK_KK_SELECT_003);
	}
	
	/**
	 * PK(ＰＫ　検索)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で条件マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	KOJIAK_NO
	 * </pre>
	 * <p>
	 * @param whereParam 条件項目の値。
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private JBSbatCommonDBInterface executeKU_T_KOJIAK_PKSELECT(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("KOJIAK_NO", whereParam[0]);
		
		// DBアクセスを実行します
		return db_KU_T_KOJIAK.selectByPrimaryKeys(whereMap);
	}
	
	/**
	 * SQLKEY(KK_SELECT_029)で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_TK_HOSHIKI_KEI_KK_SELECT_029(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		
		// DBアクセスを実行します
		db_KK_T_TK_HOSHIKI_KEI.selectBySqlDefine(paramList, KK_T_TK_HOSHIKI_KEI_KK_SELECT_029);
	}
	
	/**
	 * SQLKEY(KK_SELECT_005)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	提供方式契約番号
	 *		 	請求金額適用開始年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_TK_HSK_KEI_PRC_KK_SELECT_005(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		
		// DBアクセスを実行します
		db_KK_T_TK_HSK_KEI_PRC.selectBySqlDefine(paramList, KK_T_TK_HSK_KEI_PRC_KK_SELECT_005);
	}
	
	/**
	 * PK(ＰＫ　検索)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で条件マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	TMP_PAY_PRC_NO
	 * </pre>
	 * <p>
	 * @param whereParam 条件項目の値。
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private JBSbatCommonDBInterface executeKK_M_TMP_PAY_PRC_PKSELECT(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("TMP_PAY_PRC_NO", whereParam[0]);
		
		// DBアクセスを実行します
		return db_KK_M_TMP_PAY_PRC.selectByPrimaryKeys(whereMap);
	}
	
	/**
	 * SQLKEY(KK_SELECT_001)で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_KOJIHI_SNST_WK_KK_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		
		// DBアクセスを実行します
		db_KK_T_KOJIHI_SNST_WK.selectBySqlDefine(paramList, KK_T_KOJIHI_SNST_WK_KK_SELECT_001);
	}
	
	/**
	 * SQLKEY(KK_SELECT_006)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	イベント年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeCH_M_PRC_SCHDL_TEIGI_KK_SELECT_006(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		
		// DBアクセスを実行します
		db_CH_M_PRC_SCHDL_TEIGI.selectBySqlDefine(paramList, CH_M_PRC_SCHDL_TEIGI_KK_SELECT_006);
	}
	
	/**
	 * SQLKEY(KK_SELECT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	料金コースコード
	 *		 	料金グループコード
	 *		 	料金項目コード
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeCH_M_PRC_KMK_OPUT_NM_KK_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		
		// DBアクセスを実行します
		db_CH_M_PRC_KMK_OPUT_NM.selectBySqlDefine(paramList, CH_M_PRC_KMK_OPUT_NM_KK_SELECT_001);
	}
	
	/**
	 * SQLKEY(KK_SELECT_013)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	運用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeCH_M_PRC_SCHDL_TEIGI_KK_SELECT_013(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		
		// DBアクセスを実行します
		db_CH_M_PRC_SCHDL_TEIGI.selectBySqlDefine(paramList, CH_M_PRC_SCHDL_TEIGI_KK_SELECT_013);
	}
	
	/**
	 * PK(ＰＫ　更新)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.引数で条件マップを作ります。<br>
	 *
	 * 3.DBアクセスを実行します。<br>
	 * 
	 * 4.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	完了状態コード				FIN_STAT_CD
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	ICJKN_SETTE_NO
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @param whereParam 条件項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_ICJKN_SETTE_PKUPDATE(Object[] setParam, Object[] whereParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("FIN_STAT_CD", setParam[0]);
		
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("ICJKN_SETTE_NO", whereParam[0]);
		
		// DBアクセスを実行します
		db_KK_T_ICJKN_SETTE.updateByPrimaryKeys(whereMap, setMap);
	}
	
	/**
	 * SQLKEY(KK_SELECT_023)で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_023(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		
		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_023);
	}
// ANK-3296-00-00 ADD START
	/**
	 * SQLKEY(KK_SELECT_001)で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_KOJIHI_KAP_KEI_KK_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_KOJIHI_KAP_KEI.selectBySqlDefine(paramList, KK_T_KOJIHI_KAP_KEI_KK_SELECT_001);
	}
// ANK-3296-00-00 ADD END
// ANK-4042-00-00 ADD START
	/**
	 * SQLKEY(KK_SELECT_006)で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_KOJIHI_KAP_KEI_KK_SELECT_006(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_KOJIHI_KAP_KEI_2.selectBySqlDefine(paramList, KK_T_KOJIHI_KAP_KEI_KK_SELECT_006);
	}
// ANK-4042-00-00 ADD END
	
	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	契約一時金番号				KICJKN_NO
	 *		 	一時支払料金番号				TMP_PAY_PRC_NO
	 *		 	一時金設定番号				ICJKN_SETTE_NO
	 *		 	サービス契約番号				SVC_KEI_NO
	 *		 	サービス契約内訳番号				SVC_KEI_UCWK_NO
	 *		 	機器提供サービス契約番号				KKTK_SVC_KEI_NO
	 *		 	オプションサービス契約番号				OP_SVC_KEI_NO
	 *		 	サブオプションサービス契約番号				SBOP_SVC_KEI_NO
	 *		 	請求オプションサービス契約番号				SEIOPSVC_KEI_NO
	 *		 	割引サービス契約番号				WRIB_SVC_KEI_NO
	 *		 	オーナー契約番号				OWNR_KEI_NO
	 *		 	一時金額				ICJKN_AMNT
	 *		 	一時金設定適用月				ICJKN_SETTE_APLY_MON
	 *		 	適用状態コード				APLY_STAT_CD
	 *		 	取消連携状態コード				CL_RENKEI_STAT_CD
	 *			発生起因工事案件番号					HSI_KIIN_KJAK_NO
	 *			マンション一時金発生元契約識別コード	MANS_ICJKN_HSI_MT_KEI_SKCD
	 *			マンション一時金発生契機コード			MANS_ICJKN_HSI_OPTY_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
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KICJKN_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("KICJKN_NO", setParam[0]);
		setMap.setValue("TMP_PAY_PRC_NO", setParam[1]);
		setMap.setValue("ICJKN_SETTE_NO", setParam[2]);
		setMap.setValue("SVC_KEI_NO", setParam[3]);
		setMap.setValue("SVC_KEI_UCWK_NO", setParam[4]);
		setMap.setValue("KKTK_SVC_KEI_NO", setParam[5]);
		setMap.setValue("OP_SVC_KEI_NO", setParam[6]);
		setMap.setValue("SBOP_SVC_KEI_NO", setParam[7]);
		setMap.setValue("SEIOPSVC_KEI_NO", setParam[8]);
		setMap.setValue("WRIB_SVC_KEI_NO", setParam[9]);
		setMap.setValue("OWNR_KEI_NO", setParam[10]);
		setMap.setValue("ICJKN_AMNT", setParam[11]);
		setMap.setValue("ICJKN_SETTE_APLY_MON", setParam[12]);
		setMap.setValue("APLY_STAT_CD", setParam[13]);
		setMap.setValue("CL_RENKEI_STAT_CD", setParam[14]);
		setMap.setValue("HSI_KIIN_KJAK_NO", setParam[15]);
		setMap.setValue("MANS_ICJKN_HSI_MT_KEI_SKCD", "");
		setMap.setValue("MANS_ICJKN_HSI_OPTY_CD", "");
		setMap.setValue("ADD_DTM", setParam[16]);
		setMap.setValue("ADD_OPEACNT", setParam[17]);
		setMap.setValue("UPD_DTM", setParam[18]);
		setMap.setValue("UPD_OPEACNT", setParam[19]);
		setMap.setValue("DEL_DTM", setParam[20]);
		setMap.setValue("DEL_OPEACNT", setParam[21]);
		setMap.setValue("MK_FLG", setParam[22]);
		setMap.setValue("ADD_UNYO_YMD", setParam[23]);
		setMap.setValue("ADD_TRN_ID", setParam[24]);
		setMap.setValue("UPD_UNYO_YMD", setParam[25]);
		setMap.setValue("UPD_TRN_ID", setParam[26]);
		setMap.setValue("DEL_UNYO_YMD", setParam[27]);
		setMap.setValue("DEL_TRN_ID", setParam[28]);
		
		// DBアクセスを実行します
		db_KK_T_KICJKN.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(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("PRG_NO", setParam[0]);
		setMap.setValue("MSKM_DTL_NO", setParam[1]);
		setMap.setValue("SEIKY_KEI_NO", setParam[2]);
		setMap.setValue("SEIKY_WAY_NO_KOZA", setParam[3]);
		setMap.setValue("SEIKY_WAY_NO_CRECARD", setParam[4]);
		setMap.setValue("SVC_KEI_NO", setParam[5]);
		setMap.setValue("SVC_KEI_UCWK_NO", setParam[6]);
		setMap.setValue("SVC_KEI_KAISEN_UCWK_NO", setParam[7]);
		setMap.setValue("KKTK_SVC_KEI_NO", setParam[8]);
		setMap.setValue("OP_SVC_KEI_NO", setParam[9]);
		setMap.setValue("SEIOPSVC_KEI_NO", setParam[10]);
		setMap.setValue("SBOP_SVC_KEI_NO", setParam[11]);
		setMap.setValue("WRIB_SVC_KEI_NO", setParam[12]);
		setMap.setValue("IDO_DIV", setParam[13]);
		setMap.setValue("IDO_DTM", setParam[14]);
		setMap.setValue("PRG_STAT", setParam[15]);
		setMap.setValue("PRG_DTM", setParam[16]);
		setMap.setValue("PRG_MEMO", setParam[17]);
		setMap.setValue("PRG_TKJK_1", setParam[18]);
		setMap.setValue("PRG_TKJK_2", setParam[19]);
		setMap.setValue("ADD_DTM", setParam[20]);
		setMap.setValue("ADD_OPEACNT", setParam[21]);
		setMap.setValue("UPD_DTM", setParam[22]);
		setMap.setValue("UPD_OPEACNT", setParam[23]);
		setMap.setValue("DEL_DTM", setParam[24]);
		setMap.setValue("DEL_OPEACNT", setParam[25]);
		setMap.setValue("MK_FLG", setParam[26]);
		setMap.setValue("ADD_UNYO_YMD", setParam[27]);
		setMap.setValue("ADD_TRN_ID", setParam[28]);
		setMap.setValue("UPD_UNYO_YMD", setParam[29]);
		setMap.setValue("UPD_TRN_ID", setParam[30]);
		setMap.setValue("DEL_UNYO_YMD", setParam[31]);
		setMap.setValue("DEL_TRN_ID", setParam[32]);
		
		// DBアクセスを実行します
		db_KK_T_PRG.insertByPrimaryKeys(setMap);
	}
	
	/**
	 * SQLKEY(KK_SELECT_033)で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_KAISEN_TG_SVKEI_KK_SELECT_033(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		
		// DBアクセスを実行します
		db_KK_T_KAISEN_TG_SVKEI.selectBySqlDefine(paramList, KK_T_KAISEN_TG_SVKEI_KK_SELECT_033);
	}
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
	
	/* ++++++++++ v10.00.00 追加開始 ++++++++++ */
	/**
	 * SQLKEY(KK_SELECT_037)で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_TK_HOSHIKI_KEI_KK_SELECT_037(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		
		// DBアクセスを実行します
		db_KK_T_TK_HOSHIKI_KEI.selectBySqlDefine(paramList, KK_T_TK_HOSHIKI_KEI_KK_SELECT_037);
	}
	/* ++++++++++ v10.00.00 追加終了 ++++++++++ */
	
	/**
	 * 工事完了ワークファイル情報を読み込みます。<br>
	 * <p>
	 * @return ArrayList 工事完了ワークファイル読込リスト
	 * @throws Exception,IOException 業務サービス内で発生した例外全般。
	 */	
	private ArrayList<JBSbatServiceInterfaceMap> getInputFile() throws Exception, IOException
	{
		// フリー項目よりファイル名(フルパス)を読み込む
		String fileItem = commonItem.getFreeItem();
		
		// ファイル情報保持用変数の初期化
		ArrayList<JBSbatServiceInterfaceMap> kojiList = null;
		BufferedReader br = null;
		
		// 工事完了ワークファイルを読み込みます。
		try
		{
			br = new BufferedReader(new InputStreamReader(new FileInputStream(fileItem), JKKBatConst.SJIS));
			while (br.ready())
			{
				if(null == kojiList)
				{
					kojiList = new ArrayList<JBSbatServiceInterfaceMap>();
				}
				
				// 1行を読込み、カンマで区切ります。
				String[] workValue = br.readLine().split(",");
				
				// 項目インターフェースを生成し項目を設定する。
				JBSbatServiceInterfaceMap inMap = new JBSbatServiceInterfaceMap();
				
				inMap.setString(JBSbatKKIFM085.SVC_KEI_NO, 					workValue[0]);	// サービス契約番号
				inMap.setString(JBSbatKKIFM085.SVC_KEI_KAISEN_UCWK_NO, 		workValue[1]);	// サービス契約回線内訳番号
				inMap.setString(JBSbatKKIFM085.RNKI_YMD, 					workValue[2]);	// 連携年月日
				inMap.setString(JBSbatKKIFM085.KOJIAK_SBT_CD, 				workValue[3]);	// 工事案件種別コード
				inMap.setString(JBSbatKKIFM085.KOJIAK_NO, 					workValue[4]);	// 工事案件番号
				inMap.setString(JBSbatKKIFM085.OPMS_KOJIAK_RSLT_CD, 		workValue[5]);	// ＯＰＭＳ工事案件結果コード
				inMap.setString(JBSbatKKIFM085.KOJIAK_JSSI_YMD, 			workValue[6]);	// 工事案件実施年月日
				inMap.setString(JBSbatKKIFM085.KOJI_UK_OPTNTY_IDO_DIV, 		workValue[7]);	// 工事受付契機異動区分
				
				kojiList.add(inMap);
			}
		}
		catch (IOException e)
		{
			// 工事完了ワークファイルがない場合はエラー。
			throw new JBSbatBusinessException("EKKB0020CE", new String[]{fileItem});
		}
		finally
		{
			if (null != br)
			{
				br.close();
			}
		}
		return kojiList;
	}
	
	/**
	 * 電話の場合同時申込でネットが存在するチェックを行う。
	 * <br>
	 * @param svc_kei_no サービス契約番号
	 * @param kojiakNo 工事案件番号
	 * @throws Exception 
	 */
	private boolean checkDojiMskm(String svc_kei_no, String kojiakNo) throws Exception
	{
		// 電話の場合同時申込でネットが存在する場合は処理対象外
		JBSbatCommonDBInterface svcKeiKojiakMap = null;
		
		// サービス契約工事案件検索処理を実行します。
		executeKU_T_SVKEI_KOJIAK_KK_SELECT_014(new Object[]{super.opeDate, kojiakNo});
		
		String svcCd = "";
		
		// ネット契約が解約済以外
		boolean netFlg = false;
		
		for (svcKeiKojiakMap = db_KU_T_SVKEI_KOJIAK_014.selectNext(); null != svcKeiKojiakMap ; svcKeiKojiakMap = db_KU_T_SVKEI_KOJIAK_014.selectNext())
		{
			 //サービス契約番号
			String svcKeiNo = JBSbatStringUtil.Rtrim(svcKeiKojiakMap.getString(JBSbatKU_T_SVKEI_KOJIAK.SVC_KEI_NO));
			
			if(svc_kei_no.equals(svcKeiNo))
			{
				//サービスコード
				svcCd = JBSbatStringUtil.Rtrim(svcKeiKojiakMap.getString(JBSbatKU_T_SVKEI_KOJIAK.SVC_CD)); 
			}
			
			//サービスコード
			String svcCdTmp = JBSbatStringUtil.Rtrim(svcKeiKojiakMap.getString(JBSbatKU_T_SVKEI_KOJIAK.SVC_CD));
			
			// ネット契約が存在する場合
			// ++++++++++ v22.00.00 変更開始 ++++++++++
//			if("01".equals(svcCdTmp))
			if(JBSbatKKConst.SVC_CD_IN_SVC.equals(svcCdTmp))
			// ++++++++++ v22.00.00 変更終了 ++++++++++
			{
				// ネットのサービス契約ステータス
				String svcKeiStat = JBSbatStringUtil.Rtrim(svcKeiKojiakMap.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT));
				
				// 解約済,キャンセル済以外
				// ++++++++++ v22.00.00 変更開始 ++++++++++
//				if(!"910".equals(svcKeiStat) && !"920".equals(svcKeiStat))
				if(!JBSbatKKConst.SVC_KEI_STAT_DLS_ZM.equals(svcKeiStat) && !JBSbatKKConst.SVC_KEI_STAT_CNCL_ZM.equals(svcKeiStat))
				// ++++++++++ v22.00.00 変更終了 ++++++++++
				{
					netFlg = true;
				}
			}
		}
		
		// 同時に申込んだネット契約が解約済以外が存在する場合、標準工事費は作成しない
		// ++++++++++ v22.00.00 変更開始 ++++++++++
//		if("02".equals(svcCd) && netFlg)
		if(JBSbatKKConst.SVC_CD_TEL_SVC.equals(svcCd) && netFlg)
		// ++++++++++ v22.00.00 変更終了 ++++++++++
		{
			super.logPrint.printDebugLog("サービス契約工事案件TBL検索結果ネットあり（電話）：対象外");
			return false;
		}
		
		return true;
	}
	
	/**
	 * 標準工事費情報より契約一時金の登録処理を行います。
	 * <br>
	 * @param inMap 工事完了ワークファイル
	 * @throws Exception メソッド内で発生した例外全般。
	 */
	private void execStdardHiInf(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		super.logPrint.printDebugLog("execStdardHiInf_START");
		
		// 工事完了ワークファイルよりサービス契約番号を取得
		String svc_kei_no = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.SVC_KEI_NO));
		
		// 工事完了ワークファイルより工事案件番号を取得
		String kojiak_no = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJIAK_NO));
		
		// 工事完了ワークファイルより工事案件実施年月日を取得します。
		String kojiakJssiYmd = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJIAK_JSSI_YMD));
		
// ANK-3296-00-00 ADD START
		// 工事完了ワークファイルよりサービス契約回線内訳番号を取得します。
		String svcKeiKaisenUcwkNo = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.SVC_KEI_KAISEN_UCWK_NO));
// ANK-3296-00-00 ADD END

// ANK-3412-00-00 ADD START
		// 工事完了ワークファイルより工事案件種別コードを取得します。
		String kojiakSbtCd = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJIAK_SBT_CD));
// ANK-3412-00-00 ADD END

		// 電話の場合同時申込でネットが存在する場合は処理対象外
		if(!checkDojiMskm(svc_kei_no, kojiak_no))
		{
			return;
		}
		
		// @標準工事費を作成しないサービス契約情報の取得を行う。
		String[] param1 = {kojiak_no};
		this.executeKK_T_ICJKN_SETTE_KK_SELECT_004(param1);
		
		// 検索結果がない場合、標準工事費情報取得処理を行う。
		JBSbatCommonDBInterface icjknMap = db_KK_T_ICJKN_SETTE.selectNext();
		if(null == icjknMap)
		{
			// Aサービス契約情報の取得を行う。
			String[] param2 = {svc_kei_no, super.opeDate};
			this.executeKK_T_SVC_KEI_KK_SELECT_171(param2);
			
			// 検索結果より料金グループコード、サービスコード、提供方式契約番号を取得する。
			String prc_grp_cd = "";
			String svc_cd = "";
			String tk_hoshiki_kei_no = "";
			// =========== OM-2013-0003204対応 start ==============
			String pcrs_cd = "";
			// =========== OM-2013-0003204対応 end ==============
			JBSbatCommonDBInterface svcKeiMap = db_KK_T_SVC_KEI.selectNext();
			if(null != svcKeiMap)
			{
				prc_grp_cd = JBSbatStringUtil.Rtrim(svcKeiMap.getString(JBSbatKK_T_SVC_KEI.PRC_GRP_CD));
				svc_cd = JBSbatStringUtil.Rtrim(svcKeiMap.getString(JBSbatKK_T_SVC_KEI.SVC_CD));
				tk_hoshiki_kei_no = JBSbatStringUtil.Rtrim(svcKeiMap.getString(JBSbatKK_T_SVC_KEI.TK_HOSHIKI_KEI_NO));
				// =========== OM-2013-0003204対応 start ==============
				pcrs_cd = JBSbatStringUtil.Rtrim(svcKeiMap.getString(JBSbatKK_T_SVC_KEI.PCRS_CD));
				// =========== OM-2013-0003204対応 end ==============
				super.logPrint.printDebugLog("料金グループコード:::" + prc_grp_cd);
				super.logPrint.printDebugLog("サービスコード:::::::" + svc_cd);
				super.logPrint.printDebugLog("提供方式契約番号:::::" + tk_hoshiki_kei_no);
				super.logPrint.printDebugLog("料金コースコード:::::" + pcrs_cd);
			}
			
			// 工事案件のPK検索を行い、工事受付契機異動区分、同時代表工事案件番号、料金コースコード、工事案件種別コードを取得する。
			String koji_uk_optnty_ido_div = "";
			String doji_daihyo_kojiak_no = "";
// ANK-3412-00-00 ADD START
			String kojiak_pcrs_cd = "";
// ANK-3412-00-00 ADD END
// ANK-4315-00-00 ADD START
			String kojiak_sbt_cd = "";
// ANK-4315-00-00 ADD END
// ANK-4468-16-00 ADD START
			String equip_ryuyo_um = "";
// ANK-4468-16-00 ADD END
			String[] whereParam1 = {kojiak_no};
			JBSbatCommonDBInterface kojiakMap = this.executeKU_T_KOJIAK_PKSELECT(whereParam1);
			if(null != kojiakMap)
			{
				koji_uk_optnty_ido_div = JBSbatStringUtil.Rtrim(kojiakMap.getString(JBSbatKU_T_KOJIAK.KOJI_UK_OPTNTY_IDO_DIV));
				doji_daihyo_kojiak_no = JBSbatStringUtil.Rtrim(kojiakMap.getString(JBSbatKU_T_KOJIAK.DOJI_DAIHYO_KOJIAK_NO));
// ANK-3412-00-00 ADD START
				kojiak_pcrs_cd = JBSbatStringUtil.Rtrim(kojiakMap.getString(JBSbatKU_T_KOJIAK.PCRS_CD));
// ANK-3412-00-00 ADD END
// ANK-4315-00-00 ADD START
				kojiak_sbt_cd = JBSbatStringUtil.Rtrim(kojiakMap.getString(JBSbatKU_T_KOJIAK.KOJIAK_SBT_CD));
// ANK-4315-00-00 ADD END
// ANK-4468-16-00 ADD START
				equip_ryuyo_um = JBSbatStringUtil.Rtrim(kojiakMap.getString(JBSbatKU_T_KOJIAK.EQUIP_RYUYO_UM));
// ANK-4468-16-00 ADD END
				
				super.logPrint.printDebugLog("工事受付契機異動区分:::" + koji_uk_optnty_ido_div);
				super.logPrint.printDebugLog("同時代表工事案件番号:::" + doji_daihyo_kojiak_no);
// ANK-3412-00-00 ADD START
				super.logPrint.printDebugLog("料金コースコード:::" + kojiak_pcrs_cd);
// ANK-3412-00-00 ADD END
// ANK-4315-00-00 ADD START
				super.logPrint.printDebugLog("工事案件種別コード:::" + kojiak_sbt_cd);
// ANK-4315-00-00 ADD END
// ANK-4468-16-00 ADD START
				super.logPrint.printDebugLog("設備流用有無:::" + equip_ryuyo_um);
// ANK-4468-16-00 ADD END
			}
			
// ANK-4038-00-00 ADD START
			// 工事範囲コード
			String koji_scope_cd = "";
			// PK項目
			String[] whereParam3 = {kojiak_no};
			
			// 工事スキップによる標準工事費対象外判定を行う。
			// @工事案件＜ｅｏ光ネット＞のPK検索を行う。
			JBSbatCommonDBInterface kojiakEohNetMap = this.executeKU_T_KJAK_EOH_NET_PKSELECT(whereParam3);
			if(null != kojiakEohNetMap)
			{
				koji_scope_cd = JBSbatStringUtil.Rtrim(kojiakEohNetMap.getString(JBSbatKU_T_KJAK_EOH_NET.KOJI_SCOPE_CD));
				
				super.logPrint.printDebugLog("工事範囲コード:::" + koji_scope_cd );
			}
			
			else
			{
				// A上記@の検索結果が存在しない場合、工事案件＜eo光ネットマンション＞のPK検索を行う。
				JBSbatCommonDBInterface kojiakEohNtmansMap = this.executeKU_T_KJAK_EOH_NTMANS_PKSELECT(whereParam3);
				if(null != kojiakEohNtmansMap)
				{
					koji_scope_cd = JBSbatStringUtil.Rtrim(kojiakEohNtmansMap.getString(JBSbatKU_T_KJAK_EOH_NTMANS.KOJI_SCOPE_CD));
				
					super.logPrint.printDebugLog("工事範囲コード:::" + koji_scope_cd );
				}
			}
			// B工事スキップによる標準工事費対象外判定を行う。
			// 工事範囲コードが「070：ローゼット済工事不要案件」 かつ「b」で取得した工事受付契機異動区分が「00009：コース変更」の場合
			if(KOJI_SCOPE_070.equals(koji_scope_cd) && JKKBatConst.IDO_DIV_COURSECHG.equals(koji_uk_optnty_ido_div) )
			{
				// 処理対象外とする。
				return;
			}
// ANK-4315-00-00 ADD START
			// 工事範囲コードが「070：ローゼット済工事不要案件」
			// かつ工事受付契機異動区分が「00002：サービス追加」、「00026：機器契約変更」、「00041：光電話・番号追加」
			// かつ工事案件種別コードが「015：ONU交換工事」の場合
			if(KOJI_SCOPE_070.equals(koji_scope_cd) && (JBSbatKKConst.CD00576_IDO_DIV_00002.equals(koji_uk_optnty_ido_div)
					|| JBSbatKKConst.CD00576_IDO_DIV_00026.equals(koji_uk_optnty_ido_div)
					|| JBSbatKKConst.CD00576_IDO_DIV_00041.equals(koji_uk_optnty_ido_div))
					&& JBSbatKKConst.KOJIAK_SBT_CD_ONU_CHG_KOJI.equals(kojiak_sbt_cd))
			{
				// 処理対象外とする。
				return;
			}
// ANK-4315-00-00 ADD END
// ANK-4468-16-00 ADD START
			// 工事範囲コードが「070：ローゼット済工事不要案件」
			// かつ工事受付契機異動区分が「00001：新規契約」、「00002：サービス追加」
			// かつ料金グループコードが「02：eo光ネットホームタイプ」の場合
			if(KOJI_SCOPE_070.equals(koji_scope_cd) && (JBSbatKKConst.CD00576_IDO_DIV_00001.equals(koji_uk_optnty_ido_div)
					|| JBSbatKKConst.CD00576_IDO_DIV_00002.equals(koji_uk_optnty_ido_div))
					&& JBSbatKKConst.PGRP_NET_02.equals(prc_grp_cd))
			{
				// 処理対象外とする。
				return;
			}
// ANK-4468-16-00 ADD END
// ANK-4038-00-00 ADD END
			
			// B住居形態の取得を行う。
			String jk_form = "";
			
			// 提供方式契約番号が未設定の場合
			if("".equals(tk_hoshiki_kei_no))
			{
				// 住居形態は「1：ホーム」を設定
				// ++++++++++ v22.00.00 変更開始 ++++++++++
//				jk_form = "1";
				jk_form = JBSbatKKConst.CD00762_JK_FORM_1;
				// ++++++++++ v22.00.00 変更終了 ++++++++++
			}
			else
			{
				/* ++++++++++ v10.00.00 追加開始 ++++++++++ */
				// 提供方式パターンコードの検索を行う。
				String[] param_037 = {tk_hoshiki_kei_no};
				this.executeKK_T_TK_HOSHIKI_KEI_KK_SELECT_037(param_037);
				JBSbatCommonDBInterface tkHoshikiKeiMap_037 = db_KK_T_TK_HOSHIKI_KEI.selectNext();
				if(null != tkHoshikiKeiMap_037)
				{
					// 提供方式パターンコードを取得
					String tk_hoshiki_pattern_cd = JBSbatStringUtil.Rtrim(tkHoshikiKeiMap_037.getString(JBSbatKK_T_TK_HOSHIKI_KEI.TK_HOSHIKI_PATTERN_CD));
					
// ANK-3387-00-00 MOD START
//					// 提供方式パターンコードが「10：イーサネット」「31：VDSL1」「32：VDSL2」「33：VDSL3」「34：VDSL4」「35：VDSL5」の場合は処理対象外
					// 提供方式パターンコードが「10：イーサネット」「31：VDSL1」「32：VDSL2」「33：VDSL3」「34：VDSL4」「35：VDSL5」「51：光コンセント」の場合は処理対象外
// ANK-3387-00-00 MOD END
					// ++++++++++ v22.00.00 変更開始 ++++++++++
//					if (TK_HOSHIKI_PATTERN_CD_10.equals(tk_hoshiki_pattern_cd) || TK_HOSHIKI_PATTERN_CD_31.equals(tk_hoshiki_pattern_cd)
//							|| TK_HOSHIKI_PATTERN_CD_32.equals(tk_hoshiki_pattern_cd) || TK_HOSHIKI_PATTERN_CD_33.equals(tk_hoshiki_pattern_cd)
//							|| TK_HOSHIKI_PATTERN_CD_34.equals(tk_hoshiki_pattern_cd) || TK_HOSHIKI_PATTERN_CD_35.equals(tk_hoshiki_pattern_cd))
// ANK-3387-00-00 MOD START
//					if (JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_10.equals(tk_hoshiki_pattern_cd) || JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_31.equals(tk_hoshiki_pattern_cd)
//							|| JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_32.equals(tk_hoshiki_pattern_cd) || JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_33.equals(tk_hoshiki_pattern_cd)
//							||JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_34.equals(tk_hoshiki_pattern_cd) ||JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_35.equals(tk_hoshiki_pattern_cd))
					if (JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_10.equals(tk_hoshiki_pattern_cd) || JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_31.equals(tk_hoshiki_pattern_cd)
							|| JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_32.equals(tk_hoshiki_pattern_cd) || JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_33.equals(tk_hoshiki_pattern_cd)
							|| JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_34.equals(tk_hoshiki_pattern_cd) ||JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_35.equals(tk_hoshiki_pattern_cd)
							|| JBSbatKKConst.CD01213_TK_HOSHIKI_PATTERN_CD_51.equals(tk_hoshiki_pattern_cd))
// ANK-3387-00-00 MOD END
					// ++++++++++ v22.00.00 変更終了 ++++++++++
					{
						return;
					}
				}
				/* ++++++++++ v10.00.00 追加終了 ++++++++++ */
				
				// 料金グループコードが「04：ｅｏ光ネットマンションタイプ」の場合
				// ++++++++++ v22.00.00 変更開始 ++++++++++
//				if("04".equals(prc_grp_cd))
//				{
//					// 住居形態を「3：マンション」に設定
//					jk_form = "3";
//				}
				if(JBSbatKKConst.PGRP_NET_04.equals(prc_grp_cd))
				{
					// 住居形態を「3：マンション」に設定
					jk_form = JBSbatKKConst.CD00762_JK_FORM_3;
				}
				// ++++++++++ v22.00.00 変更終了 ++++++++++
				else
				{
					// マンション物件コードの検索を行う。
					String[] param = {tk_hoshiki_kei_no};
					this.executeKK_T_TK_HOSHIKI_KEI_KK_SELECT_029(param);
					JBSbatCommonDBInterface tkHoshikiKeiMap = db_KK_T_TK_HOSHIKI_KEI.selectNext();
					if(null != tkHoshikiKeiMap)
					{
						// 取得したマンション物件コードが「001：マンション」の場合、住居形態を「3：マンション」に設定
						String mansion_bukken_cd = JBSbatStringUtil.Rtrim(tkHoshikiKeiMap.getString(JBSbatKK_T_MANSION_BUKKEN.MANSION_BUKKEN_CD));
						// ++++++++++ v22.00.00 変更開始 ++++++++++
//						if("001".equals(mansion_bukken_cd))
//						{
//							jk_form = "3";
//						}
//						// 「002：メゾン」の場合、住居形態を「2：メゾン」に設定
//						else if("002".equals(mansion_bukken_cd))
//						{
//							jk_form = "2";
//						}
						if(JBSbatKKConst.MANSION_BUKKEN_CD_001.equals(mansion_bukken_cd))
						{
							jk_form = JBSbatKKConst.CD00762_JK_FORM_3;
						}
						// 「002：メゾン」の場合、住居形態を「2：メゾン」に設定
						else if(JBSbatKKConst.MANSION_BUKKEN_CD_002.equals(mansion_bukken_cd))
						{
							jk_form = JBSbatKKConst.CD00762_JK_FORM_2;
						}
						// ++++++++++ v22.00.00 変更終了 ++++++++++
						else
						{
							super.logPrint.printDebugLog("▼想定外のマンション物件コード：" + mansion_bukken_cd);
						}
					}
					else
					{
						super.logPrint.printDebugLog("▼提供方式契約の検索結果なし：" + tk_hoshiki_kei_no);
					}
				}
			}
			
// ANK-3296-00-00 ADD START
			// 工事費割賦対象か判定を行う。
// ANK-4315-00-00 MOD START
//			if(isKojihiKapTgCheck(koji_uk_optnty_ido_div, prc_grp_cd, jk_form, svcKeiKaisenUcwkNo, kojiak_no))
			if(isKojihiKapTgCheck(koji_uk_optnty_ido_div, prc_grp_cd, jk_form, svcKeiKaisenUcwkNo, kojiak_no, kojiak_sbt_cd))
// ANK-4315-00-00 MOD END
			{
				super.logPrint.printDebugLog("工事費割賦対象：スキップ" + " (サービス契約番号 ： " + svc_kei_no + " サービス契約回線内訳番号 : "
						+ svcKeiKaisenUcwkNo + " 工事案件番号 : " + kojiak_no + ")");
				return;
			}
// ANK-3296-00-00 ADD END

			// Cバンドル有無情報の取得を行う。
			String bundle_um = "1";
			
			// サービス契約の料金グループコードが、"10"（ｅｏ光電話）の場合
			// ++++++++++ v22.00.00 変更開始 ++++++++++
//			if("10".equals(prc_grp_cd))
			if(JBSbatKKConst.PGRP_TEL.equals(prc_grp_cd))
			// ++++++++++ v22.00.00 変更終了 ++++++++++
			{
				// サービス契約＿工事案件の検索を行う。
				String[] param3 = {kojiak_no, svc_kei_no};
				this.executeKU_T_SVKEI_KOJIAK_KK_SELECT_003(param3);
				
				JBSbatCommonDBInterface dbMap = db_KU_T_SVKEI_KOJIAK.selectNext();
				
				// 検索結果がなかった場合、バンドル無を設定。
				if(null == dbMap)
				{
					bundle_um = "0";
				}
				// 検索結果あり
				else
				{
					// サービス契約番号(NET)
					String svcKeiNoNet = JBSbatStringUtil.Rtrim(dbMap.getString(JBSbatKU_T_SVKEI_KOJIAK.SVC_KEI_NO));
					
					super.logPrint.printDebugLog("★サービス契約番号(NET):::" + svcKeiNoNet);
					
					// サービス契約の判定を行う
					// ネット契約  解約済、キャンセル済
					executeKK_T_SVC_KEI_KK_SELECT_023(new Object[]{svcKeiNoNet, opeDate});
					
					JBSbatCommonDBInterface dbMapSvcKei = db_KK_T_SVC_KEI.selectNext();
					
					// サービス契約ステータス
					String svcKeiStat = JBSbatStringUtil.Rtrim(dbMapSvcKei.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT));
					super.logPrint.printDebugLog("★サービス契約ステータス:::" + svcKeiStat);
					
					// サービス課金開始日
					String svcChrgStaymd = JBSbatStringUtil.Rtrim(dbMapSvcKei.getString(JBSbatKK_T_SVC_KEI.SVC_CHRG_STAYMD));
					super.logPrint.printDebugLog("★サービス課金開始日:::" + svcChrgStaymd);
					
					// サービス契約ステータス="910:解約済","920:キャンセル済"
					// ++++++++++ v22.00.00 変更開始 ++++++++++
//					if("910".equals(svcKeiStat) || "920".equals(svcKeiStat))
					if(JBSbatKKConst.SVC_KEI_STAT_DLS_ZM.equals(svcKeiStat) || JBSbatKKConst.SVC_KEI_STAT_CNCL_ZM.equals(svcKeiStat))
					// ++++++++++ v22.00.00 変更終了 ++++++++++
					{
						// サービス課金開始日=""
						if("".equals(svcChrgStaymd))
						{
							// バンドル無を設定
							bundle_um = "0";
						}
					}
				}
			}
			// "11"(eo光テレビ(K-CAT))または"13"(eo光テレビ(再送信))の場合
			// ++++++++++ v22.00.00 変更開始 ++++++++++
//			else if("11".equals(prc_grp_cd) || "13".equals(prc_grp_cd))
			else if(JBSbatKKConst.PGRP_TV_11.equals(prc_grp_cd) || JBSbatKKConst.PGRP_TV_13.equals(prc_grp_cd))
			// ++++++++++ v22.00.00 変更終了 ++++++++++	
			{
				// テレビは「0：無」固定
				bundle_um = "0";
			}
			
			super.logPrint.printDebugLog("バンドル有無:::" + bundle_um);
			
			// D旧料金番号適用区分の判定　「税率区分」の取得
			// 工事案件実施年月日が未設定の場合、処理対象外（通常ありえないはず）
			if ("".equals(kojiakJssiYmd))
			{
				super.logPrint.printDebugLog("工事案件実施年月日が未設定：スキップ");
				return;
			}
			
			//  工事案件実施年月日と一時支払料金番号（5%）適用年月日による税率区分取得を行います。
			String staxDiv = this.getStaxDiv(kojiakJssiYmd);
			
			super.logPrint.printDebugLog("税率区分:::" + staxDiv);
			
			// RULE0079を呼び出し、結果を取得する。
			HashMap<String, Object> map = new HashMap<String, Object>(3);
			map.put("IDO_DIV", koji_uk_optnty_ido_div);	// 異動区分
			map.put("MSKM_PRC_GRP_CD", prc_grp_cd);		// 申込料金グループコード
			map.put("JK_FORM", jk_form);				// 住居形態
			map.put("BUNDLE_UM", bundle_um);			// バンドル有無
			map.put("STAX_DIV", staxDiv);				// 税率区分
			
			// 異動区分="00005:解約"または、異動区分="00006:撤去(解約)"
			// ++++++++++ v22.00.00 変更開始 ++++++++++
//			if("00005".equals(koji_uk_optnty_ido_div) || "00006".equals(koji_uk_optnty_ido_div))
//			{
//				// ネット+電話の場合処理対象外
//				if("10".equals(prc_grp_cd) && "1".equals(bundle_um))
//				{
//					super.logPrint.printDebugLog("★★★★★ネット+電話の場合処理対象外★★★★★");
//					return;
//				}
//				// 異動区分= "00005:解約"
//				map.put("IDO_DIV", "00005");      // 異動区分
//				
//				// 撤去希望設備= "02:引込線撤去工事"
//				map.put("TK_KIBO_EQUIP", "02");   // 撤去希望設備
//			}
			if(JBSbatKKConst.CD00576_IDO_DIV_00005.equals(koji_uk_optnty_ido_div) || JBSbatKKConst.CD00576_IDO_DIV_00006.equals(koji_uk_optnty_ido_div))
			{
				// ネット+電話の場合処理対象外
				if(JBSbatKKConst.PGRP_TEL.equals(prc_grp_cd) && "1".equals(bundle_um))
				{
					super.logPrint.printDebugLog("★★★★★ネット+電話の場合処理対象外★★★★★");
					return;
				}
				// 異動区分= "00005:解約"
				map.put("IDO_DIV", JBSbatKKConst.CD00576_IDO_DIV_00005);      // 異動区分
				
				// 撤去希望設備= "02:引込線撤去工事"
				map.put("TK_KIBO_EQUIP", "02");   // 撤去希望設備
			}
			// ++++++++++ v22.00.00 変更終了 ++++++++++	
// ANK-3412-00-00 ADD START
			// 工事案件種別="009:コース変更(収容替)"の場合、工事案件の料金コースコード取得
			if (JBSbatKKConst.KOJIAK_SBT_CD_PLAN_CHG_SHUYO_KAE.equals(kojiakSbtCd))
			{
				pcrs_cd = kojiak_pcrs_cd;
			}
// ANK-3412-00-00 ADD END			
// ANK-3366-00-00 ADD START
			map.put("MSKM_PCRS_CD", pcrs_cd);		// 申込料金コースコード
// ANK-3366-00-00 ADD END
// ANK-4315-00-00 ADD START
			map.put("KOJIAK_SBT_CD", kojiak_sbt_cd);
// ANK-4315-00-00 ADD END
// ANK-4468-16-00 ADD START
			map.put("EQUIP_RYUYO_UM", equip_ryuyo_um);
// ANK-4468-16-00 ADD END
			// =========== OM-2013-0003997対応 start ==============
			// 住所変更と同時にサービス追加されたデータで一時金を作成するための対応
			// ++++++++++ v22.00.00 変更開始 ++++++++++
//			if("00019".equals(koji_uk_optnty_ido_div))
			if(JBSbatKKConst.CD00576_IDO_DIV_00019.equals(koji_uk_optnty_ido_div))
			// ++++++++++ v22.00.00 変更終了 ++++++++++	
			{
				setAdchgIdodiv(kojiak_no, svc_kei_no, svc_cd, map);
			}
			// =========== OM-2013-0003997対応 end ==============
			// =========== OM-2013-0003204対応 start ==============
			// 再送信時に電波障害案件.初期住人支払料金額で一時金を作成するための対応
			String dmpsAnkenIcjknAmnt = getDmpsAnkenIcjknAmnt(svc_kei_no, pcrs_cd, map);
			// =========== OM-2013-0003204対応 end ==============
			
			super.logPrint.printDebugLog("RULE0079001_パラメタ異動区分:::::::::::::::::" + map.get("IDO_DIV"));
			super.logPrint.printDebugLog("RULE0079001_パラメタ申込料金グループコード:::" + map.get("MSKM_PRC_GRP_CD"));
			super.logPrint.printDebugLog("RULE0079001_パラメタ住居形態:::::::::::::::::" + map.get("JK_FORM"));
			super.logPrint.printDebugLog("RULE0079001_パラメタバンドル有無:::::::::::::" + map.get("BUNDLE_UM"));
			super.logPrint.printDebugLog("RULE0079001_パラメタ税率区分:::::::::::::::::" + map.get("STAX_DIV"));
			super.logPrint.printDebugLog("RULE0079001_パラメタ撤去希望設備:::::::::::::" + map.get("TK_KIBO_EQUIP"));
// ANK-3366-00-00 ADD START
			super.logPrint.printDebugLog("RULE0079001_パラメタ申込料金コースコード:::::" + map.get("MSKM_PCRS_CD"));
// ANK-3366-00-00 ADD END
// ANK-4315-00-00 ADD START
			super.logPrint.printDebugLog("RULE0079001_パラメタ工事案件種別コード:::::::" + map.get("KOJIAK_SBT_CD"));
// ANK-4315-00-00 ADD END
// ANK-4468-16-00 ADD START
			super.logPrint.printDebugLog("RULE0079001_パラメタ設備流用有無:::::::::::::" + map.get("EQUIP_RYUYO_UM"));
// ANK-4468-16-00 ADD END
			
			ArrayList<ArrayList<HashMap<String, Object>>> resultList = this.getRULE0079001(map);
			
			// 一時金支払料金番号の取得
			String tmp_pay_prc_no = JBSbatStringUtil.Rtrim((String)resultList.get(0).get(0).get("TMP_PAY_PRC_NO"));
			
			super.logPrint.printDebugLog("RULE0079001より一時金支払料金番号:::" + tmp_pay_prc_no);
			
			// RULE0079より取得した一時金支払料金のPK検索を行う。
			String[] whereParam2 = {tmp_pay_prc_no};
			JBSbatCommonDBInterface tmpPayPrcMap = this.executeKK_M_TMP_PAY_PRC_PKSELECT(whereParam2);
			if(null != tmpPayPrcMap)
			{
				// 一時支払料金額の初期化
				String tmp_pay_prc_amnt = "";
				
				// 対象のサービス契約がネットか電話で住居形態が「マンション」かつ、一時支払料金のマンション一時金対象フラグが「対象」の場合
				// ++++++++++ v22.00.00 変更開始 ++++++++++
//				if (!"03".equals(svc_cd) && "3".equals(jk_form))
// #84355 MOD START
//				if (!JBSbatKKConst.SVC_CD_TV_SVC.equals(svc_cd) && JBSbatKKConst.CD00762_JK_FORM_3.equals(jk_form))
				if (!JBSbatKKConst.SVC_CD_TV_SVC.equals(svc_cd) && JBSbatKKConst.CD00762_JK_FORM_3.equals(jk_form)
						&& JKKStrConst.TG_HITG_FLG_TG.equals(JBSbatStringUtil.Rtrim(tmpPayPrcMap.getString(JBSbatKK_M_TMP_PAY_PRC.MANS_ICJKN_TG_FLG))))
// #84355 MOD END
				// ++++++++++ v22.00.00 変更終了 ++++++++++	
				{
// #84355 MOD START
//					super.logPrint.printDebugLog("★対象のサービス契約がネットか電話で住居形態が「マンション」" +
					super.logPrint.printDebugLog("★対象のサービス契約がネットか電話で住居形態が「マンション」かつ、一時支払料金のマンション一時金対象フラグが「対象」" +
// #84355 MOD END
					"：加入契約請求金額を一時支払料金額とする★");
					
					// 提供方式契約番号より提供方式契約料金より加入契約請求金額を取得する。
					String[] param = {tk_hoshiki_kei_no, super.opeDate};
					this.executeKK_T_TK_HSK_KEI_PRC_KK_SELECT_005(param);
					JBSbatCommonDBInterface tkHskKeiMap = db_KK_T_TK_HSK_KEI_PRC.selectNext();
					if(null != tkHskKeiMap)
					{
						// 加入契約請求金額を一時支払料金額とする。
						tmp_pay_prc_amnt = JBSbatStringUtil.Rtrim(tkHskKeiMap.getString(JBSbatKK_T_TK_HSK_KEI_PRC.KANYU_KEI_SEIKY_AMNT));
					}
				// =========== OM-2013-0003204対応 start ==============
				} 
				else if (dmpsAnkenIcjknAmnt != null && !"".equals(dmpsAnkenIcjknAmnt))
				{
					// 電波障害案件から取得した一時金が設定されている場合は置き換える
					tmp_pay_prc_amnt = dmpsAnkenIcjknAmnt;
				// =========== OM-2013-0003204対応 end ==============
				}
				else
				{
					// 検索結果より一時支払料金額を取得する。
					tmp_pay_prc_amnt = JBSbatStringUtil.Rtrim(tmpPayPrcMap.getString(JBSbatKK_M_TMP_PAY_PRC.TMP_PAY_PRC_AMNT));
				}
				
				// 一時支払料金名を取得する。
				String tmp_pay_prc_nm = JBSbatStringUtil.Rtrim(tmpPayPrcMap.getString(JBSbatKK_M_TMP_PAY_PRC.TMP_PAY_PRC_NM));
				
				super.logPrint.printDebugLog("一時支払料金額:::" + tmp_pay_prc_amnt);
				super.logPrint.printDebugLog("一時支払料金名:::" + tmp_pay_prc_nm);
				super.logPrint.printDebugLog("料金グループコード:::" + prc_grp_cd);
				
				// 一時支払料金額が設定されていたら
				if(!"".equals(tmp_pay_prc_amnt) && !"0".equals(tmp_pay_prc_amnt))
				{
					// 発生コードを取得し、契約一時金の登録を行う。
					String hassei_cd = JBSbatStringUtil.Rtrim(tmpPayPrcMap.getString(JBSbatKK_M_TMP_PAY_PRC.HASSEI_CD));
					this.insertKicjkn(tmp_pay_prc_no, svc_kei_no, tmp_pay_prc_amnt, kojiak_no, hassei_cd);
					
					
					//進捗テーブルへの登録を行う。
					String[] inParam = {svc_kei_no,kojiak_no,tmp_pay_prc_no,tmp_pay_prc_amnt,tmp_pay_prc_nm,koji_uk_optnty_ido_div};
					//サービス契約番号,工事案件番号,一時支払料金番号(一時支払料金KYE),一時支払料金工事費合計金額(一時金額),一時支払料金名,工事受付契機異動区分
					setPrgIfAdd(inParam);
					
					
				}
			}
		}
		else
		{
			// 取得した完了状態コードが「1：完了」以外の場合
			String fin_stat_cd = JBSbatStringUtil.Rtrim(icjknMap.getString(JBSbatKK_T_ICJKN_SETTE.FIN_STAT_CD));
			// ++++++++++ v22.00.00 変更開始 ++++++++++
//			if(!"1".equals(fin_stat_cd))
			if(!JBSbatKKConst.CD01147_FIN_STAT_CD_1.equals(fin_stat_cd))
			// ++++++++++ v22.00.00 変更終了 ++++++++++
			{
				// 一時金設定の更新処理を行う。
				String icjkn_sette_no = JBSbatStringUtil.Rtrim(icjknMap.getString(JBSbatKK_T_ICJKN_SETTE.ICJKN_SETTE_NO));
				JBSbatCommonDBInterface icjknForUpdateMap = new JBSbatCommonDBInterface();
				
				// 一時金設定テーブルに排他制御処理を実行する
				icjknForUpdateMap.setValue(JBSbatKK_T_ICJKN_SETTE.ICJKN_SETTE_NO, icjkn_sette_no);
				JBSbatCommonDBInterface dbmap = db_KK_T_ICJKN_SETTE.selectByPrimaryKeysForUpdateWait(icjknForUpdateMap);
				if(null == dbmap)
				{
					throw new JBSbatBusinessException("EKKB0360KE", new String[]{"一時金設定TBL", icjkn_sette_no});
				}
				
				// 完了状態コードを「1：完了」で更新する。
				// ++++++++++ v22.00.00 変更開始 ++++++++++
//				String[] setParam = {"1"};
				String[] setParam = {JBSbatKKConst.CD01147_FIN_STAT_CD_1};
				// ++++++++++ v22.00.00 変更終了 ++++++++++
				String[] whereParam = {icjkn_sette_no};
				this.executeKK_T_ICJKN_SETTE_PKUPDATE(setParam, whereParam);
				
				super.logPrint.printDebugLog("一時金設定TBLの完了状態コードを「1：完了」で更新：" + icjkn_sette_no);
			}
		}
		super.logPrint.printDebugLog("execStdardHiInf_END:::" + svc_kei_no);
	}
	
	/**
	 * 標準外工事費情報より契約一時金の登録処理を行います。
	 * <br>
	 * @param inMap 工事完了ワークファイル
	 * @throws Exception メソッド内で発生した例外全般。
	 */
	private void execStdardGaiHiInf(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		super.logPrint.printDebugLog("execStdardHiInf_START");
		
		// 工事完了ワークファイルよりサービス契約番号を取得
		String svc_kei_no = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.SVC_KEI_NO));
		
		// 工事完了ワークファイルより工事案件番号を取得
		String kojiak_no = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJIAK_NO));
		
		// 工事完了ワークファイルより連携年月日を取得
		String rnki_ymd = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.RNKI_YMD));
		
		// 工事完了ワークファイルよりサービス契約回線内訳番号を取得
		String svcKeiKaisenUcwkNo = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.SVC_KEI_KAISEN_UCWK_NO));
		
		// 工事完了ワークファイルより工事案件実施年月日を取得
		String kojiakJssiYmd = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJIAK_JSSI_YMD));
		
		// OM-2017-0000966 ADD START
		// 工事完了ワークファイルより工事案件種別コードを取得
		String kojiakSbtCd = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJIAK_SBT_CD));
		
		// 工事完了ワークファイルより工事受付契機異動区分を取得
		String kojiUkOptntyIdoDiv = JBSbatStringUtil.Rtrim(inMap.getString(JBSbatKKIFM085.KOJI_UK_OPTNTY_IDO_DIV));
		// OM-2017-0000966 ADD END
		
		// 工事費算出ワークより工事費情報の抽出を行う。
		String[] param = {super.opeDate, svc_kei_no, kojiak_no};
		this.executeKK_T_KOJIHI_SNST_WK_KK_SELECT_001(param);
		
		// 検索結果がある場合
		JBSbatCommonDBInterface kojihiSnstWkMap = null;
		for(kojihiSnstWkMap = db_KK_T_KOJIHI_SNST_WK.selectNext(); null != kojihiSnstWkMap; kojihiSnstWkMap = db_KK_T_KOJIHI_SNST_WK.selectNext())
		{
			// 一時支払料金工事費合計金額が設定されていたら
			String tmpy_prc_kojihi_gokei_amnt = JBSbatStringUtil.Rtrim(kojihiSnstWkMap.getString(JBSbatKK_T_KOJIHI_SNST_WK.TMPY_PRC_KOJIHI_GOKEI_AMNT));
			
			super.logPrint.printDebugLog("一時支払料金工事費合計金額:::" + tmpy_prc_kojihi_gokei_amnt);
			
			if(!"".equals(tmpy_prc_kojihi_gokei_amnt) && !"0".equals(tmpy_prc_kojihi_gokei_amnt))
			{
				// 一時支払料金番号を取得
				String tmp_pay_prc_no = JBSbatStringUtil.Rtrim(kojihiSnstWkMap.getString(JBSbatKK_T_KOJIHI_SNST_WK.TMP_PAY_PRC_NO));
				
				super.logPrint.printDebugLog("一時支払料金番号:::" + tmp_pay_prc_no);
				
				// サービスコードを取得
				String svc_cd = JBSbatStringUtil.Rtrim(kojihiSnstWkMap.getString(JBSbatKK_T_SVC_KEI.SVC_CD));
				
				// 契約一時金登録用のサービス契約番号は算出ワークのサービス契約番号で初期化
				String svc_kei_no_kicjkn = svc_kei_no;
				
				// 契約一時金登録用の一時支払料金番号
				String tmp_pay_prc_no_kicjkn = tmp_pay_prc_no;
				
				// 標準外工事費の一時金を作成するかチェックを行う。
				String pcrs_cd = JBSbatStringUtil.Rtrim(kojihiSnstWkMap.getString(JBSbatKK_T_SVC_KEI.PCRS_CD));
				String prc_grp_cd = JBSbatStringUtil.Rtrim(kojihiSnstWkMap.getString(JBSbatKK_T_SVC_KEI.PRC_GRP_CD));
				
				// ========== OM-2014-0001514対応 START ==========
				// 日付判定を行い、先頭数字の読み替えを行う。
// ANK-3636-00-00 MOD START
//				if (wrsvParamStr.compareTo(kojiakJssiYmd) < 0)
				if (wrsvParamStr8.compareTo(kojiakJssiYmd) < 0)
				{
					// 一時支払料金番号（8%）適用年月日("20190930) < 工事案件実施年月日 の場合、先頭数字を"2"[税率10%]に読み替える。
					tmp_pay_prc_no_kicjkn = "2" + tmp_pay_prc_no.substring(1, 12);
					super.logPrint.printDebugLog("税率変更後の一時支払料金番号:::" + tmp_pay_prc_no_kicjkn);
				}
				else if (wrsvParamStr.compareTo(kojiakJssiYmd) < 0)
// ANK-3636-00-00 MOD END
				{
					// 一時支払料金番号（5%）適用年月日("20130331) < 工事案件実施年月日 の場合、先頭数字を"1"[税率8%]に読み替える。
					tmp_pay_prc_no_kicjkn = "1" + tmp_pay_prc_no.substring(1, 12);
					super.logPrint.printDebugLog("税率変更後の一時支払料金番号:::" + tmp_pay_prc_no_kicjkn);
				}
				// ========== OM-2014-0001514対応 END ==========
				
				// 料金項目出力名称に存在しない場合
				// ========== OM-2014-0001514対応 START ==========
				// 税率による読み替えが終わった一時支払料金番号でチェックする
//				if(!this.isPrcKmkOputNmExists(pcrs_cd, prc_grp_cd, tmp_pay_prc_no))
				if(!this.isPrcKmkOputNmExists(pcrs_cd, prc_grp_cd, tmp_pay_prc_no_kicjkn))
				// ========== OM-2014-0001514対応 END ==========
				{
					
					// ========== OM-2014-0001514対応 START ==========
//					super.logPrint.printDebugLog("料金項目出力名称に存在しない:" + tmp_pay_prc_no + ":" + pcrs_cd + ":" + prc_grp_cd);
					super.logPrint.printDebugLog("料金項目出力名称に存在しない:" + tmp_pay_prc_no_kicjkn + ":" + pcrs_cd + ":" + prc_grp_cd);
					// ========== OM-2014-0001514対応 END ==========
					
					boolean chkTmpPayPrcCnv = true;
					
					// 対象のサービス契約がネットの場合
					// ++++++++++ v22.00.00 変更開始 ++++++++++
//					if("01".equals(svc_cd))
					if(JBSbatKKConst.SVC_CD_IN_SVC.equals(svc_cd))
					// ++++++++++ v22.00.00 変更終了 ++++++++++
					{
						// 同一の回線に紐付くサービス契約番号の取得を行う。
						
						//OM-2013-0004731対応　START
//						String[] param1 = {super.opeDate, svcKeiKaisenUcwkNo, svc_kei_no, kojiakJssiYmd};
						String[] param1 = {super.opeDate, svcKeiKaisenUcwkNo, svc_kei_no};
						//OM-2013-0004731対応　END
						
						this.executeKK_T_KAISEN_TG_SVKEI_KK_SELECT_033(param1);
						JBSbatCommonDBInterface kaisenTgSvkeiMap = db_KK_T_KAISEN_TG_SVKEI.selectNext();
						
						// OM-2014-0001678 START
						if(kaisenTgSvkeiMap == null)
						{
							// EKKB0290AW %1%が存在しませんでした。
							//     (サービス契約番号=[] 工事案件番号=[] 一時支払料金番号=[] 金額=[] 同一回線に紐づく別契約が存在しませんでした。)
							super.logPrint.printBusinessErrorLog("EKKB0290AW", new String[]{"サービス契約番号=[" + svc_kei_no + "] 工事案件番号=[" + kojiak_no + "] 一時支払料金番号=[" + tmp_pay_prc_no_kicjkn+"] 金額=["+tmpy_prc_kojihi_gokei_amnt + "]  同一回線に紐づく別契約"});
						}
						// OM-2014-0001678 END
						
						// --------------- v15.00.00 add start ---------------
						// ワーニングメッセージ出力判定フラグ
						boolean wnMsgFlg = true;
						StringBuilder svcKeiNo = new StringBuilder();
						// --------------- v15.00.00 add end ---------------
						
						while (kaisenTgSvkeiMap != null)
						{
							// 検索結果がある場合
							if(null != kaisenTgSvkeiMap)
							{
								//OM-2013-0004731対応　START
								String kaisenUcwkUseStaymd = JBSbatStringUtil.Rtrim(kaisenTgSvkeiMap.getString(JBSbatKK_T_KAISEN_TG_SVKEI.KAISEN_UCWK_USE_STAYMD));
								String kaisenUcwkUseEndymd = JBSbatStringUtil.Rtrim(kaisenTgSvkeiMap.getString(JBSbatKK_T_KAISEN_TG_SVKEI.KAISEN_UCWK_USE_ENDYMD));
								super.logPrint.printDebugLog("回線対象サービス契約.回線内訳使用開始年月日:" + kaisenUcwkUseStaymd);
								super.logPrint.printDebugLog("回線対象サービス契約.回線内訳使用終了年月日:" + kaisenUcwkUseEndymd);
								super.logPrint.printDebugLog("工事完了ワークファイル.工事案件実施年月日:" + kojiakJssiYmd);
								
								if(!kaisenUcwkUseStaymd.equals("") && !kaisenUcwkUseEndymd.equals(""))
								{
									//下記@またはAの条件を満たしているデータを対象とする
// ANK-2821-00-00 MOD START
//									//@工事案件実施年月日 >= 「回線対象サービス契約.回線内訳使用開始年月日」 かつ　工事案件実施年月日 <= 「回線対象サービス契約.回線内訳使用終了年月日」
//									//A「回線対象サービス契約.回線内訳使用開始年月日」と「回線対象サービス契約.回線内訳使用終了年月日」がMAX日付（住所変更対応データ　"20991231"）の場合
//									if((kaisenUcwkUseStaymd.compareTo(kojiakJssiYmd) <= 0 && kaisenUcwkUseEndymd.compareTo(kojiakJssiYmd) >= 0 ) || 
//											(kaisenUcwkUseStaymd.equals("20991231") && kaisenUcwkUseEndymd.equals("20991231") )	)
									//@バッチ運用日 >= 「回線対象サービス契約.回線内訳使用開始年月日」 かつ　バッチ運用日 <= 「回線対象サービス契約.回線内訳使用終了年月日」
									//A「回線対象サービス契約.回線内訳使用開始年月日」と「回線対象サービス契約.回線内訳使用終了年月日」がMAX日付（住所変更対応データ　"20991231"）の場合
									if((kaisenUcwkUseStaymd.compareTo(super.opeDate) <= 0 && kaisenUcwkUseEndymd.compareTo(super.opeDate) >= 0 ) ||
									// OM-2017-0000966 MOD START
//											(kaisenUcwkUseStaymd.equals("20991231") && kaisenUcwkUseEndymd.equals("20991231") )	)
											// 工事案件種別が「新設」、または「住所変更(新設)」の場合、かつ異動区分が「住所変更・登録」の場合は開始日を見ない。
											// 使用終了されていないデータを対象とする。
											(((JBSbatKKConst.KOJIAK_SBT_CD_NEWESTA.equals(kojiakSbtCd) || JBSbatKKConst.KOJIAK_SBT_CD_ADCHG_NEWESTA.equals(kojiakSbtCd)) && JBSbatKKConst.CD00576_IDO_DIV_00019.equals(kojiUkOptntyIdoDiv))
													&& kaisenUcwkUseEndymd.compareTo(super.opeDate) >= 0 ) ||
// OM-2017-0001317 2018/01/25 MOD START
//											// 工事案件種別が「撤去(解約)」、または「住所変更(撤去)」、または「強制解約」の場合は終了日を見ない。
//											// 使用開始されているデータを対象とする。
//											((JBSbatKKConst.KOJIAK_SBT_CD_TEKKYO_DSL.equals(kojiakSbtCd) || JBSbatKKConst.KOJIAK_SBT_CD_ADCHG_TEKKYO.equals(kojiakSbtCd) || JBSbatKKConst.KOJIAK_SBT_CD_KYOSEI_DSL.equals(kojiakSbtCd))
											// 工事案件種別が「撤去(解約)」、または「住所変更(撤去)」、または「強制解約」、または「移設」の場合は終了日を見ない。
											// 使用開始されているデータを対象とする。
											((JBSbatKKConst.KOJIAK_SBT_CD_TEKKYO_DSL.equals(kojiakSbtCd) || JBSbatKKConst.KOJIAK_SBT_CD_ADCHG_TEKKYO.equals(kojiakSbtCd) || JBSbatKKConst.KOJIAK_SBT_CD_KYOSEI_DSL.equals(kojiakSbtCd) || JBSbatKKConst.KOJIAK_SBT_CD_ISETU.equals(kojiakSbtCd))
// OM-2017-0001317 2018/01/25 MOD END
													&& kaisenUcwkUseStaymd.compareTo(super.opeDate) <= 0 )
									)
									// OM-2017-0000966 MOD END
// ANK-2821-00-00 MOD END
									{
									//OM-2013-0004731対応　END
										
										// --------------- v15.00.00 add start ---------------
										// ワーニングメッセージを出力しない
											wnMsgFlg = false;
										// --------------- v15.00.00 add end ---------------
										
										super.logPrint.printDebugLog("同一の回線の他契約あり:" + kaisenTgSvkeiMap.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_NO));
										super.logPrint.printDebugLog("サービスコード:" + kaisenTgSvkeiMap.getString(JBSbatKK_T_SVC_KEI.SVC_CD));
										
										// 同一の回線に紐付くサービス契約の取得を行う。
										String[] param2 = {JBSbatStringUtil.Rtrim(kaisenTgSvkeiMap.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_NO)), super.opeDate};
										this.executeKK_T_SVC_KEI_KK_SELECT_171(param2);
										JBSbatCommonDBInterface svcKeiMap = db_KK_T_SVC_KEI.selectNext();
										if(null != svcKeiMap)
										{
											// 同一の回線に紐付くサービス契約の料金コースコード、料金グループコードで
											// 料金項目出力名称に存在しない場合はワーニングエラーを出力し一時金作成対象外とする。
											if(!this.isPrcKmkOputNmExists(JBSbatStringUtil.Rtrim(svcKeiMap.getString(JBSbatKK_T_SVC_KEI.PCRS_CD)),
																			JBSbatStringUtil.Rtrim(svcKeiMap.getString(JBSbatKK_T_SVC_KEI.PRC_GRP_CD)),
												// ========== OM-2014-0001514対応 START ==========
//																			tmp_pay_prc_no))
																			tmp_pay_prc_no_kicjkn))
												// ========== OM-2014-0001514対応 END ==========
											{
												// 同一の回線に紐付くサービス契約の検索結果がない、または
												// 料金項目出力名称の件数が０件の場合はワーニングエラーを出力し一時金作成対象外とする。
												// MSG 料金コースに紐付く契約がないため、標準外工事費の取込は行いませんでした。
												//     (サービス契約番号=[%1%] 料金コース=[%2%] 工事案件番号=[%3%] 一時支払料金番号=[%4%] 金額=[%5%])
												// ========== OM-2014-0001514対応 START ==========
//												super.logPrint.printBusinessErrorLog("EKKB1080CW", new String[]{svc_kei_no, pcrs_cd, kojiak_no, tmp_pay_prc_no, tmpy_prc_kojihi_gokei_amnt});
												super.logPrint.printBusinessErrorLog("EKKB1080CW", new String[]{svc_kei_no, pcrs_cd, kojiak_no, tmp_pay_prc_no_kicjkn, tmpy_prc_kojihi_gokei_amnt});
												// ========== OM-2014-0001514対応 END ==========
												super.commonItem.addErrorCount(1);
												
												kaisenTgSvkeiMap = db_KK_T_KAISEN_TG_SVKEI.selectNext();
												
												continue;
											}
											// 一時金作成を行うサービス契約番号は同一の回線に紐付くサービス契約番号とする
											svc_kei_no_kicjkn = JBSbatStringUtil.Rtrim(kaisenTgSvkeiMap.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_NO));
											
											chkTmpPayPrcCnv = false;
										}
									}
									else
									{
										// --------------- v15.00.00 mod start ---------------
//										// OM-2014-0001678 START
//										// EKKB0310JW	%1%の%2%に不正があります。（%3%）
//										//     (サービス契約番号=[] 工事案件番号=[] 一時支払料金番号=[] 金額=[] )
//										super.logPrint.printBusinessErrorLog("EKKB0310JW", new String[]{"電話情報抽出時","工事案件実施年月日 と 「回線対象サービス契約.回線内訳使用開始年月日」の比較時",
//												" サービス契約番号=[" + kaisenTgSvkeiMap.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_NO) + "] 工事案件番号=[" + kojiak_no + "] 一時支払料金番号=[" + tmp_pay_prc_no_kicjkn+"] 金額=["+tmpy_prc_kojihi_gokei_amnt + "]  "});
//										// OM-2014-0001678 END

										// サービス契約番号が空でない場合、連結用文字を設定
										if(svcKeiNo.length() != 0)
										{
											svcKeiNo.append(",");
										}
										
										svcKeiNo.append(kaisenTgSvkeiMap.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_NO));
										// --------------- v15.00.00 mod end ---------------
									}
								}
							}
							
							kaisenTgSvkeiMap = db_KK_T_KAISEN_TG_SVKEI.selectNext();
						
						}
						
						// --------------- v15.00.00 add start ---------------
						// ワーニングメッセージ出力判定フラグがtrueの場合、ワーニングメッセージを出力する。
						if(wnMsgFlg)
						{
							// EKKB0310JW	%1%の%2%に不正があります。（%3%）
							//     (サービス契約番号=[] 工事案件番号=[] 一時支払料金番号=[] 金額=[] )
							// OM-2017-0000966 MOD START
//							super.logPrint.printBusinessErrorLog("EKKB0310JW", new String[]{"電話情報抽出時","工事案件実施年月日 と 「回線対象サービス契約.回線内訳使用開始年月日」の比較時",
							super.logPrint.printBusinessErrorLog("EKKB0310JW", new String[]{"電話情報抽出時","運用日付 と 「回線対象サービス契約.回線内訳使用開始年月日」の比較時",
							// OM-2017-0000966 MOD END
									" サービス契約番号=[" + svcKeiNo + "] 工事案件番号=[" + kojiak_no + "] 一時支払料金番号=[" + tmp_pay_prc_no_kicjkn+"] 金額=["+tmpy_prc_kojihi_gokei_amnt + "]  "});
						}
						// --------------- v15.00.00 add end ---------------
					}
					
					// サービスコードがネット、かつ同一回線で他契約がない場合、または
					// サービスコードがテレビ、電話の場合
					if(chkTmpPayPrcCnv)
					{
						super.logPrint.printDebugLog("サービスコードがネットかつ同一回線で他契約がない場合、またはサービスコードがテレビ、電話の場合");
						
						// 旧料金番号適用区分の判定　「税率に合った変換後一時支払料金番号」の取得
						// 工事案件実施年月日が未設定の場合（通常ありえないはず）
						if ("".equals(kojiakJssiYmd))
						{
							super.logPrint.printDebugLog("工事案件実施年月日が未設定：スキップ");
							continue;
						}
						
						// ========== OM-2014-0001306対応 START ==========
//						//  工事案件実施年月日と一時支払料金番号（5%）適用年月日による税率区分取得を行います。
//						String staxDiv = this.getStaxDiv(kojiakJssiYmd);
//						
//						super.logPrint.printDebugLog("税率区分:" + staxDiv);
						
						// 変換後一時支払料金番号
						String tmp_pay_prc_no_cnv = "";
						
						// 一時支払料金番号の変換情報保持用マップ（一時支払料金番号変換情報（消費税率8%））を
						//   使用して変換後一時支払料金番号を取得します。
						// 一時支払料金番号、サービスコードを文字連結し、変換情報より変換後一時支払料金番号を取得します。
						// ※OM-2014-0001514の修正対象外（変換情報から変換するためには、連携された一時支払料金番号を使用するため）
						tmp_pay_prc_no_cnv = JBSbatStringUtil.Rtrim(tmpPayPrcNoCnvMapStax8.get(tmp_pay_prc_no + svc_cd));
						
//						// 税率区分が「0：5%」の場合
//						if ("0".equals(staxDiv))
//						{
//							// 一時支払料金番号の変換情報保持用マップ（一時支払料金番号変換情報（消費税率5%））を
//							//   使用して変換後一時支払料金番号を取得します。
//							// 一時支払料金番号、サービスコードを文字連結し、変換情報より変換後一時支払料金番号を取得します。
//							tmp_pay_prc_no_cnv = JBSbatStringUtil.Rtrim(tmpPayPrcNoCnvMapStax5.get(tmp_pay_prc_no + svc_cd));
//							
//							super.logPrint.printDebugLog("一時支払料金番号変換情報（消費税率5%）から取得");
//						}
//						// 税率区分が「1：8%」の場合
//						else
//						{
//							// 一時支払料金番号の変換情報保持用マップ（一時支払料金番号変換情報（消費税率8%））を
//							//   使用して変換後一時支払料金番号を取得します。
//							// 一時支払料金番号、サービスコードを文字連結し、変換情報より変換後一時支払料金番号を取得します。
//							tmp_pay_prc_no_cnv = JBSbatStringUtil.Rtrim(tmpPayPrcNoCnvMapStax8.get(tmp_pay_prc_no + svc_cd));
//							
//							super.logPrint.printDebugLog("一時支払料金番号変換情報（消費税率8%）から取得");
//						}
						// ========== OM-2014-0001306対応 END ==========
						
						super.logPrint.printDebugLog("変換後一時支払料金番号:" + tmp_pay_prc_no_cnv);
						
						if ("".equals(tmp_pay_prc_no_cnv))
						{
							// 同一の回線に紐付くサービス契約の検索結果がない、
							// 一時支払料金番号が変換情報にない場合はワーニングエラーを出力し一時金作成対象外とする。
							// MSG 料金コースに紐付く契約がないため、標準外工事費の取込は行いませんでした。
							//     (サービス契約番号=[%1%] 料金コース=[%2%] 工事案件番号=[%3%] 一時支払料金番号=[%4%] 金額=[%5%])
							super.logPrint.printBusinessErrorLog("EKKB1080CW", new String[]{svc_kei_no, pcrs_cd, kojiak_no, tmp_pay_prc_no, tmpy_prc_kojihi_gokei_amnt});
							super.commonItem.addErrorCount(1);
							continue;
						}
						else
						{
							// 変換後の一時支払料金番号を登録用の一時支払料金番号とする。
							tmp_pay_prc_no_kicjkn = tmp_pay_prc_no_cnv;
							// ========== OM-2014-0001514対応 START ==========
							// 日付判定を行い、先頭数字の読み替えを行う。
// ANK-3636-00-00 MOD START
//							if (wrsvParamStr.compareTo(kojiakJssiYmd) < 0)
							if (wrsvParamStr8.compareTo(kojiakJssiYmd) < 0)
							{
								// 一時支払料金番号（8%）適用年月日("20190930) < 工事案件実施年月日 の場合、先頭数字を"2"[税率10%]に読み替える。
								tmp_pay_prc_no_kicjkn = "2" + tmp_pay_prc_no_cnv.substring(1, 12);
							}
							else if (wrsvParamStr.compareTo(kojiakJssiYmd) < 0)
// ANK-3636-00-00 MOD END
							{
								// 一時支払料金番号（5%）適用年月日("20130331) < 工事案件実施年月日 の場合、先頭数字を"1"[税率8%]に読み替える。
								tmp_pay_prc_no_kicjkn = "1" + tmp_pay_prc_no_cnv.substring(1, 12);
							}
							// ========== OM-2014-0001514対応 END ==========
						}
					}
				}
				// ========== OM-2014-0001514対応 DELETE START ==========
//				// 日付判定を行い、先頭数字の読み替えを行う。
//				if (wrsvParamStr.compareTo(kojiakJssiYmd) < 0)
//				{
//					// 一時支払料金番号（5%）適用年月日("20130331) < 工事案件実施年月日 の場合、先頭数字を"1"[税率8%]に読み替える。
//					tmp_pay_prc_no_kicjkn = "1" + tmp_pay_prc_no.substring(1, 12);
//				}
				// ========== OM-2014-0001514対応 DELETE END ==========
				// 契約一時金の登録を行う。
				this.insertKicjkn(tmp_pay_prc_no_kicjkn, svc_kei_no_kicjkn, tmpy_prc_kojihi_gokei_amnt, kojiak_no, "");
				
				// 進捗テーブルへの登録を行う。（契約一時金を作成したサービス契約番号、一時金支払料金番号で登録する）
				String[] inParam = {svc_kei_no_kicjkn, kojiak_no, tmp_pay_prc_no_kicjkn, tmpy_prc_kojihi_gokei_amnt, "", ""};
				// サービス契約番号,工事案件番号,一時支払料金番号(一時支払料金KYE),一時支払料金工事費合計金額(一時金額),一時支払料金名,工事受付契機異動区分
				setPrgIfAdd(inParam);
			}
		}
		super.logPrint.printDebugLog("execStdardGaiHiInf_END:::" + svc_kei_no);
	}
	
	/**
	 * 料金コースコード、料金グループコード、一時支払料金番号より
	 * 料金項目出力名称に存在するかどうかの判定を行う。
	 * <br>
	 * @param pcrs_cd 料金コースコード
	 * @param prc_grp_cd 料金グループコード
	 * @param tmp_pay_prc_no 一時支払料金番号
	 * @return boolean true：存在する。false：存在しない
	 * @throws Exception メソッド内で発生した例外全般。
	 */
	private boolean isPrcKmkOputNmExists(String pcrs_cd, String prc_grp_cd, String tmp_pay_prc_no) throws Exception
	{
		// 指定された料金コースコード、料金グループコード、一時支払料金番号（上11桁）より
		// 料金項目出力名称から件数を取得、0ではない場合は一時金作成対象とする。
		String count = this.getPrcKmkOputNmCount(pcrs_cd, prc_grp_cd, tmp_pay_prc_no);
		if(!"0".equals(count))
		{
			// 件数を取得、0ではない場合はtrueを返却する。
			return true;
		}
		return false;
	}
	
	/**
	 * 料金項目出力名称の件数取得SQLの呼び出しを行い、結果を返却します。
	 * <br>
	 * @param pcrs_cd 料金コースコード
	 * @param prc_grp_cd 料金グループコード
	 * @param tmp_pay_prc_no 一時支払料金番号
	 * @return 検索結果の件数
	 * @throws Exception メソッド内で発生した例外全般。
	 */
	private String getPrcKmkOputNmCount(String pcrs_cd, String prc_grp_cd, String tmp_pay_prc_no) throws Exception
	{
		// 指定された料金コースコード、一時支払料金番号（上11桁）より料金項目出力名称の件数取得SQLを実行。
		String prc_kmk_cd = tmp_pay_prc_no.substring(0, 11);
		String[] param = {pcrs_cd, prc_grp_cd, prc_kmk_cd};
		
		super.logPrint.printDebugLog("料金項目出力名称の検索　料金コースコード：" + pcrs_cd + 
									"　料金グループコード：" + prc_grp_cd + "　一時支払料金番号　先頭１１桁：" + prc_kmk_cd);
		
		this.executeCH_M_PRC_KMK_OPUT_NM_KK_SELECT_001(param);
		JBSbatCommonDBInterface prcKmkOputNmMap = db_CH_M_PRC_KMK_OPUT_NM.selectNext();
		if(null != prcKmkOputNmMap)
		{
			return prcKmkOputNmMap.getString("DATA_COUNT");
		}
		return "0";
	}
	
	/**
	 * 相関ルール：工事費判定の呼び出しを行い、結果を返却します。
	 * <br>
	 * @param HashMap RULE呼出条件マップ
	 * @return ArrayList RULE79の呼出結果
	 * @throws Exception メソッド内で発生した例外全般。
	 */
	private ArrayList<ArrayList<HashMap<String, Object>>> getRULE0079001(HashMap<String, Object> map) throws Exception
	{
		// ルールの呼び出し
		JRuleXMLHandler xmlHandler = JCCBatCommon.createSokanRuleEngine("RULE0079001", JRuleXMLPattern.SINGLE_MODE_TYPE);
		ArrayList<ArrayList<HashMap<String, Object>>> resultList = JCCBatCommon.getCheckResultArray(xmlHandler, map);
		return resultList;
	}
	
	/**
	 * 契約一時金の登録を行います。
	 * <br>
	 * @param tmp_pay_prc_no 一時支払料金番号
	 * @param svc_kei_no サービス契約番号
	 * @param icjkn_amnt 一時金額
	 * @param hsi_kiin_kjak_no 発生起因工事案件番号
	 * @param hassei_cd 発生コード
	 * @throws Exception メソッド内で発生した例外全般。
	 */
	private void insertKicjkn(String tmp_pay_prc_no,
								String svc_kei_no,
								String icjkn_amnt, 
								String hsi_kiin_kjak_no, 
								String hassei_cd) throws Exception
	{
		super.logPrint.printDebugLog("insertKicjkn_START");
		
		super.logPrint.printDebugLog("一時支払料金番号:::" + tmp_pay_prc_no);
		super.logPrint.printDebugLog("サービス契約番号:::" + svc_kei_no);
		super.logPrint.printDebugLog("一時金額:::" + icjkn_amnt);
		super.logPrint.printDebugLog("発生起因工事案件番号:::" + hsi_kiin_kjak_no);
		super.logPrint.printDebugLog("発生コード:::" + hassei_cd);
		
		// 一時金設定適用月を空白で初期化
		String icjkn_sette_aply_mon = "";
		
		// 適用状態コードは「1：未確定」で初期化
		// ++++++++++ v22.00.00 変更開始 ++++++++++
//		String aply_stat_cd = "1";
		String aply_stat_cd =JBSbatKKConst.TEKIYO_STAT_MIKAKUTEI;
		// ++++++++++ v22.00.00 変更終了 ++++++++++
		
		// 発生コードが設定されていない場合(標準外工事費の場合)
		if("".equals(hassei_cd))
		{
			// 一時支払料金番号をキーに一時支払料金をPK検索し、発生コードの取得を行う。
			String[] whereParam = {tmp_pay_prc_no};
			JBSbatCommonDBInterface tmpPayPrcMap = this.executeKK_M_TMP_PAY_PRC_PKSELECT(whereParam);
			if(null != tmpPayPrcMap)
			{
				// 検索結果より発生コードを取得する。
				hassei_cd = JBSbatStringUtil.Rtrim(tmpPayPrcMap.getString(JBSbatKK_M_TMP_PAY_PRC.HASSEI_CD));
				
				super.logPrint.printDebugLog("一時支払料金番号をキーに一時支払料金をPK検索した発生コード:::" + hassei_cd);
			}
		}
		
		// 発生コードが「01：当月」または「02：翌月」の場合
		// ++++++++++ v22.00.00 変更開始 ++++++++++
//		if("01".equals(hassei_cd) || "02".equals(hassei_cd))
		if(JBSbatKKConst.ICJKN_HASSEI_CD_T_MONTH.equals(hassei_cd) || JBSbatKKConst.ICJKN_HASSEI_CD_N_MONTH.equals(hassei_cd))
		// ++++++++++ v22.00.00 変更終了 ++++++++++
		{
			// 料金スケジュール定義の検索を行う。
			String[] param = {super.opeDate};
			this.executeCH_M_PRC_SCHDL_TEIGI_KK_SELECT_006(param);
			
			// 検索結果がある場合
			JBSbatCommonDBInterface prcSchdlTeigiMap = db_CH_M_PRC_SCHDL_TEIGI.selectNext();
			if(null != prcSchdlTeigiMap)
			{
				// 請求年月を取得する。
				String seiky_ym = JBSbatStringUtil.Rtrim(prcSchdlTeigiMap.getString(JBSbatCH_M_PRC_SCHDL_TEIGI.SEIKY_YM));
				
				// 発生コードが「02：翌月」の場合
				// ++++++++++ v22.00.00 変更開始 ++++++++++
//				if("02".equals(hassei_cd))
				if(JBSbatKKConst.ICJKN_HASSEI_CD_N_MONTH.equals(hassei_cd))
				// ++++++++++ v22.00.00 変更終了 ++++++++++
				{
					// 取得した「請求年月」を１ヵ月加算する。
					icjkn_sette_aply_mon = JBSbatInterface.adjustMonth(seiky_ym + "01", 1).substring(0, 6);
				}
				else
				{
					icjkn_sette_aply_mon = seiky_ym;
				}
				
				// 適用状態コードは「2：確定」に設定
				// ++++++++++ v22.00.00 変更開始 ++++++++++
//				aply_stat_cd = "2";
				aply_stat_cd = JBSbatKKConst.TEKIYO_STAT_KAKUTEI;
				// ++++++++++ v22.00.00 変更終了 ++++++++++
			}
		}
		// ++++++++++ v22.00.00 変更開始 ++++++++++
//		else if("10".equals(hassei_cd))		
		else if(JBSbatKKConst.ICJKN_HASSEI_CD_NEXT_SIKY.equals(hassei_cd))
		// ++++++++++ v22.00.00 変更終了 ++++++++++
		{
			//料金スケジュール定義情報取得
			String[] schdlTeigiParam = {super.opeDate};
			this.executeCH_M_PRC_SCHDL_TEIGI_KK_SELECT_013(schdlTeigiParam);
			
			JBSbatCommonDBInterface schdlTeigiDbmap = db_CH_M_PRC_SCHDL_TEIGI.selectNext();
			if(null == schdlTeigiDbmap)
			{
				throw new JBSbatBusinessException("EKKB0150JE", new String[]{"料金スケジュール定義TBL"});
			}
			
			//料金スケジュール定義.請求年月を取得
			String seikyYm = JBSbatStringUtil.Rtrim(schdlTeigiDbmap.getString(JBSbatCH_M_PRC_SCHDL_TEIGI.SEIKY_YM));
			
			super.logPrint.printDebugLog("料金スケジュール定義.請求年月:::" + seikyYm);
			
			// 一時金設定適用月
			icjkn_sette_aply_mon = seikyYm;
			
			// 適用状態コードは「2：確定」に設定
			// ++++++++++ v22.00.00 変更開始 ++++++++++
//			aply_stat_cd = "2";
			aply_stat_cd = JBSbatKKConst.TEKIYO_STAT_KAKUTEI;
			// ++++++++++ v22.00.00 変更終了 ++++++++++
			
		}
		
		super.logPrint.printDebugLog(" 一時金設定適用月:::" + icjkn_sette_aply_mon);
		
		// 契約一時金の登録を行う。
		String seq_no = JBSbatStringUtil.padNumFormString(JBSbatOracleSeqUtil.getNextSeq(super.commonItem.getConnection(), "SEQ_KICJKN_NO"), 12);
		
		// システム日付を取得
		String sysDate = JCCBatCommon.getSysDateTimeStamp();
		
		String [] setParam = { seq_no,					// 契約一時金番号
							   tmp_pay_prc_no,			// 一時支払料金番号
							   "",						// 一時金設定番号
							   svc_kei_no,				// サービス契約番号
							   "",						// サービス契約内訳番号
							   "",						// 機器提供サービス契約番号
							   "",						// オプションサービス契約番号
							   "",						// サブオプションサービス契約番号
							   "",						// 請求オプションサービス契約番号
							   "",						// 割引サービス契約番号
							   "",						// オーナー契約番号
							   icjkn_amnt,				// 一時金額
							   icjkn_sette_aply_mon,	// 一時金設定適用月
							   aply_stat_cd,			// 適用状態コード
							   "",						// 取消連携状態コード
							   hsi_kiin_kjak_no,		// 発生起因工事案件番号
							   sysDate,					// 登録年月日時分秒
							   super.batchUserId,		// 登録オペレータアカウント
							   sysDate,					// 更新年月日時分秒
							   super.batchUserId,		// 更新オペレータアカウント
							   "",						// 削除年月日時分秒
							   "",						// 削除オペレータアカウント
							   // ++++++++++ v22.00.00 変更開始 ++++++++++
//							   "0",						// 無効フラグ
							   JBSbatKKConst.MK_FLG_YK,	// 無効フラグ
							   // ++++++++++ v22.00.00 変更終了 ++++++++++
							   sysDate,					// 登録運用年月日
							   super.batchUserId,		// 登録処理ID
							   sysDate,					// 更新運用年月日
							   super.batchUserId,		// 更新処理ID
							   "",						// 削除運用年月日
							   "" };					// 削除処理ID
		
		this.executeKK_T_KICJKN_PKINSERT(setParam);
		
		super.logPrint.printDebugLog("insertKicjkn_END");
	}
	
	/**
	 * 進捗データを登録します。
	 * <br>
	 * @param data 進捗登録情報
	 * @throws Exception 
	 */
	private void setPrgIfAdd(String[] data) throws Exception
	{
		String sysrtem_date = JBSbatDateUtil.getSystemDateTimeStamp();	// システム日時の取得
		
		//サービス契約番号,
		String svc_kei_no = data[0];
		//工事案件番号,
		String kojiak_no = data[1];
		//一時支払料金番号(一時支払料金KYE),
		String tmp_pay_prc_no = data[2];
		//一時支払料金工事費合計金額(一時金額),
		String tmp_pay_prc_amnt = JPCUtilCommon.formatNumber(data[3]);
		//一時支払料金名,
		String tmp_pay_prc_nm = data[4];
		//工事受付契機異動区分
		String koji_uk_optnty_ido_div = data[5];
		
		//一時支払料金名取得
		if("".equals(tmp_pay_prc_nm)){
			// 一時支払料金番号をキーに一時支払料金をPK検索
			String[] whereParam = {tmp_pay_prc_no};
			JBSbatCommonDBInterface tmpPayPrcMap = this.executeKK_M_TMP_PAY_PRC_PKSELECT(whereParam);
			if(null != tmpPayPrcMap)
			{
				// 検索結果より一時支払料金名を取得する。
				tmp_pay_prc_nm = JBSbatStringUtil.Rtrim(tmpPayPrcMap.getString(JBSbatKK_M_TMP_PAY_PRC.TMP_PAY_PRC_NM));
			}
		}
		
		//工事受付契機異動区分取得
		if("".equals(koji_uk_optnty_ido_div)){
			//工事案件番号をキーに工事案件をPK検索
			String[] whereParam1 = {kojiak_no};
			JBSbatCommonDBInterface kojiakMap = this.executeKU_T_KOJIAK_PKSELECT(whereParam1);
			if(null != kojiakMap)
			{
				//検索結果より工事受付契機異動区分を取得する。
				koji_uk_optnty_ido_div = JBSbatStringUtil.Rtrim(kojiakMap.getString(JBSbatKU_T_KOJIAK.KOJI_UK_OPTNTY_IDO_DIV));
			}
		}
		
		//共通部品（進捗.異動年月日取得部品）より異動年月日時分秒（またはシステム日付）を取得
		String idoDtm = JKKBatCommon. getIdoDtmMax(commonItem, svc_kei_no, koji_uk_optnty_ido_div, stmt);
		
		//進捗特記事項２（工事費設定：一時支払料金.一時支払料金名：契約一時金．一時金額）
		
		StringBuffer value = new StringBuffer();
		value.append("工事費設定：");
		if(!"".equals(tmp_pay_prc_nm))
		{
			value.append(tmp_pay_prc_nm+"：");
		}
		value.append(tmp_pay_prc_amnt+" 円");
		String prg_tkjk_2 = value.toString();
		
		// 登録する進捗のパラメータを設定します
		String [] setParam = {
				JBSbatStringUtil.padNumFormString(
				JBSbatOracleSeqUtil.getNextSeq(commonItem.getConnection(), KEY_SEQ_PRG_NO), 12),	// 進捗番号 → 自動採番
				"",																					// 申込明細番号 → NULL（未設定）
				"",																					// 請求契約番号 → NULL（未設定）
				"",																					// 請求方法番号（口座） → NULL（未設定）
				"",																					// 請求方法番号（クレジットカード） → NULL（未設定）
				svc_kei_no,																			// サービス契約番号 → サービス契約内訳.サービス契約番号
				"",																					// サービス契約内訳番号 → 〃.サービス契約内訳番号
				"",																					// サービス契約回線内訳番号 → NULL（未設定）
				"",																					// 機器提供サービス契約番号 → NULL（未設定）
				"",																					// オプションサービス契約番号 → NULL（未設定）
				"",																					// 請求オプションサービス契約番号 → NULL（未設定）
				"",																					// サブオプションサービス契約番号 → NULL（未設定）
				"",																					// 割引サービス契約番号 → NULL（未設定）
				koji_uk_optnty_ido_div,																// 異動区分 → 工事案件.工事受付契約異動区分
				idoDtm,																				// 異動年月日時分秒 → 共通部品（進捗.異動年月日取得部品）からの戻り値を設定。
				// ++++++++++ v22.00.00 変更開始 ++++++++++
//				PRG_STAT_INSERT,																	// 進捗ステータス → "1430"（TV契約主従料金設定完了）
				JBSbatKKConst.CD00647_PRG_STAT_9720 ,												// 進捗ステータス → "9720"（工事費設定）
				// ++++++++++ v22.00.00 変更終了 ++++++++++
				super.opeDate + sysrtem_date.substring(8),											// 進捗年月日時分秒 → バッチ運用日+実施日のhhmmssSSSを設定。
				"",																					// 進捗メモ → NULL（未設定）
				"",																					// 進捗特記事項１ → NULL（未設定）
				prg_tkjk_2,																			// 進捗特記事項２ →工事費設定：一時支払料金.一時支払料金名：契約一時金．一時金額
				sysrtem_date,																		// 登録年月日時分秒 →  システム日時
				batchUserId,		 																// 登録オペレータアカウント → バッチ更新者ＩＤ
				sysrtem_date,																		// 更新年月日時分秒 →  システム日時
				batchUserId,																		// 更新オペレータアカウント → バッチ更新者ＩＤ
				"",																					// 削除年月日時分秒 → NULL（未設定）
				"",																					// 削除オペレータアカウント → NULL（未設定）
				// ++++++++++ v22.00.00 変更開始 ++++++++++
//				"0",																				// 無効フラグ → "0"(有効)
				JBSbatKKConst.MK_FLG_YK,															// 無効フラグ → "0"(有効)
				// ++++++++++ v22.00.00 変更終了 ++++++++++
				"",																					// 登録運用年月日 → NULL（未設定）
				"",																					// 登録処理ID → NULL（未設定）
				"",																					// 更新運用年月日 → NULL（未設定）
				"",																					// 更新処理ID → NULL（未設定）
				"",																					// 削除運用年月日 → NULL（未設定）
				""};																				// 削除処理ID → NULL（未設定）
		
		if (super.logPrint.chkLogLevel(JBSbatLogUtil.MODE_DEBUG))
		{
			super.logPrint.printDebugLog("進捗番号        :" + setParam[0]);
			super.logPrint.printDebugLog("サービス契約番号:" + setParam[5]);
			super.logPrint.printDebugLog("異動区分        :" + setParam[13]);
			super.logPrint.printDebugLog("異動年月日時分秒:" + setParam[14]);
			super.logPrint.printDebugLog("進捗ステータス  :" + setParam[15]);
			super.logPrint.printDebugLog("進捗年月日時分秒:" + setParam[16]);
			super.logPrint.printDebugLog("進捗特記事項２  :" + setParam[19]);
		}
		// 進捗データを登録します。
		executeKK_T_PRG_PKINSERT(setParam);
	}
	
	/**
	 * 一時支払料金番号の変換情報（KKTmpPayPrcNoCnvList.txt、KKTmpPayPrcNoCnvList2.txt）の情報を読み込み、
	 * マップに保持します。
	 * <br>
	 * @param kkTmpPayPrcNoCnvListStr 一時支払料金番号変換情報ファイル名
	 * @return HashMap<String, String> 一時支払料金番号の変換情報保持用マップ
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private HashMap<String, String> createTmpPayPrcNoCnvMap(String kkTmpPayPrcNoCnvListStr) throws Exception
	{
		// 指定ファイル読込み
		BufferedReader br = null;
		
		HashMap<String, String> tmpPayPrcNoCnvMap = new HashMap<String, String>();
		
		try {
			// 一時支払料金番号の変換情報ファイルの読み込み
			InputStream in = this.getClass().getClassLoader().getResourceAsStream(kkTmpPayPrcNoCnvListStr);
			if(null == in)
			{
				throw new JBSbatBusinessException("EKKB0020CE", new String[]{kkTmpPayPrcNoCnvListStr});
			}
			
			InputStreamReader is = new InputStreamReader(in, "Shift-JIS");
			
			br = new BufferedReader(is);
			
			String lineData = "";
			while ((lineData = br.readLine()) != null)
			{
				// TXTファイル一行読込み ※一文字目がセミコロンの場合は読み飛ばす。
				if("".equals(lineData) || lineData.charAt(0) == '；')
				{
					continue;
				}
					
				// ワークリストに格納された一行分のファイルデータを格納
				String[] workArray = lineData.split(",");
				
				// １文字目(一時支払料金番号)と２文字目(サービスコード)を文字連結し、キーとし
				// ３文字目(変換後一時支払料金番号)を格納する。
				StringBuilder key_str = new StringBuilder();
				key_str.append(workArray[0]).append(workArray[1]);
				tmpPayPrcNoCnvMap.put(key_str.toString(), workArray[2]);
			}
		}
		catch (IOException e)
		{
			throw new JBSbatBusinessException("EKKB0020CE", new String[]{kkTmpPayPrcNoCnvListStr});
		}
		finally
		{
			// ファイルのクローズ処理
			if (br != null)
			{
				br.close();
			}
		}
		
		return tmpPayPrcNoCnvMap;
	}
	
	// =========== OM-2013-0003204対応 start ==============
	
	/**
	 * SQLKEY(KK_SELECT_277)で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_277(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		
		// DBアクセスを実行します
		db_KK_T_SVC_KEI_277.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_277);
	}
	
	/**
	 * 料金コースが再送信の場合、電波案件障害から初期住人支払料金額を取得します。
	 * また、初期住人支払料金額の取得結果があった場合、一時金に登録するためにRULE0079に受け渡す料金グループコードを置き換えます。
	 * @param svcKeiNo
	 * @param pcrsCd
	 * @param map
	 */
	private String getDmpsAnkenIcjknAmnt(String svcKeiNo, String pcrsCd, HashMap<String, Object> map) throws Exception
	{
		String shkAmnt = null;
		// 料金コースコードが"再送信"の場合
		// ++++++++++ v22.00.00 変更開始 ++++++++++
//		if ("A23".equals(pcrsCd))
		if (JBSbatKKConst.PCRS_CD_EOH_TV_SAISO.equals(pcrsCd))
		// ++++++++++ v22.00.00 変更終了 ++++++++++
		{
			// サービス契約番号で電波障害案件から初期住人支払料金額を取得
			String[] param1 = {svcKeiNo, super.opeDate};
			this.executeKK_T_SVC_KEI_KK_SELECT_277(param1);
			JBSbatCommonDBInterface svcKei277Map = db_KK_T_SVC_KEI_277.selectNext();
			if(null != svcKei277Map)
			{
				shkAmnt = JBSbatStringUtil.Rtrim(svcKei277Map.getString(JBSbatKK_T_DMPS_ANKEN.SHK_JUNIN_PAY_PRC_AMNT));
				
				// 初期住人支払料金額が取得できた場合は戻り値として返却するとともにRULE0079に渡す料金グループコードを差し替え
				if (!"".equals(shkAmnt))
				{
					// ++++++++++ v22.00.00 変更開始 ++++++++++
//					map.put("MSKM_PRC_GRP_CD", "11");								// 申込料金グループコード（eo光テレビ(K-CAT)）
					map.put("MSKM_PRC_GRP_CD", JBSbatKKConst.PGRP_TV_11);	// 申込料金グループコード（eo光テレビ(K-CAT)）
					// ++++++++++ v22.00.00 変更終了 ++++++++++
				}
			}
		}
		return shkAmnt;
	}
	// =========== OM-2013-0003204対応 end ==============
	
	// =========== OM-2013-0003997対応 start ==============
	/**
	 * SQLKEY(KK_SELECT_033)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	工事案件番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_ADCHG_DTL_KK_SELECT_033(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		
		// DBアクセスを実行します
		db_KK_T_ADCHG_DTL.selectBySqlDefine(paramList, KK_T_ADCHG_DTL_KK_SELECT_033);
	}
	
	/**	
	 * SQLKEY(KK_SELECT_034)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	住所変更番号
	 *		 	サービス契約番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_ADCHG_DTL_KK_SELECT_034(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		
		// DBアクセスを実行します
		db_KK_T_ADCHG_DTL.selectBySqlDefine(paramList, KK_T_ADCHG_DTL_KK_SELECT_034);
	}
	
	/**
	 * 住所変更時にRULE0079に受け渡す異動区分を設定します。
	 * サービス契約がTVの場合、住所変更と同時にサービス追加されたサービス契約であれば、工事費を取るためにルールの異動区分を置き換えます。
	 * @param kojiak
	 * @param svcKeiNo
	 * @param svcCd
	 * @param map
	 */
	private void setAdchgIdodiv(String kojiakNo, String svcKeiNo, String svcCd, HashMap<String, Object> map) throws Exception
	{
		// サービスコードがTVの場合
		// ++++++++++ v22.00.00 変更開始 ++++++++++
//		if ("03".equals(svcCd))
		if (JBSbatKKConst.SVC_CD_TV_SVC.equals(svcCd))
		// ++++++++++ v22.00.00 変更終了 ++++++++++
		{
			// 工事案件番号で住所変更明細から住所変更番号を取得
			String[] param1 = {kojiakNo};
			this.executeKK_T_ADCHG_DTL_KK_SELECT_033(param1);
			JBSbatCommonDBInterface adchg033Map = db_KK_T_ADCHG_DTL.selectNext();
			if(null != adchg033Map)
			{
				String adchgNo = JBSbatStringUtil.Rtrim(adchg033Map.getString(JBSbatKK_T_ADCHG_DTL.ADCHG_NO));
				
				// サービス契約異動種別コード取得
				String[] param2 = {adchgNo, svcKeiNo};
				this.executeKK_T_ADCHG_DTL_KK_SELECT_034(param2);
				JBSbatCommonDBInterface adchg034Map = db_KK_T_ADCHG_DTL.selectNext();
				if(null != adchg034Map)
				{
					// サービス契約異動種別コードが追加（"3"）の場合、RULE0079の異動区分を「サービス追加」に置き換える
					String svcKeiIdoSbtCd = JBSbatStringUtil.Rtrim(adchg034Map.getString(JBSbatKK_T_ADCHG_DTL.SVC_KEI_IDO_SBT_CD));
					// ++++++++++ v22.00.00 変更開始 ++++++++++
//					if("3".equals(svcKeiIdoSbtCd))
//					{
//						map.put("IDO_DIV", "00002"); // 異動区分（サービス追加:00002）
//					}
					if(JBSbatKKConst.CD01242_SVC_KEI_IDO_SBT_CD_3.equals(svcKeiIdoSbtCd))
					{
						map.put("IDO_DIV", JBSbatKKConst.CD00576_IDO_DIV_00002); // 異動区分（サービス追加:00002）
					}
					// ++++++++++ v22.00.00 変更終了 ++++++++++	
				}
			}
		}
	}
	// =========== OM-2013-0003997対応 end ==============
	
	/**
	 *  工事案件実施年月日と一時支払料金番号（5%）適用年月日、一時支払料金番号（8%）適用年月日による税率区分取得を行います。
	 * 
	 * @param kojiakJssiYmd 工事案件実施年月日
	 * @return String 税率区分
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private String getStaxDiv(String kojiakJssiYmd)  throws Exception
	{
		super.logPrint.printDebugLog("getStaxDiv_START");
		super.logPrint.printDebugLog("工事案件実施年月日              ：" + kojiakJssiYmd);
		super.logPrint.printDebugLog("一時支払料金番号（5%）適用年月日：" + wrsvParamStr);
// ANK-3636-00-00 ADD START
		super.logPrint.printDebugLog("一時支払料金番号（8%）適用年月日：" + wrsvParamStr8);
// ANK-3636-00-00 ADD END
		
		// 税率区分
		String staxDiv = "";
		
		// 「工事案件実施年月日」が業務パラメータ「一時支払料金番号（5%）適用年月日」以前の場合
		//   （「工事案件実施年月日」＜＝「一時支払料金番号（5%）適用年月日」）
		if (Integer.parseInt(kojiakJssiYmd) <= Integer.parseInt(wrsvParamStr))
		{
			super.logPrint.printDebugLog(
					"「工事案件実施年月日」＜＝「一時支払料金番号（5%）適用年月日」の場合：税率区分「0：5%」");
			
			// 税率区分「0：5%」を設定します。
			staxDiv = "0";
		}
		// 「工事案件実施年月日」が業務パラメータ「一時支払料金番号（8%）適用年月日」以前の場合
		//   （「工事案件実施年月日」＜＝「一時支払料金番号（8%）適用年月日」）
// ANK-3636-00-00 MOD START
//		else
		else if (Integer.parseInt(kojiakJssiYmd) <= Integer.parseInt(wrsvParamStr8))
// ANK-3636-00-00 MOD END
		{
			super.logPrint.printDebugLog(
// ANK-3636-00-00 MOD START
//					"「工事案件実施年月日」＞「一時支払料金番号（5%）適用年月日」の場合：税率区分「1：8%」");
					"「工事案件実施年月日」＜＝「一時支払料金番号（8%）適用年月日」の場合：税率区分「1：8%」");
// ANK-3636-00-00 MOD END
			
			// 税率区分「1：8%」を設定します。
			staxDiv = "1";
		}
// ANK-3636-00-00 ADD START
		// 「工事案件実施年月日」が業務パラメータ「一時支払料金番号（8%）適用年月日」より後の日付の場合
		//   （「工事案件実施年月日」＞「一時支払料金番号（8%）適用年月日」）
		else
		{
			super.logPrint.printDebugLog(
					"「工事案件実施年月日」＞「一時支払料金番号（8%）適用年月日」の場合：税率区分「2：10%」");
			
			// 税率区分「2：10%」を設定します。
			staxDiv = "2";
		}
// ANK-3636-00-00 ADD END
		
		super.logPrint.printDebugLog("getStaxDiv_END");
		return staxDiv;
	}

// ANK-3296-00-00 ADD START
	/**
	 * 工事費割賦対象か判定を行う。
	 * <br>
	 * @param kojiUkOptntyIdoDiv 工事受付契機異動区分
	 * @param prcGrpCd 料金グループコード
	 * @param jkForm 住居形態
	 * @param svcKeiKaisenUcwkNo サービス契約回線内訳番号
	 * @param kojiakNo 工事案件番号
	 * @param kojiakSbtCd 工事案件種別コード
	 * @return boolean true：工事費割賦対象 false：工事費割賦対象外
	 * @throws Exception メソッド内で発生した例外全般。
	 */
// ANK-4315-00-00 MOD START
//	private boolean isKojihiKapTgCheck(String kojiUkOptntyIdoDiv, String prcGrpCd, String jkForm, String svcKeiKaisenUcwkNo, String kojiakNo) throws Exception
	private boolean isKojihiKapTgCheck(String kojiUkOptntyIdoDiv, String prcGrpCd, String jkForm, String svcKeiKaisenUcwkNo, String kojiakNo, String kojiakSbtCd) throws Exception
// ANK-4315-00-00 MOD END
	{
		// 工事費割賦対象フラグ(初期値：工事費割賦対象外)
		boolean kojihiKapTgFlg = false;
		
		// 工事受付契機異動区分が「00001：新規契約」または「00002：サービス追加」であり、
		// かつ、工事案件種別コードが「015：ONU交換工事」でない
		// かつ、料金グループコードが「02：eo光ネットホームタイプ」または「03：eo光ネットメゾンタイプ」、
		// または料金グループコードが「10：eo光電話」かつ、住居形態が「1：ホーム」または「2：メゾン」のいずれかを満たす場合
		if((JBSbatKKConst.CD00576_IDO_DIV_00001.equals(kojiUkOptntyIdoDiv) || JBSbatKKConst.CD00576_IDO_DIV_00002.equals(kojiUkOptntyIdoDiv))
// ANK-4315-00-00 ADD START
				&& !JBSbatKKConst.KOJIAK_SBT_CD_ONU_CHG_KOJI.equals(kojiakSbtCd)
// ANK-4315-00-00 ADD END
				&& (JBSbatKKConst.PGRP_NET_02.equals(prcGrpCd) || JBSbatKKConst.PGRP_NET_03.equals(prcGrpCd)
						|| (JBSbatKKConst.PGRP_TEL.equals(prcGrpCd)
						&& (JBSbatKKConst.CD00762_JK_FORM_1.equals(jkForm) || JBSbatKKConst.CD00762_JK_FORM_2.equals(jkForm)))))
		{
			// 工事費割賦契約の検索を行う。
// OM-2018-0000614 MOD START
//			executeKK_T_KOJIHI_KAP_KEI_KK_SELECT_001(new Object[]{svcKeiKaisenUcwkNo, kojiakNo});
			executeKK_T_KOJIHI_KAP_KEI_KK_SELECT_001(new Object[]{kojiakNo ,svcKeiKaisenUcwkNo});
// OM-2018-0000614 MOD END
			JBSbatCommonDBInterface kojihiKapKeiMap = db_KK_T_KOJIHI_KAP_KEI.selectNext();
			
			if(null != kojihiKapKeiMap)
			{
				// 工事費割賦対象
				kojihiKapTgFlg = true;
			}
// ANK-4042-00-00 ADD START
			else
			{
				// 契約中の工事費割賦契約を取得する
				executeKK_T_KOJIHI_KAP_KEI_KK_SELECT_006(new Object[]{svcKeiKaisenUcwkNo});
				JBSbatCommonDBInterface kojihiKapKeiMap2 = db_KK_T_KOJIHI_KAP_KEI_2.selectNext();
				
				if(null != kojihiKapKeiMap2)
				{
					// 工事費割賦対象
					kojihiKapTgFlg = true;
				}
			}
// ANK-4042-00-00 ADD END
		}
		return kojihiKapTgFlg;
	}
// ANK-3296-00-00 ADD END
	
// ANK-3636-00-00 ADD START
	/**
	 * 業務パラメータ設定値を取得します。
	 * @param	workParamId		業務パラメータID
	 * @return	strSetteValue	業務パラメータ設定値
	 * @throws Exception
	 */
	private String getWorkParamSetteValue(String workParamId) throws Exception
	{
		String strSetteValue = "";
		
		// 業務パラメータ取得共通部品を呼び出し、業務パラメータIDに設定した業務パラメータ設定値を取得します。
		strSetteValue = JBSbatStringUtil.Rtrim(
				JKKBatCommon.getWorkParamSetteValue(commonItem, workParamId));
		
		super.logPrint.printDebugLog("業務パラメータ管理．業務パラメータID    ：" + workParamId);
		super.logPrint.printDebugLog("業務パラメータ管理．業務パラメータ設定値：" + strSetteValue);
		
		// 業務パラメータ管理検索結果がない場合
		if ("".equals(strSetteValue))
		{
			super.logPrint.printDebugLog("業務パラメータ管理情報が存在しません。");
			
			// MSG 業務パラメータ管理テーブルに業務パラメータID:workParamIdが存在しません。
			throw new JBSbatBusinessException("EKKB0210CE", new String[]{"業務パラメータ管理", "業務パラメータID:"
					+ workParamId});
		}
		
		return strSetteValue;
	}
// ANK-3636-00-00 ADD END

// ANK-4038-00-00 ADD START
	/**
	 * PK(ＰＫ　検索)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で条件マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	KOJIAK_NO
	 * </pre>
	 * <p>
	 * @param whereParam 条件項目の値。
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private JBSbatCommonDBInterface executeKU_T_KJAK_EOH_NET_PKSELECT(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("KOJIAK_NO", whereParam[0]);
		
		// DBアクセスを実行します
		return db_KU_T_KJAK_EOH_NET.selectByPrimaryKeys(whereMap);
	}
	/**
	 * PK(ＰＫ　検索)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で条件マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	KOJIAK_NO
	 * </pre>
	 * <p>
	 * @param whereParam 条件項目の値。
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private JBSbatCommonDBInterface executeKU_T_KJAK_EOH_NTMANS_PKSELECT(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("KOJIAK_NO", whereParam[0]);
		
		// DBアクセスを実行します
		return db_KU_T_KJAK_EOH_NTMANS.selectByPrimaryKeys(whereMap);
	}
// ANK-4038-00-00 ADD END
}