/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKKnytcsTrgtCst
*	ソースファイル名	：JBSbatKKKnytcsTrgtCst.java
*	作成者				：富士通　
*	作成日				：2016年01月20日
*＜機能概要＞
*　契約内容通知書対象契約抽出部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v23.00.00	2016/01/20   FJ)西面	【ANK-2737-00-00】消費者保護
*	v23.00.01	2016/02/04   FJ)西面	【IT1-2016-0000018】ファイル出力項目不備
*	v23.00.02	2016/02/04   FJ)西面	【IT1-2016-0000019】提供方式契約番号・照査年月日を取得
*   v23.00.03	2016/02/12   FJ)西面	【IT1-2016-0000025】工事案件null時の制御
*   v23.00.04	2016/02/19   FJ)西面	【ANK-2737-06-00】文言の切り分け
*	v24.00.00	2016/03/18   FJ)清原	【ANK-2827-00-00】消費者保護ルール見直し追加対応／【ANK-2827-01-00】出力レコードの特定
*	v24.00.01	2016/04/21   FJ)清原	【IT1-2016-0000047】インターネット・電話セット申込による約款割引の表示制御不備
*	v24.00.02	2016/04/22   FJ)清原	【IT1-2016-0000053】セット割引（約款割引）の表示制御不備
*	v24.00.03	2016/04/27   FJ)清原	【IT2-2016-0000012】住所変更時の電話コース変更における表示不備（1番号→2番号）
*	v24.00.04	2016/04/28   FJ)清原	【IT2-2016-0000012】住所変更時の電話コース変更における表示不備（2番号→1番号）(暫定対応)／ＴＶセット割引の表示制御対応
*	v24.00.05	2016/05/02   FJ)清原	【IT2-2016-0000016】テレビセット割（約款割引）の出力制御不備
*	v24.00.06	2016/05/03   FJ)清原	【IT2-2016-0000018】住所変更時の電話コースの出力不備
*	v24.00.07	2016/05/10   FJ)清原	【IT1-2016-0000058】住所変更時のオプション情報出力不備
*	v24.00.08	2016/05/10   FJ)清原	【IT2-2016-0000021】ｅｏ光テレビ（ＫＣＮ）の出力制御漏れ
*	v24.00.09	2016/05/13   FJ)清原	【IT2-2016-0000022】住所変更時に追加したオプションが出力されない
*	v24.00.10	2016/05/23   FJ)清原	【OM-2016-0001356】コース変更時のマンションの基本料金取得方法不備
*	v24.00.11	2016/05/25   FJ)清原	【OM-2016-0001370】テレビサービスを追加したら、契約内容通知書にテレビの標準工事費とネットの標準工事費が表示される
*	v24.00.12	2016/05/28   FJ)清原	【OM-2016-0001368】契約内容通知書に表示するマンションのテレビの工事費が、ホームとマンションが同額となっている。
*	v24.00.13	2016/06/01   FJ)西面	【OM-2016-0001368】コース変更時（無料時）コース変更の料金が請求されているように見える。
*	v24.00.14	2016/06/10   FJ)西面	【OM-2016-0001470】【OM-2016-0001427】ネット・電話申込時の標準工事費の出力制御
*	v24.00.15	2016/06/13   FJ)西面	【OM-2016-0001517】電話番号変更字の考慮
*	v25.00.00	2016/04/20   FJ)山裾	【ANK-2827-00-00】消費者保護ルール見直し追加対応
*	v25.00.01	2016/05/18   FJ)清原	【IT2-2016-0000025】テレビ表示位置番号が出力されない
*	v26.00.00	2016/07/03   FJ)西面	【OM-2016-0001678】契約解除用文言が表示されない
*	v26.00.01	2016/07/28   FJ)三宅	【ANK-2894-00-00 】消費者保護ルール見直し追加対応
*	v27.00.00	2016/08/17   FJ)三宅	【ANK-2985-00-00 】消費者保護ルール対応  STEP3
*	v27.00.01	2016/09/08   FJ)三宅	【ANK-2985-02-00,ANK-2985-03-00 】消費者保護ルール対応  STEP3 変更手数料の重複表示の是正
*	v27.00.02	2016/09/16   FJ)三宅	【IT1-2016-0000131】住変時、番ポありの場合に番ポ区分が正しく取得できない
*	v27.00.03	2016/09/16   FJ)三宅	【IT1-2016-0000132】休止受付時に休止解除日が取得できない
*	v27.00.04	2016/09/17   FJ)三宅	【IT1-2016-0000133】電話番号変更中、内訳の状態により出力する変更前・変更後の番号を出力するか判定できていない
*	v27.00.05	2016/09/21   FJ)三宅	【IT1-2016-0000134】一時金の処理で同一文言コード時に重複を省けていない
*	v27.00.06	2016/12/12   FJ)清原	【OM-2016-0002489】STB変更時に変更前と変更後の２つが表示される
*	v28.00.00	2016/12/15   FJ)清原	【ANK-3066-00-00】スマリン新端末追加に伴う安心補償オプションキャンペーン対応
*	v29.00.00	2017/02/03   FJ)笹川	【OM-2017-0000043】スマリン新端末追加に伴う安心補償オプション抽出条件不備
*	v29.00.01	2017/02/03   FJ)西面	【OM-2017-0000043】SQL編集不備
*	v29.00.03	2017/02/07   FJ)西面	【ANK-3070-00-00】消費者保護STEP4
*	v29.00.04	2017/02/27   FJ)西面	【OM-2017-0000266】一時金条件出力不備
*	v29.00.05	2017/02/27   FJ)西面	【OM-2017-0000043】スマリン新端末追加に伴う安心補償オプションキャンペーン対応
*	v29.00.06	2017/03/22   FJ)清原	【OM-2017-0000323】休止登録時の休止開始日取得方法不正
*	v29.00.07	2017/03/30   FJ)清原	【OM-2017-0000323】休止登録時の休止開始日取得方法不正（テレビの休止取得方法不備）
*	v32.00.00	2017/04/10   FJ)塩津	【ANK-3149-00-00】新セキュリティパック導入
*	v32.00.01	2017/05/17   FJ)塩津	【IT1-2017-0000052】セキュリティパック割引登録時の「リモートサポートプラス」の不正表示
*	v32.00.02	2017/06/23   FJ)清原	【ANK-3149-18-00】新セキュリティパック導入（住所変更におけるＰＰ引継ぎ）
*	v33.00.00	2017/07/28   FJ)清原	【ANK-3217-00-00】GHサービス開始対応
*	v33.00.01	2017/08/25   FJ)清原	【ANK-3269-00-00】スマリン新規端末追加に伴う安心補償オプションキャンペーンの減額対象追加対応
*	v36.00.00	2018/01/18   FJ)清原	【ANK-3296-00-00】標準工事費分割請求
*	v37.00.00	2018/06/06   FJ)河邊	【OM-2018-0000531】契約内容通知書エラー
*	v41.00.00	2019/02/19   FJ)澤田	【OM-2019-0000193】テレビの標準工事費が印字されない
*	v41.00.01	2019/03/04   FJ)澤田	【IT2-2019-0000016】高速割は適用されていないが 高速割についての文言が出力された
*	v45.00.00	2019/07/10   FJ)美濃原	【ANK-3636-00-00】消費増税対応（8%⇒10%）
*	v46.00.00	2019/10/18   FJ)三原	【OM-2019-0001179】卸契約の契約内容通知書で電話の工事費が表示される
*	v52.00.00	2021/02/22   FJ)吉田	【ANK-4006-00-00】【eo】5G10Gへの収容替え工事時の契約内容通知書の編集内容是正
*	v53.00.00	2021/03/30   FJ)吉田	【ANK-3989-00-00】マンション光コンセント方式への5G・10Gコース追加
*	v53.00.01	2021/05/18   FJ)吉田	【ANK-3951-00-00】「競争ルールの検証に関するWG」に関するシステム対応
*	v56.00.00	2021/09/28   FJ)吉田	【ANK-4038-00-00】【eo定期】光ローゼット化対応
*	v56.00.01	2021/10/29   FJ)吉田	【IT1-2021-0000080】ローゼット化済工事案件でグレードアップCPが表示される
*	v61.00.00	2023/05/02   FJ)渋谷	【ANK-4315-00-00】ANK-4315-00-00_【eo定期】 eoホームゲートウェイ導入対応
*	v65.00.00	2023/06/09   FJ)澤田	【ANK-4443-00-00】【eo】 光配線・全戸一括の契約内容通知書の誤表記対応
*	v61.00.01	2023/08/03   FJ)渋谷	【IT1-2023-0000028】ｅｏホームゲートウェイ工事費減額cpみなし表示対応
*	v61.00.02	2023/09/28   FJ)吉村	【ANK-4315-15-00】電話単独時のONU交換工事の契約内容通知書みなし表示対応
*	v70.00.00	2023/09/28   FJ)吉川	【ANK-4535-00-00】コース変更に伴う契約内容通知書のCP変更対応（開通前）
*   v71.00.00   2024/04/26   FJ)渋谷	【ANK-4468-00-00】eo光ネット「シンプルプラン」追加対応
*   v71.00.00   2024/06/12   FJ)張	    【ANK-4468-16-00】eo光ネット「シンプルプラン」追加対応 乗り換え工事費対応
*   v71.01.00   2024/07/02   FJ)張	    【ANK-4468-09-00】eo光ネット「シンプルプラン」追加対応 
*   v71.01.01   2024/08/21   FJ)渋谷	【ANK-4468-00-01】eo光ネット「シンプルプラン」追加対応 
*	v71.02.00	2024/08/29   FJ)大路	【ANK-4599-00-00】202410月CP対応
*	v72.00.00	2024/09/24   FJ)渋谷	【ANK-4577-00-00】eo光ネット「シンプルプラン」追加対応(Step2)
*	v72.00.01	2024/10/15   FJ)渋谷	【ANK-4577-00-01】eo光ネット「シンプルプラン」追加対応(Step2)
*	v73.00.00	2024/10/18   FJ)渋谷	【ANK-4427-00-00】ANK-4427-00-00_NTT卸対応
*	v73.00.01	2024/11/15   FJ)吉田あ	【ANK-4427-00-01】ANK-4427-00-00_NTT卸対応
*	v73.00.02	2024/11/28   FJ)張  	【IT2-2024-0000041】NTT卸で工事なし時の個別指定文言001が出力された
*	v73.00.03	2024/11/22   FJ)渋谷	【ANK-4570-00-00】コンテンツ新規同時申込み時契約仕様見直し対応
*	v73.00.04	2025/01/10   FJ)渋谷	【ANK-4427-11-00】NTT卸対応
*   v74.00.00	2024/12/25   FJ)渋谷	【ANK-4656-00-00】eo光シンプルプラン提供(STEP3)
*	v74.00.00	2025/02/13   FJ)大路	【ANK-4662-00-00】202504月CP対応
*	v74.00.02	2025/04/18   FJ)渋谷	【#87043】大日本印刷で桁数超過エラー発生
*********************************************************************/
package eo.business.service;

import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JBSbatInterface;
import eo.business.common.JBSbatKKConst;
import eo.business.common.JKKBatCommon;
import eo.business.common.JKKBatConst;
import eo.business.util.file.JBSbatKKIFM689;
import eo.business.util.table.JBSbatAC_M_WRIB_SHUK;
import eo.business.util.table.JBSbatCK_T_CUST;
import eo.business.util.table.JBSbatKK_M_KNYTCS_DSP_MNGN;
import eo.business.util.table.JBSbatKK_M_PCRS;
import eo.business.util.table.JBSbatKK_M_TMP_PAY_PRC;
import eo.business.util.table.JBSbatKK_M_WRIB_SVC_DTL;
import eo.business.util.table.JBSbatKK_M_WRISVC_TG_SVC;
import eo.business.util.table.JBSbatKK_T_ADCHG_DTL;
import eo.business.util.table.JBSbatKK_T_CONT_MKM_INF;
import eo.business.util.table.JBSbatKK_T_ICJKN_SETTE;
import eo.business.util.table.JBSbatKK_T_IDO_RSV;
import eo.business.util.table.JBSbatKK_T_KAKINS;
import eo.business.util.table.JBSbatKK_T_KAP_KEI;
import eo.business.util.table.JBSbatKK_T_KICJKN;
import eo.business.util.table.JBSbatKK_T_KKOP_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_KKTK_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_KNYO_TCH_TG_BUT;
import eo.business.util.table.JBSbatKK_T_KNYTCS;
import eo.business.util.table.JBSbatKK_T_MSKM;
import eo.business.util.table.JBSbatKK_T_OPSVKEI_ISP;
import eo.business.util.table.JBSbatKK_T_OP_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_SVC_KEI_UCWK;
import eo.business.util.table.JBSbatKK_T_SVKEIUW_EOH_TEL;
import eo.business.util.table.JBSbatKK_M_PCRS_SBOP_SVC;
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.JBSbatKK_T_WRIB_SVC_KEI;
import eo.business.util.table.JBSbatKU_T_KJAK_EOH_NET;
import eo.business.util.table.JBSbatKU_T_KOJIAK;
import eo.business.util.table.JBSbatZM_M_WORK_PARAM_KNRI;
import eo.common.constant.JKKStrConst;
import eo.common.constant.JPCBatchMessageConstant;
import eo.common.util.JKKStringUtil;
import eo.common.util.JPCDateUtil;
import eo.common.util.JPCUtilCommon;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatServiceInterfaceMap;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.util.JBSbatStringUtil;
import eo.framework.util.JCCBatchEsbInterface;
import eo.framework.application.JBSbatBusinessError;
import eo.framework.db.JBSbatSQLAccess;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKKnytcsTrgtCst extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(申込)*/
	private static final String D_TBL_NAME_KK_T_MSKM = "KK_T_MSKM";

	/** テーブル(契約内容通知対象物)*/
	private static final String D_TBL_NAME_KK_T_KNYO_TCH_TG_BUT = "KK_T_KNYO_TCH_TG_BUT";

	/** テーブル(契約内容通知書表示文言)*/
	private static final String D_TBL_NAME_KK_M_KNYTCS_DSP_MNGN = "KK_M_KNYTCS_DSP_MNGN";

	/** テーブル(サービス契約内訳)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI_UCWK = "KK_T_SVC_KEI_UCWK";

	/** テーブル(サービス契約)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI = "KK_T_SVC_KEI";

	/** テーブル(オプションサービス契約)*/
	private static final String D_TBL_NAME_KK_T_OP_SVC_KEI = "KK_T_OP_SVC_KEI";

	/** テーブル(サブオプションサービス契約)*/
	private static final String D_TBL_NAME_KK_T_SBOP_SVC_KEI = "KK_T_SBOP_SVC_KEI";

	/** テーブル(機器提供サービス契約)*/
	private static final String D_TBL_NAME_KK_T_KKTK_SVC_KEI = "KK_T_KKTK_SVC_KEI";

	/** テーブル(機器オプションサービス契約)*/
	private static final String D_TBL_NAME_KK_T_KKOP_SVC_KEI = "KK_T_KKOP_SVC_KEI";

	/** テーブル(割引サービス契約)*/
	private static final String D_TBL_NAME_KK_T_WRIB_SVC_KEI = "KK_T_WRIB_SVC_KEI";

	/** テーブル(データ抽出項目設定)*/
	private static final String D_TBL_NAME_KK_T_DCHSKMST = "KK_T_DCHSKMST";

	/** テーブル(課金先)*/
	private static final String D_TBL_NAME_KK_T_KAKINS = "KK_T_KAKINS";

	/** テーブル(工事案件)*/
	private static final String D_TBL_NAME_KU_T_KOJIAK = "KU_T_KOJIAK";

	/** テーブル(一時金設定)*/
	private static final String D_TBL_NAME_KK_T_ICJKN_SETTE = "KK_T_ICJKN_SETTE";
	
	//v24.00.00 2016/03/18 Add Start
	/** テーブル(異動理由)*/
	private static final String D_TBL_NAME_KK_T_IDO_RSV = "KK_T_IDO_RSV";
	//v24.00.00 2016/03/18 Add End

	//v24.00.06 2016/05/03 Add Start
	/** テーブル(住所変更)*/
	private static final String D_TBL_NAME_KK_T_ADCHG = "KK_T_ADCHG";
	//v24.00.06 2016/05/03 Add End
// v27.00.00 ADD START
	/** サービス契約内訳＜ｅｏ光電話＞*/
	private static final String D_TBL_NAME_KK_T_SVKEIUW_EOH_TEL = "KK_T_SVKEIUW_EOH_TEL";
// v27.00.00 ADD END
// OM-2018-0000531 2018/06/06 ADD START
	/** 契約内容通知書*/
	private static final String D_TBL_NAME_KK_T_KNYTCS = "KK_T_KNYTCS";
// OM-2018-0000531 2018/06/06 ADD END
// ANK-3636-00-00 2019/07/10 ADD START
	/** 割賦契約 */
	private static final String D_TBL_NAME_KK_T_KAP_KEI = "KK_T_KAP_KEI";
// ANK-3636-00-00 2019/07/10 ADD END
	// OM-2019-0001179 ADD START
	/** お客様 */
	private static final String D_TBL_NAME_CK_T_CUST = "CK_T_CUST";
	// OM-2019-0001179 ADD END
	// ANK-3989-00-00 2021/03/30 ADD START
	/** 提供方式契約 */
	private static final String D_TBL_NAME_KK_T_TK_HOSHIKI_KEI = "KK_T_TK_HOSHIKI_KEI";
	// ANK-3989-00-00 2021/03/30 ADD END
	// IT1-2021-0000080 2021/10/29 DEL START
//	// ANK-4038-00-00 2021/09/29 ADD START
//	/** サービス契約_工事案件*/
//	private static final String D_TBL_NAME_KU_T_SVKEI_KOJIAK = "KU_T_SVKEI_KOJIAK";
//	// ANK-4038-00-00 2021/09/29 ADD END
	// IT1-2021-0000080 2021/10/29 DEL END
	// ANK-4315-00-00 ADD START
	/** サービス契約_工事案件*/
	private static final String D_TBL_NAME_KU_T_SVKEI_KOJIAK = "KU_T_SVKEI_KOJIAK";
	// ANK-4315-00-00 ADD END
	
	// ANK-4443-00-00 ADD START
	/** テーブル(提供方式契約料金(事務手数料、工事費))*/
	private static final String D_TBL_NAME_KK_T_TK_HSK_KEI_PRC = "KK_T_TK_HSK_KEI_PRC";
	// ANK-4443-00-00 ADD END
	// ANK-4570-00-00 ADD START
	/** テーブル(システムパラメータ管理)*/
	private static final String D_TBL_NAME_ZM_M_SYS_PARAM_KNRI = "ZM_M_SYS_PARAM_KNRI";
	/** テーブル(業務パラメータ管理)*/
	private static final String D_TBL_NAME_ZM_M_WORK_PARAM_KNRI = "ZM_M_WORK_PARAM_KNRI";
	// ANK-4570-00-00 ADD END
	/** SQL定義キー(KK_SELECT_039)*/
	private static final String KK_T_MSKM_KK_SELECT_039 = "KK_SELECT_039";

	/** SQL定義キー(KK_SELECT_002)*/
	private static final String KK_T_KNYO_TCH_TG_BUT_KK_SELECT_002 = "KK_SELECT_002";

	/** SQL定義キー(KK_SELECT_001)*/
	private static final String KK_M_KNYTCS_DSP_MNGN_KK_SELECT_001 = "KK_SELECT_001";

	/** SQL定義キー(KK_SELECT_125)*/
	private static final String KK_T_SVC_KEI_UCWK_KK_SELECT_125 = "KK_SELECT_125";

	/** SQL定義キー(KK_SELECT_126)*/
	private static final String KK_T_SVC_KEI_UCWK_KK_SELECT_126 = "KK_SELECT_126";

	/** SQL定義キー(KK_SELECT_325)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_325 = "KK_SELECT_325";

	/** SQL定義キー(KK_SELECT_119)*/
	private static final String KK_T_OP_SVC_KEI_KK_SELECT_119 = "KK_SELECT_119";

	/** SQL定義キー(KK_SELECT_120)*/
	private static final String KK_T_OP_SVC_KEI_KK_SELECT_120 = "KK_SELECT_120";

	/** SQL定義キー(KK_SELECT_028)*/
	private static final String KK_T_SBOP_SVC_KEI_KK_SELECT_028 = "KK_SELECT_028";

	/** SQL定義キー(KK_SELECT_029)*/
	private static final String KK_T_SBOP_SVC_KEI_KK_SELECT_029 = "KK_SELECT_029";

	/** SQL定義キー(KK_SELECT_220)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_220 = "KK_SELECT_220";

	/** SQL定義キー(KK_SELECT_221)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_221 = "KK_SELECT_221";

	/** SQL定義キー(KK_SELECT_026)*/
	private static final String KK_T_KKOP_SVC_KEI_KK_SELECT_026 = "KK_SELECT_026";

	/** SQL定義キー(KK_SELECT_027)*/
	private static final String KK_T_KKOP_SVC_KEI_KK_SELECT_027 = "KK_SELECT_027";

	/** SQL定義キー(KK_SELECT_068)*/
	private static final String KK_T_WRIB_SVC_KEI_KK_SELECT_068 = "KK_SELECT_068";

	/** SQL定義キー(KK_SELECT_015)*/
	private static final String KK_T_DCHSKMST_KK_SELECT_015 = "KK_SELECT_015";

	/** SQL定義キー(KK_SELECT_050)*/
	private static final String KK_T_KAKINS_KK_SELECT_050 = "KK_SELECT_050";

	/** SQL定義キー(KK_SELECT_040)*/
	private static final String KU_T_KOJIAK_KK_SELECT_040 = "KK_SELECT_040";

	/** SQL定義キー(KK_SELECT_008)*/
	private static final String KK_T_ICJKN_SETTE_KK_SELECT_008 = "KK_SELECT_008";

	//v24.00.00 2016/03/18 Add Start
	/** SQL定義キー(KK_SELECT_328)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_328 = "KK_SELECT_328";

	/** SQL定義キー(KK_SELECT_128)*/
	private static final String KK_T_SVC_KEI_UCWK_KK_SELECT_128 = "KK_SELECT_128";

	/** SQL定義キー(KK_SELECT_092)*/
	private static final String KK_T_IDO_RSV_KK_SELECT_092 = "KK_SELECT_092";

	/** SQL定義キー(KK_SELECT_069)*/
	private static final String KK_T_WRIB_SVC_KEI_KK_SELECT_069 = "KK_SELECT_069";
	//v24.00.00 2016/03/18 Add End
	
	//v24.00.03 2016/04/28 Add Start
	/** SQL定義キー(KK_SELECT_129)*/
	private static final String KK_T_SVC_KEI_UCWK_KK_SELECT_129 = "KK_SELECT_129";
	//v24.00.03 2016/04/28 Add End

	//v24.00.04 2016/04/28 Add Start
	/** SQL定義キー(KK_SELECT_070)*/
	private static final String KK_T_WRIB_SVC_KEI_KK_SELECT_070 = "KK_SELECT_070";
	//v24.00.04 2016/04/28 Add End

	//v24.00.06 2016/05/03 Add Start
	/** SQL定義キー(KK_SELECT_025)*/
	private static final String KK_T_ADCHG_KK_SELECT_025 = "KK_SELECT_025";
	//v24.00.06 2016/05/03 Add End
	
	//v24.00.07 2016/05/10 Add Start
	/** SQL定義キー(KK_SELECT_026)*/
	private static final String KK_T_ADCHG_KK_SELECT_026 = "KK_SELECT_026";
	//v24.00.07 2016/05/10 Add End

	//v24.00.09 2016/05/13 Add Start
	/** SQL定義キー(KK_SELECT_071)*/
	private static final String KK_T_WRIB_SVC_KEI_KK_SELECT_071 = "KK_SELECT_071";
	//v24.00.09 2016/05/13 Add End
	
	//v25.00.00 2016/04/20 Add Start
	/** SQL定義キー(KK_SELECT_231)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_231 = "KK_SELECT_231";

	/** SQL定義キー(KK_SELECT_228)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_228 = "KK_SELECT_228";

	/** SQL定義キー(KK_SELECT_229)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_229 = "KK_SELECT_229";

	/** SQL定義キー(KK_SELECT_230)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_230 = "KK_SELECT_230";

	/** SQL定義キー(KK_SELECT_121)*/
	private static final String KK_T_OP_SVC_KEI_KK_SELECT_121 = "KK_SELECT_121";

	/** SQL定義キー(KK_SELECT_122)*/
	private static final String KK_T_OP_SVC_KEI_KK_SELECT_122 = "KK_SELECT_122";

	/** SQL定義キー(KK_SELECT_030)*/
	private static final String KK_T_SBOP_SVC_KEI_KK_SELECT_030 = "KK_SELECT_030";

	/** SQL定義キー(KK_SELECT_031)*/
	private static final String KK_T_SBOP_SVC_KEI_KK_SELECT_031 = "KK_SELECT_031";
	//v25.00.00 2016/04/20 Add End
// v27.00.00 ADD START
	/** SQL定義キー(KK_SELECT_051)*/
	private static final String KK_T_KAKINS_KK_SELECT_051 = "KK_SELECT_051";

	/** SQL定義キー(KK_SELECT_236)*/
	private static final String KK_T_KKTK_SVC_KEI_KK_SELECT_236 = "KK_SELECT_236";

	/** SQL定義キー(KK_SELECT_073)*/
	private static final String KK_T_WRIB_SVC_KEI_KK_SELECT_073 = "KK_SELECT_073";
	
	/** SQL定義キー(KK_SELECT_053)*/
	private static final String KK_T_SVKEIUW_EOH_TEL_KK_SELECT_053 = "KK_SELECT_053";
// v27.00.00 ADD END
// v27.00.01 ADD START
	/** SQL定義キー(KK_SELECT_031)*/
	private static final String KK_T_KKOP_SVC_KEI_KK_SELECT_031 = "KK_SELECT_031";
// v27.00.01 ADD END
// v27.00.03 ADD START
	/** SQL定義キー(KK_SELECT_096)*/
	private static final String KK_T_IDO_RSV_KK_SELECT_096 = "KK_SELECT_096";
// v27.00.03 ADD END
// v27.00.04 ADD START
	/** SQL定義キー(KK_SELECT_132)*/
	private static final String KK_T_SVC_KEI_UCWK_KK_SELECT_132 = "KK_SELECT_132";
// v27.00.04 ADD END
	
// v29.00.03 2017/02/08 Add Start
	/** SQL定義キー(KK_SELECT_134) */
	private static final String KK_T_SVC_KEI_UCWK_KK_SELECT_134 = "KK_SELECT_134";
// v29.00.03 2017/02/08 Add End

	//v32.00.02 2017/06/23 Add Start
	/** SQL定義キー(KK_SELECT_003)*/
	private static final String KK_T_KNYO_TCH_TG_BUT_KK_SELECT_003 = "KK_SELECT_003";
	//v32.00.02 2017/06/23 Add End
	
	//v36.00.00 2016/03/18 Add Start
	/** SQL定義キー(KK_SELECT_350)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_350 = "KK_SELECT_350";
	//v36.00.00 2016/03/18 Add End
// OM-2018-0000531 2018/06/06 ADD START
	/** SQL定義キー(KK_SELECT_006)*/
	private static final String KK_T_KNYTCS_KK_SELECT_006 = "KK_SELECT_006";
// OM-2018-0000531 2018/06/06 ADD END
	// IT2-2019-0000016 ADD START
	/** SQL定義キー(KK_SELECT_101)*/
	private static final String KK_T_IDO_RSV_KK_SELECT_101 = "KK_SELECT_101";
	// IT2-2019-0000016 ADD END
// ANK-3636-00-00 2019/07/10 ADD START
	/** SQL定義キー(KK_SELECT_013)*/
	private static final String KK_T_KAP_KEI_KK_SELECT_013 = "KK_SELECT_013";
// ANK-3636-00-00 2019/07/10 ADD END
	// OM-2019-0001179 ADD START
	/** SQL定義キー(KU_SELECT_001)*/
	private static final String CK_T_CUST_KU_SELECT_001 = "KU_SELECT_001";
	// OM-2019-0001179 ADD END
	// v52.00.00 ANK-4006-00-00 2021/02/22 ADD START
	/** SQL定義キー(KK_SELECT_105)*/
	private static final String KK_T_IDO_RSV_KK_SELECT_105 = "KK_SELECT_105";
	// v52.00.00 ANK-4006-00-00 2021/02/22 ADD END
	// ANK-3989-00-00 2021/03/30 ADD START
	/** SQL定義キー(KK_SELECT_040) */
	private static final String KK_T_TK_HOSHIKI_KEI_KK_SELECT_040 = "KK_SELECT_040";
	// ANK-3989-00-00 2021/03/30 ADD END
	// IT1-2021-0000080 2021/10/29 DEL START
//	// ANK-4038-00-00 2021/09/29 ADD START
//	/** SQL定義キー(KK_SELECT_029)*/
//	private static final String KU_T_SVKEI_KOJIAK_KK_SELECT_029 = "KK_SELECT_029";
//	// ANK-4038-00-00 2021/09/29 ADD END
	// IT1-2021-0000080 2021/10/29 DEL END
	// IT1-2021-0000080 2021/10/29 ADD START
	/** SQL定義キー(KK_SELECT_051)*/
	private static final String KU_T_KOJIAK_KK_SELECT_051 = "KK_SELECT_051";
	// IT1-2021-0000080 2021/10/29 ADD END
// ANK-4662-00-00 ADD START
	/** SQL定義キー(KK_SELECT_055)*/
	private static final String KU_T_KOJIAK_KK_SELECT_055 = "KK_SELECT_055";
// ANK-4662-00-00 ADD END
	// ANK-4315-00-00 ADD START
	/** SQL定義キー(KU_SELECT_023)*/
	private static final String KU_T_SVKEI_KOJIAK_KU_SELECT_023 = "KU_SELECT_023";
	// ANK-4315-00-00 ADD END
	
	// ANK-4443-00-00 ADD START
	/** SQL定義キー(KK_SELECT_007)*/
	private static final String KK_T_TK_HSK_KEI_PRC_KK_SELECT_007 = "KK_SELECT_007";
	// ANK-4443-00-00 ADD END
	
	// IT1-2023-0000028 ADD START
	/** SQL定義キー(KK_SELECT_002)*/
	private static final String KK_M_KNYTCS_DSP_MNGN_KK_SELECT_002 = "KK_SELECT_002";
	// IT1-2023-0000028 ADD END
	// ANK-4599-00-00 ADD START
	/** SQL定義キー(KK_SELECT_082)*/
	private static final String KK_T_WRIB_SVC_KEI_KK_SELECT_082 = "KK_SELECT_082";
	// ANK-4599-00-00 ADD END
	// ANK-4427-00-00 ADD START
	/** SQL定義キー(KK_SELECT_145)*/
	private static final String KK_T_OP_SVC_KEI_KK_SELECT_145 = "KK_SELECT_145";
	// ANK-4427-00-00 ADD END
//IT2-2024-0000041 ADD START
	private static final String KK_T_SVC_KEI_KK_SELECT_393 = "KK_SELECT_393";
//IT2-2024-0000041 ADD END
	// ANK-4570-00-00 ADD START
	/** SQL定義キー(KK_SELECT_392)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_392 = "KK_SELECT_392";
	/** SQL定義キー(KK_SELECT_026)*/
	private static final String ZM_M_WORK_PARAM_KNRI_KK_SELECT_026 = "KK_SELECT_026";
	// ANK-4570-00-00 END
	//v26.00.00 2016/07/04 Add Start
	/** テレビ表示位置番号（０１）*/
	private static final String TV_DSP_NO_01 = "1";
	//v26.00.00 2016/07/04 Add End
	
	/** テーブルアクセスクラス(申込)*/
	private JBSbatSQLAccess db_KK_T_MSKM = null;

// ANK-3636-00-00 2019/07/10 ADD START
	/** テーブルアクセスクラス(割賦契約)*/
	private JBSbatSQLAccess db_KK_T_KAP_KEI = null;
// ANK-3636-00-00 2019/07/10 ADD END

	/** テーブルアクセスクラス(契約内容通知対象物)*/
	private JBSbatSQLAccess db_KK_T_KNYO_TCH_TG_BUT = null;

	/** テーブルアクセスクラス(契約内容通知書表示文言)*/
	private JBSbatSQLAccess db_KK_M_KNYTCS_DSP_MNGN = null;

	/** テーブルアクセスクラス(サービス契約内訳)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI_UCWK = null;

	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI = null;

	/** テーブルアクセスクラス(オプションサービス契約)*/
	private JBSbatSQLAccess db_KK_T_OP_SVC_KEI = null;

	/** テーブルアクセスクラス(サブオプションサービス契約)*/
	private JBSbatSQLAccess db_KK_T_SBOP_SVC_KEI = null;

	/** テーブルアクセスクラス(機器提供サービス契約)*/
	private JBSbatSQLAccess db_KK_T_KKTK_SVC_KEI = null;

	/** テーブルアクセスクラス(機器オプションサービス契約)*/
	private JBSbatSQLAccess db_KK_T_KKOP_SVC_KEI = null;

	/** テーブルアクセスクラス(割引サービス契約)*/
	private JBSbatSQLAccess db_KK_T_WRIB_SVC_KEI = null;

	/** テーブルアクセスクラス(データ抽出項目設定)*/
	private JBSbatSQLAccess db_KK_T_DCHSKMST = null;

	/** テーブルアクセスクラス(課金先)*/
	private JBSbatSQLAccess db_KK_T_KAKINS = null;

	/** テーブルアクセスクラス(工事案件)*/
	private JBSbatSQLAccess db_KU_T_KOJIAK = null;

	/** テーブルアクセスクラス(一時金設定)*/
	private JBSbatSQLAccess db_KK_T_ICJKN_SETTE = null;
	
	//v24.00.00 2016/03/18 Add Start
	/** テーブルアクセスクラス(異動予約)*/
	private JBSbatSQLAccess db_KK_T_IDO_RSV = null;
	//v24.00.00 2016/03/18 Add End

	//v24.00.01 2016/04/21 Add Start
	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI_2 = null;
	//v24.00.01 2016/04/21 Add End
	
	//v24.00.04 2016/04/28 Add Start
	/** テーブルアクセスクラス(割引サービス契約)*/
	private JBSbatSQLAccess db_KK_T_WRIB_SVC_KEI_2 = null;
	//v24.00.04 2016/04/28 Add End
	
	//v24.00.06 2016/05/03 Add Start
	/** テーブルアクセスクラス(住所変更)*/
	private JBSbatSQLAccess db_KK_T_ADCHG = null;
	//v24.00.06 2016/05/03 Add End
// v27.00.00 ADD START
	/** テーブルアクセスクラス(サービス契約内訳＜ｅｏ光電話＞)*/
	private JBSbatSQLAccess db_KK_T_SVKEIUW_EOH_TEL = null;
// v27.00.00 ADD END
// OM-2018-0000531 2018/06/06 ADD START
	/** テーブルアクセスクラス(契約内容通知書)*/
	private JBSbatSQLAccess db_KK_T_KNYTCS = null;
// OM-2018-0000531 2018/06/06 ADD END
	// OM-2019-0001179 ADD START
	/** テーブルアクセスクラス(お客様)*/
	private JBSbatSQLAccess db_CK_T_CUST = null;
	// OM-2019-0001179 ADD END
	// v52.00.00 ANK-4006-00-00 2021/02/22 ADD START
	/** テーブルアクセスクラス(異動予約)*/
	private JBSbatSQLAccess db_KK_T_IDO_RSV_3 = null;
	// v52.00.00 ANK-4006-00-00 2021/02/22 ADD END
	// ANK-3989-00-00 2021/03/30 ADD START
	/** テーブルアクセスクラス(提供方式契約)*/
	private JBSbatSQLAccess db_KK_T_TK_HOSHIKI_KEI = null;
	// ANK-3989-00-00 2021/03/30 ADD END
	// IT1-2021-0000080 2021/10/29 DEL START
//	// ANK-4038-00-00 2021/09/29 ADD START
//	/** テーブルアクセスクラス(サービス契約_工事案件)*/
//	private JBSbatSQLAccess db_KU_T_SVKEI_KOJIAK = null;
//	// ANK-4038-00-00 2021/09/29 ADD END
	// IT1-2021-0000080 2021/10/29 ADD END
	
	// ANK-4315-00-00 ADD START
	/** テーブルアクセスクラス(サービス契約_工事案件)*/
	private JBSbatSQLAccess db_KU_T_SVKEI_KOJIAK = null;
	// ANK-4315-00-00 ADD END
	
	// ANK-4443-00-00 ADD START
	/** テーブルアクセスクラス(提供方式契約料金(事務手数料、工事費))*/
	private JBSbatSQLAccess db_KK_T_TK_HSK_KEI_PRC = null;
	// ANK-4443-00-00 ADD END
	
	// ANK-4570-00-00 ADD START
	/** テーブルアクセスクラス(システムパラメータ管理)*/
	private JBSbatSQLAccess db_ZM_M_SYS_PARAM_KNRI = null;
	/** テーブルアクセスクラス(業務パラメータ管理)*/
	private JBSbatSQLAccess db_ZM_M_WORK_PARAM_KNRI = null;
	// ANK-4570-00-00 ADD END
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	
	
	/** 修正前SQL */
	public static final String EDIT_BF_SQL_SVC_KEI = "SVC_KEI_NO IN \\(\\?\\)";

	/** 修正後SQL */
	public static final String EDIT_AF_SQL_SVC_KEI = "SVC_KEI_NO IN ";
	
	/** 修正前SQL */
	public static final String EDIT_BF_SQL_MSKM_DTL = "KOJIAK_NO IN \\(\\?\\)";

	/** 修正後SQL */
	public static final String EDIT_AF_SQL_MSKM_DTL = "KOJIAK_NO IN ";
	
	// ANK-4577-00-00 ADD START
	/** 修正前SQL */
	public static final String EDIT_BF_SQL_PARAMETER_1 = "PARAMETER_1 IN \\(\\?\\)";

	/** 修正後SQL */
	public static final String EDIT_AF_SQL_PARAMETER_1 = "PARAMETER_1 IN ";
	// ANK-4577-00-00 ADD END
	
	/** 文字列_コンマ*/
	public static final String STR_COMMA = ",";

	/** 文字列_括弧（開始）*/
	public static final String STR_STA_KAKKO = "(";
	
	/** 文字列_括弧（終了）*/
	public static final String STR_END_KAKKO = ")";

	/** 文字列_バインド変数（？）*/
	public static final String STR_BIND = "?";
	
	/** 申込種別コード */
	public static final String MSKM_SBT_ADCHG = "00017";
	
	//v24.00.06 2016/05/03 Add Start
	/** 住所変更後電話番号数 */
	public static final String ADCHG_AF_TELNOSU = "2";
	//v24.00.06 2016/05/03 Add End
	
	//v23.00.03 2015/02/14 Add Start
	
	/** 文言表示条件識別コード（工事）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_001 = "001";

	//v24.00.00 2016/03/18 Add Start
	/** 文言表示条件識別コード（電話番号解約予約あり）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_003 = "003";

	/** 文言表示条件識別コード（住変ネット／テレビセット割：テレビ確認）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_004 = "004";

	/** 文言表示条件識別コード（住変ネット／テレビセット割：ネット確認）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_005 = "005";

	/** 文言表示条件識別コード（住変テレビ／電話セット割：テレビ確認）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_006 = "006";

	/** 文言表示条件識別コード（電話番号解約予約なし）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_007 = "007";

	/** 文言表示条件識別コード（インターネット・電話セット割引時の約款割引）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_008 = "008";
	
	/** 文言表示条件識別コード（地デジスターチャンネルセット割引時のチェック制御）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_009 = "009";

	/** 文言表示条件識別コード（グレードダウンキャンペーン表示制御）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_010 = "010";
	//v24.00.00 2016/03/18 Add End
	
	//v24.00.04 2016/04/28 Add Start
	/** 文言表示条件識別コード（テレビセット割時の約款文言）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_014 = "014";
	//v24.00.04 2016/04/28 Add End
	
	//v24.00.06 2016/05/03 Add Start
	/** 文言表示条件識別コード（住変時電話番号追加あり）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_017 = "017";
	
	/** 文言表示条件識別コード（住変時電話番号追加なし）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_018 = "018";
	//v24.00.06 2016/05/03 Add End
//v24.00.14 2016/06/10 Add Start
	/** 文言表示条件識別コード（ネット・電話申込時の標準工事費文言の表示制御）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_019 = "019";
//v24.00.14 2016/06/10 Add End
//v27.00.00 2016/08/18 ADD START
	/** 文言表示条件識別コード（電話番号の固定文言表示の制御に使用）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_021 = "021";
	
	/** 文言表示条件識別コード（電話番号表示の制御に使用）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_022 = "022";
	
	/** 文言表示条件識別コード（休止キャンペーンの表示制御に使用）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_023 = "023";
//v27.00.00 2016/08/18 ADD END
//v27.00.01 2016/09/08 ADD START
	/** 文言表示条件識別コード（ｅｏショッピングモールポイントプレゼントキャンペーン）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_024 = "024";
//v27.00.01 2016/09/08 ADD END
	
//v29.00.03 2017/02/07 Add Start
	/** 文言表示条件識別コード(コース変更・長割/即割) */
	private static final String MNGN_DSP_JKN_KSITE_CD_026 = "026";
	
	/** 文言表示条件識別コード(電話番号キャンセルチェック) */
	private static final String MNGN_DSP_JKN_KSITE_CD_025 = "025";
//v29.00.03 2017/02/07 Add End
	// v52.00.00 ANK-4006-00-00 2021/02/22 ADD START
	/** 文言表示条件識別コード(5G/10GグレードアップCP対象判定) */
	private static final String MNGN_DSP_JKN_KSITE_CD_033 = "033";
	// v52.00.00 ANK-4006-00-00 2021/02/22 ADD END
	// ANK-3989-00-00 2021/03/30 ADD START
	/** 文言表示条件識別コード(マンション光配線、マンション光コンセント方式判定) */
	private static final String MNGN_DSP_JKN_KSITE_CD_034 = "034";
	
	/** 文言表示条件識別コード(マンション光コンセント方式の5G判定) */
	private static final String MNGN_DSP_JKN_KSITE_CD_035 = "035";
	
	/** 文言表示条件識別コード(マンション光コンセント方式の10G判定) */
	private static final String MNGN_DSP_JKN_KSITE_CD_036 = "036";
	// ANK-3989-00-00 2021/03/30 ADD END
	// ANK-4443-00-00 ADD START
	/** 文言表示条件識別コード(光配線の標準工事費（ネット）の出力有無制御に使用) */
	private static final String MNGN_DSP_JKN_KSITE_CD_038 = "038";
	
	/** 文言表示条件識別コード(光配線の標準工事費（電話）の出力有無制御に使用) */
	private static final String MNGN_DSP_JKN_KSITE_CD_039 = "039";
	// ANK-4443-00-00 ADD END
	
	// ANK-4315-00-00 ADD START
	/** 文言表示条件識別コード(ホームゲートウェイＯＮＵ交換工事費・ＯＮＵ交換工事費減額) */
	private static final String MNGN_DSP_JKN_KSITE_CD_037 = "037";
	// ANK-4315-00-00 ADD END
	// ANK-4315-15-00 ADD START
	/** 文言表示条件識別コード((電話単独)ホームゲートウェイＯＮＵ交換工事費・ＯＮＵ交換工事費減額) */
	private static final String MNGN_DSP_JKN_KSITE_CD_040 = "040";
	// ANK-4315-15-00 ADD END
	// ANK-4599-00-00 ADD START
	/** 文言表示条件個別指定コード(重複不可キャンペーンと適用期間が重複する場合の出力制御) */
	private static final String MNGN_DSP_JKN_KSITEI_CD_041 = "041";
	// ANK-4599-00-00 ADD END
	// ANK-4656-00-00 ADD START
	/** 文言表示条件個別指定コード(郵送交換時の出力制御) */
	private static final String MNGN_DSP_JKN_KSITEI_CD_046 = "046";
	// ANK-4656-00-00 ADD END
	//v25.00.00 2016/04/20 Add Start
	/** 文言表示条件識別コード（ホームゲートウェイまたは多機能ルーターVA機能有）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_002 = "002";
	
	/** 文言表示条件識別コード（ホームゲートウェイまたは多機能ルーターVA機能無）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_011 = "011";

	/** 文言表示条件識別コード（安心補償（Xperia/ARROWS/LAVIE））*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_012 = "012";

	/** 文言表示条件識別コード（安心補償（MediaPad)）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_013 = "013";

	/** 文言表示条件識別コード（電話オプション欄へのＶＤＳＬ文言）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_016 = "016";

	/** 出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE）066*/
	private static final String KKHK_INFO_CD_066 = "066";

	/** 出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE）067*/
	private static final String KKHK_INFO_CD_067 = "067";

	/** 出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE）068*/
	private static final String KKHK_INFO_CD_068 = "068";

	/** 出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE）069*/
	private static final String KKHK_INFO_CD_069 = "069";

	/** 出力対象機器付加情報コード・安心補償（MediaPad）074*/
	private static final String KKHK_INFO_CD_074 = "074";

	/** 出力対象機器付加情報コード・安心補償（MediaPad）075*/
	private static final String KKHK_INFO_CD_075 = "075";
	//v25.00.00 2016/04/20 Add End
	
	//v28.00.00 ANK-3066-00-00 Add Start
	/** 出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE以外）076*/
	private static final String KKHK_INFO_CD_076 = "076";

	/** 出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE以外）077*/
	private static final String KKHK_INFO_CD_077 = "077";
	//v28.00.00 ANK-3066-00-00 Add End
	
	//v33.00.01 ANK-3269-00-00 Add Start
	/** 出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE以外）900*/
	private static final String KKHK_INFO_CD_900 = "900";

	/** 出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE以外）901*/
	private static final String KKHK_INFO_CD_901 = "901";
	//v33.00.01 ANK-3269-00-00 Add End
	
	//v26.00.00 2016/07/04 Add Start
	/** 文言表示条件識別コード（初期契約解除文言）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_020 = "020";
	//v26.00.00 2016/07/04 Add End
	// ANK4427-00-00 ADD START
	/** 文言表示条件識別コード（ＴｙｐｅＮの標準工事費（ホームタイプ））*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_042 = "042";
	
	/** 文言表示条件識別コード（（ＴｙｐｅＮの標準工事費（マンションタイプ））*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_043 = "043";
	
	/** 文言表示条件識別コード（ネット事務手数料(NTT卸用)）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_044 = "044";
	// ANK-4427-00-00 ADD END
	
	// ANK-4570-00-00 ADD START
	/** 文言表示条件識別コード（コンテンツサービスキャンペーンの出力制御）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_045 = "045";
	// ANK-4570-00-00 ADD END
	
	/** 共通情報格納用マップ */
	private ArrayList<JBSbatCommonDBInterface> mngnInfoMap = null;
	//v23.00.03 2015/02/14 Add End
	
	//v24.00.00 2016/03/18 Add Start
	/** 出力対象表示位置識別コード */
	private ArrayList<String> outputTgDspSkbtCdList = null;
	
	/** 検索結果格納用リスト */
	private ArrayList<HashMap<String, String>> serchResultList = null;
	
	//v24.00.00 2016/03/18 Add End
	
	//v24.00.04 2016/04/28 Add Start
	/** サービス契約内訳情報リスト */
	private ArrayList<String> SvcKeiUcwkInfList = null;
	//v24.00.04 2016/04/28 Add End

	//v25.00.00 2016/04/20 Add Start
	/** ファミリーパック契約有無 */
	private String famipaKeiUm = null;
	
	/** 料金コースコード */
	private String pcrsCd = null;
	
	/** 出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE） */
	private ArrayList<String> outputTgKkHkInfoAnsinList = null;
	
	/** 出力対象機器付加情報コード・安心補償（MediaPad） */
	private ArrayList<String> outputTgKkHkInfoAnsinMediaPadList = null;
	//v25.00.00 2016/04/20 Add End
// v27.00.00 ADD START
	/** 電話サービス 料金プランコード（ホーム／メゾン） */
	private static final String[] PPLAN_CD_TELHT_AND_TELMZ = {
		JKKStrConst.CD00565_TEL1_HOME,
		JKKStrConst.CD00565_TEL1_MEZON,
		JKKStrConst.CD00565_TEL2_HOME,
		JKKStrConst.CD00565_TEL2_MEZON
	};
// v27.00.00 ADD END
// v27.00.01 ADD START
	/** 端末保障あり 機器オプションサービス契約ステータス */
	private static final String[] TNMT_SHYOU_ARI_KKOP_STAT = {
		JKKStrConst.CD01616_STAT_SHOSAZUMI,
		JKKStrConst.CD01616_STAT_TEIKETSUZUMI,
		JKKStrConst.CD01616_STAT_SVCTK_CHU,
		JKKStrConst.CD01616_STAT_PAUSE,
		JKKStrConst.CD01616_STAT_STP
	};
// v27.00.00 ADD END
	
// ANK-3636-00-00 2019/07/10 DEL START
// v29.00.04 Add Start
//	/** 一時金重複時出力対象外リスト  */
//	private static final List<String> ICJKN_CHOFUKU_LIST  = Arrays.asList(new String[] {
//		"110050026010", "110050426010"});
// v29.00.04 Add End
// ANK-3636-00-00 2019/07/10 DEL END

// ANK-3636-00-00 2019/07/10 ADD START
	/** 一時金重複時出力対象外リスト（上１桁を除く ※上１桁が"1"は8％、上１桁が"2"は10％）</br>
	 *  「ANK-3636-00-00」の対象は 消費税8%："110050026010"、"110050426010"、消費税10%："210050026010"、"210050426010" */
	private List<String> ICJKN_CHOFUKU_LIST_END = null;
	/** 一時支払料金番号（ホーム、メゾン） 消費税8% */
	private static final String ICJKN_CHOFUKU_HMMZ_TAX1 = "110050026010";
	/** 一時支払料金番号（マンション） 消費税8% */
	private static final String ICJKN_CHOFUKU_MT_TAX1 = "110050426010";
	/** 割賦プランCD 上３桁目以降 */
	private static final int KAP_PLAN_START = 2;
	/** 一時支払料金番号表示優先順位（消費税対応） */
	public static final String TMP_PAY_PRC_NO_RANK = "TMP_PAY_PRC_NO_RANK";
	/** 一時支払料金番号表示優先順位（消費税対応）１番目 */
	public static final String TMP_PAY_PRC_NO_RANK_1 = "1";
// ANK-3636-00-00 2019/07/10 ADD END

	
	//v32.00.00 2017/04/10 Add Start
	/** ネットオプションパック識別コード */
	private String netOpPackSkbtCd = null;
	//v32.00.00 2017/04/10 Add End
	
	//v33.00.00 2017/07/28 ADD START
	/** 文言表示条件識別コード（「タブレット」の文言出力制御に使用）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_027 = "027";

	/** 文言表示条件識別コード（「ＧＨ」の文言出力制御に使用）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_028 = "028";
	//v33.00.00 2017/07/28 ADD END
	
	//v36.00.00 2016/03/18 Add Start
	/** 約款切替判定年月日 */
	private String clauseCngKjnYmd = null;
	
	/** 約款切替判定日・初期値 */
	private static final String SHK_CLAUSE_CHG_KJN_YMD = "20000101";
	//v36.00.00 2016/03/18 Add End
	
	// IT2-2019-0000016 ADD START
	/** 高速割対象の料金コース */
	private List<String> kosokuwriPcrsList = null; 
	
	/** 文言表示条件識別コード（「高速割」の文言出力制御に使用）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_030 = "030";
	/** テーブルアクセスクラス(異動予約)*/
	private JBSbatSQLAccess db_KK_T_IDO_RSV_2 = null;
	// IT2-2019-0000016 ADD END
	
// ANK-3636-00-00 2019/07/10 ADD START
	/** 文言表示条件識別コード（「タブレットのキャンペーン文言（8%）」の文言出力制御に使用）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_031 = "031";
	/** 文言表示条件識別コード（「タブレットのキャンペーン文言（10%）」の文言出力制御に使用）*/
	private static final String MNGN_DSP_JKN_KSITEI_CD_032 = "032";
	/** タブレットのキャンペーン文言の契約状態 未完了状態(割賦契約ステータスが"010"(受付済),"020"(照査済),"030"(締結済)) */
	private static final List<String> TABLET_CMP_STS =
			Arrays.asList(JKKStrConst.CD01471_UK_ZM, JKKStrConst.CD01471_SHOSA_ZUMI, JKKStrConst.CD01471_CNC_ZM);
	/** 割賦プランコード ３桁目 "0"  */
	private static final String KAPPLANCD_MID_0 = "0";
	/** 割賦プランコード ３、４桁目 "00"  */
	private static final String KAPPLANCD_MID_00 = "00";
	/** 割賦プランコード ３、４、５桁目 "000"  */
	private static final String KAPPLANCD_MID_000 = "000";
	/** 優先順 1 */
	private static final int PRIORITY_1 = 1;
	/** 優先順 2 */
	private static final int PRIORITY_2 = 2;
	/** 優先順 3 */
	private static final int PRIORITY_3 = 3;
	/** 優先順 4 */
	private static final int PRIORITY_4 = 4;
// ANK-3636-00-00 2019/07/10 ADD END
	// ANK-4443-00-00 ADD START
	/** マンション料金識別コード（標準工事費） */
	public static final String MANS_PRC_SKBT_CD_011 = "011";
	// ANK-4443-00-00 ADD END
	// ANK-4599-00-00 ADD START
	/** 割引サービスコード（ｅｏの１０ギガ大作戦！ＣＰ（１０Ｇ月額税抜１，２７３円×６カ月割引）（電話へのネット追加）） */
	public static final String WRIB_SVC_CD_W10000205 = "W10000205";
	/** 割引サービスコード（量販用１０ギガ大作戦！ＣＰ（１０Ｇ月額税抜２，０９１円×６カ月割引）（電話へのネット追加）） */
	public static final String WRIB_SVC_CD_W10000209 = "W10000209";
	// ANK-4599-00-00 ADD END

	// ANK-4570-00-00 ADD START
	/** システムパラメータ分離コード(「開通前コンテンツ開始制度切替日」取得用)*/
	private static final String SYS_PARAM_BUNRUI_CD_OPBF_CONT_SWCH_DAY = "OPBF_CONT_SWCH_DAY";
	/** システムパラメータID(「開通前コンテンツ開始制度切替日」取得用)*/
	private static final String SYS_PARAM_ID_EO = "EO";
	/** 開通前コンテンツ開始制度切替日 保持用 */
	private String opbfContStaSwchDay = "";
	/** サービスID_KKSV1042(サービスユースケースID）*/
	private static final String SVC_USECASE_ID_KKSV1042 = "KKSV1042";
	/** コンテンツサービスキャンペーン名称マップ */
	private static final String KKSV104201SC = "KKSV104201SC";
	/** コンテンツ抽出対象外料金コースマップ */
	private ArrayList<String> contJgiPcrsInfoMap = null;
	/** 業務パラメータIDリスト（ホームタイプ以外の料金コース（typeN）,ホームタイプ以外の料金コース（シンプルプラン）） */
	private static final String[] HTGAI_PCRS_WORK_PARAM_ID_LIST = {"KK_HTGAI_PCRS_TPN_","KK_HTGAI_PCRS_SPP_"};
	/** CCMG(契約可能コンテンツ)正常終了コード */
	private static final String CCMG_SEIJO = "00000";
	/** キャンペーン名称の制限バイト数 */
	private static final int CONT_CMP_NM_MAX_BYTE = 150;
	/** キャンペーン名称の文字コード */
	private static final Charset CONT_CMP_NM_ENCORDE = Charset.forName("UTF-8");
	// ANK-4570-00-00 ADD END
	// ANK-4427-11-00 ADD START
	/** 標準工事費指定コード（TypeN）*/
	private static final String STDARD_KOJIHI_STI_CD_09 = "09";
	// ANK-4427-11-00 ADD END
	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_KK_T_MSKM = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_MSKM);
		db_KK_T_KNYO_TCH_TG_BUT = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KNYO_TCH_TG_BUT);
		db_KK_M_KNYTCS_DSP_MNGN = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_M_KNYTCS_DSP_MNGN);
		db_KK_T_SVC_KEI_UCWK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI_UCWK);
		db_KK_T_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
		db_KK_T_OP_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_OP_SVC_KEI);
		db_KK_T_SBOP_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SBOP_SVC_KEI);
		db_KK_T_KKTK_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KKTK_SVC_KEI);
		db_KK_T_KKOP_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KKOP_SVC_KEI);
		db_KK_T_WRIB_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_WRIB_SVC_KEI);
		db_KK_T_DCHSKMST = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_DCHSKMST);
		db_KK_T_KAKINS = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KAKINS);
		db_KU_T_KOJIAK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_KOJIAK);
		db_KK_T_ICJKN_SETTE = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ICJKN_SETTE);
		//v24.00.00 2016/03/18 Add Start 
		db_KK_T_IDO_RSV = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_IDO_RSV);
		//v24.00.00 2016/03/18 Add End
		//v24.00.01 2016/04/21 Add Start
		db_KK_T_SVC_KEI_2 = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
		//v24.00.01 2016/04/21 Add End
		//v24.00.04 2016/04/28 Add Start
		db_KK_T_WRIB_SVC_KEI_2 = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_WRIB_SVC_KEI);
		//v24.00.04 2016/04/28 Add End
		//v24.00.06 2016/05/03 Add Start
		db_KK_T_ADCHG = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ADCHG);
		//v24.00.06 2016/05/03 Add End
// v27.00.00 ADD START
		db_KK_T_SVKEIUW_EOH_TEL = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVKEIUW_EOH_TEL);
// v27.00.00 ADD END
// OM-2018-0000531 2018/06/06 ADD START
		db_KK_T_KNYTCS = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KNYTCS);
// OM-2018-0000531 2018/06/06 ADD END
		// IT2-2019-0000016 ADD START
		db_KK_T_IDO_RSV_2 = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_IDO_RSV);
		/** 業務パラメータから高速割の対象コースを取得する */
		kosokuwriPcrsList = Arrays.asList(JKKBatCommon.getWorkParamSetteValue(commonItem, JKKStrConst.PARAM_ID_KK_KOSOKUWRI_PCRS).split(","));
		// IT2-2019-0000016 ADD END
// ANK-3636-00-00 2019/07/10 ADD START
		ICJKN_CHOFUKU_LIST_END =
				Arrays.asList(new String[] { ICJKN_CHOFUKU_HMMZ_TAX1.substring(1, ICJKN_CHOFUKU_HMMZ_TAX1.length()),
						ICJKN_CHOFUKU_MT_TAX1.substring(1, ICJKN_CHOFUKU_MT_TAX1.length()) });
// ANK-3636-00-00 2019/07/10 ADD END
// ANK-3636-00-00 2019/07/10 ADD START
		db_KK_T_KAP_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KAP_KEI);
// ANK-3636-00-00 2019/07/10 ADD END
		// OM-2019-0001179 ADD START
		db_CK_T_CUST = new JBSbatSQLAccess(commonItem, D_TBL_NAME_CK_T_CUST);
		// OM-2019-0001179 ADD END
		// v52.00.00 ANK-4006-00-00 2021/02/22 ADD START
		db_KK_T_IDO_RSV_3 = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_IDO_RSV);
		// v52.00.00 ANK-4006-00-00 2021/02/22 ADD END
		// ANK-3989-00-00 2021/03/30 ADD START
		db_KK_T_TK_HOSHIKI_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_TK_HOSHIKI_KEI);
		// ANK-3989-00-00 2021/03/30 ADD END
		// IT1-2021-0000080 2021/10/29 DEL START
//		// ANK-4038-00-00 2021/09/29 ADD START
//		/** サービス契約_工事案件*/
//		db_KU_T_SVKEI_KOJIAK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_SVKEI_KOJIAK);
//		// ANK-4038-00-00 2021/09/29 ADD END
		// IT1-2021-0000080 2021/10/29 DEL END
		
		// ANK-4315-00-00 ADD START
		/** サービス契約_工事案件*/
		db_KU_T_SVKEI_KOJIAK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KU_T_SVKEI_KOJIAK);
		// ANK-4315-00-00 ADD END
		
		// ANK-4443-00-00 ADD START
		db_KK_T_TK_HSK_KEI_PRC = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_TK_HSK_KEI_PRC);
		// ANK-4443-00-00 ADD END
		
		// ANK-4570-00-00 ADD START
		// DBアクセスクラスを生成します
		db_ZM_M_SYS_PARAM_KNRI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_ZM_M_SYS_PARAM_KNRI);
		// DBアクセスクラスを生成します
		db_ZM_M_WORK_PARAM_KNRI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_ZM_M_WORK_PARAM_KNRI);
		
		/* システムパラメータ管理から「開通前コンテンツ開始制度切替日」を取得する。 */
		// システムパラメータ管理の設定値
		Object[] prm = new Object[]{SYS_PARAM_BUNRUI_CD_OPBF_CONT_SWCH_DAY,SYS_PARAM_ID_EO };
		// 初期化
		opbfContStaSwchDay = "";
		JBSbatCommonDBInterface ret = executeZM_M_SYS_PARAM_KNRI_PKSELECT(prm);
		if(ret != null)
		{
			opbfContStaSwchDay = ret.getString("SYS_PARAM_SETTE_VALUE_1");
		}
		
		/* 業務パラメータ管理から「コンテンツ抽出対象外料金コース」を取得する。 */
		// 初期化
		contJgiPcrsInfoMap = new ArrayList<String>();
		// 業務パラメータ管理の設定値
		for (int i = 0; i < HTGAI_PCRS_WORK_PARAM_ID_LIST.length; i++)
		{
			Object[] workParmKnriPrm	 = new Object[] {HTGAI_PCRS_WORK_PARAM_ID_LIST[i],super.opeDate};
			executeZM_M_WORK_PARAM_KNRI_KK_SELECT_026(workParmKnriPrm);
			//検索結果の取得
			JBSbatCommonDBInterface workParmKnriRet = db_ZM_M_WORK_PARAM_KNRI.selectNext();
			
			while(workParmKnriRet != null)
			{
				if(workParmKnriRet.getString(JBSbatZM_M_WORK_PARAM_KNRI.WORK_PARAM_SETTE_VALUE)!= null)
				{
					// 取得した料金コースを退避
					contJgiPcrsInfoMap.add(workParmKnriRet.getString(JBSbatZM_M_WORK_PARAM_KNRI.WORK_PARAM_SETTE_VALUE)) ;
				}
				workParmKnriRet = db_ZM_M_WORK_PARAM_KNRI.selectNext();
			}
		}
		
		// ANK-4570-00-00 ADD END
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		
		//v23.00.03 2015/02/14 Add Start
		
		/**------------------------------------------------------------------------------------------------  
		 * クラス変数の初期化処理を行う
		 *-------------------------------------------------------------------------------------------------*/
		//文言共通情報リストの初期化を行う
		mngnInfoMap = new ArrayList<JBSbatCommonDBInterface>();
		//v23.00.03 2015/02/14 Add End
		
		//v24.00.00 2016/03/18 Add Start
		//出力対象識別コードリストの初期化を行う
		outputTgDspSkbtCdList = new ArrayList<String>();
		
		//検索結果リストの初期化を行う
		serchResultList = new ArrayList<HashMap<String, String>>();
		
		//テレビ表示位置番号マップの初期化を行う	
		HashMap<String, String> tvDspMap = new HashMap<String, String>();
		//v24.00.00 2016/03/18 Add End
		
		//v24.00.04 2016/04/28 Add Start
		//サービス契約内訳情報リストの初期化を行う
		SvcKeiUcwkInfList = new ArrayList<String>();
		//v24.00.04 2016/04/28 Add End
		
		//v25.00.00 2016/04/20 Add Start
		//出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE）の初期化を行う
		outputTgKkHkInfoAnsinList = new ArrayList<String>();
		
		//出力対象機器付加情報コード・安心補償（MediaPad）の初期化を行う
		outputTgKkHkInfoAnsinMediaPadList = new ArrayList<String>();

		//出力対象機器付加情報コード・安心補償リスト設定
		this.getTgKkHkInfoAnsinList();
		//v25.00.00 2016/04/20 Add End
		/**------------------------------------------------------------------------------------------------  
		 * 共通情報取得 ※後続の検索・ファイル出力処理で必要となる共通情報を取得する
		 *-------------------------------------------------------------------------------------------------*/
		
		//ファイル出力用オブジェクトの作成
		JBSbatOutputItem outputBean = new JBSbatOutputItem();
		
		//申込種別コード取得
		String mskmSbtCd = getMskmSbtCd(inMap);
		
// v26.00.01 ADD START
		String idoDiv = inMap.getString(JBSbatKK_T_KNYTCS.IDO_DIV);
		if(JKKBatConst.IDO_DIV_WRIB.equals(idoDiv) || JKKBatConst.IDO_DIV_HANSOKU.equals(idoDiv))
		{
			// 契約内容通知書スキーマの異動区分が"割引情報登録"・"販促情報登録"の場合は、申込種別コードに"割引申込"を設定する
			inMap.set(JBSbatKK_T_MSKM.MSKM_SBT_CD, JBSbatKKConst.KK0971_MSKM_SBT_CD_00029);
		}
// v27.00.00 ADD START
		else if(JKKBatConst.IDO_DIV_STB_ADD_CHG.equals(idoDiv))
		{
			// 契約内容通知書スキーマの異動区分が"STB追加/変更"の場合は、申込種別コードに"機器契約変更申込"を設定する
			inMap.set(JBSbatKK_T_MSKM.MSKM_SBT_CD, JBSbatKKConst.KK0971_MSKM_SBT_CD_00022);
		}
		else if(JKKBatConst.IDO_DIV_PAUSE_CP_ADD.equals(idoDiv))
		{
			// 契約内容通知書スキーマの異動区分が"休止キャンペーン登録"の場合は、申込種別コードに"休止申込"を設定する
			inMap.set(JBSbatKK_T_MSKM.MSKM_SBT_CD, JBSbatKKConst.KK0971_MSKM_SBT_CD_00020);
		}
// v29.00.03 2017/02/07 Add Start
		else if(JKKBatConst.IDO_DIV_CHO_SOKU_WRIB.equals(idoDiv))
		{
			// 契約内容通知書スキーマの異動区分が"コース変更・長割/即割）の場合は、申込種別コードに"コース変更"を設定する
			inMap.set(JBSbatKK_T_MSKM.MSKM_SBT_CD, JBSbatKKConst.KK0971_MSKM_SBT_CD_00007);
		}
// v29.00.03 2017/02/07 Add End
// v27.00.00 ADD END
		else
		{
			// 契約内容通知書スキーマの異動区分が"割引情報登録"・"販促情報登録"以外の場合、既存処理（"新規申込"・"住所変更申込"）を設定する
// v26.00.01 ADD END
		
		//取得した申込種別コードを入力電文に追加する
		inMap.set(JBSbatKK_T_MSKM.MSKM_SBT_CD, mskmSbtCd);
		
// v26.00.01 ADD START
		}
// v26.00.01 ADD END
		
//v32.00.02 2017/06/23 Mod Start
//		//サービス契約情報取得
//		ArrayList<HashMap<String, String>> svcMapList = getSvcKeiNo(inMap);
		ArrayList<HashMap<String, String>> svcMapList = new ArrayList<HashMap<String, String>>();
		
		//住所変更か否かによって各種契約検索処理の条件を変更する
		if(isAdChg(mskmSbtCd))
		{
			//サービス契約情報取得（住所変更）
			svcMapList = getSvcKeiNoAdchg(inMap);
		}
		else
		{
			//サービス契約情報取得
			svcMapList = getSvcKeiNo(inMap);
		}
//v32.00.02 2017/06/23 Mod End
		
		//サービス契約番号が取得出来なかった場合、業務ログにワーニングメッセージを出力しマイナーアラームを通知する
		if(isSvcKeiMapEmpty(svcMapList))
		{
			
// OM-2018-0000531 2018/06/06 ADD START
			if (isYukoKnytcs(inMap))
			{
				// 当日有効な契約内容通知書が存在する場合
				// 情報ログを出力する
				outPutInfoLog(inMap);
				
				return null;
			}
			else
			{
				// 当日有効な契約内容通知書が存在しない場合
// OM-2018-0000531 2018/06/06 ADD END
				//マイナーアラーム通知ログを出力する
				outPutMinorAlarmLog(inMap);
				
				//マイナーアラームを通知する
				throw new JBSbatBusinessError();
// OM-2018-0000531 2018/06/06 ADD START
			}
// OM-2018-0000531 2018/06/06 ADD END
			
		}
		
		//v24.00.00 2016/03/18 Add Start
		//サービス情報マップ取得
		HashMap<String, String> svcInfoMap = getSvcInfoMap(svcMapList);
//		//v24.00.00 2016/03/18 Add End

		//v25.00.00 2016/04/20 Add Start
		//ネットサービスに紐付く項目（ファミリーパック契約有無、料金コースコード）を特定する
		this.getNetItem(svcMapList);
		//v25.00.00 2016/04/20 Add End
		
		//v24.00.00 2016/03/18 Del Start	
		//テレビ表示位置番号マップ取得※<サービス契約内訳番号, テレビ表示位置番号>
//		HashMap<String, String> tvDspMap = getTvDspNo(inMap, svcMapList);	
		//v24.00.00 2016/03/18 Del End
		
		//v24.00.07 2016/05/10 Add Start
		//住所変更か否かによって各種契約検索処理の条件を変更する
		if(isAdChg(mskmSbtCd))
		{
			//住所変更明細関連情報取得（サービス契約内訳番号）
			setAdchgDtlInfo(inMap);
		}
		//v24.00.07 2016/05/10 Add End
		
		//v36.00.00 2016/03/18 Add Start
		// 約款切替判定年月日取得
		getClauseCngKjnYmd(inMap, outputBean, svcInfoMap);
		//v36.00.00 2016/03/18 Add End

		
		/**------------------------------------------------------------------------------------------------  
		 * 検索&ファイル出力処理
		 *-------------------------------------------------------------------------------------------------*/
		
		//共通情報検索&出力処理
		outPutCommonInfo(inMap, outputBean);
		
		//サービス契約関連情報取得
		//v24.00.00 2016/03/18 Mod Start
//		outSvcKnrnInfo(inMap, outputBean, svcMapList);
		outSvcKnrnInfo(inMap, outputBean, svcMapList, svcInfoMap);
		//v24.00.00 2016/03/18 Mod End
		
		
		//v24.00.00 2016/03/18 Add Start	
		//テレビ契約が存在する場合に処理を行う
		if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_03)))
		{
			//サービス契約内訳関連情報取得（テレビ関連情報取得）
			tvDspMap = getTvDspNo(inMap, outputBean, svcInfoMap, svcMapList);
		}
		//v24.00.00 2016/03/18 Add End
		
		//v24.00.03 2016/04/28 Del Start
//		//サービス契約内訳関連情報取得
//		outSvcKeiUcwk(inMap, outputBean, svcMapList, tvDspMap);
		//v24.00.03 2016/04/28 Del End
		
		//住所変更か否かによって各種契約検索処理の条件を変更する
		if(isAdChg(mskmSbtCd))
		{
			//v24.00.03 2016/04/28 Add Start
			//サービス契約内訳関連情報取得（住所変更）
// v27.00.00 MOD START
//			outSvcKeiUcwkAdchg(inMap, outputBean, tvDspMap);
			outSvcKeiUcwkAdchg(inMap, outputBean, tvDspMap, svcMapList);
// v27.00.00 MOD END
			//v24.00.03 2016/04/28 Add End
			
			//オプションサービス契約関連情報取得（住所変更)
			outPutOpSvcKeiAdchg(inMap, outputBean);
			
			//サブオプションサービス契約関連情報取得(住所変更)
			outPutSbOpSvcKeiAdChg(inMap, outputBean);
			
			//機器提供サービス契約関連情報取得(住所変更)
			//v25.00.00 2016/04/20 Mod Start
//			outPutKktkSvcKeiAdChg(inMap, outputBean, tvDspMap);
			outPutKktkSvcKeiAdChg(inMap, outputBean, tvDspMap, svcInfoMap);
			//v25.00.00 2016/04/20 Mod End
			
			//機器オプションサービス契約関連情報取得(住所変更)
//v29.00.00 2017/02/03 Mod Start
//			outPutKkOpSvcKeiAdChg(inMap, outputBean);
			outPutKkOpSvcKeiAdChg(inMap, outputBean, svcMapList);
//v29.00.00 2017/02/03 Mod End

		}
		else
		{
			//v24.00.03 2016/04/28 Add Start
			//サービス契約内訳関連情報取得
			outSvcKeiUcwk(inMap, outputBean, svcMapList, tvDspMap);
			//v24.00.03 2016/04/28 Add End
			
			//オプションサービス契約関連情報取得
			outPutOpSvcKei(inMap, outputBean, svcMapList);
			
			//サブオプションサービス契約関連情報取得
			outPutSbOpSvcKei(inMap, outputBean, svcMapList);
			
			//機器提供サービス契約関連情報取得
			//v25.00.00 2016/04/20 Mod Start
//			outPutKktkSvcKei(inMap, outputBean, svcMapList, tvDspMap);
			outPutKktkSvcKei(inMap, outputBean, svcMapList, tvDspMap, svcInfoMap);
			//v25.00.00 2016/04/20 Mod End
			
			//機器オプションサービス契約関連情報取得
			outPutKkOpSvcKei(inMap, outputBean, svcMapList, tvDspMap);
		}
		
//v24.00.09 2016/05/13 Mod Start
		//v24.00.00 2016/03/18 Mod Start
		//割引サービス契約関連情報取得
//		outPutWribSvcKei(inMap, outputBean, svcMapList);
//		outPutWribSvcKeiInfo(inMap, outputBean, svcMapList, svcInfoMap);
		outPutWribSvcKeiInfo(inMap, outputBean, svcMapList, svcInfoMap, mskmSbtCd);
//		//v24.00.00 2016/03/18 Mod End
//v24.00.09 2016/05/13 Mod End
		
		//データ抽出項目設定関連情報取得
		outPutDchskmst(inMap, outputBean, svcMapList);
		
		//請求契約関連情報取得
		outPutKakins(inMap, outputBean, svcMapList);
		
		//工事案件関連情報取得
		outPutKojiak(inMap, outputBean, svcMapList);
		
		//一時金関連情報取得
//v24.00.15 2016/06/14 Mod Start 
//		outPutIcjknSette(inMap, outputBean, svcMapList);
		outPutIcjknSette(inMap, outputBean, svcMapList, svcInfoMap);
//v24.00.15 2016/06/15 Mod End
		// ANK-4570-00-00 ADD START
		//コンテンツサービス関連情報取得
		outPutCont(inMap, outputBean, svcMapList, svcInfoMap);
		// ANK-4570-00-00 ADD END


		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力
		 *-------------------------------------------------------------------------------------------------*/
		//v24.00.00 2016/03/18 Add Start
		super.logPrint.printDebugLog("■■■■■■■■■■処理終了■■■■■■■■■■");
		//v24.00.00 2016/03/18 Add Start
		
		return outputBean;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_KK_T_MSKM.close();
		db_KK_T_KNYO_TCH_TG_BUT.close();
		db_KK_M_KNYTCS_DSP_MNGN.close();
		db_KK_T_SVC_KEI_UCWK.close();
		db_KK_T_SVC_KEI.close();
		db_KK_T_OP_SVC_KEI.close();
		db_KK_T_SBOP_SVC_KEI.close();
		db_KK_T_KKTK_SVC_KEI.close();
		db_KK_T_KKOP_SVC_KEI.close();
		db_KK_T_WRIB_SVC_KEI.close();
		db_KK_T_DCHSKMST.close();
		db_KK_T_KAKINS.close();
		db_KU_T_KOJIAK.close();
		db_KK_T_ICJKN_SETTE.close();
		//v24.00.00 2016/03/18 Add Start
		db_KK_T_IDO_RSV.close();
		//v24.00.00 2016/03/18 Add End
		//v24.00.01 2016/04/21 Add Start
		db_KK_T_SVC_KEI_2.close();
		//v24.00.01 2016/04/21 Add End
		//v24.00.04 2016/04/28 Add Start
		db_KK_T_WRIB_SVC_KEI_2.close();
		//v24.00.04 2016/04/28 Add End
		//v24.00.06 2016/05/03 Add Start
		db_KK_T_ADCHG.close();
		//v24.00.06 2016/05/03 Add End
// v27.00.00 ADD START
		db_KK_T_SVKEIUW_EOH_TEL.close();
// v27.00.00 ADD END
// OM-2018-0000531 2018/06/06 ADD START
		db_KK_T_KNYTCS.close();
// OM-2018-0000531 2018/06/06 ADD END
		// IT2-2019-0000016 ADD START
		db_KK_T_IDO_RSV_2.close();
		// IT2-2019-0000016 ADD END
// ANK-3636-00-00 2019/07/10 ADD START
		db_KK_T_KAP_KEI.close();
// ANK-3636-00-00 2019/07/10 ADD END
		// OM-2019-0001179 ADD START
		db_CK_T_CUST.close();
		// OM-2019-0001179 ADD END
		// IT1-2021-0000080 2021/10/29 DEL START
//		// ANK-4038-00-00 2021/09/29 ADD START
//		db_KU_T_SVKEI_KOJIAK.close();
//		// ANK-4038-00-00 2021/09/29 ADD END
		// IT1-2021-0000080 2021/10/29 DEL END
		// ANK-4443-00-00 ADD START
		db_KK_T_TK_HSK_KEI_PRC.close();
		// ANK-4443-00-00 ADD END
		// ANK-4570-00-00 ADD START
		db_ZM_M_SYS_PARAM_KNRI.close();
		db_ZM_M_WORK_PARAM_KNRI.close();
		// ANK-4570-00-00 ADD END
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
		
		
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	
	
	/**
	 * SQLKEY(KK_SELECT_039)で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_MSKM_KK_SELECT_039(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_MSKM.selectBySqlDefine(paramList, KK_T_MSKM_KK_SELECT_039);
	}

	/**
	 * SQLKEY(KK_SELECT_002)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	割引サービス対象契約適用開始年月日
	 *		 	割引サービス対象契約適用終了年月日
	 *		 	予約適用年月日
	 *		 	割引サービス対象契約適用開始年月日
	 *		 	割引サービス対象契約適用終了年月日
	 *		 	予約適用年月日
	 *		 	割引サービス対象契約適用開始年月日
	 *		 	割引サービス対象契約適用終了年月日
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	契約内容通知書番号
	 *		 	契約内容通知対象物適用開始年月日
	 *		 	契約内容通知対象物適用終了年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KNYO_TCH_TG_BUT_KK_SELECT_002(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		//v24.00.00 2016/03/18 Add Start
		paramList.setValue(param[3].toString());
		//v24.00.00 2016/03/18 Add End
		//v25.00.00 2016/04/20 Add Start
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		//v25.00.00 2016/04/20 Add End
		//v32.00.00 2017/04/10 Add Start
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		paramList.setValue(param[9].toString());
		paramList.setValue(param[10].toString());
		paramList.setValue(param[11].toString());
		paramList.setValue(param[12].toString());
		//v32.00.00 2017/04/10 Add End
		// ANK-4577-00-00 ADD START
		paramList.setValue(param[13].toString());
		paramList.setValue(param[14].toString());
		// ANK-4577-00-00 ADD END

		// DBアクセスを実行します
		db_KK_T_KNYO_TCH_TG_BUT.selectBySqlDefine(paramList, KK_T_KNYO_TCH_TG_BUT_KK_SELECT_002);
	}

	/**
	 * 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_M_KNYTCS_DSP_MNGN_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());
		paramList.setValue(param[3].toString());

		// DBアクセスを実行します
		db_KK_M_KNYTCS_DSP_MNGN.selectBySqlDefine(paramList, KK_M_KNYTCS_DSP_MNGN_KK_SELECT_001);
	}

	/**
	 * SQLKEY(KK_SELECT_125)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_UCWK_KK_SELECT_125(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		//v24.00.00 2016/03/18 Del Start
//		paramList.setValue(param[6].toString());
		//v24.00.00 2016/03/18 Del End
// v27.00.03 DEL START
//		// v27.00.00 ADD START
//		paramList.setValue(param[6].toString());
//		paramList.setValue(param[7].toString());
//		// v27.00.00 ADD END
// v27.00.03 DEL END

		// DBアクセスを実行します
		db_KK_T_SVC_KEI_UCWK.selectBySqlDefine(paramList, KK_T_SVC_KEI_UCWK_KK_SELECT_125);
	}

	/**
	 * SQLKEY(KK_SELECT_126)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約_工事案件適用開始年月日
	 *		 	サービス契約_工事案件適用終了年月日
	 *		 	契約内容通知書回線内訳番号
	 *		 	割賦プラン適用開始年月日
	 *		 	割賦プラン適用終了年月日
	 *		 	予約適用年月日
	 *		 	サービス契約_工事案件適用開始年月日
	 *		 	サービス契約_工事案件適用終了年月日
	 *		 	契約内容通知書回線内訳番号
	 *		 	割賦プラン適用開始年月日
	 *		 	割賦プラン適用終了年月日
	 *		 	予約適用年月日
	 *		 	サービス契約_工事案件適用開始年月日
	 *		 	サービス契約_工事案件適用終了年月日
	 *		 	予約適用年月日
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	料金プラン固定単価適用開始年月日
	 *		 	料金プラン固定単価適用終了年月日
	 *		 	予約適用年月日
	 *		 	料金グループコード
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param prcGrpCd 料金グループリスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_UCWK_KK_SELECT_126(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
//v24.00.00 2016/03/18 Mod Start
//		paramList.setValue(param[0].toString());
//		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
//		paramList.setValue(param[2].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		paramList.setValue(param[9].toString());
		paramList.setValue(param[10].toString());
		//v24.00.00 2016/03/18 Mod End
		//v24.00.12 2016/05/28 Mod Start
		paramList.setValue(param[11].toString());
		paramList.setValue(param[12].toString());
		//v24.00.12 2016/05/28 Mod End
		//v36.00.00 ANK-3296-00-00 Add Start
		paramList.setValue(param[13].toString());
		paramList.setValue(param[14].toString());
		paramList.setValue(param[15].toString());
		paramList.setValue(param[16].toString());
		paramList.setValue(param[17].toString());
		paramList.setValue(param[18].toString());
		paramList.setValue(param[19].toString());
		paramList.setValue(param[20].toString());
		paramList.setValue(param[21].toString());
		paramList.setValue(param[22].toString());
		paramList.setValue(param[23].toString());
		paramList.setValue(param[24].toString());
		//v36.00.00 ANK-3296-00-00 Add End
		// OM-2019-0000193 ADD START
		paramList.setValue(param[25].toString());
		paramList.setValue(param[26].toString());
		// OM-2019-0000193 ADD END

		// DBアクセスを実行します
		db_KK_T_SVC_KEI_UCWK.selectBySqlDefine(paramList, KK_T_SVC_KEI_UCWK_KK_SELECT_126);
	}

	/**
	 * SQLKEY(KK_SELECT_325)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	割引サービス対象契約適用開始年月日
	 *		 	割引サービス対象契約適用終了年月日
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	割引サービス対象契約適用開始年月日
	 *		 	割引サービス対象契約適用終了年月日
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	割引サービス対象契約適用開始年月日
	 *		 	割引サービス対象契約適用終了年月日
	 *		 	予約適用年月日
	 *		 	申込種別コード
	 *		 	契約内容通知書
	 *		 	申込種別コード
	 *		 	サービス契約_工事案件適用開始年月日
	 *		 	サービス契約_工事案件適用終了年月日
	 *		 	契約内容通知書回線内訳番号
	 *		 	割賦プラン適用開始年月日
	 *		 	割賦プラン適用終了年月日
	 *		 	予約適用年月日
	 *		 	サービス契約＿工事案件適用開始年月日
	 *		 	サービス契約＿工事案件適用終了年月日
	 *		 	契約内容通知書回線内訳番号
	 *		 	割賦プラン適用開始年月日
	 *		 	割賦プラン適用終了年月日
	 *		 	予約適用年月日
	 *		 	サービス契約＿工事案件適用開始年月日
	 *		 	サービス契約＿工事案件適用終了年月日
	 *		 	申込種別コード
	 *		 	サービス契約＿工事案件適用開始年月日
	 *		 	サービス契約＿工事案件適用終了年月日
	 *		 	申込種別コード
	 *		 	予約適用年月日
	 *		 	サービス契約番号
	 *		 	予約適用年月日
 	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	申込種別コード
	 *		 	約款適用開始年月日
	 *		 	約款適用終了年月日
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_KK_SELECT_325(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		paramList.setValue(param[9].toString());
		paramList.setValue(param[10].toString());
//		v24.00.11 2016/05/25 Mod Start
//		paramList.setValue(param[11].toString());
//		paramList.setValue(param[12].toString());
//		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
//		paramList.setValue(param[14].toString());
//		paramList.setValue(param[15].toString());
//		paramList.setValue(param[16].toString());
//		paramList.setValue(param[17].toString());
//		paramList.setValue(param[18].toString());
		paramList.setValue(param[11].toString());
		paramList.setValue(param[12].toString());
		paramList.setValue(param[13].toString());
//v23.00.13 2016/06/01 DelStart
//		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
//		paramList.setValue(param[15].toString());
//		paramList.setValue(param[16].toString());
//		paramList.setValue(param[17].toString());
//		paramList.setValue(param[18].toString());
//		paramList.setValue(param[19].toString());
//v23.00.13 2016/06/01 Del End
//		v24.00.11 2016/05/25 Mod End
		// OM-2019-0000193 ADD START
		paramList.setValue(param[14].toString());
		paramList.setValue(param[15].toString());
		paramList.setValue(param[16].toString());
		paramList.setValue(param[17].toString());
		paramList.setValue(param[18].toString());
		paramList.setValue(param[19].toString());
		paramList.setValue(param[20].toString());
		paramList.setValue(param[21].toString());
		paramList.setValue(param[22].toString());
		paramList.setValue(param[23].toString());
		paramList.setValue(param[24].toString());
		paramList.setValue(param[25].toString());
		paramList.setValue(param[26].toString());
		paramList.setValue(param[27].toString());
		paramList.setValue(param[28].toString());
		paramList.setValue(param[29].toString());
		paramList.setValue(param[30].toString());
		// 53.00.01 ANK-3951-00-00 MOD START
//		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[31].toString());
		// 53.00.01 ANK-3951-00-00 MOD END
		paramList.setValue(param[32].toString());
		paramList.setValue(param[33].toString());
		paramList.setValue(param[34].toString());
		paramList.setValue(param[35].toString());
		//ANK-4468-16-00 ADD START
		paramList.setValue(param[36].toString());
		paramList.setValue(param[37].toString());
		paramList.setValue(param[38].toString());
		paramList.setValue(param[39].toString());
		//ANK-4468-16-00 ADD END
		//ANK-4468-16-00 MOD START
		//paramList.setValue(param[36].toString());
		paramList.setValue(param[40].toString());
		//ANK-4468-16-00 MOD END
		// 53.00.01 ANK-3951-00-00 MOD START
//		paramList.setValue(param[37].toString());
		// ANK-4315-00-00 MOD START
//		setListForDbParam(paramList, svcKeiList);
		// 53.00.01 ANK-3951-00-00 MOD END
//		paramList.setValue(param[38].toString());
		// OM-2019-0000193 ADD END
		// 53.00.01 ANK-3951-00-00 ADD START
//		paramList.setValue(param[39].toString());
//		paramList.setValue(param[40].toString());
//		paramList.setValue(param[41].toString());
//		paramList.setValue(param[42].toString());
//		paramList.setValue(param[43].toString());
//		paramList.setValue(param[44].toString());
		// 53.00.01 ANK-3951-00-00 ADD END
		//ANK-4468-16-00 MOD START
//		paramList.setValue(param[37].toString());
//		paramList.setValue(param[38].toString());
//		paramList.setValue(param[39].toString());
		paramList.setValue(param[41].toString());
		paramList.setValue(param[42].toString());
		paramList.setValue(param[43].toString());
		//ANK-4468-16-00 MOD END
		// ANK-4315-15-00 MOD START
//		setListForDbParam(paramList, svcKeiList);
//		paramList.setValue(param[41].toString());
//		paramList.setValue(param[42].toString());
//		paramList.setValue(param[43].toString());
//		paramList.setValue(param[44].toString());
//		paramList.setValue(param[45].toString());
//		paramList.setValue(param[46].toString());
//		paramList.setValue(param[47].toString());
		//ANK-4468-16-00 MOD START
//		paramList.setValue(param[40].toString());
//		paramList.setValue(param[41].toString());
//		paramList.setValue(param[42].toString());
//		setListForDbParam(paramList, svcKeiList);
//		paramList.setValue(param[44].toString());
//		paramList.setValue(param[45].toString());
//		paramList.setValue(param[46].toString());
//		paramList.setValue(param[47].toString());
//		paramList.setValue(param[48].toString());
//		paramList.setValue(param[49].toString());
//		paramList.setValue(param[50].toString());
		paramList.setValue(param[44].toString());
		paramList.setValue(param[45].toString());
		paramList.setValue(param[46].toString());
		// ANK-4427-00-00 ADD START
		paramList.setValue(param[47].toString());
		// ANK-4427-00-00 ADD END
		setListForDbParam(paramList, svcKeiList);
		// ANK-4427-00-00 DEL START
//		paramList.setValue(param[48].toString());
		// ANK-4427-00-00 DEL END
		paramList.setValue(param[49].toString());
		paramList.setValue(param[50].toString());
		paramList.setValue(param[51].toString());
		paramList.setValue(param[52].toString());
		paramList.setValue(param[53].toString());
		paramList.setValue(param[54].toString());
		//ANK-4468-16-00 MOD END
		// ANK-4427-00-00 ADD START
		paramList.setValue(param[55].toString());
		paramList.setValue(param[56].toString());
		// ANK-4427-00-00 ADD END
		
		
		// ANK-4315-00-00 MOD END
		// ANK-4315-15-00 MOD END
		// OM-2019-0000193 DEL END
////v23.00.13 2016/06/01 Add Start
//		paramList.setValue(param[14].toString());
//		paramList.setValue(param[15].toString());
//		paramList.setValue(param[16].toString());
//		//v36.00.00 ANK-3296-00-00 Mod Start
////		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
////		paramList.setValue(param[18].toString());
////		paramList.setValue(param[19].toString());
////		paramList.setValue(param[20].toString());
////		paramList.setValue(param[21].toString());
////		paramList.setValue(param[22].toString());
//		paramList.setValue(param[17].toString());
//		paramList.setValue(param[18].toString());
//		paramList.setValue(param[19].toString());
//		paramList.setValue(param[20].toString());
//		paramList.setValue(param[21].toString());
//		paramList.setValue(param[22].toString());
//		paramList.setValue(param[23].toString());
//		paramList.setValue(param[24].toString());
//		paramList.setValue(param[25].toString());
//		paramList.setValue(param[26].toString());
//		paramList.setValue(param[27].toString());
//		paramList.setValue(param[28].toString());
//		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
//		paramList.setValue(param[30].toString());
//		paramList.setValue(param[31].toString());
//		paramList.setValue(param[32].toString());
//		paramList.setValue(param[33].toString());
//		paramList.setValue(param[34].toString());
//		paramList.setValue(param[35].toString());
//		paramList.setValue(param[36].toString());
		//v36.00.00 ANK-3296-00-00 Mod End
//v23.00.13 2016/06/01 Add End
		// OM-2019-0000193 DEL END
		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_325);
	}

	/**
	 * SQLKEY(KK_SELECT_119)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	割引サービス対象契約適用開始年月日
	 *		 	割引サービス対象契約適用終了年月日
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	ネットオプションパック識別コード
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_OP_SVC_KEI_KK_SELECT_119(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());

		//v25.00.00 2016/04/20 Add Start
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		//v25.00.00 2016/04/20 Add End

		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		//v25.00.00 2016/04/20 Del Start
//		paramList.setValue(param[3].toString());
//		paramList.setValue(param[4].toString());
//		paramList.setValue(param[5].toString());
		//v25.00.00 2016/04/20 Del End
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		// ANK-4468-00-00 MOD START
//		paramList.setValue(param[8].toString());
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		// ANK-4468-00-00 MOD END
		//v25.00.00 2016/04/20 Add Start
		paramList.setValue(param[9].toString());
		// ANK-4577-00-01 MOD START
//		paramList.setValue(param[10].toString());
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		// ANK-4577-00-01 MOD END
		paramList.setValue(param[11].toString());
		//v25.00.00 2016/04/20 Add End

		//v32.00.01 2017/05/17 Add Start
		paramList.setValue(param[12].toString());
		//v32.00.01 2017/05/17 Add End
		// ANK-4468-00-00 ADD START
		paramList.setValue(param[13].toString());
		paramList.setValue(param[14].toString());
		// ANK-4468-09-00 DEL START
		//paramList.setValue(param[15].toString());
		// ANK-4468-09-00 DEL END
		// ANK-4468-00-00 ADD END
		// ANK-4577-00-01 ADD START
		paramList.setValue(param[15].toString());
		paramList.setValue(param[16].toString());
		paramList.setValue(param[17].toString());
		// ANK-4577-00-01 ADD END
		// DBアクセスを実行します
		db_KK_T_OP_SVC_KEI.selectBySqlDefine(paramList, KK_T_OP_SVC_KEI_KK_SELECT_119);
	}

	/**
	 * SQLKEY(KK_SELECT_120)で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_OP_SVC_KEI_KK_SELECT_120(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());

		//v25.00.00 2016/04/20 Add Start
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		paramList.setValue(param[9].toString());
		//v25.00.00 2016/04/20 Add End
		
		//v32.00.01 2017/05/17 Add Start
		paramList.setValue(param[10].toString());
		//v32.00.01 2017/05/17 Add End

		// DBアクセスを実行します
		db_KK_T_OP_SVC_KEI.selectBySqlDefine(paramList, KK_T_OP_SVC_KEI_KK_SELECT_120);
	}

	/**
	 * SQLKEY(KK_SELECT_028)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	料金コースコード
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	割引サービス対象契約適用開始年月日
	 *		 	割引サービス対象契約適用終了年月日
	 *		 	予約適用年月日
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列
	 * @param svcKeiList サービス契約リスト。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SBOP_SVC_KEI_KK_SELECT_028(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();

		//v25.00.00 2016/04/20 Mod Start
//		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
//		paramList.setValue(param[1].toString());
//		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
//		paramList.setValue(param[3].toString());
//		paramList.setValue(param[4].toString());
//		paramList.setValue(param[5].toString());
//		paramList.setValue(param[6].toString());
//		paramList.setValue(param[7].toString());
//		paramList.setValue(param[8].toString());
//		paramList.setValue(param[9].toString());
		paramList.setValue(param[0].toString());
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		// ANK-4577-00-00 MOD START
//		paramList.setValue(param[9].toString());
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		// ANK-4577-00-00 MOD END
		paramList.setValue(param[10].toString());
		paramList.setValue(param[11].toString());
		paramList.setValue(param[12].toString());
		paramList.setValue(param[13].toString());
		//v25.00.00 2016/04/20 Mod End
		// ANK-4577-00-00 ADD START
		paramList.setValue(param[14].toString());
		paramList.setValue(param[15].toString());
		// ANK-4577-00-00 ADD END

		// DBアクセスを実行します
		db_KK_T_SBOP_SVC_KEI.selectBySqlDefine(paramList, KK_T_SBOP_SVC_KEI_KK_SELECT_028);
	}

	/**
	 * 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_SBOP_SVC_KEI_KK_SELECT_029(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		//v25.00.00 2016/04/20 Add Start
		paramList.setValue(param[8].toString());
		paramList.setValue(param[9].toString());
		paramList.setValue(param[10].toString());
		paramList.setValue(param[11].toString());
		//v25.00.00 2016/04/20 Add End

		// DBアクセスを実行します
		db_KK_T_SBOP_SVC_KEI.selectBySqlDefine(paramList, KK_T_SBOP_SVC_KEI_KK_SELECT_029);
	}

	/**
	 * SQLKEY(KK_SELECT_220)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	サービス契約回線内訳番号
	 *		 	予約適用年月日
	 *		 	ファミリーパック契約有無
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKTK_SVC_KEI_KK_SELECT_220(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());

		//v25.00.00 2016/04/20 Add Start
		paramList.setValue(param[8].toString());
		//v25.00.00 2016/04/20 Add End

		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_220);
	}

	/**
	 * SQLKEY(KK_SELECT_221)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	申込番号
	 *		 	ファミリーパック契約有無
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKTK_SVC_KEI_KK_SELECT_221(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());

		//v25.00.00 2016/04/20 Add Start
		paramList.setValue(param[5].toString());
		//v25.00.00 2016/04/20 Add End


		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_221);
	}

	/**
	 * SQLKEY(KK_SELECT_026)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	サービス契約回線内訳番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	ファミリーパック契約有無
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKOP_SVC_KEI_KK_SELECT_026(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());

		//v25.00.00 2016/04/20 Add Start
		paramList.setValue(param[9].toString());
		//v25.00.00 2016/04/20 Add End

		// DBアクセスを実行します
		db_KK_T_KKOP_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKOP_SVC_KEI_KK_SELECT_026);
	}

	/**
	 * SQLKEY(KK_SELECT_027)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	申込番号
	 *		 	予約適用年月日
	 *		 	ファミリーパック契約有無
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
//v29.00.00 2017/02/03 Mod Start
//	private void executeKK_T_KKOP_SVC_KEI_KK_SELECT_027(Object[] param) throws Exception
	private void executeKK_T_KKOP_SVC_KEI_KK_SELECT_027(Object[] param, ArrayList<String> svcKeiList) throws Exception
//v29.00.00 2017/02/03 Mod End
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());

		//v25.00.00 2016/04/20 Add Start
		paramList.setValue(param[6].toString());
		//v25.00.00 2016/04/20 Add End
//v29.00.00 2016/02/03 Add Start
//v29.00.05 2016/02/27 Del Start
//		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
//		paramList.setValue(param[8].toString());
//		paramList.setValue(param[9].toString());
//		paramList.setValue(param[10].toString());
//		paramList.setValue(param[11].toString());
//		paramList.setValue(param[12].toString());
//		paramList.setValue(param[13].toString());
//		paramList.setValue(param[14].toString());
//v29.00.05 2016/02/27 Del End
//v29.00.05 2016/02/27 Add Start
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		paramList.setValue(param[9].toString());
		paramList.setValue(param[10].toString());
		paramList.setValue(param[11].toString());
		paramList.setValue(param[12].toString());
		paramList.setValue(param[13].toString());
//v29.00.05 2016/02/27 Add End
//v29.00.00 2016/02/03 Add End

		// DBアクセスを実行します
		db_KK_T_KKOP_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKOP_SVC_KEI_KK_SELECT_027);
	}

	/**
	 * SQLKEY(KK_SELECT_068)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *			サービス契約番号
	 *		 	予約適用年月日
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_WRIB_SVC_KEI_KK_SELECT_068(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		//v23.00.04 2015/2/19 Add Start
		setListForDbParam(paramList, svcKeiList);   
		//v23.00.04 2015/2/19 Add End
		//v23.00.04 2015/2/19 Mod Start
//		paramList.setValue(param[2].toString());
//		paramList.setValue(param[3].toString());
//		paramList.setValue(param[4].toString());
//		paramList.setValue(param[5].toString());
		
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		// ANK-4577-00-00 MOD START
//		paramList.setValue(param[5].toString());
		setListForDbParam(paramList, svcKeiList); 
		//ANK-4577-00-00 MOD END
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		//v23.00.04 2015/2/19 Mod End
		// ANK-4577-00-00 ADD START
		paramList.setValue(param[9].toString());
		paramList.setValue(param[10].toString());
		// ANK-4577-00-00 ADD END

		// DBアクセスを実行します
		db_KK_T_WRIB_SVC_KEI.selectBySqlDefine(paramList, KK_T_WRIB_SVC_KEI_KK_SELECT_068);
	}

	/**
	 * SQLKEY(KK_SELECT_015)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_DCHSKMST_KK_SELECT_015(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());

		// DBアクセスを実行します
		db_KK_T_DCHSKMST.selectBySqlDefine(paramList, KK_T_DCHSKMST_KK_SELECT_015);
	}

	/**
	 * SQLKEY(KK_SELECT_050)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	課金先適用開始年月日
	 *		 	課金先適用終了年月日
	 *		 	予約適用年月日
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KAKINS_KK_SELECT_050(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());

		// DBアクセスを実行します
		db_KK_T_KAKINS.selectBySqlDefine(paramList, KK_T_KAKINS_KK_SELECT_050);
	}

	/**
	 * SQLKEY(KK_SELECT_040)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	申込書明細番号
	 *		 	申込書明細番号
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param mskmDtlList 申込明細番号リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKU_T_KOJIAK_KK_SELECT_040(Object[] param, ArrayList<String> mskmDtlList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, mskmDtlList);                //申込明細番号リスト(複数指定有り)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		// DBアクセスを実行します
		db_KU_T_KOJIAK.selectBySqlDefine(paramList, KU_T_KOJIAK_KK_SELECT_040);
	}

	/**
	 * SQLKEY(KK_SELECT_008)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	申込種別コード
	 *		 	予約適用年月日
 	 *		 	予約適用年月日
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_ICJKN_SETTE_KK_SELECT_008(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		//v23.00.02 2015/2/7 Mod Start
		//setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		//v23.00.02 2015/2/7 Mod End
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
//v24.00.14 2016/06/10 Add Start
		paramList.setValue(param[6].toString());
//v24.00.14 2016/06/10 Add End
// ANK-4427-00-00 ADD START
		paramList.setValue(param[7].toString());
// ANK-4427-00-00 ADD END

		// DBアクセスを実行します
		db_KK_T_ICJKN_SETTE.selectBySqlDefine(paramList, KK_T_ICJKN_SETTE_KK_SELECT_008);
	}
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
	//v24.00.00 2016/03/18 Add Start

	/**
	 * SQLKEY(KK_SELECT_328)で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_328(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		//v24.00.01 2016/04/21 Mod Start
//		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_328);
		db_KK_T_SVC_KEI_2.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_328);
		//v24.00.01 2016/04/21 Mod End
	}

	/**
	 * SQLKEY(KK_SELECT_128)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_UCWK_KK_SELECT_128(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
//v24.00.15 2016/06/13 Add Start
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
//v24.00.15 2016/06/13 Add End

		// DBアクセスを実行します
		db_KK_T_SVC_KEI_UCWK.selectBySqlDefine(paramList, KK_T_SVC_KEI_UCWK_KK_SELECT_128);
	}

	/**
	 * SQLKEY(KK_SELECT_092)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	割引サービス対象サービス適用開始年月日
	 *		 	割引サービス対象サービス適用終了年月日
	 *		 	予約適用年月日
	 *		 	サービス契約番号
	 *		 	申込番号
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList 
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_IDO_RSV_KK_SELECT_092(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());

		// DBアクセスを実行します
		db_KK_T_IDO_RSV.selectBySqlDefine(paramList, KK_T_IDO_RSV_KK_SELECT_092);
	}

	/**
	 * SQLKEY(KK_SELECT_069)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *			運用日
	 *			運用日
	 *			運用日
	 *		 	割引サービス対象サービス適用終了年月日（運用日-3ヶ月前）
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_WRIB_SVC_KEI_KK_SELECT_069(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		//v24.00.04 2016/04/28 Add Start
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		//v24.00.04 2016/04/28 Add End

		// DBアクセスを実行します
		db_KK_T_WRIB_SVC_KEI.selectBySqlDefine(paramList, KK_T_WRIB_SVC_KEI_KK_SELECT_069);
	}

	//v24.00.00 2016/03/18 Add End

	//v24.00.03 2016/04/28 Add Start

	/**
	 * SQLKEY(KK_SELECT_129)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	予約適用年月日申込番号
	 *		 	予約適用年月日予約適用年月日
	 *		 	予約適用年月日申込種別コード
	 *		 	予約適用年月日契約内容通知書表示文言適用開始年月日
	 *		 	予約適用年月日契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param prcGrpCd 料金グループリスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_UCWK_KK_SELECT_129(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
// v27.00.02 DEL START
//		paramList.setValue(param[5].toString());
//		paramList.setValue(param[6].toString());
// v27.00.02 DEL END

		// DBアクセスを実行します
		db_KK_T_SVC_KEI_UCWK.selectBySqlDefine(paramList, KK_T_SVC_KEI_UCWK_KK_SELECT_129);
	}

	//v24.00.03 2016/04/28 Add End

	//v24.00.04 2016/04/28 Add Start
	/**
	 * SQLKEY(KK_SELECT_070)で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_WRIB_SVC_KEI_KK_SELECT_070(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());

		// DBアクセスを実行します
		db_KK_T_WRIB_SVC_KEI.selectBySqlDefine(paramList, KK_T_WRIB_SVC_KEI_KK_SELECT_070);
	}

	//v24.00.04 2016/04/28 Add End
	//v24.00.06 2016/05/03 Add Start

	/**
	 * SQLKEY(KK_SELECT_025)で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_KK_SELECT_025(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_ADCHG.selectBySqlDefine(paramList, KK_T_ADCHG_KK_SELECT_025);
	}
//v24.00.06 2016/05/03 Add End

//v24.00.07 2016/05/10 Add Start

	/**
	 * SQLKEY(KK_SELECT_026)で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_KK_SELECT_026(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_ADCHG.selectBySqlDefine(paramList, KK_T_ADCHG_KK_SELECT_026);
	}
//v24.00.07 2016/05/10 Add End
//v24.00.09 2016/05/13 Add Start
	/**
	 * SQLKEY(KK_SELECT_071)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	申込種別コード
	 *		 	予約適用年月日
	 *		 	申込番号
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_WRIB_SVC_KEI_KK_SELECT_071(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		//v32.00.02 2017/06/23 Add Start
		paramList.setValue(param[9].toString());
		paramList.setValue(param[10].toString());
		//v32.00.02 2017/06/23 Add End
		
		// DBアクセスを実行します
		db_KK_T_WRIB_SVC_KEI.selectBySqlDefine(paramList, KK_T_WRIB_SVC_KEI_KK_SELECT_071);
	}

//v24.00.09 2016/05/13 Add End
	//v25.00.00 2016/04/20 Add Start
	/**
	 * SQLKEY(KK_SELECT_231)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約回線内訳番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKTK_SVC_KEI_KK_SELECT_231(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_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_231);
	}

	/**
	 * SQLKEY(KK_SELECT_228)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	申込番号
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKTK_SVC_KEI_KK_SELECT_228(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_228);
	}

	/**
	 * SQLKEY(KK_SELECT_229)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列
	 * @param svcKeiList サービス契約リスト。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKTK_SVC_KEI_KK_SELECT_229(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());

		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_229);
	}

	/**
	 * SQLKEY(KK_SELECT_230)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	申込番号
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKTK_SVC_KEI_KK_SELECT_230(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());

		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_230);
	}

	/**
	 * SQLKEY(KK_SELECT_121)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	料金コースコード
	 *		 	予約適用年月日
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	料金コースコード
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	ファミリーパック契約有無
	 *		 	ネットオプションパック識別コード
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_OP_SVC_KEI_KK_SELECT_121(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[3].toString());
		// ANK-4468-00-01 MOD START
//		paramList.setValue(param[4].toString());
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		// ANK-4468-00-01 MOD END
		paramList.setValue(param[5].toString());
		// ANK-4468-00-01 ADD START
		paramList.setValue(param[6].toString());
		// ANK-4468-00-01 ADD END
		// ANK-4468-00-00 MOD START
//		paramList.setValue(param[6].toString());
		// ANK-4468-00-01 DEL START
//		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		// ANK-4468-00-01 DEL END
		// ANK-4468-00-00 MOD END
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		//v32.00.00 2017/04/10 Add Start
		paramList.setValue(param[9].toString());
		//v32.00.00 2017/04/10 Add End
		// ANK-4468-00-00 ADD START
		paramList.setValue(param[10].toString());
		paramList.setValue(param[11].toString());
		// ANK-4468-00-01 DEL START
//		paramList.setValue(param[12].toString());
//		paramList.setValue(param[13].toString());
		// ANK-4468-00-01 DEL END
		// ANK-4468-09-00 DEL START
		//paramList.setValue(param[14].toString());
		// ANK-4468-09-00 DEL END
		// ANK-4468-00-00 ADD END
		// DBアクセスを実行します
		db_KK_T_OP_SVC_KEI.selectBySqlDefine(paramList, KK_T_OP_SVC_KEI_KK_SELECT_121);
	}

	/**
	 * SQLKEY(KK_SELECT_122)で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_OP_SVC_KEI_KK_SELECT_122(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		//v32.00.00 2017/04/10 Add Start
		paramList.setValue(param[9].toString());
		//v32.00.00 2017/04/10 Add End

		// DBアクセスを実行します
		db_KK_T_OP_SVC_KEI.selectBySqlDefine(paramList, KK_T_OP_SVC_KEI_KK_SELECT_122);
	}

	/**
	 * SQLKEY(KK_SELECT_030)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	ファミリーパック契約有無
	 *		 	ネットオプションパック識別コード
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列
	 * @param svcKeiList サービス契約リスト。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SBOP_SVC_KEI_KK_SELECT_030(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		//ANK-4468-09-00 MOD START
		//paramList.setValue(param[3].toString());
		setListForDbParam(paramList, svcKeiList);                //サービス契約番号（複数対応)
		//ANK-4468-09-00 MOD END
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		//v32.00.00 2017/04/10 Add Start
		paramList.setValue(param[8].toString());
		//v32.00.00 2017/04/10 Add End
		//ANK-4468-09-00 ADD START
		paramList.setValue(param[9].toString());
		paramList.setValue(param[10].toString());
		//ANK-4468-09-00 ADD END	

		// DBアクセスを実行します
		db_KK_T_SBOP_SVC_KEI.selectBySqlDefine(paramList, KK_T_SBOP_SVC_KEI_KK_SELECT_030);
	}

	/**
	 * SQLKEY(KK_SELECT_031)で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_SBOP_SVC_KEI_KK_SELECT_031(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		//v32.00.00 2017/04/10 Add Start
		paramList.setValue(param[8].toString());
		//v32.00.00 2017/04/10 Add End

		// DBアクセスを実行します
		db_KK_T_SBOP_SVC_KEI.selectBySqlDefine(paramList, KK_T_SBOP_SVC_KEI_KK_SELECT_031);
	}
	//v25.00.00 2016/04/20 Add End
	//v32.00.02 2017/06/23 Add Start
	
	/**
	 * SQLKEY(KK_SELECT_003)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	割引サービス対象契約適用開始年月日
	 *		 	割引サービス対象契約適用終了年月日
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	申込番号
	 *		 	予約適用年月日
	 *		 	申込番号
	 *		 	予約適用年月日
	 *		 	契約内容通知書番号
	 *		 	契約内容通知対象物適用開始年月日
	 *		 	契約内容通知対象物適用終了年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KNYO_TCH_TG_BUT_KK_SELECT_003(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		paramList.setValue(param[9].toString());
		paramList.setValue(param[10].toString());

		// DBアクセスを実行します
		db_KK_T_KNYO_TCH_TG_BUT.selectBySqlDefine(paramList, KK_T_KNYO_TCH_TG_BUT_KK_SELECT_003);
	}
	//v32.00.02 2017/06/23 Add End
	
	
	/**
	 * 申込番号を元に申込種別コードを取得する
	 * @param inMap 契約内容通知書情報
	 * @return 申込種別コード
	 * @throws Exception
	 */
	private String getMskmSbtCd(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//申込番号
		String mskmNo = inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO);
		
		//申込種別コード
		String mskmSbtCd = "";
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//申込番号が未設定の場合申込種別コードは"00001"新規申込とし呼元に返却する
		if(JKKStringUtil.isNullBlank(mskmNo))
		{
			
			return JKKStrConst.MSKM_SBT_CD_NEW_KEI;
		}
		//申込種別番号が取得できた場合、申込スキーマを検索し、申込種別コードを取得する
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		//バインド変数の設定を行う
		Object[] mskmParam = new Object[]
		                                {
											mskmNo      //申込番号
		                                };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//申込スキーマ検索実行
		this.executeKK_T_MSKM_KK_SELECT_039(mskmParam);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfMskm = db_KK_T_MSKM.selectNext();
		while(dbInfMskm != null)
		{
			mskmSbtCd = dbInfMskm.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
			dbInfMskm = db_KK_T_MSKM.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理
		 *-------------------------------------------------------------------------------------------------*/
		
		//取得結果の返却
		return mskmSbtCd;
		
	}
	
	
	/**
	 * 契約内容通知書番号を用いて契約内容通知対象契約スキーマを検索し
	 * 処理対象となるサービス契約番号と申込明細番号の取得を行い、呼出元に
	 * HashMapをリスト形式で返却する
	 * @param inMap 契約内容通知書情報
	 * @return      サービス契約情報
	 * @throws Exception
	 */
	private ArrayList<HashMap<String, String>> getSvcKeiNo(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//契約内容通知書番号を取得する
		String knytcsNo = inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO);
		
		//サービス契約情報マップリストを生成する
		ArrayList<HashMap<String, String>> svcMapList = new ArrayList<HashMap<String, String>>();
		
		//v24.00.00 2016/03/18 Add Start
		//サービスコードリストを生成する
		ArrayList<String> svcCdList = new ArrayList<String>();
		//v24.00.00 2016/03/18 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		//バインド変数の設定を行う
		Object[] knyoTchTgButParam = new Object[]
		                                        {
													//v25.00.00 2016/04/20 Add Start
													super.opeDate,                    //割引サービス対象契約適用開始年月日
													super.opeDate,                    //割引サービス対象契約適用終了年月日
													super.opeDate,                    //予約適用年月日
													//v25.00.00 2016/04/20 Add End
													//v32.00.00 2017/04/10 Add Start
													super.opeDate,                    //割引サービス対象契約適用開始年月日
													super.opeDate,                    //割引サービス対象契約適用終了年月日
													super.opeDate,                    //予約適用年月日
													super.opeDate,                    //割引サービス対象契約適用開始年月日
													super.opeDate,                    //割引サービス対象契約適用終了年月日
													super.opeDate,                    //予約適用年月日
													//v32.00.00 2017/04/10 Add End
													//v24.00.00 2016/03/18 Add Start
													super.opeDate,                    //予約適用年月日
													//v24.00.00 2016/03/18 Add End
													// ANK-4457-00-00 ADD START
													super.opeDate,                    //予約適用年月日
													super.opeDate,                    //予約適用年月日
													// ANK-4457-00-00 ADD END
													knytcsNo,                          //申込番号
													super.opeDate,                    //契約内容通知対象物適用開始年月日
													super.opeDate                     //契約内容通知対象物適用終了年月日
		                                        };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知対象契約検索実行
		this.executeKK_T_KNYO_TCH_TG_BUT_KK_SELECT_002(knyoTchTgButParam);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKnyoTchTgBut = db_KK_T_KNYO_TCH_TG_BUT.selectNext();
		
		while(dbInfKnyoTchTgBut != null)
		{
			
			//サービス契約情報マップを生成する
			HashMap<String, String> svcMap = new HashMap<String, String>();
			
			//サービス契約マップに取得したレコードを件数分設定する
			svcMap.put(JBSbatKK_T_KNYO_TCH_TG_BUT.SVC_KEI_NO, dbInfKnyoTchTgBut.getString(JBSbatKK_T_KNYO_TCH_TG_BUT.SVC_KEI_NO));           //サービス契約番号
			svcMap.put(JBSbatKK_T_KNYO_TCH_TG_BUT.MSKMSHO_DTL_NO, dbInfKnyoTchTgBut.getString(JBSbatKK_T_KNYO_TCH_TG_BUT.MSKMSHO_DTL_NO));   //申込明細番号
			//v24.00.00 2016/03/18 Add Start
			svcMap.put(JBSbatKK_T_SVC_KEI.SVC_CD, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.SVC_CD));                                   //サービスコード
			svcMap.put(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT));                       //サービス契約ステータス
			svcMap.put(JBSbatKK_T_SVC_KEI.PRC_GRP_CD, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.PRC_GRP_CD));                           //料金グループコード
			svcMap.put(JBSbatKK_T_SVC_KEI.PCRS_CD, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.PCRS_CD));                                 //料金コースコード
// v27.00.00 ADD START
			svcMap.put(JBSbatKK_T_SVC_KEI.PPLAN_CD, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.PPLAN_CD));                               //料金プランコード
// v27.00.00 ADD END

			//v25.00.00 2016/04/20 Add Start
			svcMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.FAMIPA_KEI_UM, dbInfKnyoTchTgBut.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.FAMIPA_KEI_UM));     //ファミリーパック契約有無
			//v25.00.00 2016/04/20 Add End
			
			//v32.00.00 2017/04/10 Add Start
			svcMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.NET_OP_PACK_SKCD, dbInfKnyoTchTgBut.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.NET_OP_PACK_SKCD));     //ネットオプションパック識別コード
			//v32.00.00 2017/04/10 Add End
			
			//サービスコードリストに取得したレコードを設定する。
			svcCdList.add(dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.SVC_CD));
			//v24.00.00 2016/03/18 Add End

			//サービス契約マップリストに取得結果を格納する
			svcMapList.add(svcMap);

			//次レコードを読込む
			dbInfKnyoTchTgBut = db_KK_T_KNYO_TCH_TG_BUT.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理
		 *-------------------------------------------------------------------------------------------------*/
		
		//v24.00.00 2016/03/18 Add Start
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定リスト作成処理
		 *-------------------------------------------------------------------------------------------------*/
//		v24.00.08 2016/05/10 Mod Start
//		getOutPutTgList(svcCdList);
		getOutPutTgList(svcCdList, svcMapList);
//		v24.00.08 2016/05/10 Mod End
		//v24.00.00 2016/03/18 Add End

		/**------------------------------------------------------------------------------------------------  
		 * 返却処理
		 *-------------------------------------------------------------------------------------------------*/
		
		//取得結果の返却
		return svcMapList;
		
	}
	

	

	/**
	 * サービス契約番号を元にサービス契約内訳を検索し
	 * テレビ表示位置番号の採番及びテレビ契約情報の出力を行う
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcInfoMap  サービス契約マップリスト
 	 * @param prcGrpList 
	 * @return テレビ表示位置番号マップ
	 * @throws Exception
	 */
//v24.00.00 2016/03/18 Mod Start
//	private HashMap<String, String> getTvDspNo(JBSbatServiceInterfaceMap inMap, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	private HashMap<String, String> getTvDspNo(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> svcInfoMap, ArrayList<HashMap<String, String>> svcMapList) throws Exception
//v24.00.00 2016/03/18 Mod End
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/

//v24.00.00 2016/03/18 Del Start
//		//変更前SQL
//		String sqlBefore =  db_KK_T_SVC_KEI_UCWK.getSql(KK_T_SVC_KEI_UCWK_KK_SELECT_126);
//		
//		//変更後SQL
//		String sqlAfter =   "";
//		
//		//サービス契約リスト
//		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_NO);
//v24.00.00 2016/03/18 Del End
//v24.00.00 2016/03/18 Add Start
		//テレビのサービス契約番号の取得
		String tvSvcKeiNo = svcInfoMap.get(JKKStrConst.CD00130_03);
//v24.00.00 2016/03/18 Add End
		
		//テレビ表示位置番号マップ
		HashMap<String, String> tvDspMap = new HashMap<String, String>();
		
		//v24.00.00 2016/03/18 Add Start
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		//料金グループコード
		String prcGrpCd = getTvInfMap(svcMapList).get(JBSbatKK_T_SVC_KEI.PRC_GRP_CD);
		
		//v24.00.00 2016/03/18 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集
		 *-------------------------------------------------------------------------------------------------*/ 
//v24.00.00 2016/03/18 Del Start
//		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
//		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
//		
//		//編集したSQLを設定する
//		db_KK_T_SVC_KEI_UCWK.setSqlMap(KK_T_SVC_KEI_UCWK_KK_SELECT_126, sqlAfter);
//v24.00.00 2016/03/18 Del End
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKeiUcwk = new Object[]
		                                 {
											// OM-2019-0000193 ADD START
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											// OM-2019-0000193 ADD END
											//v24.00.00 2016/03/18 Mod Start
//											super.opeDate,      //予約適用年月日
//											"",                  //サービス契約番号 後で置換え
//											super.opeDate       //予約適用年月日
											//v24.00.12 2016/05/28 Add Start
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											//v24.00.12 2016/05/28 Add End
											//v36.00.00 ANK-3296-00-00 Add Start
											inMap.getString(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO), //契約内容通知書回線内訳番号
											super.opeDate,      //割賦プラン適用開始年月日
											super.opeDate,      //割賦プラン適用終了年月日
											super.opeDate,      //予約適用年月日
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											inMap.getString(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO), //契約内容通知書回線内訳番号
											super.opeDate,      //割賦プラン適用開始年月日
											super.opeDate,      //割賦プラン適用終了年月日
											super.opeDate,      //予約適用年月日
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											//v36.00.00 ANK-3296-00-00 Add End
											super.opeDate,      //予約適用年月日
											tvSvcKeiNo,          //サービス契約番号
											super.opeDate,      //予約適用年月日
											super.opeDate,      //料金プラン固定単価適用開始年月日
											super.opeDate,      //料金プラン固定単価適用終了年月日
											super.opeDate,      //予約適用年月日
											prcGrpCd,            //料金グループコード
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
											//v24.00.00 2016/03/18 Mod End
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約内訳スキーマ検索実行
		//v24.00.00 2016/03/18 Mod Start
//		this.executeKK_T_SVC_KEI_UCWK_KK_SELECT_126(svcKeiUcwk, svcKeiList);
		this.executeKK_T_SVC_KEI_UCWK_KK_SELECT_126(svcKeiUcwk);
		//v24.00.00 2016/03/18 Mod End

//v24.00.00 2016/03/18 Del Start
		//編集したSQLを元に戻す
//		db_KK_T_SVC_KEI_UCWK.setSqlMap(KK_T_SVC_KEI_UCWK_KK_SELECT_126, sqlBefore);
//v24.00.00 2016/03/18 Del End

		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfSvcKeiUcwk = db_KK_T_SVC_KEI_UCWK.selectNext();
		//v24.00.00 2016/03/18 Del Start
//		while(dbInfSvcKeiUcwk != null)
//		{
//			//テレビ表示位置番号マップにサービス契約内訳番号,テレビ表示位置番号で格納する
//			tvDspMap.put(dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO), dbInfSvcKeiUcwk.getString("TV_DSP_NO"));
//			dbInfSvcKeiUcwk = db_KK_T_SVC_KEI_UCWK.selectNext();
//		}
		//v24.00.00 2016/03/18 Del End
		//v24.00.00 2016/03/18 Add Start
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfSvcKeiUcwk != null)
		{
			//テレビ表示位置番号マップにサービス契約内訳番号,テレビ表示位置番号で格納する
			tvDspMap.put(dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO), dbInfSvcKeiUcwk.getString(JBSbatKKIFM689.TV_DSP_NO));
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                               //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));   //契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));         //表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				dbInfSvcKeiUcwk.getString(JBSbatKKIFM689.TV_DSP_NO));                        //テレビ表示位置番号
// v27.00.03 DEL START
//// v27.00.00 ADD START
//			outmap.setString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD,	dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_PAUSE_YMD));           //休止年月日
//			outmap.setString(JBSbatKKIFM689.SVC_PAUSE_RLS_YMD,		dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_PAUSE_RLS_YMD));       //休止解除年月日
//// v27.00.00 ADD END
// v27.00.03 DEL END
			
// v27.00.03 ADD START
			// 異動予約から休止日・休止解除日を取得する
			String pauseDate[] = getPauseCpStaymdAndRlsYmdForIdoRsv(tvSvcKeiNo);
			String svcKeiPauseYmd = dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_PAUSE_YMD);
			
//v29.00.07 Del Start
//			if(!JKKStringUtil.isNullBlank(svcKeiPauseYmd))
//			{
//				// サービス契約内訳の休止解除日を設定
//				outmap.setString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD, svcKeiPauseYmd);
//			}
//			else
//			{
//				// サービス契約内訳の休止解除日が未設定のため、異動予約から取得した休止日を設定する
//				outmap.setString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD, pauseDate[0]);
//			}
//			// 異動予約から取得した休止解除日を取得する
//			outmap.setString(JBSbatKKIFM689.SVC_PAUSE_RLS_YMD, pauseDate[1]);
//v29.00.07 Del End
//v29.00.07 Add Start
			// 異動予約から休止開始日が取得できた場合は、異動予約から取得した休止開始日を設定
			if(!JKKStringUtil.isNullBlank(pauseDate[0]))
			{
				// 異動予約の休止年月日を設定
				outmap.setString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD, pauseDate[0]);
			}
			else
			{
				// 異動予約から休止開始日が取得できない場合は、サービス契約内訳の休止解除日を設定
				outmap.setString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD, svcKeiPauseYmd);
			}
			// 異動予約から取得した休止解除日を取得する
			outmap.setString(JBSbatKKIFM689.SVC_PAUSE_RLS_YMD, pauseDate[1]);
//v29.00.07 Add End
// v27.00.03 ADD END
			
			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("サービス契約内訳_126(テレビ主従)："+dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
				
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD), "サービス契約内訳関連情報取得（テレビ関連情報取得）");
			}
			
			//次レコードの読み取り
			dbInfSvcKeiUcwk = db_KK_T_SVC_KEI_UCWK.selectNext();
		}
//v24.00.00 2016/03/18 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理
		 *-------------------------------------------------------------------------------------------------*/
		
		//取得結果の返却
		return tvDspMap;
		
	}
	
	
	
	/**
	 * 申込種別コードをキーに契約内容通知書表示文言を検索し
	 * 取得した情報を契約内容通知対象契約ファイルに出力する
	 * @param inMap      契約内容通知書情報
	 * @param outputBean 出力情報
	 * @throws Exception
	 */
	private void outPutCommonInfo(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		//v24.00.00 2016/03/18 Add Start
		super.logPrint.printDebugLog("■■■■■■■■■■処理開始■■■■■■■■■■");
		super.logPrint.printDebugLog("契約内容通知書番号：" + inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));
		//v24.00.00 2016/03/18 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] knytcsDspMngn = new Object[]
		                                 {
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知書表示文言スキーマ検索実行
		this.executeKK_M_KNYTCS_DSP_MNGN_KK_SELECT_001(knytcsDspMngn);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKnytcsDspMngn = db_KK_M_KNYTCS_DSP_MNGN.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfKnytcsDspMngn != null)
		{
			
			//v23.00.03 2015/02/14 Add Start
			//文言表示条件識別コードに値が設定されている場合、文言共通情報リストにデータを格納しスキップする
			if(!isMngnDspJknCd(dbInfKnytcsDspMngn.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				
				////文言共通情報リストに該当のレコードを退避する
				mngnInfoMap.add(dbInfKnytcsDspMngn);
				
				//次レコードの読み取り
				dbInfKnytcsDspMngn = db_KK_M_KNYTCS_DSP_MNGN.selectNext();
				
				continue;
			}
			//v23.00.03 2015/02/14 Add End
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                                //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KEI_SEIRT_YMD,			inMap.getString(JBSbatKK_T_KNYTCS.KEI_SEIRT_YMD));                            //契約成立年月日
			outmap.setString(JBSbatKKIFM689.SVC_KEI_KAISEN_UCWK_NO,	inMap.getString(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO));      //サービス契約回線内訳番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfKnytcsDspMngn.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD)); //契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfKnytcsDspMngn.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));       //表示位置識別コード
			//v23.00.01 2015/2/4 Add Start
			outmap.setString(JBSbatKKIFM689.SYSID,					inMap.getString(JBSbatKK_T_KNYTCS.SYSID));                                    //SYSID
			//v23.00.01 2015/2/4 Add End
			
			
//v24.00.00 2016/03/18 Mod Start
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);

			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(dbInfKnytcsDspMngn.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("契約内容通知書表示文言_001："+ dbInfKnytcsDspMngn.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
				
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfKnytcsDspMngn.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfKnytcsDspMngn.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD), "共通情報取得処理");
			}
//v24.00.00 2016/03/18 Mod End
			
			//次レコードの読み取り
			dbInfKnytcsDspMngn = db_KK_M_KNYTCS_DSP_MNGN.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	
	/**
	 * サービス契約番号を元にサービス契約関連情報を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * また、取得したサービス契約番号のリストを呼び出し元に返却する。
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @param svcInfoMap 
	 * @throws Exception
	 */
//v24.00.00 2016/03/18 Mod Start
//	private void outSvcKnrnInfo(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	private void outSvcKnrnInfo(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> svcInfoMap) throws Exception
//v24.00.00 2016/03/18 Mod End
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_SVC_KEI.getSql(KK_T_SVC_KEI_KK_SELECT_325);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		//申込明細マップ
		HashMap<String, String> mskmDtlMap = getMskmDtlNoMap(svcMapList);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_SVC_KEI.setSqlMap(KK_T_SVC_KEI_KK_SELECT_325, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKei	= new Object[]
		                                 {
											super.opeDate,      //割引サービス対象契約適用開始年月日
											super.opeDate,      //割引サービス対象契約適用終了年月日
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
											super.opeDate,      //割引サービス対象契約適用開始年月日
											super.opeDate,      //割引サービス対象契約適用終了年月日
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
											super.opeDate,      //割引サービス対象契約適用開始年月日
											super.opeDate,      //割引サービス対象契約適用終了年月日
											super.opeDate,      //予約適用年月日
		                                 	// ANK-4427-00-00 ADD START
											super.opeDate,      //予約適用年月日
											// ANK-4427-00-00 ADD END
											//v24.00.11 2016/05/25 Add Start
											mskmSbtCd,          //申込種別コード
											//v36.00.00 ANK-3296-00-00 Add Start
											//v24.00.13 2016/06/01 Add Start
											inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), //契約内容通知書番号
											mskmSbtCd,                                     //申込種別コード
		                                 	//v24.00.13 2016/06/01 Add End
											// OM-2019-0000193 ADD START
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											// OM-2019-0000193 ADD END
//v24.00.00 2016/03/18 Mod Start
//										 	super.opeDate,      //予約適用年月日
//											super.opeDate,      //予約適用年月日
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
//v24.00.00 2016/03/18 Mod End
											//v36.00.00 ANK-3296-00-00 Add Start
											inMap.getString(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO), //契約内容通知書回線内訳番号
											super.opeDate,      //割賦プラン適用開始年月日
											super.opeDate,      //割賦プラン適用終了年月日
											super.opeDate,      //予約適用年月日
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											inMap.getString(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO), //契約内容通知書回線内訳番号
											super.opeDate,      //割賦プラン適用開始年月日
											super.opeDate,      //割賦プラン適用終了年月日
											super.opeDate,      //予約適用年月日
											// 53.00.01 ANK-3951-00-00 ADD START
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											inMap.getString(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO), //契約内容通知書回線内訳番号
											super.opeDate,      //割賦プラン適用開始年月日
											super.opeDate,      //割賦プラン適用終了年月日
											super.opeDate,      //予約適用年月日
											// 53.00.01 ANK-3951-00-00 ADD END
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											//v36.00.00 ANK-3296-00-00 Add End
											//ANK-4468-16-00 ADD START
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											//ANK-4468-16-00 ADD END
											//v24.00.13 2016/06/01 Add Start
											mskmSbtCd,                                     //申込種別コード
											// ANK-4315-00-00 ADD START
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											mskmSbtCd,                                     //申込種別コード
											// ANK-4315-00-00 ADD END
											// ANK-4315-15-00 ADD START
											super.opeDate,      //サービス契約_工事案件適用開始年月日
											super.opeDate,      //サービス契約_工事案件適用終了年月日
											mskmSbtCd,                                     //申込種別コード
											// ANK-4315-15-00 ADD END
											//v24.00.13 2016/06/01 Add End
		                                 	"",                 //サービス契約番号
											super.opeDate,      //予約適用年月日
											// ANK-4427-00-00 ADD START
											super.opeDate,      //予約適用年月日
											// ANK-4427-00-00 ADD END
											mskmSbtCd,          //申込種別コード
											//v36.00.00 ANK-3296-00-00 Add Start
											this.clauseCngKjnYmd,      //約款適用開始年月日
											this.clauseCngKjnYmd,      //約款適用終了年月日
											//v36.00.00 ANK-3296-00-00 Add End
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate,      //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_SVC_KEI_KK_SELECT_325(svcKei, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_SVC_KEI.setSqlMap(KK_T_SVC_KEI_KK_SELECT_325, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfSvcKei = db_KK_T_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfSvcKei != null)
		{
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                          //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.MSKMSHO_DTL_NO,			mskmDtlMap.get(dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_NO)));  //申込明細番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));  //契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));        //表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TK_HOSHIKI_KEI_NO,		dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.TK_HOSHIKI_KEI_NO));           //提供方式契約番号
			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				dbInfSvcKei.getString(JBSbatKKIFM689.TV_DSP_NO));                       //テレビ表示位置番号
			//v24.00.00 2016/03/18 Add Start 
			outmap.setString(JBSbatKKIFM689.SVC_KEI_NO,				dbInfSvcKei.getString(JBSbatKKIFM689.SVC_KEI_NO));                      //サービス契約番号
			//v24.00.00 2016/03/18 Add End
			//v24.00.10 2016/05/23 Add Start 
			outmap.setString(JBSbatKKIFM689.PPLAN_CD,				dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.PPLAN_CD));                    //料金プランコード
			//v24.00.10 2016/05/23 Add End
			//v27.00.00 2016/08/17 Add Start
			outmap.setString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD,	dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.SVC_PAUSE_YMD));               //サービス休止年月日
// v27.00.03 DEL START
//			outmap.setString(JBSbatKKIFM689.SVC_PAUSE_RLS_YMD,		dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.SVC_PAUSE_RLS_YMD));           //サービス休止解除年月日
// v27.00.03 DEL END
			//v27.00.00 2016/08/17 Add End

			
//v24.00.00 2016/03/18 Mod Start
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);

			//v24.00.08 2016/05/10 Del Start
//			//出力処理
//			outSvcKnrnInfoJdg(inMap, outmap, outputBean, svcInfoMap, svcMapList, dbInfSvcKei);
			//v24.00.08 2016/05/10 Del End
//v24.00.00 2016/03/18 Mod End

//v24.00.08 2016/05/10 Add Start
			//出力対象の表示位置識別番号と一致した場合出力処理を呼び出す
			if(isOutPutTgDspPstSkcd(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
// v27.00.03 ADD START
				// 異動予約スキーマから休止費・休止解除日を取得する（配列[0]:休止日 [1]:休止解除日）
				String[] pauseDate = getPauseCpStaymdAndRlsYmdForIdoRsv(outmap.getString(JBSbatKKIFM689.SVC_KEI_NO));
				// 出力ファイルのサービス休止解除年月日に異動予約から取得した休止解除日を設定
				outmap.setString(JBSbatKKIFM689.SVC_PAUSE_RLS_YMD, pauseDate[1]);
//v29.00.06 Del Start
//				// 出力ファイルのサービス休止年月日が未設定なら、異動予約から取得した休止日を設定
//				if(JKKStringUtil.isNullBlank(outmap.getString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD)))
//				{
//					outmap.setString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD, pauseDate[0]);
//				}
//v29.00.06 Del End
//v29.00.06 Add Start
				// 異動予約から休止開始日が取得できた場合は、異動予約から取得した休止開始日を設定
				if(!JKKStringUtil.isNullBlank(pauseDate[0]))
				{
					outmap.setString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD, pauseDate[0]);
				}
//v29.00.06 Add End
// v27.00.03 ADD END
				//出力処理を呼出
				// ANK-4427-00-00 MOD START
//				outSvcKnrnInfoJdg(inMap, outmap, outputBean, svcInfoMap, svcMapList, dbInfSvcKei);
				outSvcKnrnInfoJdg(inMap, outmap, outputBean, svcInfoMap, svcMapList, dbInfSvcKei,false);
				// ANK-4427-00-00 MOD END
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"サービス契約関連情報");
			}
//v24.00.08 2016/05/10 Add End
			
			//次レコードの読み取り
			dbInfSvcKei = db_KK_T_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * サービス契約番号を元にサービス契約内訳関連情報を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @param tvDspMap    テレビ表示位置マップ
	 * @throws Exception
	 */
	private void outSvcKeiUcwk(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> tvDspMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_SVC_KEI_UCWK.getSql(KK_T_SVC_KEI_UCWK_KK_SELECT_125);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_NO);
		
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_SVC_KEI_UCWK.setSqlMap(KK_T_SVC_KEI_UCWK_KK_SELECT_125, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKeiUcwk					 = new Object[]
		                   					              {
															"",                  //サービス契約番号
															super.opeDate,      //予約適用年月日
															//v24.00.00 2016/03/18 Del Start
//															super.opeDate,      //予約適用年月日
															//v24.00.00 2016/03/18 Del Start
															// v27.00.03 DEL START
//															// v27.00.00 ADD START
//															super.opeDate,      //予約適用年月日
//															super.opeDate,      //予約適用年月日
//															// v27.00.00 ADD END
															// v27.00.03 DEL END
															mskmSbtCd,           //申込種別コード
															super.opeDate,      //契約内容通知書表示文言適用開始年月日
															super.opeDate,      //契約内容通知書表示文言適用終了年月日
															super.opeDate       //予約適用年月日
		                   					              };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約内訳スキーマ検索実行
		this.executeKK_T_SVC_KEI_UCWK_KK_SELECT_125(svcKeiUcwk, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_SVC_KEI_UCWK.setSqlMap(KK_T_SVC_KEI_UCWK_KK_SELECT_125, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfSvcKeiUcwk = db_KK_T_SVC_KEI_UCWK.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfSvcKeiUcwk != null)
		{
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO,					dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO));             //電話番号
			outmap.setString(JBSbatKKIFM689.BMP_UM,					dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.BMP_UM));            //番ポ有無
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));         //電話番号順番
			//v23.00.01 2015/2/4 Mod Start
			//outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO)); //テレビ表示位置番号   
			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))); //テレビ表示位置番号                                                                //テレビ表示位置番号
			//v23.00.01 2015/2/4 Mod End
			
//v24.00.00 2016/03/18 Mod Start
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);

			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
// v27.00.00 ADD START
// v27.00.04 MOD START（文言表示条件識別コードが"021","022"時の処理を外出し）
//				String pplanCd        = null;
				String banpoDiv       = dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.BMP_UM);
				String svcKeiUcwkStat = dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_STAT);
				String ksiteiCd = dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD);
				
				// サービス契約を格納したリストから電話サービスの料金プランコードを取得する
				if(MNGN_DSP_JKN_KSITEI_CD_021.equals(ksiteiCd) || MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
				{
//
//					for(HashMap<String, String> svcMap : svcMapList)
//					{
//						String svcCd   = svcMap.get(JBSbatKK_T_SVC_KEI.SVC_CD);
//						if(JKKStrConst.CD00130_02.equals(svcCd))
//						{
//							pplanCd = svcMap.get(JBSbatKK_T_SVC_KEI.PPLAN_CD);
//						}
//					}
//					
//					boolean outputFlg = false;
//					if(Arrays.asList(PPLAN_CD_TELHT_AND_TELMZ).contains(pplanCd))
//					{
//						// ホーム／メゾンの場合
//						if(JKKStrConst.CD00002_UMU_1.equals(banpoDiv))
//						{
//							// 居住形態：ホーム／メゾン  番ポ：有
//							if(MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
//							{
//								outputFlg = true;
//							}
//						}
//						else if(JKKStrConst.CD01616_STAT_SHOSAZUMI.equals(svcKeiUcwkStat) || JKKStrConst.CD01616_STAT_TEIKETSUZUMI.equals(svcKeiUcwkStat))
//						{
//							// 番ポ：無、サービス契約内訳ステータス：照査済／締結済
//							if(MNGN_DSP_JKN_KSITEI_CD_021.equals(ksiteiCd))
//							{
//								outputFlg = true;
//							}
//						}
//						else
//						{
//							// 番ポ：無、サービス契約内訳ステータス：サービス提供中／休止・中断中／停止中
//							if(MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
//							{
//								outputFlg = true;
//							}
//						}
//					}
//					else
//					{
//						// マンションの場合
//						if(MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
//						{
//							outputFlg = true;
//						}
//					}
//					if(outputFlg)
					if(isOutputMngnDspJknKsiteiCd_021or022(svcMapList, banpoDiv, ksiteiCd, svcKeiUcwkStat))
					{
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("サービス契約内訳_129："+ dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
				}
				else
				{
// v27.00.00 ADD END
				
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("サービス契約内訳_125："+ dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
				
// v27.00.00 ADD START
				}
// v27.00.00 ADD END
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"サービス契約内訳関連情報");
			}
//v24.00.00 2016/03/18 Mod End
			
			//次レコードの読み取り
			dbInfSvcKeiUcwk = db_KK_T_SVC_KEI_UCWK.selectNext();
		}
		
// v27.00.04 ADD START
		//-------------------------------------------------------------
		// 変更前電話情報を取得する
		//   UI書 サービス契約内訳情報取得の(3)-(B)のデータ取得処理
		//   上記SQL(KK_SELECT_125) ⇒ サービス契約内訳と異動予約を結合し異動予約に該当しないレコードを取得する
		//   下記SQL(KK_SELECT_132) ⇒ サービス契約内訳と異動予約を結合し、サービス契約内訳を結合し、継続後契約変更手続中フラグが"1"のレコードを取得する
		//-------------------------------------------------------------
		// 変更前SQL
		String sqlBefore2 =  db_KK_T_SVC_KEI_UCWK.getSql(KK_T_SVC_KEI_UCWK_KK_SELECT_132);
		
		// 変更後SQL
		String sqlAfter2  =   "";
		
		// SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter2 = getEditSQL(svcKeiList, sqlBefore2, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		// 編集したSQLを設定する
		db_KK_T_SVC_KEI_UCWK.setSqlMap(KK_T_SVC_KEI_UCWK_KK_SELECT_132, sqlAfter2);
		
		// バインド変数を設定
		Object[] svcKeiUcwk2 = new Object[]
		{
				"",
				super.opeDate,
				super.opeDate,
				mskmSbtCd,
				super.opeDate,
				super.opeDate,
				super.opeDate
		};
		// サービス契約内訳スキーマ検索実行
		this.executeKK_T_SVC_KEI_UCWK_KK_SELECT_132(svcKeiUcwk2, svcKeiList);
		
		// 編集したSQLを元に戻す
		db_KK_T_SVC_KEI_UCWK.setSqlMap(KK_T_SVC_KEI_UCWK_KK_SELECT_132, sqlBefore2);
		
		// 検索結果の取得
		JBSbatCommonDBInterface dbInfSvcKeiUcwk2 = db_KK_T_SVC_KEI_UCWK.selectNext();
		
		while(dbInfSvcKeiUcwk2 != null)
		{
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));										//契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfSvcKeiUcwk2.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));			//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSvcKeiUcwk2.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));				//表示位置識別コード
			outmap.setString(JBSbatKKIFM689.BMP_UM,					dbInfSvcKeiUcwk2.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.BMP_UM));						//番ポ有無
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbInfSvcKeiUcwk2.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));					//電話番号順番
			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbInfSvcKeiUcwk2.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO)));	//テレビ表示位置番号
			
			// サービス契約内訳ステータスにより設定する電話番号を変える
			String ucwkStat = dbInfSvcKeiUcwk2.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_STAT);
			if(JKKStrConst.CD00037_UK_ZM.equals(ucwkStat) || JKKStrConst.CD00037_SHOSA_ZUMI.equals(ucwkStat) ||
				JKKStrConst.CD00037_CNC_ZM.equals(ucwkStat) || JKKStrConst.CD00037_CANCEL_ZM.equals(ucwkStat))
			{
				// サービス提供中未満のため、変更後電話番号を設定
				outmap.setString(JBSbatKKIFM689.TELNO,				dbInfSvcKeiUcwk2.getString("AF_TEL_NO"));
			}
			else
			{
				// サービス提供中以降のため、変更前電話番号を設定
				outmap.setString(JBSbatKKIFM689.TELNO,				dbInfSvcKeiUcwk2.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO));
			}
			
			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(dbInfSvcKeiUcwk2.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				String banpoDiv       = dbInfSvcKeiUcwk2.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.BMP_UM);
				String ksiteiCd       = dbInfSvcKeiUcwk2.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD);
				
				// サービス契約を格納したリストから電話サービスの料金プランコードを取得する
				if(MNGN_DSP_JKN_KSITEI_CD_021.equals(ksiteiCd) || MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
				{
					if(isOutputMngnDspJknKsiteiCd_021or022(svcMapList, banpoDiv, ksiteiCd, ucwkStat))
					{
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("サービス契約内訳_132："+ dbInfSvcKeiUcwk2.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
				}
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfSvcKeiUcwk2.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfSvcKeiUcwk2.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"サービス契約内訳関連情報");
			}
			dbInfSvcKeiUcwk2 = db_KK_T_SVC_KEI_UCWK.selectNext();
		}
//v27.00.04 ADD END

		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * サービス契約番号を元にオプションサービス契約を検索し
	 * 取得結果を契約内容通知書ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
	private void outPutOpSvcKei(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//v25.00.00 2016/04/20 Add Start
		//検索結果リストの初期化を行う
		ArrayList<HashMap<String, String>> serchResultList_OpSvcKei = new ArrayList<HashMap<String, String>>();
		
		//サービス契約回線内訳番号
		String svcKeiKaisenUcwkNo = inMap.getString(JBSbatKKIFM689.SVC_KEI_KAISEN_UCWK_NO);
		//v25.00.00 2016/04/20 Add End
		
		//変更前SQL
		String sqlBefore =  db_KK_T_OP_SVC_KEI.getSql(KK_T_OP_SVC_KEI_KK_SELECT_119);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_OP_SVC_KEI.setSqlMap(KK_T_OP_SVC_KEI_KK_SELECT_119, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] opSvcKei	 = new Object[]
		                 	              {
											"",                  //サービス契約番号
											super.opeDate,      //予約適用年月日
//v25.00.00 2016/04/20 Add Start
											super.opeDate,      //割引サービス対象契約適用開始年月日
											super.opeDate,      //割引サービス対象契約適用終了年月日
											super.opeDate,      //予約適用年月日
//v25.00.00 2016/04/20 Add End
											"",                  //サービス契約番号
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
// ANK-4468-00-00 ADD START
											"",                  //サービス契約番号
// ANK-4468-09-00 DEL START
//											super.opeDate,      //予約適用年月日
// ANK-4468-09-00 DEL END											
											super.opeDate,      //予約適用年月日
// ANK-4468-00-00 ADD END
//ANK-4577-00-01 ADD START
												"",                  //サービス契約番号
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
// ANK-4577-00-01 ADD END										 
//v32.00.01 2017/05/17 Add Start
		                 	              	netOpPackSkbtCd,	//ネットオプションパック識別コード
//v32.00.01 2017/05/17 Add End
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//オプションサービス契約スキーマ検索実行
		this.executeKK_T_OP_SVC_KEI_KK_SELECT_119(opSvcKei, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_OP_SVC_KEI.setSqlMap(KK_T_OP_SVC_KEI_KK_SELECT_119, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfOpSvcKei = db_KK_T_OP_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfOpSvcKei != null)
		{
			//v25.00.00 2016/04/20 Mod Start
//			//ファイル出力用インスタンスの作成
//			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
//			
//			//出力ファイル設定
//			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
//			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
//			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
//			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbInfOpSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));         //電話番号順番
////v24.00.00 2016/03/18 Mod Start
////			outmap.setOutFlg(true);
////			
////			//出力ファイルリストに設定
////			outputBean.addOutMapList(outmap);
//
//			//出力対象の表示位置識別番号と一致した場合出力とする
//			if(isOutPutTgDspPstSkcd(dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
//			{
//				//
//				
//				
//				outmap.setOutFlg(true);
//				super.logPrint.printDebugLog("オプションサービス契約_119："+ dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//				
//				//出力ファイルリストに設定
//				outputBean.addOutMapList(outmap);
//				
//			}
//			else
//			{
//				//出力対象外判定したレコード情報をログに出力する
//				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//						dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//						dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)
//						,"オプションサービス契約関連情報");
//			}
////v24.00.00 2016/03/18 Mod End
			
			// ANK-4427-11-00 ADD START
			// 標準工事費指定コードが"09"(ＴｙｐｅＮ)のレコード
			if(STDARD_KOJIHI_STI_CD_09.equals(dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.STDARD_KOJIHI_STI_CD)))
			{
				// 標準工事費文言出力判定("09"(ＴｙｐｅＮ))
				if(!jdgTypenStdardKojihi(dbInfOpSvcKei))
				{
					//次レコードの読み取り
					dbInfOpSvcKei = db_KK_T_OP_SVC_KEI.selectNext();
					// 標準工事費指定コードが"09"(ＴｙｐｅＮ)のレコードが出力対象でない場合、次のレコードへ
					continue;
				}
			}
			// ANK-4427-11-00 ADD END
			
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));								//契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));			//表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfOpSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));				//電話番号順番
			resultMap.put(JBSbatKKIFM689.KEI_CNT,				dbInfOpSvcKei.getString(JBSbatKKIFM689.KEI_CNT));							//マルチセッション用セッション数・ケーブルガイド申込数
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));	//文言表示条件個別指定コード
			// ANK-4427-00-00 ADD START
			resultMap.put(JBSbatKKIFM689.BMP_UM,				dbInfOpSvcKei.getString(JBSbatKKIFM689.BMP_UM));             				//番ポ有無
			resultMap.put(JBSbatKKIFM689.TELNO,					dbInfOpSvcKei.getString(JBSbatKK_T_OPSVKEI_ISP.TYPEN_TELNO));               //typeN電話番号
			// ANK-4427-00-00 ADD END

			//検索結果を格納
			serchResultList_OpSvcKei.add(resultMap);
			//v25.00.00 2016/04/20 Mod End
			//次レコードの読み取り
			dbInfOpSvcKei = db_KK_T_OP_SVC_KEI.selectNext();
		}
		
		//v25.00.00 2016/04/20 Add Start
		// Ｅメールの抽出
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//変更前SQL
		sqlBefore =  db_KK_T_OP_SVC_KEI.getSql(KK_T_OP_SVC_KEI_KK_SELECT_121);
		
		//変更後SQL
		sqlAfter =   "";
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_OP_SVC_KEI.setSqlMap(KK_T_OP_SVC_KEI_KK_SELECT_121, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] opSvcKei_Email	 = new Object[]
		                 	              {
											pcrsCd,				//料金コースコード
											super.opeDate,		//予約適用年月日
											"",					//サービス契約番号
											super.opeDate,		//予約適用年月日
											// ANK-4468-00-00 ADD START
											// ANK-4468-00-01 DEL START
//											pcrsCd,				//料金コースコード
//											super.opeDate,      //予約適用年月日
											// ANK-4468-00-01 DEL END
											"",                  //サービス契約番号
											//ANK-4468-09-00  DEL START
											//super.opeDate,      //予約適用年月日
											//ANK-4468-09-00  DEL END
											super.opeDate,      //予約適用年月日
											// ANK-4468-00-00 ADD END
											famipaKeiUm,		//ファミリーパック契約有無
											//v32.00.00 2017/04/10 Add Start
											netOpPackSkbtCd,	//ネットオプションパック識別コード
											//v32.00.00 2017/04/10 Add End
											mskmSbtCd,			//申込種別コード
											super.opeDate,		//契約内容通知書表示文言適用開始年月日
											super.opeDate,		//契約内容通知書表示文言適用終了年月日
											super.opeDate		//予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		//オプションサービス契約スキーマ検索実行
		this.executeKK_T_OP_SVC_KEI_KK_SELECT_121(opSvcKei_Email, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_OP_SVC_KEI.setSqlMap(KK_T_OP_SVC_KEI_KK_SELECT_121, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbInfOpSvcKei_Email = db_KK_T_OP_SVC_KEI.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果がなくなるまでループを行う
		while(dbInfOpSvcKei_Email != null)
		{
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));								//契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfOpSvcKei_Email.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfOpSvcKei_Email.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));			//表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfOpSvcKei_Email.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));				//電話番号順番
			resultMap.put(JBSbatKKIFM689.KEI_CNT,				dbInfOpSvcKei_Email.getString(JBSbatKKIFM689.KEI_CNT));							//オプションサービス契約数 − 料金コース_オプションサービス.無料オプションサービス数
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, dbInfOpSvcKei_Email.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));	//文言表示条件個別指定コード

			//検索結果を格納
			serchResultList_OpSvcKei.add(resultMap);
			
			//次レコードの読み取り
			dbInfOpSvcKei_Email = db_KK_T_OP_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定処理
		 *-------------------------------------------------------------------------------------------------*/
		//出力判定処理用にマップを作成
		HashMap<String, String> tmpMap = new HashMap<String, String>();
		
		for (int i = 0; i < serchResultList_OpSvcKei.size(); i++) 
		{
			//出力マップ
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			// 出力判定用にマップを格納する
			tmpMap = serchResultList_OpSvcKei.get(i);

			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				tmpMap.get(JBSbatKK_T_KNYTCS.KNYTCS_NO));					//契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));		//表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				tmpMap.get(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));			//電話番号順番
			outmap.setString(JBSbatKKIFM689.KEI_CNT,				tmpMap.get(JBSbatKKIFM689.KEI_CNT));             			//契約数
			// ANK-4427-00-00 ADD START
			outmap.setString(JBSbatKKIFM689.BMP_UM,						tmpMap.get(JBSbatKKIFM689.BMP_UM));						//番ポ有無
			outmap.setString(JBSbatKKIFM689.TELNO,						tmpMap.get(JBSbatKKIFM689.TELNO));						//typeN電話番号
			// ANK-4427-00-00 ADD END
			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				//文言表示条件個別指定コードがNULLであれば出力を行う
				if(JKKStringUtil.isNullBlank(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("オプションサービス契約［個別：NULL］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
				//契約内容通知書表示文言.文言表示条件個別指定コードが"002"(多機能ルーター・ホームゲートウェイVA機能有）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_002.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					if (this.getVaUm(svcKeiKaisenUcwkNo))
					{
						//機器オプションサービス契約が取得できた場合、出力を行う
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("オプションサービス契約［個別：002］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
				}
				//契約内容通知書表示文言.文言表示条件個別指定コードが"011"(多機能ルーター・ホームゲートウェイVA機能無）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_011.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					if (!this.getVaUm(svcKeiKaisenUcwkNo))
					{
						//機器オプションサービス契約が取得できなかった場合、出力を行う
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("オプションサービス契約［個別：011］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
				}
				else
				{
					//上記以外の文言表示条件個別指定コードの場合は処理が行えないためマイナーアラームを出力する
					outPutKsiteiCdMinorAlarmLog(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD), 
							inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
							tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
							tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));
				}
			}
		}		
		//v25.00.00 2016/04/20 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * 申込番号を元に住所変更のオプションサービス契約を検索し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
	private void outPutOpSvcKeiAdchg(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//v25.00.00 2016/04/20 Add Start
		//検索結果リストの初期化を行う
		ArrayList<HashMap<String, String>> serchResultList_OpSvcKei = new ArrayList<HashMap<String, String>>();
		//v25.00.00 2016/04/20 Add End
		
		//申込番号
		String mskmNo =  inMap.getString(JBSbatKK_T_MSKM.MSKM_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] opSvcKei	 = new Object[]
		                 	              {
											mskmNo,              //申込番号
											super.opeDate,      //予約適用年月日
//v25.00.00 2016/04/20 Add Start
											super.opeDate,      //割引サービス対象契約適用開始年月日
											super.opeDate,      //割引サービス対象契約適用終了年月日
											super.opeDate,      //予約適用年月日
//v25.00.00 2016/04/20 Add End
											super.opeDate,      //予約適用年月日
//v32.00.01 2017/05/17 Add Start
		                 	              	netOpPackSkbtCd,	//ネットオプションパック識別コード
//v32.00.01 2017/05/17 Add End
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//オプションサービス契約スキーマ検索実行
		this.executeKK_T_OP_SVC_KEI_KK_SELECT_120(opSvcKei);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfOpSvcKei = db_KK_T_OP_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfOpSvcKei != null)
		{
			
			//v25.00.00 2016/04/20 Mod Start
//			//ファイル出力用インスタンスの作成
//			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
//			
//			//出力ファイル設定
//			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
//			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
//			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
//			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbInfOpSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));         //電話番号順番
//			
//			
//			//v24.00.00 2016/03/18 Mod Start
////			outmap.setOutFlg(true);
////			
////			//出力ファイルリストに設定
////			outputBean.addOutMapList(outmap);
//
//			//出力対象の表示位置識別番号と一致した場合出力とする
//			if(isOutPutTgDspPstSkcd(dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
//			{
//				//v24.00.04 2016/04/28 Mod Start
////				outmap.setOutFlg(true);
////				super.logPrint.printDebugLog("割引サービス契約_120："+ dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
////				
////				//出力ファイルリストに設定
////				outputBean.addOutMapList(outmap);
//				
//				//取得したサービス契約内訳番号が出力対象か判定する
////			v24.00.07 Mod Start
////			if(isOutPutTgSvcKeiUcwk(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))
//				if(isOutPutTgSvcKeiUcwk(dbInfOpSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO)))
////			v24.00.07 Mod End
//				{
//					outmap.setOutFlg(true);
//					super.logPrint.printDebugLog("オプションサービス契約_120："+ dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//					
//					//出力ファイルリストに設定
//					outputBean.addOutMapList(outmap);
//				}
//				else{
//				//出力対象外判定したレコード情報をログに出力する
//				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//						dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//						dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)
////v24.00.07 2016/05/10 Mod Start
////					,"オプションサービス契約関連情報（住変）【内訳番号出力対象外】");
//						,"オプションサービス契約関連情報（住変）【内訳番号出力対象外：" + dbInfOpSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO) + "】");
////v24.00.07 2016/05/10 Mod End
//				}
//				//v24.00.04 2016/04/28 Mod End
//			}
//			else
//			{
//				//出力対象外判定したレコード情報をログに出力する
//				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//						dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//						dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)
//						,"オプションサービス契約関連情報（住変）");
//			}
//			//v24.00.00 2016/03/18 Mod End
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));								//契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));			//表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfOpSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));				//電話番号順番
			resultMap.put(JBSbatKKIFM689.KEI_CNT,				dbInfOpSvcKei.getString(JBSbatKKIFM689.KEI_CNT));							//マルチセッション用セッション数・ケーブルガイド申込数
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, dbInfOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));	//文言表示条件個別指定コード
			resultMap.put(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO,dbInfOpSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO));		//サービス契約内訳番号

			//検索結果を格納
			serchResultList_OpSvcKei.add(resultMap);
			//v25.00.00 2016/04/20 Mod End
			//次レコードの読み取り
			dbInfOpSvcKei = db_KK_T_OP_SVC_KEI.selectNext();
		}
		
		//v25.00.00 2016/04/20 Add Start
		// Ｅメールの抽出
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] opSvcKei_Email	 = new Object[]
		                 	              {
											pcrsCd,				//料金コースコード
											super.opeDate,		//予約適用年月日
											mskmNo,				//申込番号
											super.opeDate,		//予約適用年月日
											famipaKeiUm,		//ファミリーパック契約有無
											//v32.00.00 2017/04/10 Add Start
											netOpPackSkbtCd,	//ネットオプションパック識別コード
											//v32.00.00 2017/04/10 Add End
											mskmSbtCd,			//申込種別コード
											super.opeDate,		//契約内容通知書表示文言適用開始年月日
											super.opeDate,		//契約内容通知書表示文言適用終了年月日
											super.opeDate		//予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		//オプションサービス契約スキーマ検索実行
		this.executeKK_T_OP_SVC_KEI_KK_SELECT_122(opSvcKei_Email);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbInfOpSvcKei_Email = db_KK_T_OP_SVC_KEI.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果がなくなるまでループを行う
		while(dbInfOpSvcKei_Email != null)
		{
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));								//契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfOpSvcKei_Email.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfOpSvcKei_Email.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));			//表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfOpSvcKei_Email.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));				//電話番号順番
			resultMap.put(JBSbatKKIFM689.KEI_CNT,				dbInfOpSvcKei_Email.getString(JBSbatKKIFM689.KEI_CNT));							//オプションサービス契約数 − 料金コース_オプションサービス.無料オプションサービス数
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, dbInfOpSvcKei_Email.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));	//文言表示条件個別指定コード

			//検索結果を格納
			serchResultList_OpSvcKei.add(resultMap);
			
			//次レコードの読み取り
			dbInfOpSvcKei_Email = db_KK_T_OP_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定処理
		 *-------------------------------------------------------------------------------------------------*/
		//出力判定処理用にマップを作成
		HashMap<String, String> tmpMap = new HashMap<String, String>();
		
		for (int i = 0; i < serchResultList_OpSvcKei.size(); i++) 
		{
			//出力マップ
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			// 出力判定用にマップを格納する
			tmpMap = serchResultList_OpSvcKei.get(i);

			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				tmpMap.get(JBSbatKK_T_KNYTCS.KNYTCS_NO));					//契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));		//表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				tmpMap.get(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));			//電話番号順番
			outmap.setString(JBSbatKKIFM689.KEI_CNT,				tmpMap.get(JBSbatKKIFM689.KEI_CNT));             			//契約数

			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				//取得したサービス契約内訳番号が出力対象か判定する
				if(isOutPutTgSvcKeiUcwk(tmpMap.get(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO)))
				{
					super.logPrint.printDebugLog("オプションサービス契約_120：" + tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//文言表示条件個別指定コードがNULLであれば出力を行う
					if(JKKStringUtil.isNullBlank(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
					{
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("オプションサービス契約［個別：NULL］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
					//契約内容通知書表示文言.文言表示条件個別指定コードが"002"(多機能ルーター・ホームゲートウェイVA機能有）の場合
					else if(MNGN_DSP_JKN_KSITEI_CD_002.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
					{
						if (this.getVaUmAdChg(mskmNo))
						{
							//機器オプションサービス契約が取得できた場合、出力を行う
							outmap.setOutFlg(true);
							super.logPrint.printDebugLog("オプションサービス契約［個別：002］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
							
							//出力ファイルリストに設定
							outputBean.addOutMapList(outmap);
						}
					}
					//契約内容通知書表示文言.文言表示条件個別指定コードが"011"(多機能ルーター・ホームゲートウェイVA機能無）の場合
					else if(MNGN_DSP_JKN_KSITEI_CD_011.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
					{
						if (!this.getVaUmAdChg(mskmNo))
						{
							//機器オプションサービス契約が取得できなかった場合、出力を行う
							outmap.setOutFlg(true);
							super.logPrint.printDebugLog("オプションサービス契約［個別：011］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
							
							//出力ファイルリストに設定
							outputBean.addOutMapList(outmap);
						}
					}
					else
					{
						//上記以外の文言表示条件個別指定コードの場合は処理が行えないためマイナーアラームを出力する
						outPutKsiteiCdMinorAlarmLog(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD), 
								inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));
					}
				}
				else
				{
					//出力対象外判定したレコード情報をログに出力する
					createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
							tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
							tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)
//				v24.00.07 2016/05/10 Mod Start
//							,"オプションサービス契約関連情報（住変）【内訳番号出力対象外】");
							,"オプションサービス契約関連情報（住変）【内訳番号出力対象外：" + tmpMap.get(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO) + "】");

//				v24.00.07 2016/05/10 Mod End
				}
			}
		}		
		//v25.00.00 2016/04/20 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
	}
	
	/**
	 * サービス契約番号を元にサブオプションサービス契約を検索し
	 * 取得結果を契約内容通知書ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
	private void outPutSbOpSvcKei(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//v25.00.00 2016/04/20 Add Start
		//検索結果リストの初期化を行う
		ArrayList<HashMap<String, String>> serchResultList_SbopSvcKei = new ArrayList<HashMap<String, String>>();
		//v25.00.00 2016/04/20 Add End
		
		//変更前SQL
		String sqlBefore =  db_KK_T_SBOP_SVC_KEI.getSql(KK_T_SBOP_SVC_KEI_KK_SELECT_028);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_SBOP_SVC_KEI.setSqlMap(KK_T_SBOP_SVC_KEI_KK_SELECT_028, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] opSvcKei	 = new Object[]
		                 	              {
//v25.00.00 2016/04/20 Add Start
											pcrsCd,              //料金コースコード
//v25.00.00 2016/04/20 Add End
											"",                  //サービス契約番号
											super.opeDate,      //予約適用年月日

//v25.00.00 2016/04/20 Add Start
											super.opeDate,      //割引サービス対象契約適用開始年月日
											super.opeDate,      //割引サービス対象契約適用終了年月日
											super.opeDate,      //予約適用年月日
//v25.00.00 2016/04/20 Add End

											"",                  //サービス契約番号
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
											// ANK-4577-00-00 ADD START
											"",                  //サービス契約番号
											super.opeDate,      //予約適用年月日
											// ANK-4577-00-00 ADD END
											super.opeDate,      //予約適用年月日
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サブオプションサービス契約スキーマ検索実行
		this.executeKK_T_SBOP_SVC_KEI_KK_SELECT_028(opSvcKei, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_SBOP_SVC_KEI.setSqlMap(KK_T_SBOP_SVC_KEI_KK_SELECT_028, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfSbopSvcKei = db_KK_T_SBOP_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfSbopSvcKei != null)
		{
			//v25.00.00 2016/04/20 Mod Start
//			//ファイル出力用インスタンスの作成
//			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
//			
//			//出力ファイル設定
//			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
//			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
//			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
//			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbInfSbopSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));         //電話番号順番
//			
////v24.00.00 2016/03/18 Mod Start
////			outmap.setOutFlg(true);
////			
////			//出力ファイルリストに設定
////			outputBean.addOutMapList(outmap);
//
//			//出力対象の表示位置識別番号と一致した場合出力とする
//			if(isOutPutTgDspPstSkcd(dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
//			{
//				outmap.setOutFlg(true);
//				super.logPrint.printDebugLog("サブオプションサービス契約_028："+ dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//				
//				//出力ファイルリストに設定
//				outputBean.addOutMapList(outmap);
//				
//			}
//			else
//			{
//				//出力対象外判定したレコード情報をログに出力する
//				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//						dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//						dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
//						"サブオプションサービス関連情報");
//			}
////v24.00.00 2016/03/18 Mod End
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));								//契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));			//表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfSbopSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));				//電話番号順番

			if(!JKKStringUtil.isNullBlank(dbInfSbopSvcKei.getString(JBSbatKKIFM689.KEI_CNT)) &&
				!JKKStringUtil.isNullBlank(dbInfSbopSvcKei.getString(JBSbatKK_M_PCRS_SBOP_SVC.SVCTK_BUT_MRYO_VALUE)))
			{
				int wValue = Integer.parseInt(dbInfSbopSvcKei.getString(JBSbatKKIFM689.KEI_CNT)) -
				Integer.parseInt(dbInfSbopSvcKei.getString(JBSbatKK_M_PCRS_SBOP_SVC.SVCTK_BUT_MRYO_VALUE));
	
				//０以下の補正
				if (wValue < 0)
				{
					wValue = 0;
				}
				
				resultMap.put(JBSbatKKIFM689.KEI_CNT,				String.valueOf(wValue));         //契約数（有料のホームページ容量）
			}

			//検索結果を格納
			serchResultList_SbopSvcKei.add(resultMap);
			//v25.00.00 2016/04/20 Mod End
			
			//次レコードの読み取り
			dbInfSbopSvcKei = db_KK_T_SBOP_SVC_KEI.selectNext();
		}
		
		//v25.00.00 2016/04/20 Add Start
		// メールウィルスチェックの抽出
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//変更前SQL
		sqlBefore =  db_KK_T_SBOP_SVC_KEI.getSql(KK_T_SBOP_SVC_KEI_KK_SELECT_030);
		
		//変更後SQL
		sqlAfter =   "";
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_SBOP_SVC_KEI.setSqlMap(KK_T_SBOP_SVC_KEI_KK_SELECT_030, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] sbopSvcKei_VirusChk	 = new Object[]
		                 	              {
											"",					//サービス契約番号
											super.opeDate,		//予約適用年月日
											super.opeDate,		//予約適用年月日
											// ANK-4468-09-00 ADD START
											"",
											super.opeDate,		//予約適用年月日
											// ANK-4468-09-00 ADD END
											famipaKeiUm,		//ファミリーパック契約有無
											//v32.00.00 2017/04/10 Add Start
											netOpPackSkbtCd,	//ネットオプションパック識別コード
											//v32.00.00 2017/04/10 Add End
											mskmSbtCd,			//申込種別コード
											super.opeDate,		//契約内容通知書表示文言適用開始年月日
											super.opeDate,		//契約内容通知書表示文言適用終了年月日
											super.opeDate		//予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		//サブオプションサービス契約スキーマ検索実行
		this.executeKK_T_SBOP_SVC_KEI_KK_SELECT_030(sbopSvcKei_VirusChk, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_SBOP_SVC_KEI.setSqlMap(KK_T_SBOP_SVC_KEI_KK_SELECT_030, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbInfSbopSvcKei_VirusChk = db_KK_T_SBOP_SVC_KEI.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果がなくなるまでループを行う
		while(dbInfSbopSvcKei_VirusChk != null)
		{
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));								//契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfSbopSvcKei_VirusChk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSbopSvcKei_VirusChk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));			//表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfSbopSvcKei_VirusChk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));				//電話番号順番
			resultMap.put(JBSbatKKIFM689.KEI_CNT,				dbInfSbopSvcKei_VirusChk.getString(JBSbatKKIFM689.KEI_CNT));							//ウィルスチェック数

			//検索結果を格納
			serchResultList_SbopSvcKei.add(resultMap);
			
			//次レコードの読み取り
			dbInfSbopSvcKei_VirusChk = db_KK_T_SBOP_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定処理
		 *-------------------------------------------------------------------------------------------------*/
		//出力判定処理用にマップを作成
		HashMap<String, String> tmpMap = new HashMap<String, String>();
		
		for (int i = 0; i < serchResultList_SbopSvcKei.size(); i++) 
		{
			//出力マップ
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			// 出力判定用にマップを格納する
			tmpMap = serchResultList_SbopSvcKei.get(i);

			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				tmpMap.get(JBSbatKK_T_KNYTCS.KNYTCS_NO));					//契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));		//表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				tmpMap.get(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));			//電話番号順番
			outmap.setString(JBSbatKKIFM689.KEI_CNT,				tmpMap.get(JBSbatKKIFM689.KEI_CNT));             			//契約数


			
			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("サブオプションサービス契約："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
				
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"サブオプションサービス関連情報");
			}
		}		
		//v25.00.00 2016/04/20 Add End
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * 申込番号を元に住所変更のサブオプションサービス契約を検索し
	 * 取得結果を契約内容通知書ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
	private void outPutSbOpSvcKeiAdChg(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//v25.00.00 2016/04/20 Add Start
		//検索結果リストの初期化を行う
		ArrayList<HashMap<String, String>> serchResultList_SbopSvcKei = new ArrayList<HashMap<String, String>>();
		//v25.00.00 2016/04/20 Add End
		
		//申込番号
		String mskmNo =  inMap.getString(JBSbatKK_T_MSKM.MSKM_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] opSvcKei	 = new Object[]
		                 	              {
//v25.00.00 2016/04/20 Add Start
											pcrsCd,              //料金コースコード
//v25.00.00 2016/04/20 Add End
											mskmNo,              //サービス契約番号
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
//v25.00.00 2016/04/20 Add Start
											super.opeDate,      //割引サービス対象契約適用開始年月日
											super.opeDate,      //割引サービス対象契約適用終了年月日
											super.opeDate,      //予約適用年月日
//v25.00.00 2016/04/20 Add End
											super.opeDate,      //予約適用年月日
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サブオプションサービス契約スキーマ検索実行
		this.executeKK_T_SBOP_SVC_KEI_KK_SELECT_029(opSvcKei);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfSbopSvcKei = db_KK_T_SBOP_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfSbopSvcKei != null)
		{
			//v25.00.00 2016/04/20 Mod Start
//			//ファイル出力用インスタンスの作成
//			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
//			
//			//出力ファイル設定
//			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
//			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
//			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
//			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbInfSbopSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));         //電話番号順番
//		
//			
////v24.00.00 2016/03/18 Mod Start
////			outmap.setOutFlg(true);
////			
////			//出力ファイルリストに設定
////			outputBean.addOutMapList(outmap);
//
//			//出力対象の表示位置識別番号と一致した場合出力とする
//			if(isOutPutTgDspPstSkcd(dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
//			{
//				//v24.00.04 2016/04/28 Mod Start
////				outmap.setOutFlg(true);
////				super.logPrint.printDebugLog("サブオプションサービス契約_029："+ dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
////				
////				//出力ファイルリストに設定
////				outputBean.addOutMapList(outmap);
//				
//				//取得したサービス契約内訳番号が出力対象か判定する
//				if(isOutPutTgSvcKeiUcwk(dbInfSbopSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO)))
//				{
//					outmap.setOutFlg(true);
//					super.logPrint.printDebugLog("サブオプションサービス契約_029："+ dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//					
//					//出力ファイルリストに設定
//					outputBean.addOutMapList(outmap);
//				}
//				else{
//				//出力対象外判定したレコード情報をログに出力する
//				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//						dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//						dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)
//						,"サブオプションサービス契約関連情報（住変）【内訳番号出力対象外】");
//				}
//				//v24.00.04 2016/04/28 Mod End
//			}
//			else
//			{
//				//出力対象外判定したレコード情報をログに出力する
//				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//						dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//						dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
//						"サブオプションサービス契約関連情報（住変）");
//			}
////v24.00.00 2016/03/18 Mod End
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));								//契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSbopSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));			//表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfSbopSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));				//電話番号順番
			resultMap.put(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO,dbInfSbopSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO));		//サービス契約内訳番号

			if(!JKKStringUtil.isNullBlank(dbInfSbopSvcKei.getString(JBSbatKKIFM689.KEI_CNT)) &&
				!JKKStringUtil.isNullBlank(dbInfSbopSvcKei.getString(JBSbatKK_M_PCRS_SBOP_SVC.SVCTK_BUT_MRYO_VALUE)))
			{
				int wValue = Integer.parseInt(dbInfSbopSvcKei.getString(JBSbatKKIFM689.KEI_CNT)) -
				Integer.parseInt(dbInfSbopSvcKei.getString(JBSbatKK_M_PCRS_SBOP_SVC.SVCTK_BUT_MRYO_VALUE));
				
				//０以下の補正
				if (wValue < 0)
				{
					wValue = 0;
				}
				
				resultMap.put(JBSbatKKIFM689.KEI_CNT,				String.valueOf(wValue));         //契約数（有料のホームページ容量）
			}

			//検索結果を格納
			serchResultList_SbopSvcKei.add(resultMap);
			//v25.00.00 2016/04/20 Mod End
			
			//次レコードの読み取り
			dbInfSbopSvcKei = db_KK_T_SBOP_SVC_KEI.selectNext();
		}
		
		//v25.00.00 2016/04/20 Add Start
		// メールウィルスチェックの抽出
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] sbopSvcKei_VirusChk	 = new Object[]
		                 	              {
											mskmNo,				//申込番号
											super.opeDate,		//予約適用年月日
											super.opeDate,		//予約適用年月日
											famipaKeiUm,		//ファミリーパック契約有無
											//v32.00.00 2017/04/10 Add Start
											netOpPackSkbtCd,	//ネットオプションパック識別コード
											//v32.00.00 2017/04/10 Add Start
											mskmSbtCd,			//申込種別コード
											super.opeDate,		//契約内容通知書表示文言適用開始年月日
											super.opeDate,		//契約内容通知書表示文言適用終了年月日
											super.opeDate		//予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		//サブオプションサービス契約スキーマ検索実行
		this.executeKK_T_SBOP_SVC_KEI_KK_SELECT_031(sbopSvcKei_VirusChk);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbInfSbopSvcKei_VirusChk = db_KK_T_SBOP_SVC_KEI.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果がなくなるまでループを行う
		while(dbInfSbopSvcKei_VirusChk != null)
		{
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));								//契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfSbopSvcKei_VirusChk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSbopSvcKei_VirusChk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));			//表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfSbopSvcKei_VirusChk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));				//電話番号順番
			resultMap.put(JBSbatKKIFM689.KEI_CNT,				dbInfSbopSvcKei_VirusChk.getString(JBSbatKKIFM689.KEI_CNT));							//ウィルスチェック数

			//検索結果を格納
			serchResultList_SbopSvcKei.add(resultMap);
			
			//次レコードの読み取り
			dbInfSbopSvcKei_VirusChk = db_KK_T_SBOP_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定処理
		 *-------------------------------------------------------------------------------------------------*/
		//出力判定処理用にマップを作成
		HashMap<String, String> tmpMap = new HashMap<String, String>();
		
		for (int i = 0; i < serchResultList_SbopSvcKei.size(); i++) 
		{
			//出力マップ
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			// 出力判定用にマップを格納する
			tmpMap = serchResultList_SbopSvcKei.get(i);

			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				tmpMap.get(JBSbatKK_T_KNYTCS.KNYTCS_NO));					//契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));		//表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				tmpMap.get(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));			//電話番号順番
			outmap.setString(JBSbatKKIFM689.KEI_CNT,				tmpMap.get(JBSbatKKIFM689.KEI_CNT));             			//契約数


			
			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				//取得したサービス契約内訳番号が出力対象か判定する
				if(isOutPutTgSvcKeiUcwk(tmpMap.get(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO)))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("サブオプションサービス契約_029："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
				else
				{
					//出力対象外判定したレコード情報をログに出力する
					createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
							tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
							tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)
//v24.00.07 2016/05/10 Mod Start
//						,"サブオプションサービス契約関連情報（住変）【内訳番号出力対象外】");
						,"サブオプションサービス契約関連情報（住変）【内訳番号出力対象外：" + tmpMap.get(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO) + "】");
//v24.00.07 2016/05/10 Mod End
				}
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"サブオプションサービス関連情報（住変）");
			}
		}		
		//v25.00.00 2016/04/20 Add End
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * サービス契約番号を元に機器提供サービス契約情報を検索し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @param tvDspMap    テレビ表示位置マップ
	 * @param svcInfoMap  サービス情報マップ
	 * @throws Exception
	 */
	//v25.00.00 2016/04/20 Mod Start
//	private void outPutKktkSvcKei(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> tvDspMap) throws Exception
	private void outPutKktkSvcKei(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> tvDspMap, HashMap<String, String> svcInfoMap) throws Exception
	//v25.00.00 2016/04/20 Mod End
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//v25.00.00 2016/04/20 Add Start
		//検索結果リストの初期化を行う
		ArrayList<HashMap<String, String>> serchResultList_KktkSvcKei = new ArrayList<HashMap<String, String>>();
		//v25.00.00 2016/04/20 Add End
		
		//変更前SQL
		String sqlBefore =  db_KK_T_KKTK_SVC_KEI.getSql(KK_T_KKTK_SVC_KEI_KK_SELECT_220);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		//サービス契約回線内訳番号
		String svcKeiKaisenUcwkNo = inMap.getString(JBSbatKKIFM689.SVC_KEI_KAISEN_UCWK_NO);
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_NO);
		
		//v26.00.00 2016/07/04 Add Start
		boolean outPutZumiFlg = false;
		//v26.00.00 2016/07/04 Add End
		//v26.00.00 2016/07/04 Add Start
		// 出力済フラグ（タブレット）
		boolean outPutZumiFlgTab = false;
		
		// 出力済フラグ（ＧＨ）
		boolean outPutZumiFlgGh = false;
		//v26.00.00 2016/07/04 Add End
		
		

		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
// v27.00.00 ADD START
		if(JBSbatKKConst.KK0971_MSKM_SBT_CD_00022.equals(mskmSbtCd))
		{
			// 先行処理で設定された申込種別コードが"00022"（機器契約変更申込）の場合、
			// SQLファイル上で対象外としている機器提供サービスコード"C015"(PCLレンタル)、"C023"(光スティック)と合わせて"C022"(ＳＴＢ)を対象外とする
			sqlAfter = sqlAfter.replaceAll("'C015', 'C023'", "'C015', 'C023', 'C009'");
		}
// v27.00.00 ADD END
		
		//編集したSQLを設定する
		db_KK_T_KKTK_SVC_KEI.setSqlMap(KK_T_KKTK_SVC_KEI_KK_SELECT_220, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] kktkSvcKei	= new Object[]
		                   	             {
											"",                  //サービス契約番号
											super.opeDate,      //予約適用年月日
											svcKeiKaisenUcwkNo,  //サービス契約回線内訳番号
											super.opeDate,      //予約適用年月日
//v25.00.00 2016/04/20 Add Start
											famipaKeiUm,         //ファミリーパック契約有無
//v25.00.00 2016/04/20 Add End
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//機器提供サービス契約スキーマ検索実行
		this.executeKK_T_KKTK_SVC_KEI_KK_SELECT_220(kktkSvcKei, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_KKTK_SVC_KEI.setSqlMap(KK_T_KKTK_SVC_KEI_KK_SELECT_220, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbKktkSvcKei = db_KK_T_KKTK_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbKktkSvcKei != null)
		{
			//v25.00.00 2016/04/20 Mod Start
//			//ファイル出力用インスタンスの作成
//			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
//			
//			//出力ファイル設定
//			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                                  //契約内容通知書番号
//			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));         //契約内容通知書表示文言コード
//			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));               //表示位置識別コード
//			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbKktkSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));                  //電話番号順番
//			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbKktkSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))); //テレビ表示位置番号                                                                //テレビ表示位置番号
//			
////v24.00.00 2016/03/18 Mod Start
////			outmap.setOutFlg(true);
////			
////			//出力ファイルリストに設定
////			outputBean.addOutMapList(outmap);
//
//			//出力対象の表示位置識別番号と一致した場合出力とする
//			if(isOutPutTgDspPstSkcd(dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
//			{
//				outmap.setOutFlg(true);
//				super.logPrint.printDebugLog("機器提供サービス契約_220："+ dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//				
//				//出力ファイルリストに設定
//				outputBean.addOutMapList(outmap);
//				
//			}
//			else
//			{
//				//出力対象外判定したレコード情報をログに出力する
//				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//						dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//						dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
//						"機器提供サービス契約関連情報");
//			}
////v24.00.00 2016/03/18 Mod End
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                                  //契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));         //契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));               //表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbKktkSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));                  //電話番号順番
			resultMap.put(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbKktkSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))); //テレビ表示位置番号
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));	//文言表示条件個別指定コード
			resultMap.put(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD, dbKktkSvcKei.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD));	//機器付加情報コード
// v27.00.01 ADD START
			resultMap.put(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO, dbKktkSvcKei.getString(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO));	// 機器提供サービス契約番号
// v27.00.01 ADD END
// v29.00.03 2017/02/21 Add Start
			resultMap.put(JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_STAYMD, dbKktkSvcKei.getString(JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_STAYMD));
// v29.00.03 2017/02/21 Add End

		//v27.00.06 OM-2016-0002489 Mod Start
			//検索結果を格納
//			serchResultList_KktkSvcKei.add(resultMap);
			//テレビ表示位置マップに存在する場合に出力リストに追加する
			if (isTvDspMap(tvDspMap,dbKktkSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO), dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
				{
				//検索結果を格納
					serchResultList_KktkSvcKei.add(resultMap);
				}
				
		//v27.00.06 OM-2016-0002489 Mod End
			
			//次レコードの読み取り
			dbKktkSvcKei = db_KK_T_KKTK_SVC_KEI.selectNext();
		}
		
		//v25.00.00 2016/04/20 Add Start
		// ＰＣＬレンタル、光スティックの抽出
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//変更前SQL
		sqlBefore =  db_KK_T_KKTK_SVC_KEI.getSql(KK_T_KKTK_SVC_KEI_KK_SELECT_229);
		
		//変更後SQL
		sqlAfter =   "";
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_KKTK_SVC_KEI.setSqlMap(KK_T_KKTK_SVC_KEI_KK_SELECT_229, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] kktkSvcKei_Plc	 = new Object[]
		                 	              {
											"",					//サービス契約番号
											super.opeDate,		//予約適用年月日
											mskmSbtCd,			//申込種別コード
											super.opeDate,		//契約内容通知書表示文言適用開始年月日
											super.opeDate,		//契約内容通知書表示文言適用終了年月日
											super.opeDate		//予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		//機器提供サービス契約スキーマ検索実行
		this.executeKK_T_KKTK_SVC_KEI_KK_SELECT_229(kktkSvcKei_Plc, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_KKTK_SVC_KEI.setSqlMap(KK_T_KKTK_SVC_KEI_KK_SELECT_229, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKktkSvcKei_Plc = db_KK_T_KKTK_SVC_KEI.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果がなくなるまでループを行う
		while(dbInfKktkSvcKei_Plc != null)
		{
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                                  //契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfKktkSvcKei_Plc.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));         //契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfKktkSvcKei_Plc.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));               //表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfKktkSvcKei_Plc.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));                  //電話番号順番
			resultMap.put(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbInfKktkSvcKei_Plc.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))); //テレビ表示位置番号
			resultMap.put(JBSbatKKIFM689.KEI_CNT,				dbInfKktkSvcKei_Plc.getString(JBSbatKKIFM689.KEI_CNT));         //契約数
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, dbInfKktkSvcKei_Plc.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));	//文言表示条件個別指定コード
			resultMap.put(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD, dbInfKktkSvcKei_Plc.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD));	//機器付加情報コード

			//検索結果を格納
			serchResultList_KktkSvcKei.add(resultMap);
			
			//次レコードの読み取り
			dbInfKktkSvcKei_Plc = db_KK_T_KKTK_SVC_KEI.selectNext();
		}
		
// v27.00.00 ADD START
		if(JBSbatKKConst.KK0971_MSKM_SBT_CD_00022.equals(mskmSbtCd))
		{
			super.logPrint.printDebugLog("機器提供サービス契約情報処理 ： 申込種別コード='00022'によるＳＴＢ情報取得処理 START");
			
			// ＳＴＢでかつ、申込種別コードが"00022"（機器契約変更申込）
			/**------------------------------------------------------------------------------------------------  
			 * 初期データ取得
			 *-------------------------------------------------------------------------------------------------*/
			//変更前SQL
			sqlBefore =  db_KK_T_KKTK_SVC_KEI.getSql(KK_T_KKTK_SVC_KEI_KK_SELECT_236);
			
			//変更後SQL
			sqlAfter =   "";
			
			/**------------------------------------------------------------------------------------------------  
			 * データ編集 ※データ編集なし
			 *-------------------------------------------------------------------------------------------------*/ 
			//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
			sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
			
			//編集したSQLを設定する
			db_KK_T_KKTK_SVC_KEI.setSqlMap(KK_T_KKTK_SVC_KEI_KK_SELECT_236, sqlAfter);
			
			/**------------------------------------------------------------------------------------------------  
			 * バインド変数設定
			 *-------------------------------------------------------------------------------------------------*/
			Object[] kktkSvcKeiStb = new Object[]
			                                    {
													"",					//サービス契約番号
													mskmSbtCd,			//申込種別コード
													super.opeDate,		//契約内容通知書表示文言適用開始年月日
													super.opeDate,		//契約内容通知書表示文言適用終了年月日
													super.opeDate		//予約適用年月日
				                                 };
			
			/**------------------------------------------------------------------------------------------------  
			 * SQL実行
			 *-------------------------------------------------------------------------------------------------*/
			//機器提供サービス契約スキーマ検索実行
			this.executeKK_T_KKTK_SVC_KEI_KK_SELECT_236(kktkSvcKeiStb, svcKeiList);
			
			//編集したSQLを元に戻す
			db_KK_T_KKTK_SVC_KEI.setSqlMap(KK_T_KKTK_SVC_KEI_KK_SELECT_236, sqlBefore);
			
			/**------------------------------------------------------------------------------------------------  
			 * SQL実行結果取得
			 *-------------------------------------------------------------------------------------------------*/
			//検索結果の取得
			JBSbatCommonDBInterface dbInfKktkSvcKeiStb = db_KK_T_KKTK_SVC_KEI.selectNext();
			
			/**------------------------------------------------------------------------------------------------  
			 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
			 *-------------------------------------------------------------------------------------------------*/
			//検索結果がなくなるまでループを行う
			while(dbInfKktkSvcKeiStb != null)
			{
				//検索結果格納用マップ作成
				HashMap<String, String> resultMap = new HashMap<String, String>();

				resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));													//契約内容通知書番号
				resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,	dbInfKktkSvcKeiStb.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));					//契約内容通知書表示文言コード
				resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfKktkSvcKeiStb.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));							//表示位置識別コード
				resultMap.put(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbInfKktkSvcKeiStb.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO)));			//テレビ表示位置番号
				resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, dbInfKktkSvcKeiStb.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));	//文言表示条件個別指定コード
				resultMap.put(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD, dbInfKktkSvcKeiStb.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD));					//機器付加情報コード

			//v27.00.06 OM-2016-0002489 Mod Start
				//検索結果を格納
//				serchResultList_KktkSvcKei.add(resultMap);
				//テレビ表示位置マップに存在する場合に出力リストに追加する
				if (isTvDspMap(tvDspMap, dbInfKktkSvcKeiStb.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO)
						, dbInfKktkSvcKeiStb.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
				{
					//検索結果を格納
					serchResultList_KktkSvcKei.add(resultMap);
				}
			//v27.00.06 OM-2016-0002489 Mod End

				
				//次レコードの読み取り
				dbInfKktkSvcKeiStb = db_KK_T_KKTK_SVC_KEI.selectNext();
			}
			super.logPrint.printDebugLog("機器提供サービス契約情報処理 ： 申込種別コード='00022'によるＳＴＢ情報取得処理 END");
		}
// v27.00.00 ADD END
		
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定処理
		 *-------------------------------------------------------------------------------------------------*/
		//出力判定処理用にマップを作成
		HashMap<String, String> tmpMap = new HashMap<String, String>();
		
		for (int i = 0; i < serchResultList_KktkSvcKei.size(); i++) 
		{
			//出力マップ
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			// 出力判定用にマップを格納する
			tmpMap = serchResultList_KktkSvcKei.get(i);

			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				tmpMap.get(JBSbatKK_T_KNYTCS.KNYTCS_NO));					//契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));		//表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				tmpMap.get(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));			//電話番号順番
			//v25.00.01 2016/05/17 Mod Start
//			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tmpMap.get(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO));		//テレビ表示位置番号
			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tmpMap.get(JBSbatKKIFM689.TV_DSP_NO));						//テレビ表示位置番号
			//v25.00.01 2016/05/17 Mod End
			outmap.setString(JBSbatKKIFM689.KEI_CNT,				tmpMap.get(JBSbatKKIFM689.KEI_CNT));             			//契約数

			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				//文言表示条件個別指定コードがNULLであれば出力を行う
				if(JKKStringUtil.isNullBlank(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("機器提供サービス契約［個別：NULL］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
// v27.00.01 MOD START
//				//契約内容通知書表示文言.文言表示条件個別指定コードが"012"(安心補償（Xperia/ARROWS/LAVIE）の場合
//				else if(MNGN_DSP_JKN_KSITEI_CD_012.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
//				{
//					if(isOutPutkikiHukaInfoCdAnsin(tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD)))
//					{
//						outmap.setOutFlg(true);
//						super.logPrint.printDebugLog("安心補償（Xperia/ARROWS/LAVIE）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//						
//						//出力ファイルリストに設定
//						outputBean.addOutMapList(outmap);
//					}
//					else
//					{
//						//出力対象外判定したレコード情報をログに出力する
//						createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
//								"安心補償（Xperia/ARROWS/LAVIE）");
//					}
//				}
//				//契約内容通知書表示文言.文言表示条件個別指定コードが"013"(安心補償（MediaPad）の場合
//				else if(MNGN_DSP_JKN_KSITEI_CD_013.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
//				{
//					if(isOutPutkikiHukaInfoCdAnsinMediaPad(tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD)))
//					{
//						outmap.setOutFlg(true);
//						super.logPrint.printDebugLog("安心補償（MediaPad）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//						
//						//出力ファイルリストに設定
//						outputBean.addOutMapList(outmap);
//					}
//					else
//					{
//						//出力対象外判定したレコード情報をログに出力する
//						createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
//								"安心補償（MediaPad）");
//					}
//				}
				
				// 文言表示条件個別指定コードが"012"(安心補償（Xperia/ARROWS/LAVIE）、"013"(安心補償（MediaPad）、"024"(ｅｏショッピングモールポイントプレゼント)の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_012.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)) ||
						MNGN_DSP_JKN_KSITEI_CD_013.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)) ||
						MNGN_DSP_JKN_KSITEI_CD_024.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					// 文言表示条件個別指定コード
					String ksiteiCd = tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD);
					
					// 有効な端末保障オプションが存在するか確認
					boolean tnmtHosyou = isTnmtHosyouUmu(tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO));
					
//v29.00.03 2017/02/21 Add Start
					//表示フラグ
					boolean planChgStaFlg = this.isTkyKkn(tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_STAYMD));
//v29.00.03 2017/02/21 Add End
					
					String kikiHukaInfCd = tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD);
//v29.00.03 2017/02/07 Mod Start
//					if(isOutPutkikiHukaInfoCdAnsin(kikiHukaInfCd) && tnmtHosyou && MNGN_DSP_JKN_KSITEI_CD_012.equals(ksiteiCd))
					if(isOutPutkikiHukaInfoCdAnsin(kikiHukaInfCd) && tnmtHosyou && MNGN_DSP_JKN_KSITEI_CD_012.equals(ksiteiCd) && planChgStaFlg)
//v29.00.03 2017/02/07 Mod End
					{
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("安心補償（Xperia/ARROWS/LAVIE）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
//v29.00.03 2017/02/07 Mod Start
//					else if(isOutPutkikiHukaInfoCdAnsinMediaPad(kikiHukaInfCd) && tnmtHosyou && MNGN_DSP_JKN_KSITEI_CD_013.equals(ksiteiCd))
					else if(isOutPutkikiHukaInfoCdAnsinMediaPad(kikiHukaInfCd) && tnmtHosyou && MNGN_DSP_JKN_KSITEI_CD_013.equals(ksiteiCd) && planChgStaFlg)
//v29.00.03 2017/02/07 Mod End
					{
						// 機器付加情報コードが"074"〜"077"で、端末保障あり
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("安心補償（MediaPad）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
//v29.00.03 2017/02/07 Mod Start
//					else if((isOutPutkikiHukaInfoCdAnsin(kikiHukaInfCd) || isOutPutkikiHukaInfoCdAnsinMediaPad(kikiHukaInfCd)) && MNGN_DSP_JKN_KSITEI_CD_024.equals(ksiteiCd) && !tnmtHosyou)
					else if((isOutPutkikiHukaInfoCdAnsin(kikiHukaInfCd) || isOutPutkikiHukaInfoCdAnsinMediaPad(kikiHukaInfCd)) && MNGN_DSP_JKN_KSITEI_CD_024.equals(ksiteiCd) && !tnmtHosyou && planChgStaFlg)
//v29.00.03 2017/02/07 Mod End
					{
						// 機器付加情報コードが"066"〜"069" or "074"〜"077"で、端末保障なし
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("ｅｏショッピングモールポイントプレゼント："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
					else
					{
						if(MNGN_DSP_JKN_KSITEI_CD_012.equals(ksiteiCd))
						{
							//出力対象外判定したレコード情報をログに出力する
							createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
									"安心補償（Xperia/ARROWS/LAVIE）");
						}
						else if(MNGN_DSP_JKN_KSITEI_CD_013.equals(ksiteiCd))
						{
							//出力対象外判定したレコード情報をログに出力する
							createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
									"安心補償（MediaPad）");
						}
						else
						{
							//出力対象外判定したレコード情報をログに出力する
							createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
									"ｅｏショッピングモールポイントプレゼント");
						}
					}
				}
// v27.00.01 MOD END
				//契約内容通知書表示文言.文言表示条件個別指定コードが"016"(電話オプション欄へのＶＤＳＬ文言）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_016.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					//ネットが存在しない場合
					if (JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)))
					{
						outmap.setOutFlg(true);
						
						//電話番号順番に１を設定する
						outmap.setString(JBSbatKKIFM689.TELNO_JUN,				"1");			//電話番号順番
						
						super.logPrint.printDebugLog("電話オプション欄へのＶＤＳＬ文言："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
					else
					{
						//出力対象外判定したレコード情報をログに出力する
						createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
								"電話オプション欄へのＶＤＳＬ文言");
					}
				}
//v26.00.00 2016/07/04 Add Start
				//契約内容通知書表示文言.文言表示条件個別指定コードが"020"(初期契約解除文言）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_020.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					
					//出力済フラグがtrueでないとき（出力未の場合）
					if(!outPutZumiFlg)
					{
						//レコードの出力処理を実行する
						outmap.setOutFlg(true);
						outmap.setString(JBSbatKKIFM689.TV_DSP_NO,TV_DSP_NO_01);						//テレビ表示位置番号
						outputBean.addOutMapList(outmap);
						//出力処理を実施した場合、以降の初期契約解除文を出力しないように、出力済フラグにtrue（出力済)を設定する
						outPutZumiFlg = true;
					}
					
				}
//v26.00.00 2016/07/04 Add End
//v33.00.00 2016/07/28 Add Start
				//契約内容通知書表示文言.文言表示条件個別指定コードが"027"(「タブレット」の文言出力制御に使用）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_027.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					
					//出力済フラグがtrueでないとき（出力未の場合）
					if(!outPutZumiFlgTab)
					{
						//レコードの出力処理を実行する
						outmap.setOutFlg(true);
						outputBean.addOutMapList(outmap);
						//出力処理を実施した場合、以降の「タブレット」の文言を出力しないように、出力済フラグにtrue（出力済)を設定する
						outPutZumiFlgTab = true;
					}
					
				}
				//契約内容通知書表示文言.文言表示条件個別指定コードが"028"(「ＧＨ」の文言出力制御に使用）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_028.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					//出力済フラグがtrueでないとき（出力未の場合）
					if(!outPutZumiFlgGh)
					{
						//レコードの出力処理を実行する
						outmap.setOutFlg(true);
						outputBean.addOutMapList(outmap);
						//出力処理を実施した場合、以降の「ＧＨ」の文言を出力しないように、出力済フラグにtrue（出力済)を設定する
						outPutZumiFlgGh = true;
					}
				}
//v33.00.00 2016/07/28 Add End
			}
		}		
		//v25.00.00 2016/04/20 Add End
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	
	/**
	 * 申込番号を元に住所変更の機器提供サービス契約を検索し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param tvDspMap    テレビ表示位置マップ
	 * @param svcInfoMap  サービス情報マップ
	 * @throws Exception
	 */
	//v25.00.00 2016/04/20 Mod Start
//	private void outPutKktkSvcKeiAdChg(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> tvDspMap) throws Exception
	private void outPutKktkSvcKeiAdChg(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> tvDspMap, HashMap<String, String> svcInfoMap) throws Exception
	//v25.00.00 2016/04/20 Mod End
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//v25.00.00 2016/04/20 Add Start
		//検索結果リストの初期化を行う
		ArrayList<HashMap<String, String>> serchResultList_KktkSvcKei = new ArrayList<HashMap<String, String>>();
		//v25.00.00 2016/04/20 Add End
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		//申込番号
		String mskmNo =  inMap.getString(JBSbatKK_T_MSKM.MSKM_NO);
		
		//v26.00.00 2016/07/04 Add Start
		boolean outPutZumiFlg = false;
		//v26.00.00 2016/07/04 Add End
		
		//v33.00.00 2016/07/28 Add Start
		// 出力済フラグ（タブレット）
		boolean outPutZumiFlgTab = false;
		
		// 出力済フラグ（ＧＨ）
		boolean outPutZumiFlgGh = false;
		//v33.00.00 2016/07/28 Add End

		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] kktkSvcKei	= new Object[]
		                   	             {
											mskmNo,                  //申込番号
//v25.00.00 2016/04/20 Add Start
											famipaKeiUm,             //ファミリーパック契約有無
//v25.00.00 2016/04/20 Add End
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知書表示文言スキーマ検索実行
		this.executeKK_T_KKTK_SVC_KEI_KK_SELECT_221(kktkSvcKei);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbKktkSvcKei = db_KK_T_KKTK_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbKktkSvcKei != null)
		{
			
			//v25.00.00 2016/04/20 Mod Start
//			//ファイル出力用インスタンスの作成
//			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
//			
//			//出力ファイル設定
//			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                                  //契約内容通知書番号
//			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));         //契約内容通知書表示文言コード
//			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));               //表示位置識別コード
//			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbKktkSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));                  //電話番号順番
//			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbKktkSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))); //テレビ表示位置番号                                                                //テレビ表示位置番号
//			
////v24.00.00 2016/03/18 Mod Start
////			outmap.setOutFlg(true);
////			
////			//出力ファイルリストに設定
////			outputBean.addOutMapList(outmap);
//
//			//出力対象の表示位置識別番号と一致した場合出力とする
//			if(isOutPutTgDspPstSkcd(dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
//			{
//				outmap.setOutFlg(true);
//				super.logPrint.printDebugLog("機器提供サービス契約_221："+ dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//				
//				//出力ファイルリストに設定
//				outputBean.addOutMapList(outmap);
//				
//			}
//			else
//			{
//				//出力対象外判定したレコード情報をログに出力する
//				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//						dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//						dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
//						"オプションサービス契約関連情報（住変");
//			}
////v24.00.00 2016/03/18 Mod End
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                                  //契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));         //契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));               //表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbKktkSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));                  //電話番号順番
			resultMap.put(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbKktkSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))); //テレビ表示位置番号
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));	//文言表示条件個別指定コード
			resultMap.put(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD, dbKktkSvcKei.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD));	//機器付加情報コード
			//v25.00.00 2016/04/20 Mod End
// v27.00.01 ADD START
			resultMap.put(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO, dbKktkSvcKei.getString(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO));	// 機器提供サービス契約番号
// v27.00.01 ADD END

// v29.00.03 2017/02/21 Add Start
			resultMap.put(JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_STAYMD, dbKktkSvcKei.getString(JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_STAYMD));
// v29.00.03 2017/02/21 Add End

			//v27.00.06 OM-2016-0002489 Mod Start
//			//検索結果を格納
//			serchResultList_KktkSvcKei.add(resultMap);
			
			//テレビ表示位置マップに存在する場合に出力リストに追加する
			if (isTvDspMap(tvDspMap,dbKktkSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO), dbKktkSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				//検索結果を格納
				serchResultList_KktkSvcKei.add(resultMap);
			}
			//v27.00.06 OM-2016-0002489 Mod End
			
			//v25.00.00 2016/04/20 Mod End
			
			//次レコードの読み取り
			dbKktkSvcKei = db_KK_T_KKTK_SVC_KEI.selectNext();
		}
		
		//v25.00.00 2016/04/20 Add Start
		// ＰＣＬレンタル、光スティックの抽出
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] kktkSvcKei_Plc	 = new Object[]
		                 	              {
											mskmNo,				//申込番号
											mskmSbtCd,			//申込種別コード
											super.opeDate,		//契約内容通知書表示文言適用開始年月日
											super.opeDate,		//契約内容通知書表示文言適用終了年月日
											super.opeDate		//予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		//機器提供サービス契約スキーマ検索実行
		this.executeKK_T_KKTK_SVC_KEI_KK_SELECT_230(kktkSvcKei_Plc);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKktkSvcKei_Plc = db_KK_T_KKTK_SVC_KEI.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果がなくなるまでループを行う
		while(dbInfKktkSvcKei_Plc != null)
		{
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                                  //契約内容通知書番号
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfKktkSvcKei_Plc.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));         //契約内容通知書表示文言コード
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfKktkSvcKei_Plc.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));               //表示位置識別コード
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,				dbInfKktkSvcKei_Plc.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));                  //電話番号順番
			resultMap.put(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbInfKktkSvcKei_Plc.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))); //テレビ表示位置番号
			resultMap.put(JBSbatKKIFM689.KEI_CNT,				dbInfKktkSvcKei_Plc.getString(JBSbatKKIFM689.KEI_CNT));         //契約数
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, dbInfKktkSvcKei_Plc.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));	//文言表示条件個別指定コード
			resultMap.put(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD, dbInfKktkSvcKei_Plc.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD));	//機器付加情報コード

			//検索結果を格納
			serchResultList_KktkSvcKei.add(resultMap);
			
			//次レコードの読み取り
			dbInfKktkSvcKei_Plc = db_KK_T_KKTK_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定処理
		 *-------------------------------------------------------------------------------------------------*/
		//出力判定処理用にマップを作成
		HashMap<String, String> tmpMap = new HashMap<String, String>();
		
		for (int i = 0; i < serchResultList_KktkSvcKei.size(); i++) 
		{
			//出力マップ
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			// 出力判定用にマップを格納する
			tmpMap = serchResultList_KktkSvcKei.get(i);

			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				tmpMap.get(JBSbatKK_T_KNYTCS.KNYTCS_NO));					//契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));	//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));		//表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				tmpMap.get(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));			//電話番号順番
			//v25.00.01 2016/05/17 Mod Start
//			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tmpMap.get(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO));		//テレビ表示位置番号
			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tmpMap.get(JBSbatKKIFM689.TV_DSP_NO));						//テレビ表示位置番号
			//v25.00.01 2016/05/17 Mod End
			outmap.setString(JBSbatKKIFM689.KEI_CNT,				tmpMap.get(JBSbatKKIFM689.KEI_CNT));             			//契約数

			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				//文言表示条件個別指定コードがNULLであれば出力を行う
				if(JKKStringUtil.isNullBlank(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("機器提供サービス契約［個別：NULL］(住変）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
// v27.00.01 MOD START
//				//契約内容通知書表示文言.文言表示条件個別指定コードが"012"(安心補償（Xperia/ARROWS/LAVIE）の場合
//				else if(MNGN_DSP_JKN_KSITEI_CD_012.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
//				{
//					if(isOutPutkikiHukaInfoCdAnsin(tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD)))
//					{
//						outmap.setOutFlg(true);
//						super.logPrint.printDebugLog("安心補償（Xperia/ARROWS/LAVIE）(住変）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//						
//						//出力ファイルリストに設定
//						outputBean.addOutMapList(outmap);
//					}
//					else
//					{
//						//出力対象外判定したレコード情報をログに出力する
//						createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
//								"安心補償（Xperia/ARROWS/LAVIE）(住変）");
//					}
//				}
//				//契約内容通知書表示文言.文言表示条件個別指定コードが"013"(安心補償（MediaPad）の場合
//				else if(MNGN_DSP_JKN_KSITEI_CD_013.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
//				{
//					if(isOutPutkikiHukaInfoCdAnsinMediaPad(tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD)))
//					{
//						outmap.setOutFlg(true);
//						super.logPrint.printDebugLog("安心補償（MediaPad）(住変）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//						
//						//出力ファイルリストに設定
//						outputBean.addOutMapList(outmap);
//					}
//					else
//					{
//						//出力対象外判定したレコード情報をログに出力する
//						createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
//								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
//								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
//								"安心補償（MediaPad）(住変）");
//					}
//				}
				
				// 文言表示条件個別指定コードが"012"(安心補償（Xperia/ARROWS/LAVIE）、"013"(安心補償（MediaPad）、"024"(ｅｏショッピングモールポイントプレゼント)の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_012.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)) ||
						MNGN_DSP_JKN_KSITEI_CD_013.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)) ||
						MNGN_DSP_JKN_KSITEI_CD_024.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					// 文言表示条件個別指定コード
					String ksiteiCd = tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD);
					
					// 有効な端末保障オプションが存在するか確認
					boolean tnmtHosyou = isTnmtHosyouUmu(tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.KKTK_SVC_KEI_NO));
					
//v29.00.03 2017/02/21 Add Start
					//表示フラグ
					boolean planChgStaFlg = this.isTkyKkn(tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.PLAN_CHRG_STAYMD));
//v29.00.03 2017/02/21 Add End
					
					String kikiHukaInfCd = tmpMap.get(JBSbatKK_T_KKTK_SVC_KEI.KIKI_HUKA_INFO_CD);
//v29.00.03 2017/02/07 Mod Start
//					if(isOutPutkikiHukaInfoCdAnsin(kikiHukaInfCd) && tnmtHosyou && MNGN_DSP_JKN_KSITEI_CD_012.equals(ksiteiCd))
					if(isOutPutkikiHukaInfoCdAnsin(kikiHukaInfCd) && tnmtHosyou && MNGN_DSP_JKN_KSITEI_CD_012.equals(ksiteiCd) && planChgStaFlg)
//v29.00.03 2017/02/07 Mod End
					{
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("安心補償（Xperia/ARROWS/LAVIE）(住変）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
//v29.00.03 2017/02/07 Mod Start
//					else if(isOutPutkikiHukaInfoCdAnsinMediaPad(kikiHukaInfCd) && tnmtHosyou && MNGN_DSP_JKN_KSITEI_CD_013.equals(ksiteiCd))
					else if(isOutPutkikiHukaInfoCdAnsinMediaPad(kikiHukaInfCd) && tnmtHosyou && MNGN_DSP_JKN_KSITEI_CD_013.equals(ksiteiCd) && planChgStaFlg)
//v29.00.03 2017/02/07 Mod End
					{
						// 機器付加情報コードが"074"〜"075"で、端末保障あり
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("安心補償（MediaPad）(住変）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
//v29.00.03 2017/02/07 Mod Start
//					else if((isOutPutkikiHukaInfoCdAnsin(kikiHukaInfCd) || isOutPutkikiHukaInfoCdAnsinMediaPad(kikiHukaInfCd)) && MNGN_DSP_JKN_KSITEI_CD_024.equals(ksiteiCd) && !tnmtHosyou)
					else if((isOutPutkikiHukaInfoCdAnsin(kikiHukaInfCd) || isOutPutkikiHukaInfoCdAnsinMediaPad(kikiHukaInfCd)) && MNGN_DSP_JKN_KSITEI_CD_024.equals(ksiteiCd) && !tnmtHosyou && planChgStaFlg)
//v29.00.03 2017/02/07 Mod End
					{
						// 機器付加情報コードが"066"〜"069" or "074"〜"075"で、端末保障なし
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("ｅｏショッピングモールポイントプレゼント(住変）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
					else
					{
						if(MNGN_DSP_JKN_KSITEI_CD_012.equals(ksiteiCd))
						{
							//出力対象外判定したレコード情報をログに出力する
							createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
									"安心補償（Xperia/ARROWS/LAVIE）(住変）");
						}
						else if(MNGN_DSP_JKN_KSITEI_CD_013.equals(ksiteiCd))
						{
							//出力対象外判定したレコード情報をログに出力する
							createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
									"安心補償（MediaPad）(住変）");
						}
						else
						{
							//出力対象外判定したレコード情報をログに出力する
							createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
									tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
									"ｅｏショッピングモールポイントプレゼント(住変）");
						}
					}
				}
// v27.00.01 MOD END
				//契約内容通知書表示文言.文言表示条件個別指定コードが"016"(電話オプション欄へのＶＤＳＬ文言）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_016.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					//ネットが存在しない場合
					if (JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)))
					{
						outmap.setOutFlg(true);
						
						//電話番号順番に１を設定する
						outmap.setString(JBSbatKKIFM689.TELNO_JUN,				"1");			//電話番号順番
						
						super.logPrint.printDebugLog("電話オプション欄へのＶＤＳＬ文言(住変）："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
					else
					{
						//出力対象外判定したレコード情報をログに出力する
						createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
								tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
								"電話オプション欄へのＶＤＳＬ文言(住変）");
					}
				}
//v26.00.00 2016/07/04 Add Start
				//契約内容通知書表示文言.文言表示条件個別指定コードが"020"(初期契約解除文言）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_020.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					
					//出力済フラグがtrueでないとき（出力未の場合）
					if(!outPutZumiFlg)
					{
						//レコードの出力処理を実行する
						outmap.setOutFlg(true);
						outmap.setString(JBSbatKKIFM689.TV_DSP_NO,TV_DSP_NO_01);						//テレビ表示位置番号
						outputBean.addOutMapList(outmap);
						//出力処理を実施した場合、以降の初期契約解除文を出力しないように、出力済フラグにtrue（出力済)を設定する
						outPutZumiFlg = true;
					}
					
				}
//v26.00.00 2016/07/04 Add End
//v33.00.00 2016/07/28 Add Start
				//契約内容通知書表示文言.文言表示条件個別指定コードが"027"(「タブレット」の文言出力制御に使用）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_027.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					
					//出力済フラグがtrueでないとき（出力未の場合）
					if(!outPutZumiFlgTab)
					{
						//レコードの出力処理を実行する
						outmap.setOutFlg(true);
						outputBean.addOutMapList(outmap);
						//出力処理を実施した場合、以降の「タブレット」の文言を出力しないように、出力済フラグにtrue（出力済)を設定する
						outPutZumiFlgTab = true;
					}
					
				}
				//契約内容通知書表示文言.文言表示条件個別指定コードが"028"(「ＧＨ」の文言出力制御に使用）の場合
				else if(MNGN_DSP_JKN_KSITEI_CD_028.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					//出力済フラグがtrueでないとき（出力未の場合）
					if(!outPutZumiFlgGh)
					{
						//レコードの出力処理を実行する
						outmap.setOutFlg(true);
						outputBean.addOutMapList(outmap);
						//出力処理を実施した場合、以降の「ＧＨ」の文言を出力しないように、出力済フラグにtrue（出力済)を設定する
						outPutZumiFlgGh = true;
					}
				}
//v33.00.00 2016/07/28 Add End
			}
		}		
		//v25.00.00 2016/04/20 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * サービス契約番号を元に機器オプションサービス契約を検索し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @param tvDspMap    テレビ表示位置マップ
	 * @throws Exception
	 */
	private void outPutKkOpSvcKei(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> tvDspMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_KKOP_SVC_KEI.getSql(KK_T_KKOP_SVC_KEI_KK_SELECT_026);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		//サービス契約回線内訳番号
		String svcKeiKaisenUcwkNo = inMap.getString(JBSbatKKIFM689.SVC_KEI_KAISEN_UCWK_NO);
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_NO);
		
		

		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_KKOP_SVC_KEI.setSqlMap(KK_T_KKOP_SVC_KEI_KK_SELECT_026, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] kktkSvcKei	= new Object[]
		                   	             {
											"",                  //サービス契約番号
											super.opeDate,      //予約適用年月日
											svcKeiKaisenUcwkNo,  //サービス契約回線内訳番号
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
//v25.00.00 2016/04/20 Add Start
											famipaKeiUm,             //ファミリーパック契約有無
//v25.00.00 2016/04/20 Add End
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//機器オプションサービス契約スキーマ検索実行
		this.executeKK_T_KKOP_SVC_KEI_KK_SELECT_026(kktkSvcKei, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_KKOP_SVC_KEI.setSqlMap(KK_T_KKOP_SVC_KEI_KK_SELECT_026, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbKkOpSvcKei = db_KK_T_KKOP_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbKkOpSvcKei != null)
		{
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                                  //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));         //契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));               //表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbKkOpSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));                  //電話番号順番
			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbKkOpSvcKei.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))); //テレビ表示位置番号                                                                //テレビ表示位置番号
			
//v24.00.00 2016/03/18 Mod Start
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);

			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("機器オプションサービス契約_026："+ dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
				
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"機器オプションサービス契約関連情報");
			}
//v24.00.00 2016/03/18 Mod End
			
			//次レコードの読み取り
			dbKkOpSvcKei = db_KK_T_KKOP_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * 申込番号を元に住所変更の機器オプションサービス契約を検索し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
//v29.00.00 2017/02/03 Mod Start
//	private void outPutKkOpSvcKeiAdChg(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean) throws Exception
	private void outPutKkOpSvcKeiAdChg(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	//v29.00.00 2017/02/03 Mod End
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		//申込番号
		String mskmNo =  inMap.getString(JBSbatKK_T_MSKM.MSKM_NO);
		
//v29.00.00 2017/02/03 Add Start
		//変更前SQL
		String sqlBefore =  db_KK_T_KKOP_SVC_KEI.getSql(KK_T_KKOP_SVC_KEI_KK_SELECT_027);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_NO);
//v29.00.00 2017/02/03 Add End
		

		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
//v29.00.00 2017/02/03 Add Start
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
//v29.00.01 2017/02/03 Add Start
		//編集したSQLを設定する
		db_KK_T_KKOP_SVC_KEI.setSqlMap(KK_T_KKOP_SVC_KEI_KK_SELECT_027, sqlAfter);
//v29.00.01 2017/02/03 Add End
		
//v29.00.00 2017/02/03 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] kkOpSvcKei	= new Object[]
		                   	             {
											mskmNo,                  //サービス契約番号
											super.opeDate,       //予約適用年月日
//v25.00.00 2016/04/20 Add Start
											famipaKeiUm,             //ファミリーパック契約有無
//v25.00.00 2016/04/20 Add End
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
// v29.00.00 2017/02/03 Mod Start
											super.opeDate,      //予約適用年月日
// v29.00.00 2017/02/03 Mod End
// v29.00.05 2017/02/27 Del Start
// v29.00.00 2017/02/03 Add Start
//											"",                  //サービス契約番号
//											super.opeDate,      //予約適用年月日
//											super.opeDate,      //予約適用年月日
//											famipaKeiUm,         //ファミリーパック契約有無
//											mskmSbtCd,           //申込種別コード
//											super.opeDate,      //契約内容通知書表示文言適用開始年月日
//											super.opeDate,      //契約内容通知書表示文言適用終了年月日
//											super.opeDate       //予約適用年月日
// v29.00.05 2017/02/03 Del End
// v29.00.05 Add Start
											mskmNo,              //申込番号
											super.opeDate,      //予約適用年月日
											famipaKeiUm,         //ファミリーパック契約有無
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
// v29.00.05 Add End
// v29.00.00 2017/02/03 Add End

		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//機器オプションサービス契約スキーマ検索実行
//v29.00.00 2017/02/03 Mod Start
//		this.executeKK_T_KKOP_SVC_KEI_KK_SELECT_027(kkOpSvcKei);
		this.executeKK_T_KKOP_SVC_KEI_KK_SELECT_027(kkOpSvcKei, svcKeiList);
//v29.00.00 2017/02/03 Mod End
		
//v29.00.00 2017/02/03 Add Start
		//編集したSQLを元に戻す
		db_KK_T_KKOP_SVC_KEI.setSqlMap(KK_T_KKOP_SVC_KEI_KK_SELECT_027, sqlBefore);
//v29.00.00 2017/02/03 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbKkOpSvcKei = db_KK_T_KKOP_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbKkOpSvcKei != null)
		{
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                                  //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));         //契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));               //表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbKkOpSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));                  //電話番号順番                                                               //テレビ表示位置番号
			
//v24.00.00 2016/03/18 Mod Start
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);

			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				outmap.setOutFlg(true);
				
				super.logPrint.printDebugLog("機器オプションサービス契約_027："+ dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
				
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbKkOpSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"機器オプションサービス契約関連情報(住変）");
			}
//v24.00.00 2016/03/18 Mod End
			
			//次レコードの読み取り
			dbKkOpSvcKei = db_KK_T_KKOP_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * サービス契約番号を元に割引サービス契約関連情報を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param svcMapList  サービス契約マップリスト
	 * @param svcInfoMap  サービス情報マップ
	 * @throws Exception
	 */
//v24.00.00 2016/03/18 Mod Start
//	private void outPutWribSvcKei(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	private void outPutWribSvcKei(JBSbatServiceInterfaceMap inMap, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> svcInfoMap) throws Exception
//v24.00.00 2016/03/18 Mod End
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_WRIB_SVC_KEI.getSql(KK_T_WRIB_SVC_KEI_KK_SELECT_068);
		
		//変更後SQL
		String sqlAfter =   "";
		// ANK-4577-00-00 ADD START
		String sqlAfter1 =   "";
		// ANK-4577-00-00 ADD END
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		// ANK-4535-00-00 ADD START
		HashMap<String, String> svcCdMap = new HashMap<String, String>();
		
		//マップリストの件数分ループ
		for(int i = 0; i < svcMapList.size(); i++)
		{
			//サービス契約番号取得
			String svcKeiNo = svcMapList.get(i).get(JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
			
			//サービス契約番号をキーにサービス契約ステータスを取得しマップに格納
			svcCdMap.put(svcKeiNo, svcMapList.get(i).get(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT));
			
			//サービス契約ステータスを取得
			String SvcKeiStat = svcCdMap.get(svcKeiNo);
			
			//取得したサービス契約ステータスが"照査済"もしくは"締結済"のとき
			if((JKKStrConst.CD00037_SHOSA_ZUMI.equals(SvcKeiStat))
					||(JKKStrConst.CD00037_CNC_ZM.equals(SvcKeiStat)))
			{
				//申込種別コードが"00007"(コース変更)もしくは"00022"(STB追加/変更)のとき
				if(JBSbatKKConst.KK0971_MSKM_SBT_CD_00007.equals(mskmSbtCd) || JBSbatKKConst.KK0971_MSKM_SBT_CD_00022.equals(mskmSbtCd))
				{
					//申込種別コードを"00001"(新規申込)に置き換える
					mskmSbtCd = JBSbatKKConst.KK0971_MSKM_SBT_CD_00001;
				}
			}
		}
		// ANK-4535-00-00 ADD END
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		// ANK-4577-00-00 MOD START
//		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		sqlAfter1 = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		sqlAfter = getEditSQL(svcKeiList, sqlAfter1, EDIT_BF_SQL_PARAMETER_1, EDIT_AF_SQL_PARAMETER_1);
		// ANK-4577-00-00 MOD END
		
		//編集したSQLを設定する
		db_KK_T_WRIB_SVC_KEI.setSqlMap(KK_T_WRIB_SVC_KEI_KK_SELECT_068, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] wribSvcKei					 = new Object[]
		                                 {
											"",                  //サービス契約番号
											super.opeDate,       //予約適用年月日
											//v23.00.04 Add Start
											"",					 //サービス契約番号
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
											//v23.00.04 Add End
											// ANK-4577-00-00 ADD START
											"",					 //サービス契約番号
											super.opeDate,      //予約適用年月日
											// ANK-4577-00-00 ADD END
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知書表示文言スキーマ検索実行
		this.executeKK_T_WRIB_SVC_KEI_KK_SELECT_068(wribSvcKei, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_WRIB_SVC_KEI.setSqlMap(KK_T_WRIB_SVC_KEI_KK_SELECT_068, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfwribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfwribSvcKei != null)
		{
//v24.00.00 2016/03/18 Mod Start
			//ファイル出力用インスタンスの作成
//			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
//
//			//出力ファイル設定
//			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
//			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
//			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
//			//v23.00.04 2015/2/19 Add Start
//			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbInfwribSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));                  //電話番号順番                                      
//			//v23.00.04 2015/2/19 Add End

			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,								inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,					dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,							dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,								dbInfwribSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD,	dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));
// v27.00.00 ADD START
			resultMap.put(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_KEI_NO,				dbInfwribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_KEI_NO));
			resultMap.put(JBSbatKK_T_WRIB_SVC_KEI.PLAN_STAYMD,					dbInfwribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.PLAN_STAYMD));
// v27.00.00 ADD END
// ANK-3636-00-00 2019/07/10 ADD START
			resultMap.put(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD,					dbInfwribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD));
// ANK-3636-00-00 2019/07/10 ADD END
			
//v24.00.02 2016/04/27 Mod Start
//			//検索結果を格納
//			serchResultList.add(resultMap);

			//出力対象の表示位置識別番号と一致した場合検索結果リストに格納する。
			if(isOutPutTgDspPstSkcd(dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				super.logPrint.printDebugLog("割引サービス関連情報_068[出力判定未]："+ dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//検索結果を格納
				serchResultList.add(resultMap);
				
			}
			else
			{
				
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"割引サービス関連情報");
			}
//v24.00.02 2016/04/27 Mod End
//v24.00.00 2016/03/18 Mod End
			
//v24.00.00 2016/03/18 Del Start
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);
//v24.00.00 2016/03/18 Del End
			
			//次レコードの読み取り
			dbInfwribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * サービス契約番号を元にデータ抽出項目設定関連情報を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
	private void outPutDchskmst(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_DCHSKMST.getSql(KK_T_DCHSKMST_KK_SELECT_015);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		// ANK-4535-00-00 ADD START
		HashMap<String, String> svcCdMap = new HashMap<String, String>();
		
		//マップリストの件数分ループ
		for(int i = 0; i < svcMapList.size(); i++)
		{
			//サービス契約番号取得
			String svcKeiNo = svcMapList.get(i).get(JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
			
			//サービス契約番号をキーにサービス契約ステータスを取得しマップに格納
			svcCdMap.put(svcKeiNo, svcMapList.get(i).get(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT));
			
			//サービス契約ステータスを取得
			String SvcKeiStat = svcCdMap.get(svcKeiNo);
			
			//取得したサービス契約ステータスが"照査済"もしくは"締結済"のとき
			if((JKKStrConst.CD00037_SHOSA_ZUMI.equals(SvcKeiStat))
					||(JKKStrConst.CD00037_CNC_ZM.equals(SvcKeiStat)))
			{
				//申込種別コードが"00007"(コース変更)もしくは"00022"(STB追加/変更)のとき
				if(JBSbatKKConst.KK0971_MSKM_SBT_CD_00007.equals(mskmSbtCd) || JBSbatKKConst.KK0971_MSKM_SBT_CD_00022.equals(mskmSbtCd))
				{
					//申込種別コードを"00001"(新規申込)に置き換える
					mskmSbtCd = JBSbatKKConst.KK0971_MSKM_SBT_CD_00001;
				}
			}
		}
		// ANK-4535-00-00 ADD END
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_DCHSKMST.setSqlMap(KK_T_DCHSKMST_KK_SELECT_015, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] wribSvcKei					 = new Object[]
		                                 {
											"",                  //サービス契約番号
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知書表示文言スキーマ検索実行
		this.executeKK_T_DCHSKMST_KK_SELECT_015(wribSvcKei, svcKeiList);
		
		//変更したSQLを元に戻す
		db_KK_T_DCHSKMST.setSqlMap(KK_T_DCHSKMST_KK_SELECT_015, sqlBefore);
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfDchskmst = db_KK_T_DCHSKMST.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfDchskmst != null)
		{
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfDchskmst.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfDchskmst.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
			
//v24.00.00 2016/03/18 Mod Start
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);

			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(dbInfDchskmst.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("データ抽出項目設定_015："+ dbInfDchskmst.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
				
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfDchskmst.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfDchskmst.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"データ抽出項目設定関連情報");
			}
//v24.00.00 2016/03/18 Mod End
			
			//次レコードの読み取り
			dbInfDchskmst = db_KK_T_DCHSKMST.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	/**
	 * サービス契約番号を元に請求契約関連情報を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
	private void outPutKakins(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_KAKINS.getSql(KK_T_KAKINS_KK_SELECT_050);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_KAKINS.setSqlMap(KK_T_KAKINS_KK_SELECT_050, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] kakins					 = new Object[]
		                                 {
											"",                  //サービス契約番号
											super.opeDate,      //課金先適用開始年月日
											super.opeDate,      //課金先適用終了年月日
											super.opeDate,      //予約適用年月日
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//請求契約関連情報スキーマ検索実行
		this.executeKK_T_KAKINS_KK_SELECT_050(kakins, svcKeiList);
		
		//編集したSQLを、元に戻す
		db_KK_T_KAKINS.setSqlMap(KK_T_KAKINS_KK_SELECT_050, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKakins = db_KK_T_KAKINS.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfKakins != null)
		{
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfKakins.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfKakins.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
			
//v24.00.00 2016/03/18 Mod Start
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);

			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(dbInfKakins.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("課金先_050："+ dbInfKakins.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
				
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfKakins.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfKakins.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"請求契約関連情報");
			}
//v24.00.00 2016/03/18 Mod End
			
			//次レコードの読み取り
			dbInfKakins = db_KK_T_KAKINS.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}

	/**
	 * サービス契約番号を元に一時金関連情報を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
//v24.00.15 Mod Start
//	private void outPutIcjknSette(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	private void outPutIcjknSette(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> svcInfoMap) throws Exception	
//v24.00.15 Mod End
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_ICJKN_SETTE.getSql(KK_T_ICJKN_SETTE_KK_SELECT_008);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_ICJKN_SETTE.setSqlMap(KK_T_ICJKN_SETTE_KK_SELECT_008, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] kakins					 = new Object[]
		                                 {
											"",                  //サービス契約番号
//v23.00.02 2015/2/7 Mod Start
											//"",                  //サービス契約番号
											super.opeDate,      //予約適用年月日
// ANK-4427-00-00 ADD START
											super.opeDate,      //予約適用年月日
// ANK-4427-00-00 ADD END
//v23.00.02 2015/2/7 Mod End
//v24.00.14 2016/06/10 Add Start
											makeKeiSeirtYm(inMap.getString(JBSbatKK_T_KNYTCS.KEI_SEIRT_YMD)), //契約成立年月日
//v24.00.14 2016/06/10 Add End
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//一時金関連情報スキーマ検索実行
		this.executeKK_T_ICJKN_SETTE_KK_SELECT_008(kakins, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_ICJKN_SETTE.setSqlMap(KK_T_ICJKN_SETTE_KK_SELECT_008, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfIcjknSete = db_KK_T_ICJKN_SETTE.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
// v27.00.05 ADD START
		ArrayList<String> mngnCdList = new ArrayList<String>();
// v27.00.05 ADD END
		
		//検索結果がなくなるまでループを行う
		while(dbInfIcjknSete != null)
		{
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfIcjknSete.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfIcjknSete.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TMP_PAY_PRC_NO,			dbInfIcjknSete.getString(JBSbatKK_T_ICJKN_SETTE.TMP_PAY_PRC_NO));        //一時支払料金番号
			outmap.setString(JBSbatKKIFM689.ICJKN_SETTE_CD,			dbInfIcjknSete.getString(JBSbatKK_T_ICJKN_SETTE.ICJKN_SETTE_CD));        //一時金設定コード
			outmap.setString(JBSbatKKIFM689.ICJKN_SHITEI_AMNT,		dbInfIcjknSete.getString(JBSbatKK_T_ICJKN_SETTE.ICJKN_SHITEI_AMNT));     //一時金指定額
			outmap.setString(JBSbatKKIFM689.ICJKN_AMNT,				dbInfIcjknSete.getString(JBSbatKK_T_KICJKN.ICJKN_AMNT));                 //一時金料金
			//v23.00.01 2016/2/4 Add Start
			outmap.setString(JBSbatKKIFM689.MANS_PRC_SKBT_CD,		dbInfIcjknSete.getString(JBSbatKK_M_TMP_PAY_PRC.MANS_PRC_SKBT_CD));      //マンション料金識別コード
			//v23.00.01 2016/2/4 Add End
			//v23.00.02 2016/2/4 Add Start
			outmap.setString(JBSbatKKIFM689.SHOSA_YMD,				dbInfIcjknSete.getString(JBSbatKK_T_SVC_KEI.SHOSA_YMD));                 //照査年月日
			outmap.setString(JBSbatKKIFM689.TK_HOSHIKI_KEI_NO,		dbInfIcjknSete.getString(JBSbatKK_T_SVC_KEI.TK_HOSHIKI_KEI_NO));         //提供方式契約番号
			//v23.00.02 2016/2/4 Add End
// ANK-3636-00-00 2019/07/10 ADD START
			outmap.setString(TMP_PAY_PRC_NO_RANK,					dbInfIcjknSete.getString(TMP_PAY_PRC_NO_RANK));   //一時支払料金番号表示優先順位（消費税対応）
// ANK-3636-00-00 2019/07/10 ADD END
			
			//v24.00.00 2016/03/18 Mod Start
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);

// v27.00.01 ADD START
// v27.00.05 DEL START
//			ArrayList<String> mngnCdList = new ArrayList<String>();
// v27.00.05 DEL END
// ANK-3636-00-00 2019/07/10 MOD START
// v29.00.04 Mod Start
//			if(mngnCdList.contains(outmap.getString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD)) && !JKKStringUtil.isNullBlank(outmap.getString(JBSbatKKIFM689.TMP_PAY_PRC_NO)))
			//既に出力している契約内容通知書表示文言コードであり、重複時対象外の一時支払料金番号であった場合出力対象外とする
//			if(mngnCdList.contains(outmap.getString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD)) && ICJKN_CHOFUKU_LIST.contains(outmap.getString(JBSbatKKIFM689.TMP_PAY_PRC_NO)))
			if(mngnCdList.contains(outmap.getString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD)) && isIcjknChofuku(outmap.getString(JBSbatKKIFM689.TMP_PAY_PRC_NO)))
//v 29.00.05 Mod End 
// ANK-3636-00-00 2019/07/10 MOD END
			{
				// 一時支払料金番号が設定されており、同一の契約内容通知書表示文言コードが処理済の場合、
				// 以降の処理をスキップし、出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfIcjknSete.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfIcjknSete.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"一時金関連情報");
			}
			else
			{
// ANK-3636-00-00 2019/07/10 ADD START
				if (isIcjknOut(outmap))
				{
// ANK-3636-00-00 2019/07/10 ADD END
					// リストに今回処理分のコードを追加
					mngnCdList.add(outmap.getString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD));
// v27.00.01 ADD END

					//出力対象の表示位置識別番号と一致した場合出力とする
					if (isOutPutTgDspPstSkcd(dbInfIcjknSete.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
					{
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("一時金_008：" + dbInfIcjknSete.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));

						//出力ファイルリストに設定
//v24.00.15 2016/06/14 Del Start
//				outputBean.addOutMapList(outmap);
//v24.00.15 2016/06/14 Del End
//v24.00.15 2016/06/14 Add Start
						//出力処理を呼出
						// ANK-4427-00-00 MOD START
//						outSvcKnrnInfoJdg(inMap, outmap, outputBean, svcInfoMap, svcMapList, dbInfIcjknSete);
						outSvcKnrnInfoJdg(inMap, outmap, outputBean, svcInfoMap, svcMapList, dbInfIcjknSete, true);
						// ANK-4427-00-00 MOD END
//v24.00.15 2016/06/14 Add End
				
					}
					else
					{

						//出力対象外判定したレコード情報をログに出力する
						createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
								dbInfIcjknSete.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
								dbInfIcjknSete.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
								"一時金関連情報");
					}
// ANK-3636-00-00 2019/07/10 ADD START
				}
// ANK-3636-00-00 2019/07/10 ADD END
				//v24.00.00 2016/03/18 Mod End
			
// v27.00.01 ADD START
			}
// v27.00.01 ADD END
			//次レコードの読み取り
			dbInfIcjknSete = db_KK_T_ICJKN_SETTE.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}

	/**
	 * 申込明細番号を元に工事案件関連情報を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
	private void outPutKojiak(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KU_T_KOJIAK.getSql(KU_T_KOJIAK_KK_SELECT_040);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//申込書明細番号リスト
		ArrayList<String> mskmDtlList = getMapForList(svcMapList, JBSbatKK_T_KNYO_TCH_TG_BUT.MSKMSHO_DTL_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(mskmDtlList, sqlBefore, EDIT_BF_SQL_MSKM_DTL, EDIT_AF_SQL_MSKM_DTL);
		
		//編集したSQLを設定する
		db_KU_T_KOJIAK.setSqlMap(KU_T_KOJIAK_KK_SELECT_040, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] kojiak					 = new Object[]
		                                 {
											"",                  //申込書明細番号
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知書表示文言スキーマ検索実行
		this.executeKU_T_KOJIAK_KK_SELECT_040(kojiak, mskmDtlList);
		
		//編集したSQLを元に戻す
		db_KU_T_KOJIAK.setSqlMap(KU_T_KOJIAK_KK_SELECT_040, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKojiak = db_KU_T_KOJIAK.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//v23.00.03 2015/02/14 Add Start
		//データベースよりレコードが取得できなかった場合
//IT2-2024-0000041　MOD START
		//if(dbInfKojiak == null){
		if(dbInfKojiak == null && !typenHantei(svcMapList)) {
//IT2-2024-0000041　MOD END			
			//共通情報取得処理にて退避した工事案件無しの場合の情報を出力する
			ArrayList<JBSbatCommonDBInterface> kojiakMapList = getTgMngnMapList(MNGN_DSP_JKN_KSITEI_CD_001);
			
			//取得した共通情報のリストの件数分ループを行う
			for(int i = 0; i < kojiakMapList.size(); i++ )
			{
				
				//取得した共通情報より情報を取得する
				JBSbatCommonDBInterface dbCommonKojiakMap = kojiakMapList.get(i);
				
				//ファイル出力用オブジェクトの作成
				JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
				
				//出力ファイル設定
				outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
				outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbCommonKojiakMap.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
				outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbCommonKojiakMap.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
				
//v24.00.00 2016/03/18 Mod Start
//				outmap.setOutFlg(true);
//				
//				//出力ファイルリストに設定
//				outputBean.addOutMapList(outmap);

				//出力対象の表示位置識別番号と一致した場合出力とする
				if(isOutPutTgDspPstSkcd(dbCommonKojiakMap.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("工事案件_040（結果無)："+ dbCommonKojiakMap.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
					
				}
				else
				{
					//出力対象外判定したレコード情報をログに出力する
					createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
							dbCommonKojiakMap.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
							dbCommonKojiakMap.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
							"工事案件関連情報(工事案件無）");
				}
//v24.00.00 2016/03/18 Mod End
				
			}
//IT2-2024-0000041　MOD START
		//}else{
		}else if (dbInfKojiak != null && !typenHantei(svcMapList)){
//IT2-2024-0000041　MOD END

			// ANK-4656-00-00 ADD START
			while(dbInfKojiak != null)
			{
			// ANK-4656-00-00 ADD END
				
				//取得結果が存在した場合は、1レコード目のみ出力を行う。複数レコード取れた場合も1レコード目のみ出力する
			
				//ファイル出力用インスタンスの作成
				JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
				
				//出力ファイル設定
				outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
				outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
				outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
				
				//v24.00.00 2016/03/18 Mod Start
	//			outmap.setOutFlg(true);
	//			
	//			//出力ファイルリストに設定
	//			outputBean.addOutMapList(outmap);
	
				//出力対象の表示位置識別番号と一致した場合出力とする
				if(isOutPutTgDspPstSkcd(dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
				{
					// ANK-4656-00-00 ADD START
					// 工事範囲コードが"070"(ローゼット済工事不要案件)
					if(JKKStrConst.KOJI_SCOPE_CD_070.equals(dbInfKojiak.getString(JBSbatKU_T_KJAK_EOH_NET.KOJI_SCOPE_CD)))
					{
						if(MNGN_DSP_JKN_KSITEI_CD_046.equals(dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
						{
							// 「郵送交換時」文言設定
							outmap.setOutFlg(true);
							super.logPrint.printDebugLog("工事案件［個別：" + dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD) + "］："
									+ dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
							//出力ファイルリストに設定
							outputBean.addOutMapList(outmap);
							// #87043 ADD START
							break;
							// #87043 ADD END
						}
					}
					// 個別指定コードが未設定
					else if (isMngnDspJknCd(dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
					{
					// ANK-4656-00-00 ADD END
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("工事案件_040(結果有）："+ dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
						// #87043 ADD START
						break;
						// #87043 ADD END
					// ANK-4656-00-00 ADD START
					}
					// ANK-4656-00-00 ADD END
				}
				else
				{
					//出力対象外判定したレコード情報をログに出力する
					createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
							dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
							dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
							"工事案件関連情報(工事案件有）");
				}
			// ANK-4656-00-00 ADD START
				//次レコードの読み取り
				dbInfKojiak = db_KU_T_KOJIAK.selectNext();
			}
			// ANK-4656-00-00 ADD END
			//v24.00.00 2016/03/18 Mod End
			// ANK-4656-00-00 DEL START
//			//次レコードの読み取り
//			dbInfKojiak = db_KU_T_KOJIAK.selectNext();
			// ANK-4656-00-00 DEL END
		}
			
			
		
		
		//v23.00.03 2015/02/14 Add End
		
		//v23.00.03 2015/02/14 Del Start
		//検索結果がなくなるまでループを行う
//		while(dbInfKojiak != null)
//		{
//			
//			//ファイル出力用インスタンスの作成
//			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
//			
//			//出力ファイル設定
//			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
//			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
//			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfKojiak.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
//			
//			outmap.setOutFlg(true);
//			
//			//出力ファイルリストに設定
//			outputBean.addOutMapList(outmap);
//			
//			//次レコードの読み取り
//			dbInfKojiak = db_KU_T_KOJIAK.selectNext();
//		}
		//v23.00.03 2015/02/14 Del End
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	//v24.00.00 2016/03/18 Add Start
	
	/**
	 * コース変更時の適用キャンペーン情報（想定）を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param svcMapList  サービス契約マップリスト
	 * @param svcInfoMap  サービス情報マップ
	 * @throws Exception
	 */
	private void outPutCrsChgWribCp(JBSbatServiceInterfaceMap inMap, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> svcInfoMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約番号（ネット）
		String netSvcKeiNo = svcInfoMap.get(JKKStrConst.CD00130_01);
		
		//申込番号
		String mskmNo = inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		// ANK-4535-00-00 ADD START
		HashMap<String, String> svcCdMap = new HashMap<String, String>();
		
		//マップリストの件数分ループ
		for(int i = 0; i < svcMapList.size(); i++)
		{
			//サービス契約番号取得
			String svcKeiNo = svcMapList.get(i).get(JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
			
			//サービス契約番号をキーにサービス契約ステータスを取得しマップに格納
			svcCdMap.put(svcKeiNo, svcMapList.get(i).get(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT));
			
			//サービス契約ステータスを取得
			String SvcKeiStat = svcCdMap.get(svcKeiNo);
			
			//取得したサービス契約ステータスが"照査済"もしくは"締結済"のとき
			if((JKKStrConst.CD00037_SHOSA_ZUMI.equals(SvcKeiStat))
					||(JKKStrConst.CD00037_CNC_ZM.equals(SvcKeiStat)))
			{
				//申込種別コードが"00007"(コース変更)もしくは"00022"(STB追加/変更)のとき
				if(JBSbatKKConst.KK0971_MSKM_SBT_CD_00007.equals(mskmSbtCd) || JBSbatKKConst.KK0971_MSKM_SBT_CD_00022.equals(mskmSbtCd))
				{
					//申込種別コードを"00001"(新規申込)に置き換える
					mskmSbtCd = JBSbatKKConst.KK0971_MSKM_SBT_CD_00001;	
				}
			}
		}
		// ANK-4535-00-00 ADD END
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] wribSvcKei					 = new Object[]
		                   					{
											super.opeDate,      //割引サービス対象サービス適用開始年月日
											super.opeDate,      //割引サービス対象サービス適用終了年月日
											super.opeDate,      //予約適用年月日
											netSvcKeiNo,         //サービス契約番号（ネット）
											mskmNo,	             //申込番号
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知対象物適用開始年月日
											super.opeDate,      //契約内容通知対象物適用終了年月日
											super.opeDate       //予約適用年月日
		                   					};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知書表示文言スキーマ検索実行
		this.executeKK_T_IDO_RSV_KK_SELECT_092(wribSvcKei);
		
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfwribSvcKei = db_KK_T_IDO_RSV.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfwribSvcKei != null)
		{
			
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,								inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,					dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,							dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,								dbInfwribSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD,	dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));
// ANK-3636-00-00 2019/07/10 ADD START
			resultMap.put(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD,					dbInfwribSvcKei.getString(JBSbatKK_M_WRISVC_TG_SVC.WRIB_SVC_CD));
// ANK-3636-00-00 2019/07/10 ADD END
			
//v24.00.02 2016/04/27 Mod Start
//			//検索結果を格納
//			serchResultList.add(resultMap);

			//出力対象の表示位置識別番号と一致した場合検索結果リストに格納する。
			if(isOutPutTgDspPstSkcd(dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				super.logPrint.printDebugLog("異動予約_092[出力判定未]："+ dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//検索結果を格納
				serchResultList.add(resultMap);
				
			}
			else
			{
				
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"割引サービス関連情報（コース変更）");
			}
//v24.00.02 2016/04/27 Mod End
			
			//次レコードの読み取り
			dbInfwribSvcKei = db_KK_T_IDO_RSV.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}

	/**
	 * ｅｏ光ネットとｅｏ光電話の申込番号が同一であるか否かを判定し判定結果を返却する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcInfoMap  サービス情報マップ
	 * @param svcMapList  サービス契約マップリスト
	 * @return true 同時申込 false 同時申込でない
	 * @throws Exception
	 */
	private boolean isNetTelSame(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> svcInfoMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約番号（ネット）
		String netSvcKeiNo = svcInfoMap.get(JKKStrConst.CD00130_01);
		
		//サービス契約番号（電話）
		String telSvcKeiNo = svcInfoMap.get(JKKStrConst.CD00130_02);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKei	= new Object[]
		               	             	{
											netSvcKeiNo,             //サービス契約番号（ｅｏ光ネット）
											telSvcKeiNo              //サービス契約番号（ｅｏ光電話）
		               	             	};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_SVC_KEI_KK_SELECT_328(svcKei);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		//v24.00.01 2016/04/21 Mod Start
//		JBSbatCommonDBInterface dbSvcKei = db_KK_T_SVC_KEI.selectNext();
		JBSbatCommonDBInterface dbSvcKei = db_KK_T_SVC_KEI_2.selectNext();
		//v24.00.01 2016/04/21 Mod End
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理
		 *-------------------------------------------------------------------------------------------------*/

		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		//データベースよりレコードが取得できた場合
		if(dbSvcKei != null)
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	
	/**
	 * グレードダウンキャンペーン対象か否かを検索し判定結果を返却する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcInfoMap  サービス情報マップ
	 * @param svcMapList  サービス契約マップリスト
	 * @return true グレードダウンキャンペーン対象　false グレードダウンキャンペーン対象外
	 * @throws Exception
	 */
	private boolean isGreadDownCp(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> svcInfoMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		String netSvcKeiNo = svcInfoMap.get(JKKStrConst.CD00130_01);
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKei	= new Object[]
		               	             	{
											netSvcKeiNo,                                //サービス契約番号
											//v24.00.04 2016/04/28 Add Start
											super.opeDate,                             //割引サービス対象契約適用開始年月日
											super.opeDate,                             //割引サービス対象契約適用終了年月日
											//v24.00.04 2016/04/28 Add End
											JPCDateUtil.addMonth(super.opeDate, -3),   //運用日の3ヶ月前
											super.opeDate                              //予約適用年月日
		               	             	};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_WRIB_SVC_KEI_KK_SELECT_069(svcKei);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbWribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理
		 *-------------------------------------------------------------------------------------------------*/
		
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理
		 *-------------------------------------------------------------------------------------------------*/
		
		//データベースよりレコードが取得できた場合
		if(dbWribSvcKei != null)
		{
			return true; //グレードダウンキャンペーン対象
		}
		else
		{
			return false; //グレードダウンキャンペーン対象外
		}
		
	}
	

	/**
	 * 電話番号解約予約有無を判定し判定結果を返却する。
	 * @param  inMap       契約内容通知書情報
	 * @param  outputBean  出力電文
	 * @param  svcInfoMap  サービス情報マップ
	 * @return true 電話番号キャンセル有 false 電話番号キャンセル無
	 * @throws Exception
	 */
	private boolean getTelNoCanYyk(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> svcInfoMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		String telSvcKeiNo = svcInfoMap.get(JKKStrConst.CD00130_02);
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKei	= new Object[]
		                   	             {
											telSvcKeiNo,             //サービス契約番号（ｅｏ光電話）
//v24.00.15 2016/06/13 Mod Start
//											super.opeDate           //予約適用年月日
											super.opeDate,         //予約適用年月日
//v24.00.15 2016/06/13 Mod End
//v24.00.15 Add Start
											telSvcKeiNo,            //サービス契約番号（ｅｏ光電話）
											super.opeDate          //予約適用年月日
//v24.00.15 Add End
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_SVC_KEI_UCWK_KK_SELECT_128(svcKei);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbSvcKeiUcwk = db_KK_T_SVC_KEI_UCWK.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※出力処理なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		//データベースよりレコードが取得できた場合
		if(dbSvcKeiUcwk != null)
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	//v24.00.00 2016/03/18 Add End

	//v24.00.03 2016/04/28 Add Start

	/**
	 * サービス契約番号を元にサービス契約内訳関連情報を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param tvDspMap    テレビ表示位置マップ
	 * @throws Exception
	 */
// v27.00.00 MOD START
//	private void outSvcKeiUcwkAdchg(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> tvDspMap) throws Exception
	private void outSvcKeiUcwkAdchg(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> tvDspMap, ArrayList<HashMap<String, String>> svcMapList) throws Exception
// v27.00.00 MOD END
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		
		//申込番号
		String mskmNo =  inMap.getString(JBSbatKK_T_MSKM.MSKM_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKeiUcwk					 = new Object[]
		                   					              {
															mskmNo,              //申込番号
// v27.00.02 DEL START
//															super.opeDate,      //予約適用年月日
//															super.opeDate,      //予約適用年月日
// v27.00.02 DEL END
															mskmSbtCd,           //申込種別コード
															super.opeDate,      //契約内容通知書表示文言適用開始年月日
															super.opeDate,      //契約内容通知書表示文言適用終了年月日
															super.opeDate       //予約適用年月日
		                   					              };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約内訳スキーマ検索実行
		this.executeKK_T_SVC_KEI_UCWK_KK_SELECT_129(svcKeiUcwk);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfSvcKeiUcwk = db_KK_T_SVC_KEI_UCWK.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfSvcKeiUcwk != null)
		{
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));//契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));      //表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO,					dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO));             //電話番号
			outmap.setString(JBSbatKKIFM689.BMP_UM,					dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.BMP_UM));            //番ポ有無
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));         //電話番号順番
			outmap.setString(JBSbatKKIFM689.TV_DSP_NO,				tvDspMap.get(dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO))); //テレビ表示位置番号
			
			//v24.00.07 2016/05/10 Del Start
//			//v24.00.04 2016/04/28 Add Start
//			//後続の処理に必要なため変更前識別番号と変更後識別番号（サービス契約内訳番号）を格納する
//			setSvcKeiUcwkInf(dbInfSvcKeiUcwk.getString(JBSbatKK_T_ADCHG_DTL.CHBF_SKBT_NO), dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_NO));
//			//v24.00.04 2016/04/28 Add End
			//v24.00.07 2016/05/10 Del End
			
			//出力対象の表示位置識別番号と一致した場合出力とする
			if(isOutPutTgDspPstSkcd(dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
// v27.00.00 ADD START
				String pplanCd        = null;
				String banpoDiv       = dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.BMP_UM);
				String ksiteiCd       = dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD);
				
				// サービス契約を格納したリストから電話サービスの料金プランコードを取得する
				if(MNGN_DSP_JKN_KSITEI_CD_021.equals(ksiteiCd) || MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
				{
					for(HashMap<String, String> svcMap : svcMapList)
					{
						String svcCd   = svcMap.get(JBSbatKK_T_SVC_KEI.SVC_CD);
						if(JKKStrConst.CD00130_02.equals(svcCd))
						{
							pplanCd = svcMap.get(JBSbatKK_T_SVC_KEI.PPLAN_CD);
						}
					}
					
					boolean outputFlg = false;
					if(Arrays.asList(PPLAN_CD_TELHT_AND_TELMZ).contains(pplanCd))
					{
						// ホーム／メゾンの場合
						if(JKKStrConst.CD00002_UMU_1.equals(banpoDiv))
						{
							// 居住形態：ホーム／メゾン  番ポ：有
							if(MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
							{
								outputFlg = true;
							}
						}
						else
						{
							String svcKeiUcwkNoBf = dbInfSvcKeiUcwk.getString(JBSbatKK_T_ADCHG_DTL.CHBF_SKBT_NO);
							String svcKeiUcwkNoAf = dbInfSvcKeiUcwk.getString(JBSbatKK_T_ADCHG_DTL.CHAF_SKBT_NO);
							
							if(isTelNoHktg(svcKeiUcwkNoBf, svcKeiUcwkNoAf))
							{
								// 居住形態：ホーム／メゾン  番ポ：無  電話番号引継有無：有
								if(MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
								{
									outputFlg = true;
								}
							}
							else
							{
								// 居住形態：ホーム／メゾン  番ポ：無、電話番号引継有無：無
								if(MNGN_DSP_JKN_KSITEI_CD_021.equals(ksiteiCd))
								{
									outputFlg = true;
								}
							}
						}
					}
					else
					{
						// マンションの場合
						if(MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
						{
							outputFlg = true;
						}
					}
					if(outputFlg)
					{
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("サービス契約内訳_129："+ dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
				}
				else
				{
// v27.00.00 ADD END
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("サービス契約内訳_129："+ dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
				
// v27.00.00 ADD START
				}
// v27.00.00 ADD END
			}
			else
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfSvcKeiUcwk.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"サービス契約内訳関連情報（住所変更）");
			}
			
			//次レコードの読み取り
			dbInfSvcKeiUcwk = db_KK_T_SVC_KEI_UCWK.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
//v24.00.03 2016/04/28 Add End
//v24.00.04 2016/04/28 Add Start

	/**
	 * インターネット・TVセット割引又は電話TVセット割引の有無を判定し判定結果を返却する。
	 * @param  inMap       契約内容通知書情報
	 * @param  outputBean  出力電文
	 * @param  svcInfoMap  サービス情報マップ
	 * @return true テレビセット割有 false テレビセット割無
	 * @throws Exception
	 */
	private boolean isNetTvSetWrib(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> svcInfoMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		String tvSvcKeiNo = svcInfoMap.get(JKKStrConst.CD00130_03);
		
		//TVのサービス契約番号がNULLの場合は出力対象外のためfalse(テレビセット割無）を返却する
		if(JKKStringUtil.isNullBlank(tvSvcKeiNo))
		{
			return false;
		}
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] wribSvcKei	= new Object[]
		                   	             {
											tvSvcKeiNo,              //サービス契約番号（ｅｏ光テレビ）
											super.opeDate,          //割引対象サービス契約適用開始年月日
											super.opeDate,          //割引対象サービス契約適用終了年月日
											super.opeDate           //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_WRIB_SVC_KEI_KK_SELECT_070(wribSvcKei);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbWribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※出力処理なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		//データベースよりレコードが取得できた場合
		if(dbWribSvcKei != null)
		{
			return true;
		}
		else
		{
			return false;
		}
	}
//v24.00.04 2016/04/28 Add End
//v24.00.06 2016/05/03 Add Start

	/**
	 * 住所変更時の電話番号追加の有無を判定し判定結果を返却する。
	 * @param  inMap       契約内容通知書情報
	 * @param  outputBean  出力電文
	 * @return true 電話番号追加あり false 電話番号追加なし
	 * @throws Exception
	 */
	private boolean isAdchgTelNo(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//申込番号
		String mskmNo = inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO);
		
		//申込番号が取得できない場合はfalseを返却する
		if(JKKStringUtil.isNullBlank(mskmNo))
		{
			return false;
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKei	= new Object[]
		                   	             {
											mskmNo,                  //申込番号
											super.opeDate,          //予約適用年月日
											super.opeDate           //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_ADCHG_KK_SELECT_025(svcKei);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbAdchg = db_KK_T_ADCHG.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※出力処理なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		//データベースよりレコードが取得できた場合
		if(dbAdchg != null)
		{
			//住所変更後の電話番号数が2番号の場合
			if(ADCHG_AF_TELNOSU.equals(dbAdchg.getString("TELNO_CNT")))      //電話番号数
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		else
		{
			return false;
		}
	}
//v24.00.06 2016/05/03 Add End

//v24.00.07 2016/05/10 Add Start

	/**
	 * 申込番号をキーに住所変更を検索し
	 * 取得した情報をサービス契約内訳リストに格納する
	 * @param inMap      契約内容通知書情報
	 * @throws Exception
	 */
	private void setAdchgDtlInfo(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//申込番号
		String mskmNo =  inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] adChg = new Object[]
		                            	{
											mskmNo            //申込番号
		                            	};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知書表示文言スキーマ検索実行
		this.executeKK_T_ADCHG_KK_SELECT_026(adChg);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfAdchg = db_KK_T_ADCHG.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfAdchg != null)
		{
			
			//後続の処理に必要なため変更前識別番号と変更後識別番号を格納する
			setSvcKeiUcwkInf(dbInfAdchg.getString(JBSbatKK_T_ADCHG_DTL.CHBF_SKBT_NO), dbInfAdchg.getString(JBSbatKK_T_ADCHG_DTL.CHAF_SKBT_NO));
			
			dbInfAdchg = db_KK_T_ADCHG.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
//v24.00.07 2016/05/10 Add End
//v24.00.09 2016/05/13 Add Start
	
	/**
	 * サービス契約番号を元に割引サービス契約関連情報を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param svcMapList  サービス契約マップリスト
	 * @param svcInfoMap  サービス情報マップ
	 * @throws Exception
	 */
	private void outPutWribSvcKeiAdchg(JBSbatServiceInterfaceMap inMap, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> svcInfoMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_WRIB_SVC_KEI.getSql(KK_T_WRIB_SVC_KEI_KK_SELECT_071);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);
		
		//v32.00.02 2017/06/23 Add Start
		//申込番号
		String mskmNo =  inMap.getString(JBSbatKK_T_MSKM.MSKM_NO);
		//v32.00.02 2017/06/23 Add End
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_WRIB_SVC_KEI.setSqlMap(KK_T_WRIB_SVC_KEI_KK_SELECT_071, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] wribSvcKei					 = new Object[]
		                                 {
											"",                  //サービス契約番号
											super.opeDate,       //予約適用年月日
											"",					 //サービス契約番号
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
											//v32.00.02 2017/06/23 Add Start
											super.opeDate,      //予約適用年月日
											mskmNo,              //申込番号
											//v32.00.02 2017/06/23 Add End
											mskmSbtCd,           //申込種別コード
											super.opeDate,      //契約内容通知書表示文言適用開始年月日
											super.opeDate,      //契約内容通知書表示文言適用終了年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知書表示文言スキーマ検索実行
		this.executeKK_T_WRIB_SVC_KEI_KK_SELECT_071(wribSvcKei, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_WRIB_SVC_KEI.setSqlMap(KK_T_WRIB_SVC_KEI_KK_SELECT_071, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfwribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfwribSvcKei != null)
		{

			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,								inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,					dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,							dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,								dbInfwribSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD,	dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));
// v27.00.00 ADD START
			resultMap.put(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_KEI_NO,				dbInfwribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_KEI_NO));
			resultMap.put(JBSbatKK_T_WRIB_SVC_KEI.PLAN_STAYMD,					dbInfwribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.PLAN_STAYMD));
// v27.00.00 ADD END
// ANK-3636-00-00 2019/07/10 ADD START
			resultMap.put(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD,					dbInfwribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD));
// ANK-3636-00-00 2019/07/10 ADD END
			

			//出力対象の表示位置識別番号と一致した場合検索結果リストに格納する。
			if(isOutPutTgDspPstSkcd(dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				super.logPrint.printDebugLog("割引サービス関連情報_071[出力判定未]："+ dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//検索結果を格納
				serchResultList.add(resultMap);
				
			}
			else
			{
				
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"割引サービス関連情報(住所変更)");
			}
			
			//次レコードの読み取り
			dbInfwribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	
	//v24.00.09 2016/05/13 Add End

	/**
	 * SQL文の加工を実施します。
	 * IN句の料金グループをリストのサイズ分、カンマ区切りの()閉じに加工します。 <br>
	 * @param replaceTgList 置換対象文字列
	 * @param strSQL     変更対象のSQL
	 * @param editBfSql  置換対象文字列
	 * @param editAfSql  置換後ベース文字列
	 * @return 変換したSQL
	 */
	private String getEditSQL(ArrayList<String> replaceTgList, String strSQL, String editBfSql, String editAfSql)
	{
		
		//SQL置換用文字列の生成を行う
		StringBuilder sb = new StringBuilder();
		
		//前括弧"("
		sb.append(JBSbatKKConst.STR_STA_KAKKO);
		
		//サービス契約マップリストの件数分ループを行う(取得したサービス契約番号分)
		for(int i = 0; i < replaceTgList.size(); i++)
		{
			
			//一回目以外の場合は","を設定する
			if(0 != i)
			{
				sb.append(JBSbatKKConst.STR_COMMA);
				
			}
			
			//バインド変数"?"を設定する
			sb.append(JBSbatKKConst.STR_BIND);
			
		}
		
		//後括弧")"を設定する
		sb.append(JBSbatKKConst.STR_END_KAKKO);
		
		//SQLファイルに定義されたSQLを置き換える  例)SVC_KEI_NO IN (?) → SVC_KEI_NO_IN (?,?)n件分
		String editSql = strSQL.replaceAll(editBfSql, editAfSql + sb.toString());
		
		//編集したSQLを返却する
		return editSql;
	}
	
	
	
	/**
	 * マップを格納したリストから任意の項目のリストを生成する
	 * @param tgMapList
	 * @param tgName
	 * @return 取り出したリスト
	 */
	private ArrayList<String> getMapForList(ArrayList<HashMap<String, String>> tgMapList, String tgName)
	{
		
		//格納用リスト作成
		ArrayList<String> tgList = new ArrayList<String>();
		
		//マップリストの件数分ループし指定した項目を抽出し出力する
		for(int i = 0; i < tgMapList.size(); i++)
		{
			tgList.add(tgMapList.get(i).get(tgName));
		}

		return tgList;
	}
	
	/**
	 * サービス契約マップより、<サービス契約番号,申込明細番号>の形でマップを形成し
	 * 呼出元に返却する
	 * @param svcMapList
	 * @return 取り出したリスト
	 */
	private HashMap<String, String> getMskmDtlNoMap(ArrayList<HashMap<String, String>> svcMapList)
	{
		
		//格納用マップ作成
		HashMap<String, String> mskmDtlNoMap = new HashMap<String, String>();
		
		//マップリストの件数分ループし指定した項目を抽出し出力する
		for(int i = 0; i < svcMapList.size(); i++)
		{
			mskmDtlNoMap.put(svcMapList.get(i).get(JBSbatKK_T_KNYO_TCH_TG_BUT.SVC_KEI_NO), svcMapList.get(i).get(JBSbatKK_T_KNYO_TCH_TG_BUT.MSKMSHO_DTL_NO));

		}

		return mskmDtlNoMap;
	}
	
	/**
	 * 引数として連携された対象リストの件数分
	 * バインド変数としてパラメータに連携する
	 * @param paramList
	 * @param tgList
	 * @throws Exception
	 */
	private void setListForDbParam(JBSbatCommonDBInterface paramList, ArrayList<String> tgList) throws Exception
	{
		
		//取得したリストの件数分paramListの格納する
		for(int i = 0; i < tgList.size(); i++)
		{
			paramList.setValue(tgList.get(i));                 //連携されたリスト
		}

	}
	
	/**
	 * 申込種別コードが住所変更か否かの判定を行う
	 * 住所変更の時はtrue 住所変更以外の時はfalseを返却する
	 * @param mskmSbtCd
	 * @return true 住所変更 false 住所変更以外
	 * @throws Exception
	 */
	private boolean isAdChg(String mskmSbtCd) throws Exception
	{
		
		//申込種別コードが住所変更の時trueを返却する
		if(MSKM_SBT_ADCHG.equals(mskmSbtCd))
		{
			return true;
		}
		
	return false;
	}
	
	/**
	 * 契約内容通知対象物スキーマより取得したサービス契約マップ
	 * が空か否かの判定を行う
	 * @param svcKeiMapList
	 * @return true 空 false 空以外
	 * @throws Exception
	 */
	private boolean isSvcKeiMapEmpty(ArrayList<HashMap<String, String>> svcKeiMapList) throws Exception
	{
		
		//サービス契約マップが空だった場合、trueを返却する
		if(svcKeiMapList.isEmpty())
		{
		
			return true;
		}
		
		//空以外の場合falseを返却する
		
	return false;
	}
	
	/**
	 * マイナーアラームに出力するための情報の設定を行う
	 * ログ出力
	 * エラーフラグがtrueの場合、後続の処理にてマイナーアラームが設定される
	 * @param inMap 契約内容通知対象契約情報
	 * @throws Exception
	 */
	private void outPutMinorAlarmLog(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		
		//契約内容通知書番号を取得する
		String knytcsNo = inMap.getString(JBSbatKKIFM689.KNYTCS_NO);

		//ログ出力用文字列を出力する
		StringBuilder logStr = new StringBuilder();
		logStr.append(JBSbatKK_T_KNYTCS.KNYTCS_NO + "=" + inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO) + ":");
// OM-2018-0000531 2018/06/06 MOD START
//		logStr.append(JBSbatKK_T_KNYTCS.MSKM_NO + "=" + inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO + ":"));
		logStr.append(JBSbatKK_T_KNYTCS.MSKM_NO + "=" + inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO) + ":");
// OM-2018-0000531 2018/06/06 MOD END
		logStr.append(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO + "=" + inMap.getString(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO) + ":");
		logStr.append(JBSbatKK_T_KNYTCS.SYSID + "=" + inMap.getString(JBSbatKK_T_KNYTCS.SYSID) + ":");
		logStr.append(JBSbatKK_T_KNYTCS.KEI_SEIRT_YMD + "=" + inMap.getString(JBSbatKK_T_KNYTCS.KEI_SEIRT_YMD) + ":");
		
		
		//ログ出力に利用するため、契約内容通知対象スキーマからレコードが取得できなかった通知書番号をリストにつめる
		super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.EKKB0630NW, new String[]{"契約内容通知対象物" ,logStr.toString(),knytcsNo});
		
		
	}
	
	//v23.00.03 2015/02/14 Add Start
	
	/**
	 * 文言表示条件識別番号が設定されているか否かの判定を行う
	 * @param MngnDspJknCd 検査対象の文言表示条件個別指定コード
	 * @return true 未設定 false 設定
	 * @throws Exception
	 */
	private boolean isMngnDspJknCd(String MngnDspJknCd) throws Exception
	{
		
		//文言表示条件個別指定コードがnull or blankかを判定する
		if(JKKStringUtil.isNullBlank(MngnDspJknCd))
		{
			return true;
		}
		
		return false;
		
	}

	/**
	 * 引数にて渡された文言表示条件識別番号に一致するレコードを文言共通情報リストより取り出し
	 * 返却する
	 * @param mngnDspJknKsiteiCd 文言共通情報リストより取出したい文言表示条件識別コードを指定する
	 * @return 引数にて渡された文言表示条件識別番号に一致するリストを返却する
	 * @throws Exception
	 */
	private ArrayList<JBSbatCommonDBInterface> getTgMngnMapList(String mngnDspJknKsiteiCd) throws Exception
	{
		
		//文言表示条件識別番号で指定した出力対象のレコードを設定するためのリストを生成
		ArrayList<JBSbatCommonDBInterface> tgMngnMapList = new ArrayList<JBSbatCommonDBInterface>();
		
		//文言共通情報リストの件数分ループを行う
		for(int i = 0; i < mngnInfoMap.size(); i++)
		{
			//対象マップを取得
			JBSbatCommonDBInterface tgMngnMap = mngnInfoMap.get(i);
			
			//対象マップより、文言条件識別コードをを取得し、識別コードが一致する場合、返却リストへと格納する
			if(tgMngnMap.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD).equals(mngnDspJknKsiteiCd))
			{
		
				//対象のマップをリストに格納する
				tgMngnMapList.add(tgMngnMap);
			
			}
			
		}
		
		//
		return tgMngnMapList;
	}
	
	//v23.00.03 2015/02/14 Add End
	
	//v24.00.00 2016/03/18 Add Start

	/**
	 * 出力対象表示位置番号リスト返却
	 * @param svcCdList サービスコードリスト
	 * @param svcMapList サービスマップリスト
	 * @throws Exception
	 */
//	v24.00.08 2016/05/10 Mod Start
//	private void getOutPutTgList(ArrayList<String> svcCdList) throws Exception
	private void getOutPutTgList(ArrayList<String> svcCdList, ArrayList<HashMap<String, String>> svcMapList) throws Exception
//	v24.00.08 2016/05/10 Mod End
	{
		//全サービス共通の表示位置番号を設定する。
		outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_001);
		outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_002);
		outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_003);
		outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_004);
		outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_005);
		outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_006);
		outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_026);

		//ネットサービスが存在していればネットの表示位置番号を設定する。
		if(svcCdList.contains(JKKStrConst.CD00130_01))
		{
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_007);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_008);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_009);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_010);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_011);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_012);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_027);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_028);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_029);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_030);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_031);
			// ANK-4427-00-00 ADD START
			// TypeNかつ電話オプション(B138)が存在する場合、追加で表示位置を設定する。
			if(jdgTypen(svcMapList)) 
			{
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_013);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_014);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_015);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_016);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_017);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_018);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_032);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_033);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_034);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_035);
				outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_036);
			}
			// ANK-4427-00-00 ADD END
		}
		//電話サービスが存在していれば電話の表示位置番号を設定する。
		if(svcCdList.contains(JKKStrConst.CD00130_02))
		{
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_013);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_014);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_015);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_016);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_017);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_018);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_032);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_033);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_034);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_035);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_036);
		}
//v24.00.08 2016/05/10 Del Start
//		//テレビサービスが存在していればテレビの表示位置番号を設定する。
//		if(svcCdList.contains(JKKStrConst.CD00130_03))
//		{
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_019);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_020);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_021);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_022);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_023);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_024);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_025);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_037);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_038);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_039);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_040);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_041);
//			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_042);
//		}
//v24.00.08 2016/05/10 Del End
//v24.00.08 2016/05/10 Add Start
		//テレビサービスが存在しているかつ出力対象の料金グループコードの場合テレビの表示位置番号を設定する。
		if(svcCdList.contains(JKKStrConst.CD00130_03) && isOutPutTgPrcGrpCd(svcMapList))
		{
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_019);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_020);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_021);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_022);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_023);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_024);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_025);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_037);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_038);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_039);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_040);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_041);
			outputTgDspSkbtCdList.add(JKKStrConst.DSP_PST_SKCD_042);
		}
//v24.00.08 2016/05/10 Add End
	}

	/**
	 * サービス契約マップより、<サービスコード,サービス契約番号>の形でサービス情報マップを作成し
	 * 呼出元に返却する
	 * @param svcInfoMapList サービス情報マップリスト
	 * @return svcNoMap 作成したリスト
	 * @throws Exception
	 */
	private HashMap<String, String> getSvcInfoMap(ArrayList<HashMap<String, String>> svcInfoMapList) throws Exception
	{
		
		//格納用マップ作成
		HashMap<String, String> svcCdMap = new HashMap<String, String>();
		
		//マップリストの件数分ループし指定した項目を抽出し出力する
		for(int i = 0; i < svcInfoMapList.size(); i++)
		{
			svcCdMap.put(svcInfoMapList.get(i).get(JBSbatKK_T_SVC_KEI.SVC_CD), svcInfoMapList.get(i).get(JBSbatKK_T_SVC_KEI.SVC_KEI_NO));

		}

		return svcCdMap;
	}

	/**
	 * 連携された表示位置識別番号が出力対象か判定を行う
	 * @param dspSkbtCd 表示位置識別番号
	 * @return true 出力対象 false 出力対象外
	 */
	private boolean isOutPutTgDspPstSkcd(String dspSkbtCd)
	{
		if(this.outputTgDspSkbtCdList.contains(dspSkbtCd))
		{
			return true;
			
		}
		return false;
	}

	/**
	 * 出力レコードの特定処理にて出力対象外と判定された情報をログに出力する
	 * @param knytcs_no 契約内容通知書番号
	 * @param knytcs_dsp_mngn_cd 契約内容通知書表示文言コード
	 * @param dsp_pst_skcd 表示位置識別番号
	 * @param tgProcess 対象処理
	 */
	private void createLog(String knytcs_no, String knytcs_dsp_mngn_cd, String dsp_pst_skcd, String tgProcess)
	{
		super.logPrint.printDebugLog("【出力対象外】　契約内容通知書番号："+ knytcs_no +
				"　契約内容通知書表示文言コード："+ knytcs_dsp_mngn_cd  +
						"　表示位置識別番号：" + dsp_pst_skcd +
						"　対象処理：" + tgProcess + ")");
	}
	

	/**
	 * 約款割引の対象か否かを返却する
	 * @param svcInfoMap サービス情報マップ
	 * @param svcMapList サービスマップリスト
	 * @return true 出力対象 false 出力対象外
	 */
	private boolean isYakkanWrib(HashMap<String, String> svcInfoMap, ArrayList<HashMap<String, String>> svcMapList)
	{
		//ネット契約が存在かつ電話契約が存在している場合処理を行う
		if ((!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)))
				&& (!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_02)))) 
		{

			// 格納用マップ作成
			HashMap<String, String> svcMap = new HashMap<String, String>();

			for (int i = 0; i < svcMapList.size(); i++) 
			{
				// 判定用に格納する
				svcMap = svcMapList.get(i);
				// 格納したレコードが電話サービスであるか判定を行う
				if (JKKStrConst.CD00130_02.equals(svcMap.get(JBSbatKK_T_SVC_KEI.SVC_CD))) 
				{
					// 存在した場合一致したレコードのサービス提供ステータスが照査済(020)又は締結済(030)であるか判定を行う
					if (JKKStrConst.CD00037_SHOSA_ZUMI.equals(svcMap.get(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT))
							|| JKKStrConst.CD00037_CNC_ZM.equals(svcMap.get(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT)))
					{
						return true;
					}
				}
			}
		}
		return false;
	}
	

	/**
	 * 	テレビ情報マップ作成処理
	 * サービスマップリストを元にテレビ契約のサービス情報マップを作成して返却する。
	 * @param svcMapList サービスマップリスト
	 * @return tvInfMap テレビサービスのマップ
	 */
	private HashMap<String, String> getTvInfMap(ArrayList<HashMap<String, String>> svcMapList)
	{

		// 格納用マップ作成
		HashMap<String, String> tvInfMap = new HashMap<String, String>();

		for (int i = 0; i < svcMapList.size(); i++) 
		{
			// 判定用に格納する
			tvInfMap = svcMapList.get(i);
			// 格納したレコードがテレビサービスであるか判定を行う
			if (JKKStrConst.CD00130_03.equals(tvInfMap.get(JBSbatKK_T_SVC_KEI.SVC_CD)))
			{
				return tvInfMap;
			}
		}
		return new HashMap<String, String>();
	}
	

	/**
	 * 割引サービス関連情報の検索結果取得処理の順次呼び出し処理及び
	 * 取得した情報の出力判定を行い契約内容通知ファイルに出力する
	 * @param inMap 入力電文
	 * @param outputBean 出力電文
	 * @param svcMapList サービスマップリスト
	 * @param svcInfoMap サービス情報マップ
	 * @param mskmSbtCd 申込種別コード
	 * @throws Exception
	 */
//v24.00.09 2016/05/13 Mod Start
//	private void outPutWribSvcKeiInfo(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> svcInfoMap) throws Exception
	private void outPutWribSvcKeiInfo(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> svcInfoMap, String mskmSbtCd) throws Exception
//v24.00.09 2016/05/13 Mod End
	{
		/**------------------------------------------------------------------------------------------------  
		 * 変数定義
		 *-------------------------------------------------------------------------------------------------*/		
		
		//テレビ料金コースコード
		String tvPcrsCd = null;
		
		//TV情報マップに料金コースコードが取得できた場合格納する
		if(!JKKStringUtil.isNullEmpty(getTvInfMap(svcMapList)))
		{
			//料金コースコードを格納
			tvPcrsCd = getTvInfMap(svcMapList).get(JBSbatKK_T_SVC_KEI.PCRS_CD);
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 検索結果取得処理
		 *-------------------------------------------------------------------------------------------------*/
		
		//v24.00.09 2016/05/13 Del Start
//		//割引サービス情報取得
//		outPutWribSvcKei(inMap, svcMapList, svcInfoMap);
//		
//		//ネットサービス契約が存在するかつ申込番号が取得できた場合に処理を行う
//		if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)) &&
//				!JKKStringUtil.isNullBlank(inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO)))
//		{
//			// 割引サービス契約関連情報取得（コース変更確定時の適用キャンペーン）
//			outPutCrsChgWribCp(inMap, svcMapList, svcInfoMap);
//		}
		//v24.00.09 2016/05/13 Del End
		
		//v24.00.09 2016/05/13 Add Start
		//住所変更か否かによって各種契約検索処理の条件を変更する
		if(isAdChg(mskmSbtCd))
		{
			//割引サービス情報取得（住所変更）
			outPutWribSvcKeiAdchg(inMap, svcMapList, svcInfoMap);
		}
		else
		{
			//割引サービス情報取得
			outPutWribSvcKei(inMap, svcMapList, svcInfoMap);
			
			//コース変更確定時の適用キャンペーンの判定対象である場合に処理を行う
			if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)) &&
			!JKKStringUtil.isNullBlank(inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO)))
			{
				// 割引サービス契約関連情報取得（コース変更確定時の適用キャンペーン）
				outPutCrsChgWribCp(inMap, svcMapList, svcInfoMap);
			}
			// IT1-2023-0000028 ADD START
			// 割引サービス契約関連情報取得（コース変更確定時の適用キャンペーン）
			outPutOnuKknKjWribCp(inMap, svcMapList, svcInfoMap);
			// IT1-2023-0000028 ADD END
		}
		//v24.00.09 2016/05/13 Add End


		
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定処理
		 *-------------------------------------------------------------------------------------------------*/
		
// ANK-3636-00-00 2019/07/10 ADD START
		// タブレットキャンペーン情報判定
		serchResultList = getTabletCmpSet(inMap);
// ANK-3636-00-00 2019/07/10 ADD END

		//出力判定処理用にマップを作成
		HashMap<String, String> tmpMap = new HashMap<String, String>();
		
		for (int i = 0; i < this.serchResultList.size(); i++) 
		{
			//出力マップ
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			// 出力判定用にマップを格納する
			tmpMap = serchResultList.get(i);

			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				tmpMap.get(JBSbatKK_T_KNYTCS.KNYTCS_NO));                      //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));    //契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));          //表示位置識別コード
			outmap.setString(JBSbatKKIFM689.TELNO_JUN,				tmpMap.get(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));             //電話番号順番

			//文言表示条件個別指定コードがNULLであれば出力を行う
			if(JKKStringUtil.isNullBlank(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("割引サービス契約［個別：NULL］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
			//地デジ・スターチャンネルセット(009)と一致した場合コース変更が行われていない判定を行う
			else if(MNGN_DSP_JKN_KSITEI_CD_009.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				//料金コースがA37(地デジ・ＢＳコース）の場合出力を行う
				if(JKKStrConst.CD00134_A37.equals(tvPcrsCd))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("割引サービス契約［個別：009］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
			}
			//グレードダウンキャンペーン(010)と一致した場合、グレードダウンキャンペーンの対象か判定を行う
			else if(MNGN_DSP_JKN_KSITEI_CD_010.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				//グレードダウンキャンペーン判定処理
				if(isGreadDownCp(inMap, outputBean, svcInfoMap))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("割引サービス契約［個別：010］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
			}
			//v24.00.04 2016/04/28 Add Start
			//テレビセット割の約款文言(014)と一致した場合、テレビセット割が存在するかの対象か判定を行う
			else if(MNGN_DSP_JKN_KSITEI_CD_014.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				//v24.00.05 2016/05/02 Del Start
//				//テレビセット割時の約款文言判定処理
//				if(isNetTvSetWrib(inMap, outputBean, svcInfoMap))
//				{
//					outmap.setOutFlg(true);
//					super.logPrint.printDebugLog("割引サービス契約［個別：014］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//					
//					//出力ファイルリストに設定
//					outputBean.addOutMapList(outmap);
//				}
				//v24.00.05 2016/05/02 Del End
				//v24.00.05 2016/05/02 Add Start
				//テレビ約款割の対象か否か判定を行う
				if(isTvYakkanWrib(svcMapList))
				{
					//テレビセット割時の約款文言判定処理
					if(isNetTvSetWrib(inMap, outputBean, svcInfoMap))
					{
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("割引サービス契約［個別：014］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
				}
				//v24.00.05 2016/05/02 Add End
			}
			//v24.00.04 2016/04/28 Add End
			// IT2-2019-0000016 ADD START
			//高速割の約款文言(030)と一致した場合、高速割が適用するか判定を行う
			else if(MNGN_DSP_JKN_KSITEI_CD_030.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				//高速割時の約款文言判定処理
				if(isNetKosokuWrib(inMap, outputBean, svcMapList))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("割引サービス契約［個別：030］："+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
			}
			// IT2-2019-0000016 ADD END
// ANK-3636-00-00 2019/07/10 ADD START
			else if (MNGN_DSP_JKN_KSITEI_CD_031.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
					|| MNGN_DSP_JKN_KSITEI_CD_032.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				// タブレットのキャンペーン文言設定
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("割引サービス契約［個別：" + tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD) + "］："
						+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));

				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
// ANK-3636-00-00 2019/07/10 ADD END
			// ANK-4038-00-00 2021/09/30 ADD START
			else if (MNGN_DSP_JKN_KSITE_CD_033.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				
				if (!jdgRzkazmKjHuyoAnken(inMap, svcInfoMap))
				{
					// ローゼット化済工事不要案件ではない場合
					// 5G10GグレードアップCP文言設定
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("割引サービス契約［個別：" + tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD) + "］："
							+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));

					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
			}
			// ANK-4038-00-00 2021/09/30 ADD END
			// ANK-4315-00-00 ADD START
			// ANK-4315-15-00 MOD START
			//else if (MNGN_DSP_JKN_KSITE_CD_037.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
			else if (MNGN_DSP_JKN_KSITE_CD_037.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
					|| MNGN_DSP_JKN_KSITE_CD_040.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				if (OnuKoijum(svcInfoMap))
				{
					// 出力レコードを判定する
					if (MNGN_DSP_JKN_KSITE_CD_037.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
							&& (!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01))))
					{
						// ＯＮＵ交換工事費が発生するかつローゼット済工事不要案件以外かつネットが存在する場合
						// ホームゲートウェイの「ＯＮＵ交換工事費」「ＯＮＵ交換工事費減額」文言設定
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("割引サービス契約［個別：" + tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD) + "］："
								+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
					else if (MNGN_DSP_JKN_KSITE_CD_040.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
							&& JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)))
					{
						// ＯＮＵ交換工事費が発生するかつローゼット済工事不要案件以外の場合
						// ホームゲートウェイの「ＯＮＵ交換工事費」「ＯＮＵ交換工事費減額」文言設定
						outmap.setOutFlg(true);
						super.logPrint.printDebugLog("割引サービス契約［個別：" + tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD) + "］："
								+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
				}
			}
			// ANK-4315-00-00 ADD END
			// ANK-4315-15-00 MOD END
			// ANK-4599-00-00 ADD START
			// 重複不可キャンペーンとのチェック(041)と一致した場合
			else if(MNGN_DSP_JKN_KSITEI_CD_041.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				if(jdgOverlap(svcInfoMap))
				{
					// 「１０ギガグレードアップ月額割引キャンペーン」文言設定
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("割引サービス契約［個別：" + tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD) + "］："
							+ tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
			}
			// ANK-4599-00-00 ADD END
			else
			{
				//上記以外の文言表示条件個別指定コードの場合は処理が行えないためマイナーアラームを出力する
				outPutKsiteiCdMinorAlarmLog(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD), 
						inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));
			}
		}
	}
	
	/**
	 * サービス契約関連情報取得処理（判定）
	 * 引数を元に出力対象か否かを判定する。
	 * @param inMap 入力マップ
	 * @param outmap 出力マップ
	 * @param outputBean 出力電文
	 * @param svcInfoMap サービス情報マップ
	 * @param svcMapList サービスマップリスト
	 * @param dbInfSvcKei DB取得値
	 * @param icjknJdgFlg 一時金判定フラグ
	 *　　　　true  : 一時金情報取得処理から呼び出し
	 *　　　　false : サービス情報取得処理から呼び出し	 
	 * @throws Exception
	 */
	// ANK-4427-00-00 MOD START
//	private void outSvcKnrnInfoJdg(JBSbatServiceInterfaceMap inMap, JBSbatServiceInterfaceMap outmap, JBSbatOutputItem outputBean, HashMap<String, String> svcInfoMap, ArrayList<HashMap<String, String>> svcMapList, JBSbatCommonDBInterface dbInfSvcKei) throws Exception
	private void outSvcKnrnInfoJdg(JBSbatServiceInterfaceMap inMap, JBSbatServiceInterfaceMap outmap, JBSbatOutputItem outputBean, HashMap<String, String> svcInfoMap, ArrayList<HashMap<String, String>> svcMapList, JBSbatCommonDBInterface dbInfSvcKei,boolean icjknJdgFlg) throws Exception
	// ANK-4427-00-00 MOD END
	{
		// ANK-4427-00-00 ADD START
		// 一時金情報取得処理から呼び出しの場合、NTT卸か判定する
		if(icjknJdgFlg)
		{
			//NTT卸区分がNULLまたは空以外 かつ 料金グループコードが "02"(ネット)の場合
			if(!JKKStringUtil.isNullBlank(typenJdg(dbInfSvcKei)))
			{
				//ネット事務手数料(NTT卸用)(044)と一致した場合コース変更が行われていない判定を行う
				if(MNGN_DSP_JKN_KSITEI_CD_044.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("一時金［個別：044］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
				return;
			}
			// ANK-4427-00-00 ADD START
			//NTT卸区分がNULLまたは空の場合
			else
			{
				//ネット事務手数料(NTT卸用)(044)と一致した場合、処理を行わない
				if(MNGN_DSP_JKN_KSITEI_CD_044.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
				{
					return;
				}
			}
			// ANK-4427-00-00 ADD END
		}
		// ANK-4427-00-00 ADD END
		//文言表示条件個別指定コードがNULLであれば出力を行う
		if(JKKStringUtil.isNullBlank(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			outmap.setOutFlg(true);
			super.logPrint.printDebugLog("サービス契約［個別：NULL］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
			
			//出力ファイルリストに設定
			outputBean.addOutMapList(outmap);
			
		}
		//電話番号解約予約あり(003)と一致した場合電話番号解約予約有無の判定を行う
		else if(MNGN_DSP_JKN_KSITEI_CD_003.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			//ｅｏ電話サービスが存在する場合に処理を行う
			if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_02)))
			{
				// サービス契約関連情報取得（電話番号解約予約有無）
				if(getTelNoCanYyk(inMap, outputBean, svcInfoMap))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("サービス契約［個別：003］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
			}
		}
		//電話番号解約予約なし(007)と一致した場合電話番号解約予約有無の判定を行う
		else if(MNGN_DSP_JKN_KSITEI_CD_007.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			//ｅｏ電話サービスが存在する場合に処理を行う
			if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_02)))
			{
				// サービス契約関連情報取得（電話番号解約予約有無）
				if(!getTelNoCanYyk(inMap, outputBean, svcInfoMap))
				{
					outmap.setOutFlg(true);
					super.logPrint.printDebugLog("サービス契約［個別：007］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
					
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
			}
		}
//v24.00.14 2016/06/10 Del Start
//		//インターネット・電話セット申込による約款割引の表示制御(008)と一致した場合約款割引の出力判定を行う
//		else if(MNGN_DSP_JKN_KSITEI_CD_008.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
//		{
//			//約款割引対象であるかの判定処理（ネットサービス・電話サービス存在チェック）
//			if(isYakkanWrib(svcInfoMap, svcMapList))
//			{
//				//約款割引対象であるかの判定処理（ネットサービス・電話サービス同時申込チェック）
//				if(isNetTelSame(inMap, outputBean, svcInfoMap))
//				{
//					outmap.setOutFlg(true);
//					super.logPrint.printDebugLog("サービス契約［個別：008］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
//					
//					//出力ファイルリストに設定
//					outputBean.addOutMapList(outmap);
//				}
//			}
//		}
//v24.00.14 2016/06/10 Del End
		//住変ネット/テレビセット割：テレビ確認(004)と一致した場合は判定を行う
		else if(MNGN_DSP_JKN_KSITEI_CD_004.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			//テレビサービス存在チェック
			if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_03)))
			{
// v27.00.00 ADD START
				String svcKeiNoNet = svcInfoMap.get(JKKStrConst.CD00130_01);
				String svcKeiNoTv  = svcInfoMap.get(JKKStrConst.CD00130_03);
				if(isSeikyMatch(svcKeiNoNet, svcKeiNoTv))
				{
					// ネットとＴＶの請求先が同一である場合に、ファイル出力処理を実施する
// v27.00.00 ADD END
				
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("サービス契約［個別：004］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
// v27.00.00 ADD START
				}
// v27.00.00 ADD END
			}
		}
		//住変ネット/電話セット割：ネット確認(005)と一致した場合は判定を行う
		else if(MNGN_DSP_JKN_KSITEI_CD_005.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			//ネットサービス存在チェック
			if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)))
			{
// v27.00.00 ADD START
				String svcKeiNoNet = svcInfoMap.get(JKKStrConst.CD00130_01);
				String svcKeiNoTel = svcInfoMap.get(JKKStrConst.CD00130_02);
				if(isSeikyMatch(svcKeiNoNet, svcKeiNoTel))
				{
					// ネットと電話の請求先が同一である場合に、ファイル出力処理を実施する
// v27.00.00 ADD END
				
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("サービス契約［個別：005］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
// v27.00.00 ADD START
				}
// v27.00.00 ADD END
			}
		}
		//住変ＴＶ/電話セット割：テレビ確認(006)と一致した場合は判定を行う
		else if(MNGN_DSP_JKN_KSITEI_CD_006.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
// v27.00.00 MOD START
//			//テレビサービス存在かつネットサービス未存在チェック
//			if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_03)) &&
//					JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)))
			// テレビサービス存在
			if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_03)))
			{
				// サービス契約番号
				String svcKeiNoNet = svcInfoMap.get(JKKStrConst.CD00130_01);
				String svcKeiNoTel = svcInfoMap.get(JKKStrConst.CD00130_02);
				String svcKeiNoTv  = svcInfoMap.get(JKKStrConst.CD00130_03);

				// 請求契約番号
				String seikyKeiNoNet = JKKStringUtil.nullToBlank(getSeikyKeiNo(svcKeiNoNet));
				String seikyKeiNoTel = JKKStringUtil.nullToBlank(getSeikyKeiNo(svcKeiNoTel));
				String seikyKeiNoTv  = JKKStringUtil.nullToBlank(getSeikyKeiNo(svcKeiNoTv));
				
				if( (seikyKeiNoTel.equals(seikyKeiNoTv) && !seikyKeiNoNet.equals(seikyKeiNoTel)) )
				{
					// 電話とＴＶの請求先が同一であり、ネットと電話が別請求（ＴＶとも別請求）もしくはネットが存在しない
// v27.00.00 MOD END
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("サービス契約［個別：006］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
// v27.00.00 ADD START
				}
// v27.00.00 ADD END
			}
		}
		//v24.00.06 2016/05/03 Add Start
		//住変時電話番号追加あり(017)と一致した場合は判定を行う
		else if(MNGN_DSP_JKN_KSITEI_CD_017.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			//住所変更時電話番号追加有無チェック
			if(isAdchgTelNo(inMap, outputBean))
			{
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("サービス契約［個別：017］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
		}
		//住変時電話番号追加あり(018)と一致した場合は判定を行う
		else if(MNGN_DSP_JKN_KSITEI_CD_018.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			//住所変更時電話番号追加有無チェック
			if(!isAdchgTelNo(inMap, outputBean))
			{
				outmap.setOutFlg(true);
				super.logPrint.printDebugLog("サービス契約［個別：018］："+ dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
		}
		//v24.00.06 2016/05/03 Add End
//v24.00.14 2016/06/10 Add Start
		//インターネット・電話申込時の表示制御(019)出力判定を行う
		else if(MNGN_DSP_JKN_KSITEI_CD_019.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			// ネット・電話が同時申込されていない場合電話の標準工事費を出力する
			if(!isYakkanWrib(svcInfoMap, svcMapList))
			{
				// OM-2019-0001179 ADD START
				// inMapのSYSIDから卸契約か判定する(卸会員の場合(true)は出力しない)
				if (!jdgOrsjgsKei(inMap))
				{
				// OM-2019-0001179 ADD END
					outmap.setOutFlg(true);
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				// OM-2019-0001179 ADD START
				}
				// OM-2019-0001179 ADD END
			}
		}
//v24.00.14 2016/06/10 Add End
		//v24.00.06 2016/05/03 Add End
// v27.00.00 ADD START
		else if(MNGN_DSP_JKN_KSITEI_CD_023.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			// 休止キャンペーン情報を取得し、休止開始日・休止解除日を取得する
			String pauseStaymd = outmap.getString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD);
			String pauseRlsymd = outmap.getString(JBSbatKKIFM689.SVC_PAUSE_RLS_YMD);
			String[] puaseCpDate = getPauseCpStaymdAndRlsYmd(svcMapList, pauseStaymd, pauseRlsymd);
			
			// 取得した休止開始日・休止解除日を設定する
			outmap.setString(JBSbatKKIFM689.SVC_PAUSE_CHRG_STAYMD, puaseCpDate[0]);
			outmap.setString(JBSbatKKIFM689.SVC_PAUSE_RLS_YMD,     puaseCpDate[1]);
			
			outmap.setOutFlg(true);
			//出力ファイルリストに設定
			outputBean.addOutMapList(outmap);
		}
// v27.00.00 ADD END
// v29.00.03 2017/02/07 Add Start
		
		// 文言表示条件個別指定コードが"025"(電話番号キャンセルチェック)の場合、電話番号がキャンセルか否かの判断を行い出力要否を決定する
		else if(MNGN_DSP_JKN_KSITE_CD_025.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			
			//電話の解約有無を判断するためサービス契約内訳のカレント情報を取得する
			HashMap<String,String> svcKeiUcwkMap = getSvcKeiUcwkInfo(dbInfSvcKei.getString(JBSbatKK_T_KICJKN.SVC_KEI_UCWK_NO));
			
			//取得したサービス契約内訳のカレント情報の取得有無を確認する
			if(svcKeiUcwkMap != null)
			{
				//サービス契約内訳のカレント情報が取得できた場合、電話のキャンセル有無を判断する
				
				//確認対象のサービス契約内訳スキーマを確認し電話が解約状態でない事の確認を行う
				if(!isTellEnd(svcKeiUcwkMap))
				{
					
					//解約状態でない場合、ファイルの出力設定を行う
					outmap.setOutFlg(true);
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
				
			}
			
		}

		// 文言表示条件個別指定コードが"026"(コース変更・長割/即割)の場合、出力対象の異動区分がコース変更と割引の同時申込であるかの判断を行う。
		else if(MNGN_DSP_JKN_KSITE_CD_026.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			//出力有無を判断するため、対象となるレコードの移動区分を取得する
			String idoDiv = inMap.getString(JBSbatKK_T_KNYTCS.IDO_DIV);
			
			//契約内容通知書の異動区分が"99997"(コース変更・長割/即割)の場合出力対象とする。nullの場合は出力しない
			if(JKKBatConst.IDO_DIV_CHO_SOKU_WRIB.equals(idoDiv))
			{
				outmap.setOutFlg(true);
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
			
		}
// v29.00.03 2017/02/07 Add End
		// v52.00.00 ANK-4006-00-00 2021/02/22 ADD START
		// 文言表示条件個別指定コードが"033"(5G/10Gへのコース変更時、「変更工事費」文言出力制御)の場合、変更工事費が「無料」か「有料」か判断する。
		else if(MNGN_DSP_JKN_KSITE_CD_033.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			// 検索結果から料金コースコードを取得する
			String pcrsCd_KK3001 = dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.PCRS_CD + "_KK3001");
			// 出力対象判定を行うためデータを取得する
// ANK-4662-00-00 MOD START
//			// ANK-4038-00-00 MOD START
////			if (jdg5G10GUpgradeCP(inMap, dbInfSvcKei))
//			if (jdg5G10GUpgradeCP(inMap, dbInfSvcKei) && !jdgRzkazmKjHuyoAnken(inMap, dbInfSvcKei))
//			// ANK-4038-00-00 MOD END
			if (judChgConstrCost(inMap))
// ANK-4662-00-00 MOD END
			{
				// 変更工事費が発生する場合
				// 料金コースコードの設定されている場合、有料レコードのファイル出力設定を行う
				if(!JKKStringUtil.isNullBlank(pcrsCd_KK3001))
				{
					outmap.setOutFlg(true);
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
			}
			else
			{
				// 変更工事費が発生しない場合
				// 料金コースコードの設定されていない場合、無料レコードのファイル出力設定を行う
				if(JKKStringUtil.isNullBlank(pcrsCd_KK3001))
				{
					outmap.setOutFlg(true);
					//出力ファイルリストに設定
					outputBean.addOutMapList(outmap);
				}
			}
		}
		// v52.00.00 ANK-4006-00-00 2021/02/22 ADD END
		// ANK-3989-00-00 2021/03/30 ADD START
		// 文言表示条件個別指定コードが"034"(マンション光コンセント方式1G)
		// または文言表示条件個別指定コードが"035"(マンション光コンセント方式5G)
		// または文言表示条件個別指定コードが"036"(マンション光コンセント方式10G)
		else if( MNGN_DSP_JKN_KSITE_CD_034.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
				|| MNGN_DSP_JKN_KSITE_CD_035.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
				|| MNGN_DSP_JKN_KSITE_CD_036.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
				)
		{
			// マンション光コンセントは1G/5G/10Gで同一の料金コースコード、料金プランコードのため複数レコードが取得される。
			// 棟内速度コードを取得し、出力レコードを判定する。
			// 棟内速度コードを取得する
			String tonaiSpeedCD = getTonaiSpeedCD(dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.TK_HOSHIKI_KEI_NO));
			
			// 出力レコードを判定する
			if(MNGN_DSP_JKN_KSITE_CD_035.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
					&& JKKStrConst.TONAI_SPEED_CD_5G.equals(tonaiSpeedCD))
			{
				// 棟内速度コードが"008"（5G/5G）の場合は、
				// 文言表示条件個別指定コードが"035"(マンション光コンセント方式5G)のレコードを出力する
				outmap.setOutFlg(true);
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
			else if(MNGN_DSP_JKN_KSITE_CD_036.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
					&& JKKStrConst.TONAI_SPEED_CD_10G.equals(tonaiSpeedCD))
			{
				// 棟内速度コードが"009"（10G/10G）の場合は、
				// 文言表示条件個別指定コードが"036"(マンション光コンセント方式10G)のレコードを出力する
				outmap.setOutFlg(true);
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
			else if(MNGN_DSP_JKN_KSITE_CD_034.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
					&& !(JKKStrConst.TONAI_SPEED_CD_5G.equals(tonaiSpeedCD) || JKKStrConst.TONAI_SPEED_CD_10G.equals(tonaiSpeedCD)))
			{
				// 上記以外の棟内速度コードの場合は、
				// 文言表示条件個別指定コードが"034"(マンション光コンセント方式1G)のレコードを出力する
				outmap.setOutFlg(true);
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
		}
		// ANK-3989-00-00 2021/03/30 ADD END
		
		// ANK-4315-00-00 ADD START
		// ANK-4315-15-00 MOD START
		//else if(MNGN_DSP_JKN_KSITE_CD_037.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		else if(MNGN_DSP_JKN_KSITE_CD_037.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
				|| MNGN_DSP_JKN_KSITE_CD_040.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
		//	if (OnuKoijum(dbInfSvcKei))
		//	{
			// 出力レコードを判定する
			if (MNGN_DSP_JKN_KSITE_CD_037.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
					&& (!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01))))
			{
				// ＯＮＵ交換工事費が発生するかつローゼット済工事不要案件以外かつネットが存在する場合
				// 文言表示条件個別指定コードが"037"のレコードを（ホームゲートウェイのサービス追加時「ＯＮＵ交換工事費、ＯＮＵ交換工事費減額」文言出力制御）出力する
				outmap.setOutFlg(true);
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
			else if (MNGN_DSP_JKN_KSITE_CD_040.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
					&& JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)))
			{
				// ＯＮＵ交換工事費が発生するかつローゼット済工事不要案件以外かつネットが存在しない場合
				// 文言表示条件個別指定コードが"040"のレコードを（電話単独時の「ONU交換工事費」および「ONU交換工事費減額」文言出力制御）出力する
				outmap.setOutFlg(true);
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
		}
		// ANK-4315-00-00 ADD END
		// ANK-4315-15-00 MOD END
		
		// ANK-4443-00-00 2023/06/09 ADD START
		// 文言表示条件個別指定コードが"038"(光配線の標準工事費（ネット）の出力有無制御に使用)の場合、提供方式契約料金の標準工事費を確認し、標準工事費の有無で出力要否を判別する。
		else if(MNGN_DSP_JKN_KSITE_CD_038.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			// 提供方式契約番号を取得
			String tkHoshikiKeiNo = dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.TK_HOSHIKI_KEI_NO);
			 //提供方式番号を取得
			if(!JKKStringUtil.isNullBlank(tkHoshikiKeiNo))
			{
				String knytcsHtkCkanMoji = null;
				// 提供方式契約料金スキーマ情報取得
				JBSbatCommonDBInterface dbMap = null;		
	
				// 提供方式契約料金スキーマ情報を抽出します。
				executeKK_T_TK_HSK_KEI_PRC_KK_SELECT_007(new String[]{tkHoshikiKeiNo, MANS_PRC_SKBT_CD_011, super.opeDate});
				dbMap = db_KK_T_TK_HSK_KEI_PRC.selectNext();
	
				// 提供方式契約料金スキーマ情報が存在する場合
				if (null != dbMap)
				{
					if (null != dbMap.getBigDecimal(JBSbatKK_T_TK_HSK_KEI_PRC.KANYU_KEI_SEIKY_AMNT))
					{
						knytcsHtkCkanMoji = JBSbatStringUtil.trim(String.format("%1$,3d", dbMap.getBigDecimal(JBSbatKK_T_TK_HSK_KEI_PRC.KANYU_KEI_SEIKY_AMNT).intValue()));
					}
					else
					{
						knytcsHtkCkanMoji = "0";
					}
					// マンションの標準工事費が０円より大きい場合
					if ("0".compareTo(knytcsHtkCkanMoji) < 0)
					{
						// 取得した休止開始日・休止解除日を設定する
						outmap.setString(JBSbatKKIFM689.MANS_PRC_SKBT_CD, MANS_PRC_SKBT_CD_011);
						outmap.setOutFlg(true);
						//出力ファイルリストに設定
						outputBean.addOutMapList(outmap);
					}
				}
			}
		}
		// 文言表示条件個別指定コードが"039"(光配線の標準工事費（電話）の出力有無制御に使用)の場合、提供方式契約料金の標準工事費を確認し、標準工事費の有無で出力要否を判別する。
		// (※ネットサービスが存在する場合、電話サービスに対する標準工事費は発生しないため、電話サービスの標準工事費は表示しない。)
		else if(MNGN_DSP_JKN_KSITE_CD_039.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			// ネット・電話が同時申込されていない場合電話の標準工事費を出力する
			if(!isYakkanWrib(svcInfoMap, svcMapList))
			{
				// 提供方式契約番号を取得
				String tkHoshikiKeiNo = dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.TK_HOSHIKI_KEI_NO);
				if(!JKKStringUtil.isNullBlank(tkHoshikiKeiNo))
				{
					String knytcsHtkCkanMoji = null;
					// 提供方式契約料金スキーマ情報取得
					JBSbatCommonDBInterface dbMap = null;		
		
					// 提供方式契約料金スキーマ情報を抽出します。
					executeKK_T_TK_HSK_KEI_PRC_KK_SELECT_007(new String[]{tkHoshikiKeiNo, MANS_PRC_SKBT_CD_011, super.opeDate});
					dbMap = db_KK_T_TK_HSK_KEI_PRC.selectNext();
		
					// 提供方式契約料金スキーマ情報が存在する場合
					if (null != dbMap)
					{
						if (null != dbMap.getBigDecimal(JBSbatKK_T_TK_HSK_KEI_PRC.KANYU_KEI_SEIKY_AMNT))
						{
							knytcsHtkCkanMoji = JBSbatStringUtil.trim(String.format("%1$,3d", dbMap.getBigDecimal(JBSbatKK_T_TK_HSK_KEI_PRC.KANYU_KEI_SEIKY_AMNT).intValue()));
						}
						else
						{
							knytcsHtkCkanMoji = "0";
						}
						// マンションの標準工事費が０円より大きい場合
						if ("0".compareTo(knytcsHtkCkanMoji) < 0)
						{
							// 取得した休止開始日・休止解除日を設定する
							outmap.setString(JBSbatKKIFM689.MANS_PRC_SKBT_CD, MANS_PRC_SKBT_CD_011);
							outmap.setOutFlg(true);
							//出力ファイルリストに設定
							outputBean.addOutMapList(outmap);
						}
					}
				}
			}
		}
		// ANK-4443-00-00 2023/06/09 ADD END
		// ANK-4427-00-00 ADD START
		// 文言表示条件個別指定コードが"042"（ＴｙｐｅＮの標準工事費（ホームタイプ））または
		// "043"（ＴｙｐｅＮの標準工事費（マンションタイプ））の場合、NTT卸区分を確認し、出力要否を判別する。
		else if(MNGN_DSP_JKN_KSITEI_CD_042.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
				|| MNGN_DSP_JKN_KSITEI_CD_043.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			String nttorsjdgRslt = typenJdg(dbInfSvcKei);
			
			if(JKKStrConst.NTT_HOME_TYPE.equals(nttorsjdgRslt)
					&& MNGN_DSP_JKN_KSITEI_CD_042.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				// NTT卸区分が"01"(ホームタイプ)場合
				// 文言表示条件個別指定コードが"042"（ＴｙｐｅＮの標準工事費（ホームタイプ））のレコードを出力する
				outmap.setOutFlg(true);
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
			else if (JKKStrConst.NTT_MANSION_TYPE.equals(nttorsjdgRslt)
					&& MNGN_DSP_JKN_KSITEI_CD_043.equals(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				// NTT卸区分が"02"(マンションタイプ)場合
				// 文言表示条件個別指定コードが"043"（ＴｙｐｅＮの標準工事費（マンションタイプ））のレコードを出力する
				outmap.setOutFlg(true);
				//出力ファイルリストに設定
				outputBean.addOutMapList(outmap);
			}
		}
		// ANK-4427-00-00 ADD END
		else
		{
			//上記以外の文言表示条件個別指定コードの場合は処理が行えないためマイナーアラームを出力する
			outPutKsiteiCdMinorAlarmLog(dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD), 
					inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
					dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
					dbInfSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));
		}

	}
	

	/**
	 * マイナーアラームに出力するための情報の設定を行う
	 * @param mngnDspJknKsiteiCd 文言表示条件個別指定コード
	 * @param knytcsNo 契約内容通知書番号
	 * @param knytcsDspMngnCd 契約内容通知書表示文言コード
	 * @param dspPstSkcd 表示位置識別番号
	 * @throws Exception
	 */
	private void outPutKsiteiCdMinorAlarmLog(String mngnDspJknKsiteiCd, String knytcsNo, String knytcsDspMngnCd, String dspPstSkcd) throws Exception
	{
		
		super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.EKKB1280CW, new String[]{mngnDspJknKsiteiCd, knytcsNo, knytcsDspMngnCd, dspPstSkcd});
		
	}

	//v24.00.00 2016/03/18 Add End
	//v24.00.04 2016/04/28 Add Start

	/**
	 * 連携されたサービス契約内訳番号が出力対象か判定を行う
	 * @param svcKeiUcwkNo サービス契約内訳番号
	 * @return true 出力対象 false 出力対象外
	 */
	private boolean isOutPutTgSvcKeiUcwk(String svcKeiUcwkNo)
	{
		//取得したサービス契約内訳番号がNULLもしくはサービス契約内訳情報リストに存在する場合は出力する
		if(JKKStringUtil.isNullBlank(svcKeiUcwkNo)
				|| SvcKeiUcwkInfList.contains(svcKeiUcwkNo))
		{
			return true;
			
		}
		return false;
	}

	/**
	 * サービス契約内訳リスト作成処理
	 * オプションサービス契約関連情報取得及びサブオプションサービス契約関連情報取得において
	 * 暫定対応として出力判定に用いるサービス契約内訳リストの作成を行う
	 * @param chbfSkbtNo 変更前識別番号
	 * @param chafSkbtNo 変更後識別番号
	 * @throws Exception
	 */
	private void setSvcKeiUcwkInf(String chbfSkbtNo ,String chafSkbtNo) throws Exception
	{
		//変更前識別番号がNULLでないかつサービス契約内訳情報リストに存在しない場合に処理を行う
		if(!JKKStringUtil.isNullBlank(chbfSkbtNo)
				&& !SvcKeiUcwkInfList.contains(chbfSkbtNo))
		{
			//変更前識別番号をサービス契約内訳リストに格納する
			SvcKeiUcwkInfList.add(chbfSkbtNo);        //変更前識別番号
		}
		
		//サービス契約内訳番号がサービス契約内訳情報リストに存在しない場合に処理を行う
		if(!SvcKeiUcwkInfList.contains(chafSkbtNo))
		{
			//サービス契約内訳番号（変更後識別番号）をサービス契約内訳リストに格納する
			SvcKeiUcwkInfList.add(chafSkbtNo);        //サービス契約内訳番号（変更後識別番号）
		}
	}
	//v24.00.04 2016/04/28 Add End
	//v24.00.05 2016/05/02 Add Start

	/**
	 * 約款割引の対象か否かを返却する
	 * @param svcMapList サービスマップリスト
	 * @return true 出力対象 false 出力対象外
	 */
	private boolean isTvYakkanWrib(ArrayList<HashMap<String, String>> svcMapList)
	{
		// 格納用マップ作成
		HashMap<String, String> svcMap = new HashMap<String, String>();
		
		for (int i = 0; i < svcMapList.size(); i++) 
		{
			// 判定用に格納する
			svcMap = svcMapList.get(i);
			// 格納したレコードがテレビサービスであるか判定を行う
			if (JKKStrConst.CD00130_03.equals(svcMap.get(JBSbatKK_T_SVC_KEI.SVC_CD))) 
			{
				// 存在した場合一致したレコードのサービス提供ステータスが照査済(020)又は締結済(030)であるか判定を行う
				if (JKKStrConst.CD00037_SHOSA_ZUMI.equals(svcMap.get(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT))
						|| JKKStrConst.CD00037_CNC_ZM.equals(svcMap.get(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT)))
				{
					return true;
				}
			}
		}
		return false;
	}
	//v24.00.05 2016/05/02 Add End
	//v24.00.08 2016/05/10 Add Start

	/**
	 * 出力対象の料金グループか否かを判定し返却する
	 * @param svcMapList サービスマップリスト
	 * @return true 出力対象 false 出力対象外
	 */
	private boolean isOutPutTgPrcGrpCd(ArrayList<HashMap<String, String>> svcMapList)
	{
		//料金グループコード
		String prcGrpCd = getTvInfMap(svcMapList).get(JBSbatKK_T_SVC_KEI.PRC_GRP_CD);
		
		//取得した料金グループコードがeo光テレビ(K-CAT) 又はeo光テレビ(再送信) であるか判定を行う
		if (JKKStrConst.CD00133_11.equals(prcGrpCd)
				|| JKKStrConst.CD00133_13.equals(prcGrpCd)) 
		{
			return true;
		}
		else 
		{
			return false;
		}
	}
	//v24.00.08 2016/05/10 Add End
	//v25.00.00 2016/04/20 Add Start
	/**
	 * サービス契約マップより、ネットサービスに紐付く項目（ファミリーパック契約有無、料金コースコード）を取得する
	 * @param svcInfoMapList サービス情報マップリスト
	 * @return 
	 * @throws Exception
	 */
	/**
	 * ファミリーパック有無、料金コースコード、ネットオプションパック識別コードを取得する
	 * @param svcInfoMapList サービス契約情報
	 * @return
	 * @throws Exception
	 */
	private void getNetItem(ArrayList<HashMap<String, String>> svcInfoMapList) throws Exception
	{
		// 初期値
		famipaKeiUm = "";
		pcrsCd = "";
		//v32.00.00 2017/04/10 Add Start
		netOpPackSkbtCd = "";
		//v32.00.00 2017/04/10 Add End
		
		//マップリストの件数分ループし指定した項目を抽出し出力する（ネットは最大１契約、ファミリーパックはネットに紐付く）
		for(int i = 0; i < svcInfoMapList.size(); i++)
		{
			// ネットの場合
			if (JKKStrConst.CD00130_01.equals(svcInfoMapList.get(i).get(JBSbatKK_T_SVC_KEI.SVC_CD)))
			{
				famipaKeiUm = svcInfoMapList.get(i).get(JBSbatKK_M_KNYTCS_DSP_MNGN.FAMIPA_KEI_UM);
				pcrsCd = svcInfoMapList.get(i).get(JBSbatKK_T_SVC_KEI.PCRS_CD);
				//v32.00.00 2017/04/10 Add Start
				netOpPackSkbtCd = svcInfoMapList.get(i).get(JBSbatKK_M_KNYTCS_DSP_MNGN.NET_OP_PACK_SKCD);
				//v32.00.00 2017/04/10 Add End
				break;
			}
		}
	}

	/**
	 * 機器オプションサービス契約に多機能ルータ・ホームゲートウェイＶＡ機能が存在するかどうかを確認する
	 * @param svcKeiKaisenUcwkNo サービス契約回線内訳番号
	 * @return ＶＡ機能有無（true：有、false：無）
	 * @throws Exception
	 */
	private boolean getVaUm(String svcKeiKaisenUcwkNo) throws Exception
	{
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] kktkSvcKei = new Object[]
		                                 {
											svcKeiKaisenUcwkNo,		//サービス契約回線内訳番号
											super.opeDate,			//予約適用年月日
											super.opeDate			//予約適用年月日
		                                 };

		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		//機器提供サービス契約スキーマ検索実行
		this.executeKK_T_KKTK_SVC_KEI_KK_SELECT_231(kktkSvcKei);

		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKktkSvcKei = db_KK_T_KKTK_SVC_KEI.selectNext();

		//取得結果を返却
		if (dbInfKktkSvcKei == null)
		{
			return false;
		}
		else
		{
			return true;
		}
	}
	

	/**
	 * 機器オプションサービス契約に多機能ルータ・ホームゲートウェイＶＡ機能が存在するかどうかを確認する（住所変更）
	 * @param mskmkNo 申込番号
	 * @return ＶＡ機能有無（true：有、false：無）
	 * @throws Exception
	 */
	private boolean getVaUmAdChg(String mskmkNo) throws Exception
	{
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] kktkSvcKei = new Object[]
		                                 {
											mskmkNo,				//申込番号
											super.opeDate			//予約適用年月日
		                                 };

		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		//機器提供サービス契約スキーマ検索実行
		this.executeKK_T_KKTK_SVC_KEI_KK_SELECT_228(kktkSvcKei);

		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKktkSvcKei = db_KK_T_KKTK_SVC_KEI.selectNext();

		//取得結果を返却
		if (dbInfKktkSvcKei == null)
		{
			return false;
		}
		else
		{
			return true;
		}
	}
	//v25.00.00 2016/04/20 Add End

	/**
	 * 出力対象機器付加情報コード・安心補償の端末リストを作成する
	 * @param
	 * @return
	 * @throws Exception
	 */
	private void getTgKkHkInfoAnsinList() throws Exception
	{
		//出力対象機器付加情報コード・安心補償（Xperia/ARROWS/LAVIE）
		outputTgKkHkInfoAnsinList.add(KKHK_INFO_CD_066);
		outputTgKkHkInfoAnsinList.add(KKHK_INFO_CD_067);
		outputTgKkHkInfoAnsinList.add(KKHK_INFO_CD_068);
		outputTgKkHkInfoAnsinList.add(KKHK_INFO_CD_069);

		//出力対象機器付加情報コード・安心補償（MediaPad）
		outputTgKkHkInfoAnsinMediaPadList.add(KKHK_INFO_CD_074);
		outputTgKkHkInfoAnsinMediaPadList.add(KKHK_INFO_CD_075);
		//v28.00.00 ANK-3066-00-00 Add Start
		outputTgKkHkInfoAnsinMediaPadList.add(KKHK_INFO_CD_076);
		outputTgKkHkInfoAnsinMediaPadList.add(KKHK_INFO_CD_077);
		//v28.00.00 ANK-3066-00-00 Add End
		//v33.00.01 ANK-3269-00-00 Add Start
		outputTgKkHkInfoAnsinMediaPadList.add(KKHK_INFO_CD_900);
		outputTgKkHkInfoAnsinMediaPadList.add(KKHK_INFO_CD_901);
		//v33.00.01 ANK-3269-00-00 Add End

	}

	/**
	 * 連携された出力対象機器付加情報コードが安心補償（Xperia/ARROWS/LAVIE）の出力対象か判定を行う
	 * @param kikiHukaInfoCd 機器付加情報コード
	 * @return true 出力対象 false 出力対象外
	 */
	private boolean isOutPutkikiHukaInfoCdAnsin(String kikiHukaInfoCd)
	{
		if(this.outputTgKkHkInfoAnsinList.contains(kikiHukaInfoCd))
		{
			return true;
			
		}
		return false;
	}

	/**
	 * 連携された出力対象機器付加情報コードが安心補償（MediaPad）の出力対象か判定を行う
	 * @param kikiHukaInfoCd 機器付加情報コード
	 * @return true 出力対象 false 出力対象外
	 */
	private boolean isOutPutkikiHukaInfoCdAnsinMediaPad(String kikiHukaInfoCd)
	{
		if(this.outputTgKkHkInfoAnsinMediaPadList.contains(kikiHukaInfoCd))
		{
			return true;
			
		}
		return false;
	}
	//v25.00.00 2016/04/20 Add End
			
	
	//v24.00.14 2016/06/14 Add Start

	/**
	 * 契約成立年月日を年月に変換して返却する
	 * 6桁に満たない場合は編集せずに返却する
	 * @param keiSeirtYmd 契約成立年月日
	 * @return 契約成立年月
	 */
	private String makeKeiSeirtYm(String keiSeirtYmd)
	{
		
		//6桁以上ある場合
		if(6 <= keiSeirtYmd.length())
		{
			//年月だけ切出して返却する
			return keiSeirtYmd.substring(0, 6);
		}

		return keiSeirtYmd;
	}
	//v24.00.14 2016/06/14 Add End
// v27.00.00 ADD START
	/**
	 * SQLKEY(KK_SELECT_051)で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_KAKINS_KK_SELECT_051(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_KAKINS.selectBySqlDefine(paramList, KK_T_KAKINS_KK_SELECT_051);
	}

	/**
	 * SQLKEY(KK_SELECT_226)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKTK_SVC_KEI_KK_SELECT_236(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());

		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_KK_SELECT_236);
	}

	/**
	 * SQLKEY(KK_SELECT_073)で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_WRIB_SVC_KEI_KK_SELECT_073(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());

		// DBアクセスを実行します
		db_KK_T_WRIB_SVC_KEI.selectBySqlDefine(paramList, KK_T_WRIB_SVC_KEI_KK_SELECT_073);
	}

	/**
	 * SQLKEY(KK_SELECT_053)で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_SVKEIUW_EOH_TEL_KK_SELECT_053(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_SVKEIUW_EOH_TEL.selectBySqlDefine(paramList, KK_T_SVKEIUW_EOH_TEL_KK_SELECT_053);
	}

	/**
	 * ２サービスが同一請求であり、出力対象であるか判定する
	 * @param svcKeiNo1 サービス契約番号１
	 * @param svcKeiNo2 サービス契約番号２
	 * @return true 出力対象 false 出力対象外
	 * @throws Exception 
	 */
	private String getSeikyKeiNo(String svcKeiNo) throws Exception
	{
		if(JKKStringUtil.isNullBlank(svcKeiNo))
		{
			return null;
		}
		
		// サービス契約番号の請求契約番号を取得
		this.executeKK_T_KAKINS_KK_SELECT_051(new String[]{svcKeiNo, this.opeDate, this.opeDate});
		String seikyKeiNo = null;
		JBSbatCommonDBInterface dbInfKakins = db_KK_T_KAKINS.selectNext();
		while(dbInfKakins != null)
		{
			seikyKeiNo  = dbInfKakins.getString(JBSbatKK_T_KAKINS.SEIKY_KEI_NO);
			dbInfKakins = db_KK_T_KAKINS.selectNext();
		}
		
		return seikyKeiNo;
	}

	/**
	 * ２サービスが同一請求であり、出力対象であるか判定する
	 * @param svcKeiNo1 サービス契約番号１
	 * @param svcKeiNo2 サービス契約番号２
	 * @return true 出力対象 false 出力対象外
	 * @throws Exception 
	 */
	private boolean isSeikyMatch(String svcKeiNo1, String svcKeiNo2) throws Exception
	{
		// サービス契約番号１の請求契約番号を取得
		String seikyKeiNo1 = getSeikyKeiNo(svcKeiNo1);
		
		// サービス契約番号２の請求契約番号を取得
		String seikyKeiNo2 = getSeikyKeiNo(svcKeiNo2);
		
		if(!JKKStringUtil.isNullBlank(seikyKeiNo1) && !JKKStringUtil.isNullBlank(seikyKeiNo2) && seikyKeiNo1.equals(seikyKeiNo2))
		{
			return true;
		}
		else
		{
			return false;
		}
	}

	/**
	 * 休止キャンペーンの休止開始日・休止解除日を取得する
	 * @param svcMapList  サービスマップリスト
	 * @param pauseStaymd 休止開始日
	 * @param pauseRlsymd 休止解除日
	 * @return String[] [0]:休止開始日、[1]:休止解除日
	 * @throws Exception 
	 */
	private String[] getPauseCpStaymdAndRlsYmd(ArrayList<HashMap<String, String>> svcMapList, String pauseStaymd, String pauseRlsymd) throws Exception
	{
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//変更前SQL
		String sqlBefore =  db_KK_T_WRIB_SVC_KEI.getSql(KK_T_WRIB_SVC_KEI_KK_SELECT_073);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 
		 *-------------------------------------------------------------------------------------------------*/ 
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_WRIB_SVC_KEI.setSqlMap(KK_T_WRIB_SVC_KEI_KK_SELECT_073, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		this.executeKK_T_WRIB_SVC_KEI_KK_SELECT_073(new String[]{"", this.opeDate, this.opeDate}, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_WRIB_SVC_KEI.setSqlMap(KK_T_WRIB_SVC_KEI_KK_SELECT_073, sqlBefore);
		
		String planStaymd = null;
		String aplyCnt    = null;
		JBSbatCommonDBInterface dbWribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
		if(dbWribSvcKei != null)
		{
			// 割引サービス契約（休止キャンペーン情報）が取得できた場合
			while(dbWribSvcKei != null)
			{
				planStaymd  = dbWribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.PLAN_STAYMD);
				aplyCnt     = dbWribSvcKei.getString(JBSbatKK_M_WRIB_SVC_DTL.APLY_CNT);
				dbWribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
			}
			if(!JKKStringUtil.isNullBlank(planStaymd))
			{
				// 休止キャンペーンのプラン開始日に適用月を加算した日付を休止解除日として、呼出し元に返却
				String svcPauseRlsYmd = JPCDateUtil.addMonth(planStaymd.substring(0, 6) + "01", Integer.parseInt(aplyCnt));
				return new String[]{planStaymd, svcPauseRlsYmd};
			}
			else
			{
				// プラン開始が未設定のため、運用日を基準にして休止解除日を算出しｈ、呼出し元に返却
				String svcPauseRlsYmd = JPCDateUtil.addMonth(super.opeDate.substring(0, 6) + "01", Integer.parseInt(aplyCnt));
				return new String[]{super.opeDate, svcPauseRlsYmd};
			}
		}
		else
		{
			// 割引サービス契約（休止キャンペーン情報）が取得できなかった場合
			// 引数の休止開始日・休止解除日を返却する
			return new String[]{pauseStaymd, pauseRlsymd};
		}
	}

	/**
	 * サービス契約内訳番号から電話番号を取得する
	 * @param svcKeiNo サービス契約番号
	 * @return telNo 電話番号
	 * @throws Exception 
	 */
	private String getTelNo(String svcKeiNo) throws Exception
	{
		if(JKKStringUtil.isNullBlank(svcKeiNo))
		{
			return null;
		}
		
		// サービス契約番号の請求契約番号を取得
		this.executeKK_T_SVKEIUW_EOH_TEL_KK_SELECT_053(new String[]{svcKeiNo, this.opeDate});
		
		String telNo = null;
		JBSbatCommonDBInterface dbSvcUcwkTel = db_KK_T_SVKEIUW_EOH_TEL.selectNext();
		while(dbSvcUcwkTel != null)
		{
			telNo = dbSvcUcwkTel.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO);
			dbSvcUcwkTel = db_KK_T_SVKEIUW_EOH_TEL.selectNext();
		}
		
		return telNo;
	}

	/**
	 * 番号引継（２つのサービス契約内訳番号の電話番号が一致する）かチェックする
	 * @param svcKeiUcwkNo1  サービス契約内訳番号１
	 * @param svcKeiUcwkNo2  サービス契約内訳番号２
	 * @return true:一致 false:不一致
	 * @throws Exception 
	 */
	private boolean isTelNoHktg(String svcKeiUcwkNo1, String svcKeiUcwkNo2) throws Exception
	{
		
		if(JKKStringUtil.isNullBlank(svcKeiUcwkNo1) || JKKStringUtil.isNullBlank(svcKeiUcwkNo2))
		{
			return false;
		}
		
		// 検索（サービス契約内訳番号１）
		String telNo1 = JKKStringUtil.nullToBlank(getTelNo(svcKeiUcwkNo1));
		
		// 検索（サービス契約内訳番号２）
		String telNo2 = JKKStringUtil.nullToBlank(getTelNo(svcKeiUcwkNo2));
		
		if(telNo1.equals(telNo2))
		{
			return true;
		}
		else
		{
			return false;
		}
	}
// v27.00.00 ADD END
// v27.00.01 ADD START
	/**
	 * SQLKEY(KK_SELECT_031)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	機器提供サービス契約内訳番号
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KKOP_SVC_KEI_KK_SELECT_031(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_KKOP_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKOP_SVC_KEI_KK_SELECT_031);
	}

	/**
	 * 指摘の機器に対して端末補正オプションが存在するか確認する
	 * 
	 * @param kktkSvcKeiNo
	 * @return true：端末保障あり ／ falase：端末保障なし
	 * @throws Exception
	 */
	private boolean isTnmtHosyouUmu(String kktkSvcKeiNo) throws Exception
	{
		if(JKKStringUtil.isNullBlank(kktkSvcKeiNo))
		{
			return false;
		}
		
		// サービス契約番号の請求契約番号を取得
		this.executeKK_T_KKOP_SVC_KEI_KK_SELECT_031(new String[]{kktkSvcKeiNo, this.opeDate});
		
		// 端末補正有無
		boolean tnmtHosyou = false;
		
		JBSbatCommonDBInterface dbSvcUcwkTel = db_KK_T_KKOP_SVC_KEI.selectNext();
		while(dbSvcUcwkTel != null)
		{
			// 端末保障オプションのステータスをチェックし"あり"とするステータスであれば、変数にtrueを設定する
			String kkopStat = dbSvcUcwkTel.getString(JBSbatKK_T_KKOP_SVC_KEI.KKOP_SVC_KEI_STAT);
			if(Arrays.asList(TNMT_SHYOU_ARI_KKOP_STAT).contains(kkopStat))
			{
				tnmtHosyou = true;
			}
			dbSvcUcwkTel = db_KK_T_KKOP_SVC_KEI.selectNext();
		}
		return tnmtHosyou;
	}
// v27.00.01 ADD END
// v27.00.03 ADD START
	private String[] getPauseCpStaymdAndRlsYmdForIdoRsv(String svcKeiNo) throws Exception
	{
		if(JKKStringUtil.isNullBlank(svcKeiNo))
		{
			return null;
		}
		
		// サービス契約番号の請求契約番号を取得
		this.executeKK_T_IDO_RSV_KK_SELECT_096(new String[]{svcKeiNo});
		
		String pauseYmd    = null;
		String pauseRlsYmd = null;
		JBSbatCommonDBInterface dbIdoRsv = db_KK_T_IDO_RSV.selectNext();
		while(dbIdoRsv != null)
		{
			// 異動予約詳細コードからサービス休止日・サービス休止解除日か判定し、設定する
			String idoRsvDtlCd = dbIdoRsv.getString(JBSbatKK_T_IDO_RSV.IDO_RSV_DTL_CD);
			if(JBSbatKKConst.CD01167_IDO_RSV_DTL_CD_005.equals(idoRsvDtlCd))
			{
				pauseYmd    = dbIdoRsv.getString(JBSbatKK_T_IDO_RSV.RSV_APLY_YMD);
			}
			if(JBSbatKKConst.CD01167_IDO_RSV_DTL_CD_006.equals(idoRsvDtlCd))
			{
				pauseRlsYmd = dbIdoRsv.getString(JBSbatKK_T_IDO_RSV.RSV_APLY_YMD);
			}
			
			dbIdoRsv = db_KK_T_IDO_RSV.selectNext();
		}
		
		return new String[]{pauseYmd, pauseRlsYmd};
	}

	/**
	 * SQLKEY(KK_SELECT_092)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	割引サービス対象サービス適用開始年月日
	 *		 	割引サービス対象サービス適用終了年月日
	 *		 	予約適用年月日
	 *		 	サービス契約番号
	 *		 	申込番号
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList 
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_IDO_RSV_KK_SELECT_096(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_IDO_RSV.selectBySqlDefine(paramList, KK_T_IDO_RSV_KK_SELECT_096);
	}
// v27.00.03 ADD END
// v27.00.04 ADD START
	private boolean isOutputMngnDspJknKsiteiCd_021or022(ArrayList<HashMap<String, String>> svcMapList, String banpoDiv, String ksiteiCd, String svcKeiUcwkStat)
	{
		String pplanCd = null;
		
		for(HashMap<String, String> svcMap : svcMapList)
		{
			String svcCd   = svcMap.get(JBSbatKK_T_SVC_KEI.SVC_CD);
			if(JKKStrConst.CD00130_02.equals(svcCd))
			{
				pplanCd = svcMap.get(JBSbatKK_T_SVC_KEI.PPLAN_CD);
			}
		}
		
		boolean outputFlg = false;
		if(Arrays.asList(PPLAN_CD_TELHT_AND_TELMZ).contains(pplanCd))
		{
			// ホーム／メゾンの場合
			if(JKKStrConst.CD00002_UMU_1.equals(banpoDiv))
			{
				// 居住形態：ホーム／メゾン  番ポ：有
				if(MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
				{
					outputFlg = true;
				}
			}
			else if(JKKStrConst.CD01616_STAT_SHOSAZUMI.equals(svcKeiUcwkStat) || JKKStrConst.CD01616_STAT_TEIKETSUZUMI.equals(svcKeiUcwkStat))
			{
				// 番ポ：無、サービス契約内訳ステータス：照査済／締結済
				if(MNGN_DSP_JKN_KSITEI_CD_021.equals(ksiteiCd))
				{
					outputFlg = true;
				}
			}
			else
			{
				// 番ポ：無、サービス契約内訳ステータス：サービス提供中／休止・中断中／停止中
				if(MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
				{
					outputFlg = true;
				}
			}
		}
		else
		{
			// マンションの場合
			if(MNGN_DSP_JKN_KSITEI_CD_022.equals(ksiteiCd))
			{
				outputFlg = true;
			}
		}
		return outputFlg;
	}
	/**
	 * SQLKEY(KK_SELECT_132)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *		 	申込種別コード
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_UCWK_KK_SELECT_132(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());

		// DBアクセスを実行します
		db_KK_T_SVC_KEI_UCWK.selectBySqlDefine(paramList, KK_T_SVC_KEI_UCWK_KK_SELECT_132);
	}
// v27.00.04 ADD END
	
	//v27.00.06 OM-2016-0002489 Add Start
	/**
	 * 引数のサービス契約内訳番号と表示位置識別番号が出力対象かどうか判断する
	 * @param tvDspMap テレビ表示位置マップ
	 * @param svcKeiUcwkNo サービス契約内訳番号
	 * @param dspPstKbtbCd  表示位置識別番号
	 * @return true：出力する ／ falase：出力しない
	 * @throws Exception
	 */
	private boolean isTvDspMap(HashMap<String, String> tvDspMap, String svcKeiUcwkNo, String dspPstKbtbCd) throws Exception
	{
		//表示位置識別番号が024以外かつ038以外の場合は判定を行わずに出力する。
		if(!JKKStrConst.DSP_PST_SKCD_024.equals(dspPstKbtbCd) && !JKKStrConst.DSP_PST_SKCD_038.equals(dspPstKbtbCd))
		{
			return true;
		}
		//引数のサービス契約内訳番号がテレビ表示位置マップに存在する場合に出力する。
		return tvDspMap.containsKey((svcKeiUcwkNo));
	}
	//v27.00.06 OM-2016-0002489 Add End

	//v29.00.03 2017/02/08 Add Start
	/**
	 * SQLKEY(KK_SELECT_132)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	運用年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_UCWK_KK_SELECT_134(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		// DBアクセスを実行します
		db_KK_T_SVC_KEI_UCWK.selectBySqlDefine(paramList, KK_T_SVC_KEI_UCWK_KK_SELECT_134);
	}
	

	/**
	 * 引数に渡されたサービス契約内訳番号を元にサービス契約内訳スキーマのカレントを取得し
	 * マップに格納し、呼出元に返却する
	 * 返却項目
	 *  サービス開始年月日 
	 *  サービス終了年月日
	 *  サービスキャンセル年月日
	 *  サービス契約内訳ステータス
	 * @param svcKeiUcwkNo　サービス契約内訳番号
	 * @return 結果が取得出来た場合（サービス契約内訳のマップ） 結果が取得出来なかった場合（null）
	 * @throws Exception
	 */
	private HashMap<String,String> getSvcKeiUcwkInfo(String svcKeiUcwkNo) throws Exception
	{

		
		//DBから取得したサービス契約内訳情報を格納するマップ
		HashMap<String,String> svcUcwkMap = null;
		
		
		//引数として渡されたサービス契約内訳番号が空でない事を確認する
		if(!JKKStringUtil.isNullBlank(svcKeiUcwkNo))
		{
			
			//nullまたは空白でない場合は、確認用のSQLを発行する
			
			// バインド変数を設定
			Object[] telParam = new Object[]
			{
					svcKeiUcwkNo,          //サービス契約内訳番号
					super.opeDate,        //予約適用年月日
			};
			
			//SQLを実行する
			executeKK_T_SVC_KEI_UCWK_KK_SELECT_134(telParam);
		
		}
		
		//検索結果を取得する。
		JBSbatCommonDBInterface dbInfSvcKeiUcwk = db_KK_T_SVC_KEI_UCWK.selectNext();
		
		//取得したサービス契約情報がnullでない事を確認する
		if(dbInfSvcKeiUcwk != null)
		{
			//返却用のマップを初期化する
			svcUcwkMap = new HashMap<String,String>();
			
			//サービス開始年月日
			svcUcwkMap.put(JBSbatKK_T_SVC_KEI_UCWK.SVC_STA_YMD, dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_STA_YMD));
			
			//サービス終了年月日
			svcUcwkMap.put(JBSbatKK_T_SVC_KEI_UCWK.SVC_ENDYMD, dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_ENDYMD));
			
			//サービスキャンセル年月日
			svcUcwkMap.put(JBSbatKK_T_SVC_KEI_UCWK.SVC_CANCEL_YMD, dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_CANCEL_YMD));
			
			//サービス契約内訳ステータス
			svcUcwkMap.put(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_STAT, dbInfSvcKeiUcwk.getString(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_STAT));
			
		}
		
		return svcUcwkMap;
		
	}
		
	/**
	 * 引数として渡されたサービス契約内訳情報を元に
	 * サービス契約内訳の契約状態のチェックを実施する
	 * 判断条件
	 *   サービス開始年月日           ＝ null
	 *   サービス契約内訳ステータス   ＝ 910(解約済)または"920"(キャンセル済)
	 * @param svcKeiUCwkNo 確認対象のサービス契約内訳番号
	 * @return true 解約・キャンセル状態 false 解約・キャンセル状態以外
	 * @throws Exception 
	 */
	private boolean isTellEnd(HashMap<String,String> svcUcwkMap) throws Exception
	{
		
		//判定に必要な変数定義を行う
		
		//サービス開始年月日
		String svcStaYmd = svcUcwkMap.get(JBSbatKK_T_SVC_KEI_UCWK.SVC_STA_YMD);

		//サービス契約内訳ステータス
		String svcKeiUcwkStat = svcUcwkMap.get(JBSbatKK_T_SVC_KEI_UCWK.SVC_KEI_UCWK_STAT);
		
		//「サービス開始年月日」が「nullまたは空白」かつ「サービス契約内訳ステータス」が「910または920」
		if(JKKStringUtil.isNullBlank(svcStaYmd) &&  
				(JKKStrConst.CD00037_DSL_ZM.equals(svcKeiUcwkStat) || JKKStrConst.CD00037_CANCEL_ZM.equals(svcKeiUcwkStat)))
		{
			//解約・キャンセル状態
			return true;
			
		}
		
		//解約・キャンセル状態以外
		return false;
		
	}
	
	/**
	 * プラン課金開始年月日の2ヶ月以内である事の判断を実施する
	 * プラン課金開始年月日が設定されていない場合出力対象とする
	 * @param planChgStaYmd プラン課金開始年月日
	 * @return true 表示期間 false 非表示期間
	 */
	private boolean isTkyKkn (String planChgStaYmd)
	{
		
		//プラン課金開始日がnullでない事の確認を実施する
		if(!JKKStringUtil.isNullBlank(planChgStaYmd))
		{
			//プラン課金開始年月日と運用日を比較し、課金開始後2ヶ月以内である事を確認する
			if(JBSbatInterface.adjustMonth(planChgStaYmd, 2).compareTo(super.opeDate) >= 0)
			{
				
				return true;
				
			}else{
				
				//課金開始後2ヶ月以上経過していた場合は、出力対象外とする。
				return false;
			
			}
		}
		
		//プラン課金開始年月日が設定されていない場合、サービス開始前と判断し出力対象とする。
		return true;
	}
	//v29.00.03 2017/02/08 Add End
	
	//v32.00.02 2017/06/23 Add Start
	/**
	 * 契約内容通知書番号を用いて契約内容通知対象契約スキーマを検索し
	 * 処理対象となるサービス契約番号と申込明細番号の取得を行い、呼出元に
	 * HashMapをリスト形式で返却する
	 * @param inMap 契約内容通知書情報
	 * @return      サービス契約情報
	 * @throws Exception
	 */
	private ArrayList<HashMap<String, String>> getSvcKeiNoAdchg(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//契約内容通知書番号を取得する
		String knytcsNo = inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO);
		
		//申込番号を取得する
		String mskmNo = inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO);
		
		//サービス契約情報マップリストを生成する
		ArrayList<HashMap<String, String>> svcMapList = new ArrayList<HashMap<String, String>>();
		
		//サービスコードリストを生成する
		ArrayList<String> svcCdList = new ArrayList<String>();
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		//バインド変数の設定を行う
		Object[] knyoTchTgButParam = new Object[]
		                                        {
													super.opeDate,                    //割引サービス対象契約適用開始年月日
													super.opeDate,                    //割引サービス対象契約適用終了年月日
													super.opeDate,                    //予約適用年月日
													super.opeDate,                    //予約適用年月日
													mskmNo,                            //申込番号
													super.opeDate,                    //予約適用年月日
													mskmNo,                            //申込番号
													super.opeDate,                    //予約適用年月日
													knytcsNo,                          //契約内容通知書番号
													super.opeDate,                    //契約内容通知対象物適用開始年月日
													super.opeDate                     //契約内容通知対象物適用終了年月日
		                                        };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知対象契約検索実行
		this.executeKK_T_KNYO_TCH_TG_BUT_KK_SELECT_003(knyoTchTgButParam);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKnyoTchTgBut = db_KK_T_KNYO_TCH_TG_BUT.selectNext();
		
		while(dbInfKnyoTchTgBut != null)
		{
			
			//サービス契約情報マップを生成する
			HashMap<String, String> svcMap = new HashMap<String, String>();
			
			//サービス契約マップに取得したレコードを件数分設定する
			svcMap.put(JBSbatKK_T_KNYO_TCH_TG_BUT.SVC_KEI_NO, dbInfKnyoTchTgBut.getString(JBSbatKK_T_KNYO_TCH_TG_BUT.SVC_KEI_NO));           //サービス契約番号
			svcMap.put(JBSbatKK_T_KNYO_TCH_TG_BUT.MSKMSHO_DTL_NO, dbInfKnyoTchTgBut.getString(JBSbatKK_T_KNYO_TCH_TG_BUT.MSKMSHO_DTL_NO));   //申込明細番号
			svcMap.put(JBSbatKK_T_SVC_KEI.SVC_CD, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.SVC_CD));                                   //サービスコード
			svcMap.put(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_STAT));                       //サービス契約ステータス
			svcMap.put(JBSbatKK_T_SVC_KEI.PRC_GRP_CD, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.PRC_GRP_CD));                           //料金グループコード
			svcMap.put(JBSbatKK_T_SVC_KEI.PCRS_CD, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.PCRS_CD));                                 //料金コースコード
			svcMap.put(JBSbatKK_T_SVC_KEI.PPLAN_CD, dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.PPLAN_CD));                               //料金プランコード

			svcMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.FAMIPA_KEI_UM, dbInfKnyoTchTgBut.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.FAMIPA_KEI_UM));     //ファミリーパック契約有無
			
			svcMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.NET_OP_PACK_SKCD, dbInfKnyoTchTgBut.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.NET_OP_PACK_SKCD));     //ネットオプションパック識別コード
			
			//サービスコードリストに取得したレコードを設定する。
			svcCdList.add(dbInfKnyoTchTgBut.getString(JBSbatKK_T_SVC_KEI.SVC_CD));

			//サービス契約マップリストに取得結果を格納する
			svcMapList.add(svcMap);

			//次レコードを読込む
			dbInfKnyoTchTgBut = db_KK_T_KNYO_TCH_TG_BUT.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理
		 *-------------------------------------------------------------------------------------------------*/
		
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定リスト作成処理
		 *-------------------------------------------------------------------------------------------------*/
		getOutPutTgList(svcCdList, svcMapList);

		/**------------------------------------------------------------------------------------------------  
		 * 返却処理
		 *-------------------------------------------------------------------------------------------------*/
		
		//取得結果の返却
		return svcMapList;
	}
	//v32.00.02 2017/06/23 Add End
	
//v36.00.00 2016/03/18 Add Start

	/**
	 * 約款適用基準日を取得する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcInfoMap  サービス情報マップ
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
	private void getClauseCngKjnYmd(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, HashMap<String, String> svcInfoMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		// 約款適用基準日に初期値を設定する。
		this.clauseCngKjnYmd = SHK_CLAUSE_CHG_KJN_YMD;
		
		
		//サービス契約番号（ネット）
		String netSvcKeiNo = svcInfoMap.get(JKKStrConst.CD00130_01);
		
		if(netSvcKeiNo == null)
		{
			return;
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKei	= new Object[]
		               	             	{
											netSvcKeiNo             //サービス契約番号（ｅｏ光ネット）
		               	             	};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_SVC_KEI_KK_SELECT_350(svcKei);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbSvcKei = db_KK_T_SVC_KEI.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理
		 *-------------------------------------------------------------------------------------------------*/
		
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		//データベースよりレコードが取得できた場合
		if(dbSvcKei != null)
		{
			// 申込年月日が設定されている場合に申込年月日を設定する。
			if(!JKKStringUtil.isNullBlank(dbSvcKei.getString(JBSbatKK_T_MSKM.MSKM_YMD)))
			{
				clauseCngKjnYmd = dbSvcKei.getString(JBSbatKK_T_MSKM.MSKM_YMD);
			}
		}
		else
		{
			outPutNoDbWarningLog("申込", "サービス契約番号に紐づく申込レコード", netSvcKeiNo);
		}
					
		return;
	}

	/**
	 * SQLKEY(KK_SELECT_350)で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_350(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_350);
	}
	

	/**
	 * マイナーアラームに出力するための情報の設定を行う
	 * @param arg1 テーブル名
	 * @param arg2 未存在項目
	 * @param arg3 キー情報
	 * @throws Exception
	 */
	private void outPutNoDbWarningLog(String arg1, String arg2, String arg3) throws Exception
	{
		super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.EKKB0630NW, new String[]{arg1, arg2, arg3});
		
	}
	
//v36.00.00 2016/03/18 Add End
// OM-2018-0000531 2018/06/06 ADD START
	/**
	 * サービス契約回線内訳番号を用いて契約内容通知書スキーマを検索し
	 * 当日有効なレコードの存在確認を行う
	 * @param inMap 契約内容通知書情報
	 * @return      true 存在有 false 存在なし
	 * @throws Exception
	 */
	private boolean isYukoKnytcs(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		//契約内容通知書番号を取得する
		String knytcsNo = inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO);
		//サービス契約回線内訳番号を取得する
		String svKeiKaisenUCwkNo = inMap.getString(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		//バインド変数の設定を行う
		Object[] knytcsParam = new Object[]
		                                        {
													knytcsNo,                          //契約内容通知書番号
													super.opeDate,                    //契約成立年月日
													svKeiKaisenUCwkNo,                 //サービス契約回線内訳番号
		                                        };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知対象契約検索実行
		this.executeKK_T_KNYTCS_KK_SELECT_006(knytcsParam);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfKnyoTchTgBut = db_KK_T_KNYTCS.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理
		 *-------------------------------------------------------------------------------------------------*/
		
		/**------------------------------------------------------------------------------------------------  
		 * 出力判定リスト作成処理
		 *-------------------------------------------------------------------------------------------------*/

		/**------------------------------------------------------------------------------------------------  
		 * 返却処理
		 *-------------------------------------------------------------------------------------------------*/
		
		//取得結果の返却
		if(dbInfKnyoTchTgBut != null)
		{
			return true;
		}
		return false;
		
	}
	
	/**
	 * 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_KNYTCS_KK_SELECT_006(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_KNYTCS.selectBySqlDefine(paramList, KK_T_KNYTCS_KK_SELECT_006);
	}
	
	/**
	 * 情報に出力するための情報の設定を行う
	 * ログ出力
	 * @param inMap 契約内容通知対象契約情報
	 * @throws Exception
	 */
	private void outPutInfoLog(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		
		//ログ出力用文字列を出力する
		StringBuilder logStr = new StringBuilder();
		logStr.append("契約内容通知対象物（KK_T_KNYO_TCH_TG_BUT）から有効なレコードが存在しないが、");
		logStr.append("有効な契約内容通知書（KK_T_KNYTCS）が存在しました。");
		logStr.append("無効なデータ(契約内容通知書番号：" + inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO) + "、");
		logStr.append("サービス契約回線内訳番号：" + inMap.getString(JBSbatKK_T_KNYTCS.SVC_KEI_KAISEN_UCWK_NO) + "、");
		logStr.append("申込番号：" + inMap.getString(JBSbatKK_T_KNYTCS.MSKM_NO ) + "、");
		logStr.append("SYSID：" + inMap.getString(JBSbatKK_T_KNYTCS.SYSID) + "、");
		logStr.append("契約成立年月日：" + inMap.getString(JBSbatKK_T_KNYTCS.KEI_SEIRT_YMD) + ")");
		
		super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.EKKB1200AI, new String[]{logStr.toString()});
		
	}
// OM-2018-0000531 2018/06/06 ADD END
	// IT2-2019-0000016 ADD START
	/**
	 * 高速割を適用する料金コースであるかを判定して、結果を返却する。
	 * @param  inMap       契約内容通知書情報
	 * @param  outputBean  出力電文
	 * @param  svcMapList  サービス情報マップ
	 * @return true 高速割適用有無
	 * @throws Exception
	 */
	private boolean isNetKosokuWrib(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		// 格納用マップ作成
		HashMap<String, String> infMap = new HashMap<String, String>();
		String netSvcKeiNo = "";
		String nowPcrsCd = "";
		for (int i = 0; i < svcMapList.size(); i++) 
		{
			// 判定用に格納する
			infMap = svcMapList.get(i);
			//ネットの場合
			if (JKKStrConst.CD00130_01.equals(infMap.get(JBSbatKK_T_SVC_KEI.SVC_CD)))
			{
				netSvcKeiNo = JKKStringUtil.nullToBlank(infMap.get(JBSbatKK_T_KNYO_TCH_TG_BUT.SVC_KEI_NO));
				nowPcrsCd = JKKStringUtil.nullToBlank(infMap.get(JBSbatKK_T_SVC_KEI.PCRS_CD));
			}
		}
		
		//サービス契約番号（ネット）
		if(JKKStringUtil.isNullBlank(netSvcKeiNo) || JKKStringUtil.isNullBlank(nowPcrsCd))
		{
			return false;
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] object	= new Object[]
		                   	             {
											netSvcKeiNo     //サービス契約番号（ネット）
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executedb_KK_T_IDO_RSV_KK_SELECT_101(object);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbIdoRsv = db_KK_T_IDO_RSV_2.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※出力処理なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		//データベースよりレコードが取得できた場合
		if(dbIdoRsv != null)
		{
			// 新料金コースが取得できた場合
			if(!JKKStringUtil.isNullBlank(dbIdoRsv.getString(JBSbatKK_T_IDO_RSV.NEW_PCRS_CD)))
			{
				String newPcrsCd = dbIdoRsv.getString(JBSbatKK_T_IDO_RSV.NEW_PCRS_CD);
				// （新料金コースが「高速割」適用）場合
				if (kosokuwriPcrsList.contains(newPcrsCd))
				{
					return true;
				}
				return false;
			}
		}
		//取得できない場合は、現在の料金コースで判断する。
		else
		{
			if (kosokuwriPcrsList.contains(nowPcrsCd))
			{
				return true;
			}
		}
		return false;
	}
	
	/**
	 * 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 executedb_KK_T_IDO_RSV_KK_SELECT_101(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		// DBアクセスを実行します
		db_KK_T_IDO_RSV_2.selectBySqlDefine(paramList, KK_T_IDO_RSV_KK_SELECT_101);
	}
	// IT2-2019-0000016 ADD END

// ANK-3636-00-00 2019/07/10 ADD START
	/**
	 * 出力対象の一時支払料金番号か判定する（消費税考慮）。
	 * 
	 * <br>
	 * @param inMap
	 * @return true:出力対象の一時支払料金番号、false:出力対象外
	 * @throws Exception 
	 */
	private boolean isIcjknOut(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		if (!isIcjknChofuku(inMap.getString(JBSbatKKIFM689.TMP_PAY_PRC_NO)))
		{
			return true;
		}
		String rank = inMap.getString(TMP_PAY_PRC_NO_RANK);
		if (rank.equals(TMP_PAY_PRC_NO_RANK_1))
		{
			return true;
		}
		return false;
	}

	/**
	 * 重複チェック対象の一時支払料金番号か判定する。
	 * 
	 * <br>
	 * @param value 一時支払料金番号
	 * @return true:重複チェック対象の一時支払料金番号、false:それ以外
	 */
	private boolean isIcjknChofuku(String value)
	{
		if (JKKStringUtil.isNullEmpty(value))
		{
			return false;
		}
		// 上１桁を除く
		String chkValue = value.substring(1, value.length());
		if (ICJKN_CHOFUKU_LIST_END.contains(chkValue))
		{
			return true;
		}
		return false;
	}

	/**
	 * タブレットキャンペーン情報判定。
	 * 
	 * <br>
	 * @param inMap　入力電文
	 * @return 検索結果格納用リスト
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private ArrayList<HashMap<String, String>> getTabletCmpSet(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		if (this.serchResultList == null || this.serchResultList.size() == 0)
		{
			return serchResultList;
		}

		// ■タプレット系キャンペーンを作業用リストに出力
		ArrayList<HashMap<String, String>> resultList = new ArrayList<HashMap<String, String>>();
		ArrayList<HashMap<String, String>> wkCheckCmpList = new ArrayList<HashMap<String, String>>();
		for (HashMap<String, String> tmpMap : serchResultList)
		{
			// 割引サービス契約番号、割引サービスコード、契約内容通知書表示文言コード、表示位置識別コード、文言表示条件個別指定コード、電話番号順番
			if (MNGN_DSP_JKN_KSITEI_CD_031.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD))
					|| MNGN_DSP_JKN_KSITEI_CD_032.equals(tmpMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
			{
				// タブレットキャンペーンの場合は、情報を抜き出す
				wkCheckCmpList.add(tmpMap);
			}
			else
			{
				resultList.add(tmpMap);
			}
		}

		// ■作業リストを「割引サービス契約番号、割引サービスコード、文言表示条件個別指定コード、表示位置識別コード」の順に
		// ソートする（割引サービス契約番号 ｎ件想定）
		Collections.sort(wkCheckCmpList, new Comparator()
		{
			/**
			 * 並び替え
			 * <br>
			 * @param o1 値1
			 * @param o2 値2
			 * @return 比較結果
			 */
			public int compare(Object o1, Object o2)
			{
				HashMap<String, String> map1 = (HashMap<String, String>)o1;
				HashMap<String, String> map2 = (HashMap<String, String>)o2;
				String wribSvcKeiNo1 = map1.get(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_KEI_NO);
				String wribSvcKeiNo2 = map2.get(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_KEI_NO);
				String wribSvcCd1 = map1.get(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD);
				String wribSvcCd2 = map2.get(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD);
				String mngnDspJknSiteiCd1 = map1.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD);
				String mngnDspJknSiteiCd2 = map2.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD);
				String dspPstSkcd1 = map1.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD);
				String dspPstSkcd2 = map2.get(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD);

				if (!wribSvcKeiNo1.equals(wribSvcKeiNo2))
				{
					return wribSvcKeiNo1.compareTo(wribSvcKeiNo2);
				}
				if (!wribSvcCd1.equals(wribSvcCd2))
				{
					return wribSvcCd1.compareTo(wribSvcCd2);
				}
				if (!mngnDspJknSiteiCd1.equals(mngnDspJknSiteiCd2))
				{
					return mngnDspJknSiteiCd1.compareTo(mngnDspJknSiteiCd2);
				}

				return dspPstSkcd1.compareTo(dspPstSkcd2);

			}
		});

		// ■作業リストを元に「割引サービス契約番号」毎にタブレットキャンペーン情報判定を行う

		ArrayList<HashMap<String, String>> wkCmpReultList = new ArrayList<HashMap<String, String>>();
		HashMap<String, HashMap<String, String>> mngnMap = new HashMap<String, HashMap<String, String>>();
		String oldWribSvcKeiNo = "";
		String oldWribSvcCd = "";
		String currentWribSvcKeiNo = "";
		String currentWribSvcCd = "";

		for (int idx = 0; idx < wkCheckCmpList.size(); idx++)
		{
			HashMap<String, String> currentMap = wkCheckCmpList.get(idx);
			if (JKKStringUtil.isNullBlank(currentMap.get(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_KEI_NO)))
			{
				// 割引サービス契約番号が存在しない場合は対象外
				continue;
			}
			currentWribSvcKeiNo = currentMap.get(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_KEI_NO);
			currentWribSvcCd = currentMap.get(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD);
			if ((!JKKStringUtil.isNullBlank(oldWribSvcKeiNo)) && (!oldWribSvcKeiNo.equals(currentWribSvcKeiNo)))
			{
				// キーブレイク：割引サービス契約番号
				HashMap<String, String> result = tabletCmpWribOut(inMap, mngnMap, oldWribSvcKeiNo, oldWribSvcCd);
				if (result != null && result.size() > 0)
				{
					wkCmpReultList.add(result);
				}

				mngnMap = new HashMap<String, HashMap<String, String>>();
			}
			mngnMap.put(currentMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD), currentMap);

			oldWribSvcKeiNo = currentWribSvcKeiNo;
			oldWribSvcCd = currentWribSvcCd;
		}

		if (!JKKStringUtil.isNullBlank(oldWribSvcKeiNo))
		{
			// キーブレイク：割引サービス契約番号
			HashMap<String, String> result = tabletCmpWribOut(inMap, mngnMap, oldWribSvcKeiNo, oldWribSvcCd);
			if (result != null && result.size() > 0)
			{
				wkCmpReultList.add(result);
			}
		}

		// ■タブレットキャンペーン情報のマージを行う
		for (int idx = 0; idx < wkCmpReultList.size(); idx++)
		{
			resultList.add(wkCmpReultList.get(idx));
		}

		return resultList;
	}

	/**
	 * タブレットキャンペーンのレコード出力。
	 * 
	 * <br>
	 * @param inMap　入力電文
	 * @param mngnMap 割引サービス契約番号に該当する文言表示条件個別指定コードのレコード
	 * @param wribSvcKeiNo 割引サービス契約番号
	 * @param wribSvcCd 割引サービスコード
	 * @return 再決定した文言表示条件個別指定コードのレコード
	 * @throws Exception
	 */
	private HashMap<String, String> tabletCmpWribOut(JBSbatServiceInterfaceMap inMap, HashMap<String, HashMap<String, String>> mngnMap,
			String wribSvcKeiNo, String wribSvcCd) throws Exception
	{
		HashMap<String, String> rtnMap = getTabletCmpWribDb(wribSvcKeiNo, wribSvcCd);
		String mngnDspJknKsiteiCd = rtnMap.get(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD);
		if (JKKStringUtil.isNullBlank(mngnDspJknKsiteiCd))
		{
			// ログ出力（機器適用外となるデータ：正常）
			super.logPrint.printDebugLog("[getTabletCmpSet]キャンペーン無効 割引サービス契約番号=[" + wribSvcKeiNo + "]");
		}
		else if (mngnMap.containsKey(mngnDspJknKsiteiCd))
		{
			return mngnMap.get(mngnDspJknKsiteiCd);
		}
		else
		{
			// ログ出力（該当するレコードが取得できない：エラー）
			Set<String> Allkeys = mngnMap.keySet();
			String key = Allkeys.iterator().next();
			HashMap<String, String> wkMap = mngnMap.get(key);
			String msg =
				"契約内容通知書番号：" + inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO) + "、SYSID：" + inMap.getString(JBSbatKK_T_KNYTCS.SYSID)
						+ "、割引サービス契約番号：" + wkMap.get(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_KEI_NO) + "、割賦プランコード："
						+ rtnMap.get(JBSbatAC_M_WRIB_SHUK.SHUK_PRC_SVC_CD);
			super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.ECHB1400CE, new String[] { msg, "文言表示条件個別指定コード（消費税対応）[" + mngnDspJknKsiteiCd + "]" });
		}
		return null;
	}
	/**
	 * タブレットのキャンペーン文言再設定（テーブル検索）。
	 * @param wribSvcKeiNo 割引サービス契約番号
	 * @param wribSvcCd 割引サービスコード
	 * @return 再設定となる情報を返却
	 * @throws Exception 
	 */
	private HashMap<String, String> getTabletCmpWribDb(String wribSvcKeiNo, String wribSvcCd) throws Exception
	{

		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/

		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/

		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/

		Object[] object = new Object[] { super.opeDate, //予約適用年月日
				wribSvcCd,                               //割引サービスコード
				super.opeDate,                          //割引サービス単価適用開始年月日、割引サービス単価適用終了年月日の範囲内
				super.opeDate,                          //割引集計適用開始年月日、割引集計適用終了年月日の範囲内
				wribSvcKeiNo,                            //割引サービス契約番号
				super.opeDate                           //割引サービス対象契約適用開始年月日、割引サービス対象契約適用終了年月日の範囲内
				};

		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/

		//割賦契約検索実行
		this.executedb_KK_T_KAP_KEI_KK_SELECT_013(object);

		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/

		//検索結果の取得
		JBSbatCommonDBInterface dbKapKei = db_KK_T_KAP_KEI.selectNext();

		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※出力処理なし
		 *-------------------------------------------------------------------------------------------------*/

		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/

		//検索結果の取得
		HashMap<String, String> rtnMap = new HashMap<String, String>();
		String mngnDspJknKsiteiCd = "";
		String kapPlanCd = "";
		int savePriority = 0;

		while (dbKapKei != null)
		{
			// 集計料金サービスコード（取得結果は「割賦プランコード」と同値）
			String shukPrcSvcCd = dbKapKei.getString(JBSbatAC_M_WRIB_SHUK.SHUK_PRC_SVC_CD);
			if (JKKStringUtil.isNullBlank(shukPrcSvcCd))
			{
				continue;
			}
			String kapPlanCdCheck = shukPrcSvcCd.substring(KAP_PLAN_START);
			String kapKeiStat = dbKapKei.getString(JBSbatKK_T_KAP_KEI.KAP_KEI_STAT);
			String wkCd = "";
			int priority = 0;

			if (!kapPlanCdCheck.startsWith(KAPPLANCD_MID_0))
			{
				// ３桁目が"0"以外
				wkCd = MNGN_DSP_JKN_KSITEI_CD_031;
			}
			else if (!kapPlanCdCheck.startsWith(KAPPLANCD_MID_00))
			{
				// ３、４桁目が"00"以外
				wkCd = MNGN_DSP_JKN_KSITEI_CD_032;
			}
			else if (!kapPlanCdCheck.startsWith(KAPPLANCD_MID_000))
			{
				// ３、４、５桁目が"000"以外
				wkCd = MNGN_DSP_JKN_KSITEI_CD_031;
			}

			if (!JKKStringUtil.isNullBlank(wkCd))
			{
				if (TABLET_CMP_STS.contains(kapKeiStat))
				{
					// 未完了状態
					if (MNGN_DSP_JKN_KSITEI_CD_032.equals(wkCd))
					{
						priority = PRIORITY_1;
					}
					else if (MNGN_DSP_JKN_KSITEI_CD_031.equals(wkCd))
					{
						priority = PRIORITY_2;
					}
				}
				else
				{
					// 完了状態
					if (MNGN_DSP_JKN_KSITEI_CD_032.equals(wkCd))
					{
						priority = PRIORITY_3;
					}
					else if (MNGN_DSP_JKN_KSITEI_CD_031.equals(wkCd))
					{
						priority = PRIORITY_4;
					}
				}
				if (savePriority == 0 || priority < savePriority)
				{
					// 優先順位の高い方をセット
					savePriority = priority;
					mngnDspJknKsiteiCd = wkCd;
					kapPlanCd = shukPrcSvcCd;
				}
			}
			String debugMsg =
					"割引サービス契約番号[" + wribSvcKeiNo + "] 割賦プランコード[" + shukPrcSvcCd + "] チェック値[" + kapPlanCdCheck + "] 割賦契約ステータス["
							+ kapKeiStat + "] ---> " + " 文言表示条件個別指定コード[" + wkCd + "]" + " 割賦プランコード[" + shukPrcSvcCd + "]" + " --->  優先順["
							+ priority + "]";
			super.logPrint.printDebugLog(debugMsg);
			dbKapKei = db_KK_T_KAP_KEI.selectNext();
		}

		if (savePriority > 0)
		{
			rtnMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD, mngnDspJknKsiteiCd);
			rtnMap.put(JBSbatAC_M_WRIB_SHUK.SHUK_PRC_SVC_CD, kapPlanCd);
		}
		super.logPrint.printDebugLog("【最終判定結果】 優先順[" + savePriority + "] 文言表示条件個別指定コード[" + mngnDspJknKsiteiCd + "]");
		return rtnMap;
	}

	/**
	 * 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 executedb_KK_T_KAP_KEI_KK_SELECT_013(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		for (int idx = 0; idx < param.length; idx++)
		{
			paramList.setValue(param[idx].toString());
		}
		// DBアクセスを実行します
		db_KK_T_KAP_KEI.selectBySqlDefine(paramList, KK_T_KAP_KEI_KK_SELECT_013);
	}
// ANK-3636-00-00 2019/07/10 ADD END

	// OM-2019-0001179 ADD START
	/**
	 * 卸契約の判定します。
	 * @param inMap インプットマップ
	 * @return true/false(卸契約である/卸契約ではない)
	 * @throws Exception 
	 */
	private boolean jdgOrsjgsKei(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		String sysid = inMap.getString(JBSbatKK_T_KNYTCS.SYSID);
		
		// SYSIDを取得できた場合はお客様スキーマ検索実行する(CK_T_CUST-KU_SELECT_001)
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] object = new Object[]
		{
			sysid			// SYSID
			,super.opeDate	// 予約適用年月日
		};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		// サービス契約検索実行
		this.executeCK_T_CUST_KU_SELECT_001(object);
		
		//検索結果の取得
		JBSbatCommonDBInterface dbCust = db_CK_T_CUST.selectNext();
		
		//データベースよりレコードが取得できた場合
		if (dbCust != null)
		{
			// 卸先事業者コードを取得できた場合
			if (!JKKStringUtil.isNullBlank(dbCust.getString(JBSbatCK_T_CUST.ORSJGS_CD)))
			{
				// 卸契約と判定し、trueを返却する
				return true;
			}
			else
			{
				// 卸契約ではないためfalseを返却する
				return false;
			}
		}
		else
		{
			// レコードが取得できない場合はfalseを返却する
			return false;
		}
	}

	/**
	 * SQLKEY(KU_SELECT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	SYSID
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeCK_T_CUST_KU_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		// DBアクセスを実行します
		db_CK_T_CUST.selectBySqlDefine(paramList, CK_T_CUST_KU_SELECT_001);
	}
	// OM-2019-0001179 ADD END
	// v52.00.00 ANK-4006-00-00 2021/02/22 ADD START
	/**
	 * 5G/10GアップグレードCPの判定します。
	 * @param inMap インプットマップ
	 * @return true/false(CP対象である/CP対象ではない)
	 * @throws Exception 
	 */
	private boolean jdg5G10GUpgradeCP(JBSbatServiceInterfaceMap inMap, JBSbatCommonDBInterface dbInfSvcKei) throws Exception
	{
		
		
		
		// SYSIDを取得できた場合はお客様スキーマ検索実行する(CK_T_CUST-KU_SELECT_001)
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] object = new Object[]
		{
			 super.opeDate										// 割引サービス対象サービス開始年月日
			,super.opeDate										// 割引サービス対象サービス終了年月日
			,super.opeDate										// 予約適用年月日
			,dbInfSvcKei.getString(JBSbatKKIFM689.SVC_KEI_NO)	//サービス契約番号
		};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		// サービス契約検索実行
		this.executeKK_T_IDO_RSV_KK_SELECT_105(object);
		
		//検索結果の取得
		JBSbatCommonDBInterface dbCust = db_KK_T_IDO_RSV_3.selectNext();
		
		//データベースよりレコードが取得できた場合
		if (dbCust != null)
		{
			return true;
		}
		
		return false;
	}

	/**
	 * SQLKEY(KK_SELECT_105)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	SYSID
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_IDO_RSV_KK_SELECT_105(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		// DBアクセスを実行します
		db_KK_T_IDO_RSV_3.selectBySqlDefine(paramList, KK_T_IDO_RSV_KK_SELECT_105);
	}
	// v52.00.00 ANK-4006-00-00 2021/02/22 ADD END
	// v53.00.00 ANK-3989-00-00 2021/04/02 ADD START
	
	/**
	 * 提供方式契約番号から提供方式契約を照会し、棟内速度コードを取得する
	 * 
	 * @param tkHoshikiKeiNo
	 * @return 棟内速度コード
	 */
	private String getTonaiSpeedCD(String tkHoshikiKeiNo) throws Exception
	{
		
		// 返却値
		String tonaiSpeedCD = "";
		
		// 提供方式契約番号から提供方式契約を照会する。
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] object = new Object[]
		{
			tkHoshikiKeiNo										// 提供方式契約番号
		};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		// サービス契約検索実行
		this.executeKK_T_TK_HOSHIKI_KEI_KK_SELECT_040(object);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbTkHoshikiKei = db_KK_T_TK_HOSHIKI_KEI.selectNext();
		
		tonaiSpeedCD = JKKStringUtil.nullToBlank(dbTkHoshikiKei.getString(JBSbatKK_T_TK_HOSHIKI_KEI.TONAI_SPEED_CD));
		
		return tonaiSpeedCD;
	}

	/**
	 * SQLKEY(KK_SELECT_105)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	SYSID
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_TK_HOSHIKI_KEI_KK_SELECT_040(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_040);
	}
	// v53.00.00 ANK-3989-00-00 2021/04/02 ADD END
	// ANK-4038-00-00 2021/09/28 ADD START
	
	private boolean jdgRzkazmKjHuyoAnken(JBSbatServiceInterfaceMap inMap, JBSbatCommonDBInterface dbInfSvcKei) throws Exception
	{
		return jdgRzkazmKjHuyoAnken(inMap, dbInfSvcKei.getString(JBSbatKKIFM689.SVC_KEI_NO));
	}
	
	private boolean jdgRzkazmKjHuyoAnken(JBSbatServiceInterfaceMap inMap, HashMap<String,String> svcInfoMap) throws Exception
	{
		return jdgRzkazmKjHuyoAnken(inMap, svcInfoMap.get(JKKStrConst.CD00130_01));
	}
	/**
	 * 工事が、ローゼット化済工事不要案件か判定します。
	 * @param inMap インプットマップ
	 * @return true/false(ローゼット化済工事不要案件である/ではない)
	 * @throws Exception 
	 */
	private boolean jdgRzkazmKjHuyoAnken(JBSbatServiceInterfaceMap inMap, String svcKeiNo) throws Exception
	{
		// サービス契約番号を取得できた場合は工事案件スキーマに照会する。
		// IT1-2021-0000080 2021/10/29 ADD START
		//申込番号
		String mskmNo =  inMap.getString(JBSbatKK_T_MSKM.MSKM_NO);
		// IT1-2021-0000080 2021/10/29 ADD END
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] object = new Object[]
		{
			// IT1-2021-0000080 2021/10/29 MOD START
//			svcKeiNo,			//サービス契約番号
//			svcKeiNo			//サービス契約番号
			mskmNo,
			mskmNo
			// IT1-2021-0000080 2021/10/29 MOD END
		};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		// 工事案件検索実行
		// IT1-2021-0000080 2021/10/29 MOD START
//		this.executeKU_T_SVKEI_KOJIAK_KK_SELECT_029(object);
//		
//		//検索結果の取得
//		JBSbatCommonDBInterface dbKjak = db_KU_T_SVKEI_KOJIAK.selectNext();
		this.executeKU_T_KOJIAK_KK_SELECT_051(object);
		
		//検索結果の取得
		JBSbatCommonDBInterface dbKjak = db_KU_T_KOJIAK.selectNext();
		// IT1-2021-0000080 2021/10/29 MOD END
		
		
		//データベースよりレコードが取得できた場合
		if (dbKjak != null)
		{
			return true;
		}
		
		return false;
	}
	// IT1-2021-0000080 2021/10/29 DEL START
//	/**
//	 * SQLKEY(KK_SELECT_105)でDBアクセスを行います。<br>
//	 * <p>
//	 * <b>処理フロー</b><br>
//	 * <pre>
//	 * 1.引数でバイント変数を設定します。<br>
//	 *
//	 * 2.DBアクセスを実行します。<br>
//	 * 
//	 * 3.メソッドの呼び出し方です。<br>
//	 *		引数:
//	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
//	 *		 	SYSID
//	 *		 	予約適用年月日
//	 * </pre>
//	 * <p>
//	 * @param param バイント変数の値配列。
//	 * @throws Exception 業務サービス内で発生した例外全般。
//	 */
//	private void executeKU_T_SVKEI_KOJIAK_KK_SELECT_029(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_029);
//	}
	// IT1-2021-0000080 2021/10/29 DEL END
	// IT1-2021-0000080 2021/10/29 ADD START
	/**
	 * SQLKEY(KK_SELECT_051)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	SYSID
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKU_T_KOJIAK_KK_SELECT_051(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		// DBアクセスを実行します
		db_KU_T_KOJIAK.selectBySqlDefine(paramList, KU_T_KOJIAK_KK_SELECT_051);
	}
	// IT1-2021-0000080 2021/10/29 ADD END
	// ANK-4038-00-00 2021/09/28 ADD END
	// ANK-4315-00-00 ADD START
	private boolean OnuKoijum(JBSbatCommonDBInterface dbInfSvcKei) throws Exception
	{
		return jdgOnuKoijum(dbInfSvcKei.getString(JBSbatKKIFM689.SVC_KEI_NO));
	}
	private boolean OnuKoijum(HashMap<String, String> svcInfoMap) throws Exception
	{
		// IT1-2023-0000028 MOD START
//		return jdgOnuKoijum(svcInfoMap.get(JKKStrConst.CD00130_01));
		if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_01)))
		{
			return jdgOnuKoijum(svcInfoMap.get(JKKStrConst.CD00130_01));
		}
		else if(!JKKStringUtil.isNullBlank(svcInfoMap.get(JKKStrConst.CD00130_02)))
		{
			return jdgOnuKoijum(svcInfoMap.get(JKKStrConst.CD00130_02));
		}
		return false;
		// IT1-2023-0000028 MOD END
	}
	
	/**
	 * ＯＮＵ交換工事費が発生するかどうか判定します。
	 * @param svcKeiNo サービス契約番号
	 * @return true/false(ＯＮＵ交換工事費が発生/ではない)
	 * @throws Exception 
	 */
	private boolean jdgOnuKoijum( String svcKeiNo) throws Exception
	{
		// サービス契約番号を取得できた場合は工事案件スキーマに照会する。
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] object = new Object[]
		{
			svcKeiNo,			//サービス契約番号
			super.opeDate,		//バッチ運用日
			super.opeDate,		//バッチ運用日
			svcKeiNo,			//サービス契約番号
			super.opeDate,		//バッチ運用日
			super.opeDate		//バッチ運用日
		};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		// 工事案件検索実行
		this.executeKU_T_SVKEI_KOJIAK_KK_SELECT_023(object);
		
		//検索結果の取得
		JBSbatCommonDBInterface dbKjak = db_KU_T_SVKEI_KOJIAK.selectNext();
		
		//データベースよりレコードが取得できた場合
		if (dbKjak != null)
		{
			return true;
		}
		
		return false;
	}
	/**
	 * SQLKEY(KK_SELECT_105)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	SYSID
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKU_T_SVKEI_KOJIAK_KK_SELECT_023(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());

		
		// DBアクセスを実行します
		db_KU_T_SVKEI_KOJIAK.selectBySqlDefine(paramList, KU_T_SVKEI_KOJIAK_KU_SELECT_023);
	}
	// ANK-4315-00-00 ADD END

	// ANK-4443-00-00 ADD START
	/**
	 * SQLKEY(KK_SELECT_007)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	提供方式契約番号
	 *		 	マンション料金識別コード
	 *		 	請求金額適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_TK_HSK_KEI_PRC_KK_SELECT_007(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_TK_HSK_KEI_PRC.selectBySqlDefine(paramList, KK_T_TK_HSK_KEI_PRC_KK_SELECT_007);
	}
	// ANK-4443-00-00 ADD END
	// IT1-2023-0000028 ADD START
	/**
	 * ＯＮＵ交換工事の適用キャンペーン情報（想定）を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param svcMapList  サービス契約マップリスト
	 * @param svcInfoMap  サービス情報マップ
	 * @throws Exception
	 */
	private void outPutOnuKknKjWribCp(JBSbatServiceInterfaceMap inMap, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> svcInfoMap) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得 ※初期データ取得なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] wribSvcKei					 = new Object[]
		                   					{
											super.opeDate,      //契約内容通知対象物適用開始年月日
											super.opeDate,      //契約内容通知対象物適用終了年月日
											super.opeDate       //予約適用年月日
		                   					};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//契約内容通知書表示文言スキーマ検索実行
		this.executKK_M_KNYTCS_DSP_MNGN_KK_SELECT_002(wribSvcKei);
		
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfwribSvcKei = db_KK_M_KNYTCS_DSP_MNGN.selectNext();
		
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果がなくなるまでループを行う
		while(dbInfwribSvcKei != null)
		{
			
			//検索結果格納用マップ作成
			HashMap<String, String> resultMap = new HashMap<String, String>();

			resultMap.put(JBSbatKKIFM689.KNYTCS_NO,								inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));
			resultMap.put(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,					dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
			resultMap.put(JBSbatKKIFM689.DSP_PST_SKCD,							dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));
			resultMap.put(JBSbatKKIFM689.TELNO_JUN,								dbInfwribSvcKei.getString(JBSbatKK_T_SVKEIUW_EOH_TEL.TELNO_JUN));
			resultMap.put(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD,	dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD));
			resultMap.put(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD,					dbInfwribSvcKei.getString(JBSbatKK_M_WRISVC_TG_SVC.WRIB_SVC_CD));

			//出力対象の表示位置識別番号と一致した場合検索結果リストに格納する。
			if(isOutPutTgDspPstSkcd(dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
			{
				super.logPrint.printDebugLog("契約内容通知書文言_002[出力判定未]："+ dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
				
				//検索結果を格納
				serchResultList.add(resultMap);
				
			}
			else
			{
				
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfwribSvcKei.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"割引サービス関連情報（ＯＮＵ交換工事）");
			}
//v24.00.02 2016/04/27 Mod End
			
			//次レコードの読み取り
			dbInfwribSvcKei = db_KK_M_KNYTCS_DSP_MNGN.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/
		
		
	}
	/**
	 * SQLKEY(KK_SELECT_002)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList 
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executKK_M_KNYTCS_DSP_MNGN_KK_SELECT_002(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());

		// DBアクセスを実行します
		db_KK_M_KNYTCS_DSP_MNGN.selectBySqlDefine(paramList, KK_M_KNYTCS_DSP_MNGN_KK_SELECT_002);
	}
	// IT1-2023-0000028 ADD END

	// ANK-4599-00-00 ADD START
	/**
	 * SQLKEY(KK_SELECT_082)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_WRIB_SVC_KEI_KK_SELECT_082(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		
		// DBアクセスを実行します
		db_KK_T_WRIB_SVC_KEI.selectBySqlDefine(paramList, KK_T_WRIB_SVC_KEI_KK_SELECT_082);
	}

	private boolean jdgOverlap(HashMap<String,String> svcInfoMap) throws Exception
	{
		return jdgOverlap(svcInfoMap.get(JKKStrConst.CD00130_01));
	}

	/**
	 * サービス契約番号に紐づく割引サービスに「１０ギガグレードアップ月額割引キャンペーン」と重複不可のキャンペーンが存在するか判定する。
	 * @return true/false(存在しない（存在するが適用期間が重複しない場合も含む）/存在する（適用期間が重複している）)
	 * @throws Exception 
	 */
	private boolean jdgOverlap(String svcKeiNo) throws Exception
	{
		boolean overlapFlg = true;
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] object = new Object[]
		{
			svcKeiNo,			//サービス契約番号
			super.opeDate		//予約適用年月日
		};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		// 割引サービス契約スキーマ検索実行
		this.executeKK_T_WRIB_SVC_KEI_KK_SELECT_082(object);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		//検索結果の取得
		JBSbatCommonDBInterface dbInfwribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * 重複判定処理 ※SQL実行結果の件数分行う
		 *-------------------------------------------------------------------------------------------------*/
		while(dbInfwribSvcKei != null)
		{
			// 割引サービスコードが(W10000205)または(W10000209)と一致した場合
			if(WRIB_SVC_CD_W10000205.equals(dbInfwribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD)) || WRIB_SVC_CD_W10000209.equals(dbInfwribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.WRIB_SVC_CD)))
			{
				// サービス課金終了年月日がバッチ運用日翌月1日を含む未来日の場合
				if(JPCUtilCommon.isFutureDate(dbInfwribSvcKei.getString(JBSbatKK_T_WRIB_SVC_KEI.SVC_CHRG_ENDYMD), JBSbatInterface.adjustMonth(super.opeDate, 1).substring(0, 6).concat("01"), "1"))
				{
					overlapFlg = false;
				}
			}
			
			//次レコードの読み取り
			dbInfwribSvcKei = db_KK_T_WRIB_SVC_KEI.selectNext();
		}
		
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理
		 *-------------------------------------------------------------------------------------------------*/
		return overlapFlg;
	}
	// ANK-4599-00-00 ADD END
	// ANK-4427-00-00 ADD START
	/**
	 * 料金グループコード、NTT卸区分でtypeNか判定する。
	 * @return "01" : ホームタイプ
	 *          "02" : マンションタイプ
	 *          ""   : その他（typeNではない）
	 * @throws Exception 
	 */
	private String typenJdg(JBSbatCommonDBInterface dbInfSvcKei) throws Exception
	{
		// 料金グループコード
		String prcGrpCd = dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.PRC_GRP_CD);
		// NTT卸区分
		String nttorsDiv = dbInfSvcKei.getString(JBSbatKK_M_PCRS.NTTORS_DIV);
		
		// NULLまたは空チェック
		if(!JKKStringUtil.isNullBlank(prcGrpCd) && !JKKStringUtil.isNullBlank(nttorsDiv))
		{
			 // 料金グループコードが"02"(ネット)の場合
			if (JKKStrConst.CD00133_02.equals(prcGrpCd))
			{
				return nttorsDiv;
			}
		}
		// TypeNでない場合空を返却
		return "";
	}
	
	/**
	 * 	TypeNのデータの存在確認を行う。
	 * @param svcMapList サービスマップリスト
	 * @return TRUE  : TypeNのデータあり
	 *          FALSE : TypeNのデータなし
	 * @throws Exception 
	 */
	private boolean jdgTypen(ArrayList<HashMap<String, String>> svcMapList) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_OP_SVC_KEI.getSql(KK_T_OP_SVC_KEI_KK_SELECT_145);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_OP_SVC_KEI.setSqlMap(KK_T_OP_SVC_KEI_KK_SELECT_145, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKei	= new Object[]
		                                 {
											"",                  //サービス契約番号(複数対応)
											super.opeDate,      //予約適用年月日
											super.opeDate,      //予約適用年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_OP_SVC_KEI_KK_SELECT_145(svcKei, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_OP_SVC_KEI.setSqlMap(KK_T_OP_SVC_KEI_KK_SELECT_145, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfOpSvcKei = db_KK_T_OP_SVC_KEI.selectNext();
		
		
		//検索結果がなくなるまでループを行う
		while(dbInfOpSvcKei != null)
		{
			// TypeNのレコードが存在する場合、TRUEを返却する。
			if (!JKKStringUtil.isNullBlank(dbInfOpSvcKei.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_NO)))
			{
				return true;
			}
		}
		return false;
	}
	
	/**
	 * SQLKEY(KK_SELECT_145)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *			予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList 
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_OP_SVC_KEI_KK_SELECT_145(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		
		// DBアクセスを実行します
		db_KK_T_OP_SVC_KEI.selectBySqlDefine(paramList, KK_T_OP_SVC_KEI_KK_SELECT_145);
	}
	// ANK-4427-00-00 ADD END
	
	//IT2-2024-0000041 ADD START
	/**
	 * 	TypeNかどうかを判定する。
	 * @param svcMapList サービスマップリスト
	 * @return TRUE  : TypeNである
	 *          FALSE : TypeNではない
	 * @throws Exception 
	 */
	private boolean typenHantei(ArrayList<HashMap<String, String>> svcMapList) throws Exception
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//変更前SQL
		String sqlBefore =  db_KK_T_SVC_KEI.getSql(KK_T_SVC_KEI_KK_SELECT_393);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//サービス契約リスト
		ArrayList<String> svcKeiList = getMapForList(svcMapList, JBSbatKK_T_SVC_KEI.SVC_KEI_NO);
		
		/**------------------------------------------------------------------------------------------------  
		 * データ編集 
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(svcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_SVC_KEI.setSqlMap(KK_T_SVC_KEI_KK_SELECT_393, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] svcKei	= new Object[]
		                                 {
											"",                  //サービス契約番号(複数対応)
											super.opeDate,      //予約適用年月日
											super.opeDate       //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_SVC_KEI_KK_SELECT_393(svcKei, svcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_SVC_KEI.setSqlMap(KK_T_SVC_KEI_KK_SELECT_393, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfSvcKei = db_KK_T_SVC_KEI.selectNext();
		
		
		//検索結果がなくなるまでループを行う
		while(dbInfSvcKei != null)
		{
			// TypeNのレコードが存在する場合、TRUEを返却する。
			if (!JKKStringUtil.isNullBlank(dbInfSvcKei.getString(JBSbatKK_T_SVC_KEI.SVC_KEI_NO)))
			{
				return true;
			}
		}
		return false;
	}

	/**
	 * SQLKEY(KK_SELECT_393)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 *			予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList 
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_KK_SELECT_393(Object[] param, ArrayList<String> svcKeiList) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		
		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_393);
	}
	//IT2-2024-0000041 ADD END

	// ANK-4570-00-00 ADD START
	/**
	 * PK(ＰＫ　検索)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で条件マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	SYS_PARAM_BUNRUI_CD
	 *		 	SYS_PARAM_ID
	 * </pre>
	 * <p>
	 * @param whereParam 条件項目の値。
	 * @return JBSbatCommonDBInterface 検索の結果。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private JBSbatCommonDBInterface executeZM_M_SYS_PARAM_KNRI_PKSELECT(Object[] whereParam) throws Exception
	{
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("SYS_PARAM_BUNRUI_CD", whereParam[0]);
		whereMap.setValue("SYS_PARAM_ID", whereParam[1]);

		// DBアクセスを実行します
		return db_ZM_M_SYS_PARAM_KNRI.selectByPrimaryKeys(whereMap);
	}
	
	/**
	 * サービス契約番号,SYSIDを元にコンテンツサービス関連情報取得を取得し
	 * 取得した情報を契約内容通知ファイルに出力する
	 * @param inMap       契約内容通知書情報
	 * @param outputBean  出力電文
	 * @param svcMapList  サービス契約マップリスト
	 * @throws Exception
	 */
	private void outPutCont(JBSbatServiceInterfaceMap inMap, JBSbatOutputItem outputBean, ArrayList<HashMap<String, String>> svcMapList, HashMap<String, String> svcInfoMap) throws Exception	
	{
		
		/**------------------------------------------------------------------------------------------------  
		 * 初期データ取得
		 *-------------------------------------------------------------------------------------------------*/
		
		// コンテンツ情報抽出対象サービス契約番号リスト
		ArrayList<String> afSvcKeiList = new ArrayList<String>();
		
		// シンプルプラン、TypeN以外の料金コースのサービス契約番号を使用する。
		for (HashMap<String, String> svckeiinf : svcMapList)
		{
			String pcrsCd = svckeiinf.get(JBSbatKK_T_SVC_KEI.PCRS_CD);
			
			// 退避させていた料金コースと一致しない場合、抽出対象とする。
			if(!contJgiPcrsInfoMap.contains(pcrsCd))
			{
				afSvcKeiList.add(svckeiinf.get(JBSbatKK_T_SVC_KEI.SVC_KEI_NO));
			}
		}
		// 抽出対象のSYSIDが存在しない場合、処理終了
		if (afSvcKeiList.size() == 0)
		{
			return;
		}
		
		//変更前SQL
		String sqlBefore =  db_KK_T_SVC_KEI.getSql(KK_T_SVC_KEI_KK_SELECT_392);
		
		//変更後SQL
		String sqlAfter =   "";
		
		//SYSID
		String sysid =  inMap.getString(JBSbatKK_T_KNYTCS.SYSID);
		
		//申込種別コード
		String mskmSbtCd =  inMap.getString(JBSbatKK_T_MSKM.MSKM_SBT_CD);

		/**------------------------------------------------------------------------------------------------  
		 * データ編集 ※データ編集なし
		 *-------------------------------------------------------------------------------------------------*/ 
		
		//SQLの編集処理を行う(サービス契約番号の件数分バインド変数の追加)
		sqlAfter = getEditSQL(afSvcKeiList, sqlBefore, EDIT_BF_SQL_SVC_KEI, EDIT_AF_SQL_SVC_KEI);
		
		//編集したSQLを設定する
		db_KK_T_SVC_KEI.setSqlMap(KK_T_SVC_KEI_KK_SELECT_392, sqlAfter);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		
		Object[] conts					 = new Object[]
		                                 {
											"",                          //サービス契約番号
											sysid,                       //SYSID
											opbfContStaSwchDay,          //開通前コンテンツ開始制度切替日
											super.opeDate,              //予約適用年月日
											mskmSbtCd,                   //申込種別
											super.opeDate,              //契約内容通知書表示文言適用開始年月日
											super.opeDate,              //契約内容通知書表示文言適用終了年月日
											super.opeDate               //予約適用年月日
		                                 };
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		
		//サービス契約スキーマ検索実行
		this.executeKK_T_SVC_KEI_KK_SELECT_392(conts, afSvcKeiList);
		
		//編集したSQLを元に戻す
		db_KK_T_SVC_KEI.setSqlMap(KK_T_SVC_KEI_KK_SELECT_392, sqlBefore);
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行結果取得
		 *-------------------------------------------------------------------------------------------------*/
		
		//検索結果の取得
		JBSbatCommonDBInterface dbInfCont = db_KK_T_SVC_KEI.selectNext();
		
		/**------------------------------------------------------------------------------------------------  
		 * ファイル出力処理 ※SQL実行結果の件数分ファイル出力を行う
		 *-------------------------------------------------------------------------------------------------*/
		ArrayList<String> mngnCdList = new ArrayList<String>();
		
		//検索結果がなくなるまでループを行う
		while(dbInfCont != null)
		{
			
			//ファイル出力用インスタンスの作成
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			
			//出力ファイル設定
			outmap.setString(JBSbatKKIFM689.KNYTCS_NO,				inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO));                         //契約内容通知書番号
			outmap.setString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD,		dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));   //契約内容通知書表示文言コード
			outmap.setString(JBSbatKKIFM689.DSP_PST_SKCD,			dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD));         //表示位置識別コード
			
			if(mngnCdList.contains(outmap.getString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD)))
			{
				// 同一の契約内容通知書表示文言コードが処理済の場合、
				// 以降の処理をスキップし、出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						"コンテンツ関連情報");
			}
			else
			{
				// リストに今回処理分のコードを追加
				mngnCdList.add(outmap.getString(JBSbatKKIFM689.KNYTCS_DSP_MNGN_CD));
				
				//出力対象の表示位置識別番号と一致した場合出力とする
				if (isOutPutTgDspPstSkcd(dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD)))
				{
					//出力処理を呼出
					outContInfoJdg(inMap, outmap, outputBean, svcInfoMap, svcMapList, dbInfCont);
				}
				else
				{
					//出力対象外判定したレコード情報をログに出力する
					createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
							dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
							dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
							"コンテンツ関連情報");
				}
			}
			//次レコードの読み取り
			dbInfCont = db_KK_T_SVC_KEI.selectNext();
			}
		/**------------------------------------------------------------------------------------------------  
		 * 返却処理 ※返却値なし
		 *-------------------------------------------------------------------------------------------------*/

		}
		
	
	/**
	 * SQLKEY(KK_SELECT_392)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	SYSID
	 *		 	申込年月日
	 *		 	予約適用年月日
	 *		 	契約内容通知書表示文言適用開始年月日
	 *		 	契約内容通知書表示文言適用終了年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @param svcKeiList サービス契約リスト
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_KK_SELECT_392(Object[] param, ArrayList<String> svcKeiList)  throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		setListForDbParam(paramList, svcKeiList);                 //サービス契約番号（複数対応)
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());
		
		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_392);
	}
	
	private void outContInfoJdg(JBSbatServiceInterfaceMap inMap, JBSbatServiceInterfaceMap outmap, JBSbatOutputItem outputBean, HashMap<String, String> svcInfoMap, ArrayList<HashMap<String, String>> svcMapList, JBSbatCommonDBInterface dbInfCont) throws Exception
	{
		//文言表示条件個別指定コードがNULLであれば出力を行う
		if(JKKStringUtil.isNullBlank(dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			outmap.setOutFlg(true);
			super.logPrint.printDebugLog("コンテンツ［個別：NULL］："+ dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
			
			//出力ファイルリストに設定
			outputBean.addOutMapList(outmap);
			
		}
		//コンテンツサービスキャンペーンの出力制御(045)と一致した場合【CNIFE057_契約可能コンテンツ取得】でＣＣＭＧよりキャンペーン名称を取得する。
		else if(MNGN_DSP_JKN_KSITEI_CD_045.equals(dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.MNGN_DSP_JKN_KSITEI_CD)))
		{
			/** 【CNIFE057_契約可能コンテンツ取得】呼び出し **/
			HashMap<String, Object> cnife057Res =  new HashMap<String, Object>();
			
			HashMap<String, Object> outputMap = new HashMap<String, Object>();
			String errCd = null;
			try
			{
				
				// サービス呼出し
				invokeService(SVC_USECASE_ID_KKSV1042, dbInfCont,outputMap);
				cnife057Res =(HashMap<String, Object>) outputMap.get(KKSV104201SC);
				errCd = (String) cnife057Res.get("err_cd");
				if(!CCMG_SEIJO.equals(errCd))
				{
					//出力対象外判定したレコード情報をログに出力する
					createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
							dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
							dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
							"CNIFE057_契約可能コンテンツ（err_cd:" + errCd + "）");
					// busログにエラー内容を出力する
					contOutPutMinorAlarmLog(inMap,errCd,dbInfCont);
					// 次レコードを処理
					return;
				}
			}
			catch (Throwable e)
			{
				//出力対象外判定したレコード情報をログに出力する
				createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
						dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
						dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
						SVC_USECASE_ID_KKSV1042 + "_コンテンツサービスキャンペーン名称取得に失敗しました。");
				// busログにエラー内容を出力する
				contOutPutMinorAlarmLog(inMap,errCd,dbInfCont);
				
				// 次レコードを処理
				return;
			}
			if(cnife057Res != null || cnife057Res.size() != 0)
			{
				/* コンテンツサービスキャンペーン名称の編集 */
				ArrayList<HashMap<?, ?>> ecna0250001cbsmsg6List = (ArrayList<HashMap<?, ?>>)  cnife057Res.get("charge_on_contract");
				if(ecna0250001cbsmsg6List != null)
				{
					for (HashMap<?, ?> ecna0250001cbsmsg : ecna0250001cbsmsg6List)
					{
						if (null != ecna0250001cbsmsg)
						{
							//キャンペーン名称を設定
							String campaignNmae = (String) ecna0250001cbsmsg.get("campaign_name");
							// キャンペーン名称が取得できた場合、
							if(!JKKStringUtil.isNullBlank(campaignNmae))
							{
								// コンテンツサービスキャンペーン名称を編集
								String afContSvcCmpNm = cutContCmpNm(inMap,campaignNmae,dbInfCont);
								
								outmap.setString(JBSbatKKIFM689.CONT_SVC_CMP_NM, afContSvcCmpNm);
								outmap.setOutFlg(true);
								super.logPrint.printDebugLog("コンテンツ［個別：045］："+ dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD));
								
								//出力ファイルリストに設定
								outputBean.addOutMapList(outmap);
								
								// 最初に取得したキャンペーン名称を使用したら次レコードを処理
								return;
							}
						}
					}
				}
			}

		}
		else
		{
			//出力対象外判定したレコード情報をログに出力する
			createLog(inMap.getString(JBSbatKK_T_KNYTCS.KNYTCS_NO), 
					dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.KNYTCS_DSP_MNGN_CD), 
					dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.DSP_PST_SKCD),
					"コンテンツ関連情報");
		}
	}
	
	/**
	 * サービス呼出処理
	 * @param custMap お客様情報
	 * @return サービスの処理結果
	 * @throws Exception
	 */
	private void invokeService(String usecaseId, JBSbatCommonDBInterface dbInfCont, HashMap<String, Object> outputMap) throws Exception
	{
		// サービス呼び出し時の引数を生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(JCCBatchEsbInterface.TELEGRAM_INFO_USECASE_ID, usecaseId);
		paramMap.put(JCCBatchEsbInterface.TELEGRAM_INFO_OPERATION_ID, usecaseId
				+ "OP");
		
		HashMap<String, Object> inputMap = new HashMap<String, Object>();
		
		setInvokeServiceInfo(inputMap,dbInfCont);
		
		// サービス呼び出し
		JCCBatchEsbInterface.invokeService(super.commonItem, paramMap,
				inputMap, outputMap);
		
	}
	/**
	 * サービス呼出マッピング
	 * @param dbInfo DBから取得した情報 
	 * @throws Exception
	 */
	private void setInvokeServiceInfo(HashMap<String, Object> inputMap,
			JBSbatCommonDBInterface dbInfCont) throws Exception
	{
		Map<String, Object> mapCc01 = new HashMap<String, Object>();
		mapCc01.put("func_code", "1");
		mapCc01.put("sysid", dbInfCont.getString(JBSbatKK_T_SVC_KEI.SYSID));
		mapCc01.put("cont_svc_cd", dbInfCont.getString(JBSbatKK_T_CONT_MKM_INF.CONT_SVC_CD));
		inputMap.put(KKSV104201SC, mapCc01);
	}
	/**
	 * SQLKEY(KK_SELECT_026)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	業務パラメータID
	 *		 	運用日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeZM_M_WORK_PARAM_KNRI_KK_SELECT_026(Object[] param)  throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		
		// DBアクセスを実行します
		db_ZM_M_WORK_PARAM_KNRI.selectBySqlDefine(paramList, ZM_M_WORK_PARAM_KNRI_KK_SELECT_026);
	}

	/**
	 * マイナーアラームに出力するための情報の設定を行う
	 * ログ出力
	 * CCMG連携時に異常終了した場合エラーが設定される
	 * @param inMap 契約内容通知対象契約情報
	 * @throws Exception
	 */
	private void contOutPutMinorAlarmLog(JBSbatServiceInterfaceMap inMap, String errCd, JBSbatCommonDBInterface dbInfCont) throws Exception
	{
		

		//ログ出力用文字列を出力する
		StringBuilder logStr = new StringBuilder();
		logStr.append(JBSbatKK_T_KNYTCS.SYSID + "=" + inMap.getString(JBSbatKK_T_KNYTCS.SYSID) + ":");
		logStr.append(JBSbatKK_M_KNYTCS_DSP_MNGN.CONT_SVC_CD + "=" + dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.CONT_SVC_CD)+ ":");
		logStr.append(JBSbatKK_T_KNYTCS.KNYTCS_NO + "=" + inMap.getString(JBSbatKKIFM689.KNYTCS_NO));

		// busログにエラー内容を出力する
		if(JKKStringUtil.isNullBlank(errCd))
		{
			commonItem.getLogPrint().printBusinessErrorLog(JPCBatchMessageConstant.EKKB2410AW, new String[]{SVC_USECASE_ID_KKSV1042 + "_コンテンツサービスキャンペーン名称取得",logStr.toString()});
		}
		else
		{
			commonItem.getLogPrint().printBusinessErrorLog(JPCBatchMessageConstant.EKKB2410AW, new String[]{"CNIFE057_契約可能コンテンツ（err_cd: " + errCd + "）",logStr.toString()});
			
		}
		// エラーフラグをtrueに設定
		commonItem.setErrFlg(true);
	}
	/**
	 * 受け取った文字列を100バイトまでに切り取る
	 * @param inMap 契約内容通知対象契約情報
	 * @param inContCmpNm コンテンツキャンペーン名称
	 * @throws Exception
	 */
	private String cutContCmpNm(JBSbatServiceInterfaceMap inMap, String inContCmpNm, JBSbatCommonDBInterface dbInfCont) throws Exception
	{
		byte [] bfBytes = inContCmpNm.getBytes(CONT_CMP_NM_ENCORDE);
		
		// 100バイト以下の場合そのまま返却する。
		if(bfBytes.length <=  CONT_CMP_NM_MAX_BYTE)
		{
			return inContCmpNm;
		}
		
		int cutindex = CONT_CMP_NM_MAX_BYTE;
		// UTF-8の場合、
		while(cutindex > 0 && (bfBytes[cutindex] & 0xC0)  == 0x80 )
		{
			cutindex--;
		}
		
		//ログ出力用文字列を出力する
		StringBuilder logStr = new StringBuilder();
		logStr.append(JBSbatKK_T_KNYTCS.SYSID + "=" + inMap.getString(JBSbatKK_T_KNYTCS.SYSID) + ":");
		logStr.append(JBSbatKK_M_KNYTCS_DSP_MNGN.CONT_SVC_CD + "=" + dbInfCont.getString(JBSbatKK_M_KNYTCS_DSP_MNGN.CONT_SVC_CD)+ ":");
		logStr.append(JBSbatKK_T_KNYTCS.KNYTCS_NO + "=" + inMap.getString(JBSbatKKIFM689.KNYTCS_NO));

		// エラーフラグをtrueに設定
		commonItem.setErrFlg(true);
		//切り取った文字をログにて出力
		commonItem.getLogPrint().printBusinessErrorLog(JPCBatchMessageConstant.EKKB2260AW, new String[]{"削除前コンテンツサービスキャンペーン名称:"+inContCmpNm, logStr.toString()  });
		
		return new String(bfBytes, 0, cutindex, CONT_CMP_NM_ENCORDE);
	}
	// ANK-4570-00-00 ADD END
	// ANK-4427-11-00 ADD START

	/**
	 * typeN標準工事費出力対象判定部品
	 * @param resultMap 
	 * @return TRUE : typeN標準工事費文言出力対象データ
	 *          FALSE: typeN標準工事費文言出力対象外データ
	 * @throws Exception
	 */
	private Boolean jdgTypenStdardKojihi(JBSbatCommonDBInterface resultMap) throws Exception
	{
		// オプションサービスコードがtypeN
		if(JKKStrConst.OP_SVC_CD_EOTEL_TYPEN.equals(resultMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_CD)))
		{
			// オプションサービス契約ステータスが"020"(照査済み)または、"030"(締結済み)
			if(JKKStrConst.OP_SVC_STAT_SHOSAZUMI.equals(resultMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_STAT) )
					|| JKKStrConst.OP_SVC_STAT_TEIKETSUZUMI.equals(resultMap.getString(JBSbatKK_T_OP_SVC_KEI.OP_SVC_KEI_STAT)))
			{
				return true;
			}
		}

		return false;
	
	}
	// ANK-4427-11-00 ADD END
	
// ANK-4662-00-00 ADD START
	/**
	 * 5G/10Gへのコース変更でプラン変更(収容替)の場合かつ収容替え工事の工事範囲が「ローゼット済工事不要案件」でないか判定する。
	 * @param inMap インプットマップ
	 * @return true/false(変更工事費が発生する/発生しない)
	 * @throws Exception 
	 */
	private boolean judChgConstrCost(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		// 申込番号
		String mskmNo =  inMap.getString(JBSbatKK_T_MSKM.MSKM_NO);
		
		/**------------------------------------------------------------------------------------------------  
		 * バインド変数設定
		 *-------------------------------------------------------------------------------------------------*/
		Object[] object = new Object[]
		{
			mskmNo,				// 申込番号
			mskmNo				// 申込番号
		};
		
		/**------------------------------------------------------------------------------------------------  
		 * SQL実行
		 *-------------------------------------------------------------------------------------------------*/
		// 工事案件検索実行
		this.executeKU_T_KOJIAK_KK_SELECT_055(object);
		
		// 検索結果の取得
		JBSbatCommonDBInterface dbInfKojiak = db_KU_T_KOJIAK.selectNext();
		
		// データベースよりレコードが取得できた場合
		if (dbInfKojiak != null)
		{
			return true;
		}
		
		return false;
	}
	
	/**
	 * SQLKEY(KK_SELECT_055)で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_KOJIAK_KK_SELECT_055(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		// DBアクセスを実行します
		db_KU_T_KOJIAK.selectBySqlDefine(paramList, KU_T_KOJIAK_KK_SELECT_055);
	}
// ANK-4662-00-00 ADD END
}


