/*******************************************************************************
 *	 All Rights reserved,Copyright (c) K-Opticom 
 ********************************************************************************
 *＜プログラム内容＞
 *	システム名		：eo顧客基幹システム
 *	モジュール名	：JSYejbEZM0121B030TPDA
 *	ソースファイル名：JSYejbEZM0121B030TPDA.java
 *	作成者			：EKek0027
 *	日付			：2011年08月25日
 *＜機能概要＞
 *	SQLFacility
 *	テンプレートDBアクセス部品です。
 *＜修正履歴＞
 *	バージョン	修正日		修正者		修正内容
 *	ｖ1.00.00
 *	ｖ9.00.00	2014/06/19	FJ)星野		ST4-2014-0000029対応
 *  v10.00.00	2014/09/16	FJ)伊藤		【OM-2014-0000770】【TAI-2014-0000027】対応
 *  v14.00.00	2015/07/02	FJ)窪田		OM-2015-0001304対応
 *  v23.00.00	2016/03/03	FJ)藤本		【OM-2016-0000503】性能改善
 *  ｖ32.00.00	2017/05/26	FJ)河邊		【OM-2017-0000488】オープンカーソルエラー
 *  v37.00.00	2018/07/14	FJ)星野		【OM-2018-0000625】オープンカーソルエラー
 *  v72.00.01	2024/09/20	FJ)寺田		【ANK-4494-00-00】【eo定期】 双方向番ポ対応 STEP2
 ********************************************************************************/

package eo.ejb.cbs.sqlf;

import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.base.CAANSQLFacility;
import com.fujitsu.futurity.model.base.CAANRuntimeException;
import com.fujitsu.futurity.model.base.CAANJDBCUtil;
import com.fujitsu.futurity.model.ejb.common.JSYejbConnection;
import com.fujitsu.futurity.model.ejb.common.JSYejbLog;
import com.fujitsu.futurity.model.ejb.common.StatusCodes;
import com.fujitsu.futurity.model.ejb.common.fw.TemplateDBAccessHandler;
import com.fujitsu.futurity.model.ejb.common.fw.AgentDispatchContext;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;

import eo.common.constant.JPCModelConstant;
import eo.ejb.cbs.cbsmsg.EZM0121B030CBSMsg;
import eo.ejb.cbs.cbsmsg.EZM0121B030CBSMsg1List;
import eo.ejb.cbm.cbmmsg.ZM0321CBMMsg;
import eo.ejb.cbm.entity.ZM0121ETMsg;
import eo.ejb.common.JKKModelCommon;

/**
 *
 *  テンプレートDBアクセス部品　EZM0121B030_SQLF<br>
 *  入力された項目からSQL文を動的に組み立て、<br>
 *  検索結果をCBSMsgにセットします。<br>
 */
public class JSYejbEZM0121B030TPDA extends CAANSQLFacility implements TemplateDBAccessHandler{

	/* ++++++++++ v1.0.0 追加開始 ++++++++++ */

	/**
	 * 検索エラーフラグ(0件)
	 */
	private static final String SEARCH_ERR_FLG_ZERO = JPCModelConstant.SEARCH_ERR_FLG_ZERO;
	/**
	 *  検索エラーフラグ(最大検索件数超え)
	 */
	private static final String SEARCH_ERR_FLG_OVERMAX = JPCModelConstant.SEARCH_ERR_FLG_OVERMAX;
	/**
	 *  検索エラーフラグ(表示ページに該当するデータなし)
	 */
	private static final String SEARCH_ERR_FLG_NODATA = JPCModelConstant.SEARCH_ERR_FLG_NODATA;

	/* ++++++++++ v1.0.0 追加終了 ++++++++++ */

	/**
	 * コンストラクタ
	 */
	public JSYejbEZM0121B030TPDA()	{
	}

	/**
	 *   EZM0121B030_SQLF<br>
	 *   @param inMsg    入力値の格納されたCBSMsg <br>
	 *   @return void
	 */
	public void invoke(CAANMsg inMsg,AgentDispatchContext inContext){

		// コネクション
		Connection con1 = null;

		// プリペアステートメント
		PreparedStatement pstmt = null;

		// リザルトセット
		ResultSet rsltQuery = null;

		// 20121129 TAI-2012-0000139 ADD START
		// プリペアステートメント
		PreparedStatement pstmt2 = null;
		// リザルトセット
		ResultSet rsltQuery2 = null;
		// 20121129 TAI-2012-0000139 ADD END
		/* ++++++++++ v1.0.0 追加開始 ++++++++++ */

		/**
		 * パラメータセット用
		 */
		int index = 1;

		/******************** 
		 * SQL文の作成
		 ********************/

		try{

			// コネクション取得
			con1 = JSYejbConnection.getConnection(ZM0121ETMsg.getTableName());

//ST4-2014-0000029対応 20140619 星野 ADD END
			boolean isTRJoin = true;
			if ( "2".equals( inMsg.getObject(EZM0121B030CBSMsg.FUNC_CODE).toString() ) )
			{
				// TR結合する
			}
			else
			{
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
					{
						// TR結合しない
						isTRJoin = false;
					}else{
						// TR結合する
					}
				}else{
					// TR結合する
				}
			}
			
			boolean isAGJoin = true;
			if ( "2".equals( inMsg.getObject(EZM0121B030CBSMsg.FUNC_CODE).toString() ) )
			{
				// AG結合する
			}
			else
			{
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
					{
						// AG結合しない
						isAGJoin = false;
					}else{
						// AG結合する
					}
				}else{
					// AG結合する
				}
			}
//ST4-2014-0000029対応 20140619 星野 ADD END

			// 20140918 OM-2014-0000770 Add Start
			if ( "3".equals( inMsg.getObject(EZM0121B030CBSMsg.FUNC_CODE).toString() ) ) {
				// 取得処理
				executeFunc3(con1, inContext, inMsg, isTRJoin, isAGJoin, pstmt, pstmt2, rsltQuery, rsltQuery2);
				
			} else {
			// 20140918 OM-2014-0000770 Add END

			/******************** 
			 * 総件数取得
			 ********************/

			StringBuffer sql_Buff_Cnt = new StringBuffer();
			sql_Buff_Cnt.append(" SELECT ")
			.append("     COUNT(*) AS CNT ")
			.append(" FROM ")
			.append("     ZM_M_TELNO TE ")
			.append(" LEFT OUTER JOIN ")
			.append("     ZM_M_KYOKU_NO KY ")
			.append(" ON  KY.KYOKU_NO = TE.KYOKU_NO ")
			.append(" AND KY.KYOKU_NO_TSTAYMD <= ? ")
			.append(" AND KY.KYOKU_NO_TENDYMD >= ? ")
			.append(" AND KY.MK_FLG = '0' ")
//ST4-2014-0000029対応 20140619 星野 ADD START
			;
			if(isTRJoin){
				sql_Buff_Cnt
//ST4-2014-0000029対応 20140619 星野 ADD END
				.append(" LEFT OUTER JOIN ")
				.append("     ZM_T_TELNO_RSV TR ")
				.append(" ON  TR.TELNO  = TE.TELNO ")
				.append(" AND TR.MK_FLG = '0' ")
//ST4-2014-0000029対応 20140619 星野 ADD START
				;
			}
			if(isAGJoin){
				sql_Buff_Cnt
//ST4-2014-0000029対応 20140619 星野 ADD END
				.append(" LEFT OUTER JOIN ")
				.append("     ZM_T_AGING AG ")
				.append(" ON  AG.AGING_SBT_CD   = '001' ")
				.append(" AND AG.AGING_TG_VALUE = TE.TELNO ")
				.append(" AND AG.MK_FLG         = '0' ");
//ST4-2014-0000029対応 20140619 星野 ADD START
			}
//ST4-2014-0000029対応 20140619 星野 ADD END

			// 20130319 OT-2013-0000377 MOD START
			// SQL文_個別部2
			if ( "2".equals( inMsg.getObject(EZM0121B030CBSMsg.FUNC_CODE).toString() ) )
			{
				sql_Buff_Cnt.append(" LEFT OUTER JOIN  ( ")
				.append(" SELECT ")
				.append("  PG_P.PRC_GRP_CD, ")
				.append("  PG_P.KAIHK_PSB_PRD ")
				.append(" FROM ")
				.append("  KK_M_PRC_GRP PG_P ")
				.append(" WHERE PG_P.RSV_APLY_YMD || PG_P.GENE_ADD_DTM = ")
				.append("      (SELECT ")
				.append("         MAX(PG_GENE.RSV_APLY_YMD || PG_GENE.GENE_ADD_DTM) AS PG_P_MAX ")
				.append("       FROM KK_M_PRC_GRP PG_GENE ")
				.append("       WHERE PG_GENE.PRC_GRP_CD = PG_P.PRC_GRP_CD ")
				.append("       AND PG_GENE.RSV_APLY_YMD <= ? ")
				.append("       AND PG_GENE.MK_FLG = '0') ")
				.append(" AND PG_P.PRC_GRP_TSTAYMD <= ? ")
				.append(" AND PG_P.PRC_GRP_TENDYMD >= ? ) PG ")
				.append(" ON PG.PRC_GRP_CD = '10' ");

				sql_Buff_Cnt.append(" WHERE ");
				sql_Buff_Cnt.append("     TE.MK_FLG = '0' ");
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
				{
					sql_Buff_Cnt.append(" AND TE.TELNO LIKE ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					sql_Buff_Cnt.append(" AND KY.NO_KUKAKU_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
				{
					sql_Buff_Cnt.append(" AND TE.SVC_DIV = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
				{
					sql_Buff_Cnt.append(" AND TE.HKAT_SIYK_SBT_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
				{
					sql_Buff_Cnt.append(" AND TE.KOJIN_HOJIN_TLN_TAI_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
				{
					sql_Buff_Cnt.append(" AND ((AG.AGING_STAT = '300' AND TO_CHAR(TO_DATE(SUBSTR(AG.KAIHK_PSB_PRD_END_DTM,0,8)) + (SELECT ZM0321.WORK_PARAM_SETTE_VALUE FROM ZM_M_WORK_PARAM_KNRI ZM0321 WHERE ZM0321.WORK_PARAM_ID = 'ZM_AGING_PRD_001'),'yyyymmdd') >= ? ) ");
					sql_Buff_Cnt.append(" OR   (AG.AGING_STAT = '200' AND TO_CHAR(TO_DATE(SUBSTR(AG.USE_END_DTM,0,8)) + PG.KAIHK_PSB_PRD, 'yyyymmdd') >= ? ) ");
					sql_Buff_Cnt.append(" OR   (AG.AGING_STAT = '100' AND SUBSTR(AG.USE_END_DTM,0,8) >= ? ) ");
					sql_Buff_Cnt.append(" OR   (AG.AGING_STAT IS NULL AND TE.TELNO_TENDYMD >= ? )) ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
				{
					sql_Buff_Cnt.append(" AND ((AG.AGING_STAT = '300' AND SUBSTR(AG.KAIHK_PSB_PRD_END_DTM,0,8) <= ? ) ");
					sql_Buff_Cnt.append(" OR   (AG.AGING_STAT = '200' AND SUBSTR(AG.USE_END_DTM,0,8) <= ? ) ");
					sql_Buff_Cnt.append(" OR   (AG.AGING_STAT = '100' AND SUBSTR(AG.USE_STA_DTM,0,8) <= ? ) ");
					sql_Buff_Cnt.append(" OR   (AG.AGING_STAT IS NULL AND TE.TELNO_TSTAYMD <= ? )) ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
					{
						sql_Buff_Cnt.append(" AND TR.TELNO_RSV_STAT IS NULL ");
					}
					else
					{
						sql_Buff_Cnt.append(" AND TR.TELNO_RSV_STAT = ? ");
					}
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
				{
					sql_Buff_Cnt.append(" AND TR.TELNO_RSV_SBT_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
				{
					sql_Buff_Cnt.append(" AND TR.YOYAKSHA_SYSID = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
				{
					sql_Buff_Cnt.append(" AND TR.YOYAKSHA_SVC_KEI_NO = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
				{
					sql_Buff_Cnt.append(" AND TR.YOYAKSHA_PROSCST_NO = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
				{
					sql_Buff_Cnt.append(" AND TR.TAIO_KIROK_NO = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
					{
						sql_Buff_Cnt.append(" AND AG.AGING_STAT IS NULL ");
					}
					else
					{
						sql_Buff_Cnt.append(" AND AG.AGING_STAT = ?  ");
					}
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
				{
					sql_Buff_Cnt.append(" AND TE.NO_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
// ANK-4494-00-00 STEP2 MOD START
//					sql_Buff_Cnt.append(" AND TE.WARIATE_TSJGS_CD = ? ");
					// ＫＥＹ＿割当通信事業者コードをそのままに、対象項目を電話番号取得事業者コードへ当てる
					sql_Buff_Cnt.append(" AND TE.TLN_STKU_TSJGS_CD = ? ");
// ANK-4494-00-00 STEP2 MOD END
				}
			}
			// 20130319 OT-2013-0000377 MOD END
			else
			{
				sql_Buff_Cnt.append(" WHERE ");
				sql_Buff_Cnt.append("     TE.MK_FLG = '0' ");
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
				{
					sql_Buff_Cnt.append(" AND TE.TELNO LIKE ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					sql_Buff_Cnt.append(" AND KY.NO_KUKAKU_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
				{
					sql_Buff_Cnt.append(" AND TE.SVC_DIV = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
				{
					sql_Buff_Cnt.append(" AND TE.HKAT_SIYK_SBT_CD = ? ");
				}
				// 20130222 OT-2013-0000146 ADD START
				else
				{
					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
					{
						// "999"(なし)選択時
						if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
						{
							sql_Buff_Cnt.append(" AND TE.HKAT_SIYK_SBT_CD IS NULL ");
						}
					}
				}
				// 20130222 OT-2013-0000146 ADD END
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
				{
					sql_Buff_Cnt.append(" AND TE.KOJIN_HOJIN_TLN_TAI_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
				{
					sql_Buff_Cnt.append(" AND TE.TELNO_TENDYMD >= ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
				{
					sql_Buff_Cnt.append(" AND TE.TELNO_TSTAYMD <= ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
					{
// ST4-2014-0000029対応 20140619 星野 MOD START
//						sql_Buff_Cnt.append(" AND TR.TELNO_RSV_STAT IS NULL ");
						sql_Buff_Cnt
						.append(" AND NOT EXISTS( ")
						.append("     SELECT 1 FROM ZM_T_TELNO_RSV TR2")
						.append("     WHERE")
						.append("         TR2.TELNO  = TE.TELNO ")
						.append("         AND TR2.MK_FLG = '0' ")
						.append(" )");
// ST4-2014-0000029対応 20140619 星野 MOD END
					}
					else
					{
						sql_Buff_Cnt.append(" AND TR.TELNO_RSV_STAT = ? ");
					}
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
				{
// ST4-2014-0000029対応 20140619 星野 ADD START
					if(isTRJoin){
// ST4-2014-0000029対応 20140619 星野 ADD END
						sql_Buff_Cnt.append(" AND TR.TELNO_RSV_SBT_CD = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
					}else{
						sql_Buff_Cnt.append(" AND ? IS NULL");
					}
// ST4-2014-0000029対応 20140619 星野 ADD END
				}
				// 20130218 ST2-2013-0000698 MOD START
				if (
						inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null
						&& inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null
				)
				{
// ST4-2014-0000029対応 20140619 星野 ADD START
					if(isTRJoin){
// ST4-2014-0000029対応 20140619 星野 ADD END
						sql_Buff_Cnt.append(" AND (TR.YOYAKSHA_SYSID = ? ");
						sql_Buff_Cnt.append(" OR TR.YOYAKSHA_SVC_KEI_NO = ?) ");
// ST4-2014-0000029対応 20140619 星野 ADD START
					}else{
						sql_Buff_Cnt.append(" AND ( ? IS NULL OR ? IS NULL) ");
					}
// ST4-2014-0000029対応 20140619 星野 ADD END
				}
				else
				{
					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
					{
// ST4-2014-0000029対応 20140619 星野 ADD START
						if(isTRJoin){
// ST4-2014-0000029対応 20140619 星野 ADD END
							sql_Buff_Cnt.append(" AND TR.YOYAKSHA_SYSID = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
						}else{
							sql_Buff_Cnt.append(" AND ? IS NULL ");
						}
// ST4-2014-0000029対応 20140619 星野 ADD END
					}
					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
					{
// ST4-2014-0000029対応 20140619 星野 ADD START
						if(isTRJoin){
// ST4-2014-0000029対応 20140619 星野 ADD END
							sql_Buff_Cnt.append(" AND TR.YOYAKSHA_SVC_KEI_NO = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
						}else{
							sql_Buff_Cnt.append(" AND ? IS NULL ");
						}
// ST4-2014-0000029対応 20140619 星野 ADD END
					}
				}
				// 20130218 ST2-2013-0000698 MOD END
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
				{
// ST4-2014-0000029対応 20140619 星野 ADD START
					if(isTRJoin){
//ST4-2014-0000029対応 20140619 星野 ADD END
						sql_Buff_Cnt.append(" AND TR.YOYAKSHA_PROSCST_NO = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
					}else{
						sql_Buff_Cnt.append(" AND ? IS NULL ");
					}
//ST4-2014-0000029対応 20140619 星野 ADD END
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
				{
// ST4-2014-0000029対応 20140619 星野 ADD START
					if(isTRJoin){
//ST4-2014-0000029対応 20140619 星野 ADD END
						sql_Buff_Cnt.append(" AND TR.TAIO_KIROK_NO = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
					}else{
						sql_Buff_Cnt.append(" AND ? IS NULL ");
					}
//ST4-2014-0000029対応 20140619 星野 ADD END
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
					{
// ST4-2014-0000029対応 20140619 星野 MOD START
//						sql_Buff_Cnt.append(" AND AG.AGING_STAT IS NULL ");
						sql_Buff_Cnt
						.append(" AND NOT EXISTS( ")
						.append("     SELECT 1 FROM ZM_T_AGING AG2")
						.append("     WHERE")
						.append("         AG2.AGING_SBT_CD       = '001' ")
						.append("         AND AG2.AGING_TG_VALUE = TE.TELNO ")
						.append("         AND AG2.MK_FLG         = '0' ")
						.append(" )");
// ST4-2014-0000029対応 20140619 星野 MOD END
					}
					else
					{
						sql_Buff_Cnt.append(" AND AG.AGING_STAT = ?  ");
					}
				}
				// 案件対応 ANK-1670-00-00 2013/11/05 START
				else {
					sql_Buff_Cnt.append(" AND ( AG.AGING_STAT IS NULL OR AG.AGING_STAT <> '100' )  ");
				}
				// 案件対応 ANK-1670-00-00 2013/11/05 END
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
				{
					sql_Buff_Cnt.append(" AND TE.NO_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
// ANK-4494-00-00 STEP2 MOD START
//					sql_Buff_Cnt.append(" AND TE.WARIATE_TSJGS_CD = ? ");
					// ＫＥＹ＿割当通信事業者コードをそのままに、対象項目を電話番号取得事業者コードへ当てる
					sql_Buff_Cnt.append(" AND TE.TLN_STKU_TSJGS_CD = ? ");
// ANK-4494-00-00 STEP2 MOD END
				}
			}
			// prepareStatementにSQL文をセット
			pstmt = con1.prepareStatement(sql_Buff_Cnt.toString());

			// ログ出力(SQL文の出力)
			JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff_Cnt);

			// PreparedStatementの指定されたパラメータカラムに 指定された値を設定
			index = 1;

			// 20130319 OT-2013-0000377 MOD START
			if ( "2".equals( inMsg.getObject(EZM0121B030CBSMsg.FUNC_CODE).toString() ) )
			{
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(ＫＥＹ＿電話番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getString(EZM0121B030CBSMsg.KEY_TELNO) + "%");
				}
				// パラメータの設定(ＫＥＹ＿番号区画コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD));
				}
				// パラメータの設定(ＫＥＹ＿サービス区分を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV));
				}
				// パラメータの設定(ＫＥＹ＿引当制約種別コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD));
				}
				// パラメータの設定(ＫＥＹ＿個人法人電話番号帯コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD));
				}
				// パラメータの設定(ＫＥＹ＿電話番号適用期間開始を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
				}
				// パラメータの設定(ＫＥＹ＿電話番号適用期間終了を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
				}
				// パラメータの設定(ＫＥＹ＿電話番号予約ステータスを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
				{
					// "999"(なし)選択時
					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
					{
						CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT));
					}
				}
				// パラメータの設定(ＫＥＹ＿電話番号予約種別コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD));
				}
				// パラメータの設定(ＫＥＹ＿予約者ＳＹＳＩＤを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID));
				}
				// パラメータの設定(ＫＥＹ＿予約者サービス契約番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO));
				}
				// パラメータの設定(ＫＥＹ＿予約者問合せ客番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO));
				}
				// パラメータの設定(ＫＥＹ＿対応記録番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO));
				}
				// パラメータの設定(ＫＥＹ＿エイジングステータスを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
				{
					// "999"(なし)選択時
					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
					{
						CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT));
					}
				}
				// パラメータの設定(ＫＥＹ＿番号コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD));
				}
				// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
				}
			}
			// 20130319 OT-2013-0000377 MOD END
			else
			{
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(ＫＥＹ＿電話番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getString(EZM0121B030CBSMsg.KEY_TELNO) + "%");
				}
				// パラメータの設定(ＫＥＹ＿番号区画コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD));
				}
				// パラメータの設定(ＫＥＹ＿サービス区分を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV));
				}
				// パラメータの設定(ＫＥＹ＿引当制約種別コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD));
				}
				// パラメータの設定(ＫＥＹ＿個人法人電話番号帯コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD));
				}
				// パラメータの設定(ＫＥＹ＿電話番号適用期間開始を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
				}
				// パラメータの設定(ＫＥＹ＿電話番号適用期間終了を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
				}
				// パラメータの設定(ＫＥＹ＿電話番号予約ステータスを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
				{
					// "999"(なし)選択時
					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
					{
						CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT));
					}
				}
				// パラメータの設定(ＫＥＹ＿電話番号予約種別コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD));
				}
				// パラメータの設定(ＫＥＹ＿予約者ＳＹＳＩＤを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID));
				}
				// パラメータの設定(ＫＥＹ＿予約者サービス契約番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO));
				}
				// パラメータの設定(ＫＥＹ＿予約者問合せ客番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO));
				}
				// パラメータの設定(ＫＥＹ＿対応記録番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO));
				}
				// パラメータの設定(ＫＥＹ＿エイジングステータスを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
				{
					// "999"(なし)選択時
					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
					{
						CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT));
					}
				}
				// パラメータの設定(ＫＥＹ＿番号コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD));
				}
				// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
				}
			}


			//ログ出力(SQL文の出力)
			JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff_Cnt);

			/**
			 * SQL文実行
			 */
			// ResultSetの取得
			rsltQuery = pstmt.executeQuery();

			// EZM0161B010CBSMsgの明細にセットする項目
			String[] msgKeyListCnt = {
					EZM0121B030CBSMsg.TOTAL_SEARCH_NUM
			};

			/**
			 * 結果取得
			 */
			rsltQuery.next();
			mapMessage(rsltQuery, msgKeyListCnt, inMsg);

			/**
			 * 総ページ数、エラーフラグ設定
			 */
			// 総ページ数設定
			int iTotal = Integer.parseInt(inMsg.getString(EZM0121B030CBSMsg.TOTAL_SEARCH_NUM));
			int iDispNum = Integer.parseInt(inMsg.getString(EZM0121B030CBSMsg.DISPLAY_NUM));
			int iSearchDivDisp =  iTotal / iDispNum;
			int iRest =  iTotal % iDispNum;

			// 割り切れない場合は総ページ数を増やす
			if (0 != iRest)
			{
				iSearchDivDisp++;
			}
			inMsg.set(EZM0121B030CBSMsg.TOTAL_PAGE_NUM, Integer.toString(iSearchDivDisp));

			// 検索件数が0件の場合、エラーフラグに"1"を設定して処理終了
			if (0 == (Integer.parseInt(inMsg.getString(EZM0121B030CBSMsg.TOTAL_SEARCH_NUM))))
			{
				inMsg.set(EZM0121B030CBSMsg.SEARCH_ERR_FLG, SEARCH_ERR_FLG_ZERO);
				return;
			}

// 20120524 ST2-2012-0000731 START
//			// 検索件数が最大検索件数を超えた場合、エラーフラグに"2"を設定して処理終了
//			if (Integer.parseInt(inMsg.getString(EZM0121B030CBSMsg.MAX_SEARCH_NUM))
//					< (Integer.parseInt(inMsg.getString(EZM0121B030CBSMsg.TOTAL_SEARCH_NUM))))
//			{
//				inMsg.set(EZM0121B030CBSMsg.SEARCH_ERR_FLG, SEARCH_ERR_FLG_OVERMAX);
//				return;
//			}
// 20120524 ST2-2012-0000731 END

			// 20130319 OT-2013-0000377 MOD START
			if ( "2".equals( inMsg.getObject(EZM0121B030CBSMsg.FUNC_CODE).toString() ) )
			{
				// 検索件数が最大検索件数を超えた場合、エラーフラグに"2"を設定して処理終了
				if (Integer.parseInt(inMsg.getString(EZM0121B030CBSMsg.MAX_SEARCH_NUM))
						< (Integer.parseInt(inMsg.getString(EZM0121B030CBSMsg.TOTAL_SEARCH_NUM))))
				{
					inMsg.set(EZM0121B030CBSMsg.SEARCH_ERR_FLG, SEARCH_ERR_FLG_OVERMAX);
					return;
				}
			}
			// 20130319 OT-2013-0000377 MOD END

			// 表示ページに該当するデータがない場合、エラーフラグに"3"を設定して処理終了
			int iDispPageNum = Integer.parseInt(inMsg.getString(EZM0121B030CBSMsg.DISPLAY_PAGE_NUM));
			int iStartNum = iDispNum * (iDispPageNum - 1) + 1;
			int iEndNum = iDispNum * iDispPageNum;
			if (iSearchDivDisp < iDispPageNum)
			{
				inMsg.set(EZM0121B030CBSMsg.SEARCH_ERR_FLG, SEARCH_ERR_FLG_NODATA);
				return;
			}

			/******************** 
			 * データ取得
			 ********************/

			// SQL文_基本部1
			StringBuffer sql_Buff = new StringBuffer();
			// 20130319 OT-2013-0000377 MOD START
			if ( "2".equals( inMsg.getObject(EZM0121B030CBSMsg.FUNC_CODE).toString() ) )
			{
				sql_Buff.append(" SELECT ")
				.append("     TELNO, ")
				.append("     TELNO_TSTAYMD, ")
				.append("     TELNO_TENDYMD, ")
				.append("     ZM0121_UPD_DTM, ")
				.append("     TELNO_RSV_NO, ")
				.append("     TELNO_RSV_STAT, ")
				.append("     TELNO_RSV_STAT_NM, ")
				.append("     ZM0181_UPD_DTM, ")
				.append("     AGING_NO, ")
				.append("     AGING_STAT, ")
				.append("     AGING_STAT_NM, ")
				.append("     ROW_NUM ")
				.append(" FROM ( ")
				.append("     SELECT ")
				.append("         ROW_NUMBER() OVER(ORDER BY TE.TELNO) AS ROW_NUM, ")
				.append("         TE.TELNO AS TELNO, ")
				.append("         CASE WHEN AG.AGING_STAT = '300' ")
				.append("              THEN SUBSTR(AG.KAIHK_PSB_PRD_END_DTM,0,8) ")
				.append("              ELSE CASE WHEN AG.AGING_STAT = '200' ")
				.append("                        THEN SUBSTR(AG.USE_END_DTM,0,8) ")
				.append("                        ELSE CASE WHEN AG.AGING_STAT = '100' ")
				.append("                                  THEN SUBSTR(AG.USE_STA_DTM,0,8) ")
				.append("                                  ELSE TE.TELNO_TSTAYMD ")
				.append("                             END ")
				.append("                   END ")
				.append("         END AS TELNO_TSTAYMD, ")
				.append("         CASE WHEN AG.AGING_STAT = '300' ")
				.append("              THEN TO_CHAR(TO_DATE(SUBSTR(AG.KAIHK_PSB_PRD_END_DTM,0,8)) + (SELECT WORK_PARAM_SETTE_VALUE FROM ZM_M_WORK_PARAM_KNRI WHERE WORK_PARAM_ID = 'ZM_AGING_PRD_001'),'yyyymmdd') ")
				.append("              ELSE CASE WHEN AG.AGING_STAT = '200' ")
				.append("                        THEN TO_CHAR(TO_DATE(SUBSTR(AG.USE_END_DTM,0,8)) + PG.KAIHK_PSB_PRD, 'yyyymmdd') ")
				.append("                        ELSE CASE WHEN AG.AGING_STAT = '100' ")
				.append("                                  THEN SUBSTR(AG.USE_END_DTM,0,8) ")
				.append("                                  ELSE TE.TELNO_TENDYMD ")
				.append("                             END ")
				.append("                   END ")
				.append("         END AS TELNO_TENDYMD, ")
				.append("         TE.UPD_DTM AS ZM0121_UPD_DTM, ")
				.append("         TR.TELNO_RSV_NO AS TELNO_RSV_NO, ")
				.append("         TR.TELNO_RSV_STAT AS TELNO_RSV_STAT, ")
				.append("         DECODE(TR.TELNO_RSV_STAT,NULL,NULL,( ")
				.append("             SELECT CD1.CD_DIV_NM ")
				.append("             FROM   ZM_M_CD_NM_KANRI CD1 ")
				.append("             WHERE  CD1.CD_SBT_CD = 'CD00413' ")
				.append("             AND    CD1.CD_DIV = TR.TELNO_RSV_STAT ")
				.append("             AND    CD1.MK_FLG = '0' ")
				.append("         )) AS TELNO_RSV_STAT_NM, ")
				.append("         TR.UPD_DTM AS ZM0181_UPD_DTM, ")
				.append("         AG.AGING_NO AS AGING_NO, ")
				.append("         AG.AGING_STAT AS AGING_STAT, ")
				.append("         DECODE(AG.AGING_STAT,NULL,NULL,( ")
				.append("             SELECT CD2.CD_DIV_NM ")
				.append("             FROM   ZM_M_CD_NM_KANRI CD2 ")
				.append("             WHERE  CD2.CD_SBT_CD = 'CD00063' ")
				.append("             AND    CD2.CD_DIV = AG.AGING_STAT ")
				.append("             AND    CD2.MK_FLG = '0' ")
				.append("         )) AS AGING_STAT_NM ")
				.append("     FROM ")
				.append("         ZM_M_TELNO TE ")
				.append("     LEFT OUTER JOIN ")
				.append("         ZM_M_KYOKU_NO KY ")
				.append("     ON  KY.KYOKU_NO = TE.KYOKU_NO ")
				.append("     AND KY.KYOKU_NO_TSTAYMD <= ? ")
				.append("     AND KY.KYOKU_NO_TENDYMD >= ? ")
				.append("     AND KY.MK_FLG = '0' ")
				.append("     LEFT OUTER JOIN ")
				.append("         ZM_T_TELNO_RSV TR ")
				.append("     ON  TR.TELNO = TE.TELNO ")
				.append("     AND TR.MK_FLG = '0' ")
				.append("     LEFT OUTER JOIN ")
				.append("         ZM_T_AGING AG ")
				.append("     ON  AG.AGING_SBT_CD = '001' ")
				.append("     AND AG.AGING_TG_VALUE = TE.TELNO ")
				.append("     AND AG.MK_FLG = '0' ")
				.append("     LEFT OUTER JOIN ( ")
				.append("         SELECT ")
				.append("             PG_P.PRC_GRP_CD, ")
				.append("             PG_P.KAIHK_PSB_PRD ")
				.append("         FROM ")
				.append("             KK_M_PRC_GRP PG_P ")
				.append("         WHERE PG_P.RSV_APLY_YMD || PG_P.GENE_ADD_DTM = ")
				.append("            (SELECT ")
				.append("                 MAX(PG_GENE.RSV_APLY_YMD || PG_GENE.GENE_ADD_DTM) AS PG_P_MAX ")
				.append("             FROM KK_M_PRC_GRP PG_GENE ")
				.append("             WHERE PG_GENE.PRC_GRP_CD = PG_P.PRC_GRP_CD ")
				.append("             AND PG_GENE.RSV_APLY_YMD <= ? ")
				.append("             AND PG_GENE.MK_FLG = '0') ")
				.append("         AND PG_P.PRC_GRP_TSTAYMD <= ? ")
				.append("         AND PG_P.PRC_GRP_TENDYMD >= ? ) PG ")
				.append("     ON PG.PRC_GRP_CD = '10' ");

				sql_Buff.append(" WHERE ");
				sql_Buff.append("     TE.MK_FLG = '0' ");
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
				{
					sql_Buff.append(" AND TE.TELNO LIKE ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					sql_Buff.append(" AND KY.NO_KUKAKU_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
				{
					sql_Buff.append(" AND TE.SVC_DIV = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
				{
					sql_Buff.append(" AND TE.HKAT_SIYK_SBT_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
				{
					sql_Buff.append(" AND TE.KOJIN_HOJIN_TLN_TAI_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
				{
					sql_Buff.append(" AND ((AG.AGING_STAT = '300' AND TO_CHAR(TO_DATE(SUBSTR(AG.KAIHK_PSB_PRD_END_DTM,0,8)) + (SELECT ZM0321.WORK_PARAM_SETTE_VALUE FROM ZM_M_WORK_PARAM_KNRI ZM0321 WHERE ZM0321.WORK_PARAM_ID = 'ZM_AGING_PRD_001'),'yyyymmdd') >= ? ) ");
					sql_Buff.append(" OR   (AG.AGING_STAT = '200' AND TO_CHAR(TO_DATE(SUBSTR(AG.USE_END_DTM,0,8)) + PG.KAIHK_PSB_PRD, 'yyyymmdd') >= ? ) ");
					sql_Buff.append(" OR   (AG.AGING_STAT = '100' AND SUBSTR(AG.USE_END_DTM,0,8) >= ? ) ");
					sql_Buff.append(" OR   (AG.AGING_STAT IS NULL AND TE.TELNO_TENDYMD >= ? )) ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
				{
					sql_Buff.append(" AND ((AG.AGING_STAT = '300' AND SUBSTR(AG.KAIHK_PSB_PRD_END_DTM,0,8) <= ? ) ");
					sql_Buff.append(" OR   (AG.AGING_STAT = '200' AND SUBSTR(AG.USE_END_DTM,0,8) <= ? ) ");
					sql_Buff.append(" OR   (AG.AGING_STAT = '100' AND SUBSTR(AG.USE_STA_DTM,0,8) <= ? ) ");
					sql_Buff.append(" OR   (AG.AGING_STAT IS NULL AND TE.TELNO_TSTAYMD <= ? )) ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
					{
						sql_Buff.append(" AND TR.TELNO_RSV_STAT IS NULL ");
					}
					else
					{
						sql_Buff.append(" AND TR.TELNO_RSV_STAT = ? ");
					}
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
				{
					sql_Buff.append(" AND TR.TELNO_RSV_SBT_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
				{
					sql_Buff.append(" AND TR.YOYAKSHA_SYSID = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
				{
					sql_Buff.append(" AND TR.YOYAKSHA_SVC_KEI_NO = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
				{
					sql_Buff.append(" AND TR.YOYAKSHA_PROSCST_NO = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
				{
					sql_Buff.append(" AND TR.TAIO_KIROK_NO = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
					{
						sql_Buff.append(" AND AG.AGING_STAT IS NULL ");
					}
					else
					{
						sql_Buff.append(" AND AG.AGING_STAT = ?  ");
					}
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
				{
					sql_Buff.append(" AND TE.NO_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
// ANK-4494-00-00 STEP2 MOD START
//					sql_Buff.append(" AND TE.WARIATE_TSJGS_CD = ? ");
					// ＫＥＹ＿割当通信事業者コードをそのままに、対象項目を電話番号取得事業者コードへ当てる
					sql_Buff.append(" AND TE.TLN_STKU_TSJGS_CD = ? ");
// ANK-4494-00-00 STEP2 MOD END
				}
				sql_Buff.append(" ORDER BY ")
				.append("     ROW_NUM ")
				.append(" ) TELNO_RESULT ")
				.append("     WHERE TELNO_RESULT.ROW_NUM BETWEEN ? AND ? ");
			}
			// 20130319 OT-2013-0000377 MOD END
			else
			{
				sql_Buff.append(" SELECT * ")
				.append(" FROM ( ")
				.append("     SELECT ")
				.append("         TELNO, ")
				.append("         TELNO_TSTAYMD, ")
				.append("         TELNO_TENDYMD, ")
				.append("         ZM0121_UPD_DTM, ")
				.append("         TELNO_RSV_NO, ")
				.append("         TELNO_RSV_STAT, ")
				.append("         TELNO_RSV_STAT_NM, ")
				.append("         ZM0181_UPD_DTM, ")
				.append("         AGING_NO, ")
				.append("         AGING_STAT, ")
				.append("         AGING_STAT_NM, ")
				.append("         ROW_NUMBER() OVER(ORDER BY TELNO_RESULT.TELNO) AS ROW_NUM ")
				.append("     FROM ( ")
				.append("         SELECT ")
				.append("             TE.TELNO AS TELNO, ")
				.append("             TE.TELNO_TSTAYMD AS TELNO_TSTAYMD, ")
				.append("             TE.TELNO_TENDYMD AS TELNO_TENDYMD, ")
				.append("             TE.UPD_DTM AS ZM0121_UPD_DTM, ")
// ST4-2014-0000029対応 20140619 星野 ADD START
				;
				if(isTRJoin){
					sql_Buff
//ST4-2014-0000029対応 20140619 星野 ADD END
					.append("             TR.TELNO_RSV_NO AS TELNO_RSV_NO, ")
					.append("             TR.TELNO_RSV_STAT AS TELNO_RSV_STAT, ")
// ST4-2014-0000029対応 20140619 星野 MOD START
//					.append("             DECODE( ")
//					.append("                 TR.TELNO_RSV_STAT,NULL,NULL, ")
//					.append("                 ( ")
//					.append("                     SELECT CD1.CD_DIV_NM ")
//					.append("                     FROM   ZM_M_CD_NM_KANRI CD1 ")
//					.append("                     WHERE  CD1.CD_SBT_CD = 'CD00413' ")
//					.append("                     AND    CD1.CD_DIV = TR.TELNO_RSV_STAT ")
//					.append("                     AND    CD1.MK_FLG = '0' ")
//					.append("                 ) ")
//					.append("             ) AS TELNO_RSV_STAT_NM, ")
					.append("             ( ")
					.append("                     SELECT CD1.CD_DIV_NM ")
					.append("                     FROM   ZM_M_CD_NM_KANRI CD1 ")
					.append("                     WHERE  CD1.CD_SBT_CD = 'CD00413' ")
					.append("                     AND    CD1.CD_DIV = TR.TELNO_RSV_STAT ")
					.append("                     AND    CD1.MK_FLG = '0' ")
					.append("             ) AS TELNO_RSV_STAT_NM, ")
// ST4-2014-0000029対応 20140619 星野 MOD END
					.append("             TR.UPD_DTM AS ZM0181_UPD_DTM, ")
// ST4-2014-0000029対応 20140619 星野 ADD START
				;
				}else{
					sql_Buff
					.append("             NULL AS TELNO_RSV_NO, ")
					.append("             NULL AS TELNO_RSV_STAT, ")
					.append("             NULL AS TELNO_RSV_STAT_NM, ")
					.append("             NULL AS ZM0181_UPD_DTM, ")
					;
				}
				
				if(isAGJoin){
					sql_Buff
// ST4-2014-0000029対応 20140619 星野 ADD END
// ST4-2014-0000029対応 20140619 星野 MOD START
//					.append("             ( ")
//					.append("                 SELECT ZM0111.AGING_NO ")
//					.append("                 FROM   ZM_T_AGING ZM0111 ")
//					.append("                 WHERE  ZM0111.AGING_SBT_CD   = '001' ")
//					.append("                 AND    ZM0111.AGING_TG_VALUE = TE.TELNO ")
//					.append("                 AND    ZM0111.MK_FLG         = '0' ")
//					.append("             ) AS AGING_NO, ")
					.append("             AG.AGING_NO AS AGING_NO, ")
// ST4-2014-0000029対応 20140619 星野 MOD END
// ST4-2014-0000029対応 20140619 星野 MOD START
//					.append("             ( ")
//					.append("                 SELECT ZM0111.AGING_STAT ")
//					.append("                 FROM   ZM_T_AGING ZM0111 ")
//					.append("                 WHERE  ZM0111.AGING_SBT_CD   = '001' ")
//					.append("                 AND    ZM0111.AGING_TG_VALUE = TE.TELNO ")
//					.append("                 AND    ZM0111.MK_FLG         = '0' ")
//					.append("             ) AS AGING_STAT, ")
					.append("             AG.AGING_STAT AS AGING_STAT, ")
// ST4-2014-0000029対応 20140619 星野 MOD END
// ST4-2014-0000029対応 20140619 星野 MOD START
//					.append("             DECODE( ")
//					.append("                 ( ")
//					.append("                     SELECT ZM0111.AGING_STAT ")
//					.append("                     FROM   ZM_T_AGING ZM0111 ")
//					.append("                     WHERE  ZM0111.AGING_SBT_CD   = '001' ")
//					.append("                     AND    ZM0111.AGING_TG_VALUE = TE.TELNO ")
//					.append("                     AND    ZM0111.MK_FLG         = '0' ")
//					.append("                 ),NULL,NULL, ")
//					.append("                 ( ")
//					.append("                     SELECT CD2.CD_DIV_NM ")
//					.append("                     FROM   ZM_M_CD_NM_KANRI CD2 ")
//					.append("                     WHERE  CD2.CD_SBT_CD = 'CD00063' ")
//					.append("                     AND    CD2.CD_DIV = ( ")
//					.append("                         SELECT ZM0111.AGING_STAT ")
//					.append("                         FROM   ZM_T_AGING ZM0111 ")
//					.append("                         WHERE  ZM0111.AGING_SBT_CD   = '001' ")
//					.append("                         AND    ZM0111.AGING_TG_VALUE = TE.TELNO ")
//					.append("                         AND    ZM0111.MK_FLG         = '0' ")
//					.append("                     ) ")
//					.append("                     AND    CD2.MK_FLG = '0' ")
//					.append("                 ) ")
//					.append("             ) AS AGING_STAT_NM, ")
					.append("             ( ")
					.append("                     SELECT CD2.CD_DIV_NM ")
					.append("                     FROM   ZM_M_CD_NM_KANRI CD2 ")
					.append("                     WHERE  CD2.CD_SBT_CD = 'CD00063' ")
					.append("                     AND    CD2.CD_DIV    = AG.AGING_STAT ")
					.append("                     AND    CD2.MK_FLG    = '0' ")
					.append("             ) AS AGING_STAT_NM, ")
// ST4-2014-0000029対応 20140619 星野 MOD END
// ST4-2014-0000029対応 20140619 星野 ADD START
				;
				}else{
					sql_Buff
					.append("             NULL AS AGING_NO, ")
					.append("             NULL AS AGING_STAT, ")
					.append("             NULL AS AGING_STAT_NM, ")
					;
				}
				sql_Buff
// ST4-2014-0000029対応 20140619 星野 ADD END
				.append("             ( ")
				.append("                 SELECT ZM0301.NO_KUKAKU_CD ")
				.append("                 FROM   ZM_M_KYOKU_NO ZM0301 ")
				.append("                 WHERE  ZM0301.KYOKU_NO          = TE.KYOKU_NO ")
				.append("                 AND    ZM0301.KYOKU_NO_TSTAYMD <= ? ")
				.append("                 AND    ZM0301.KYOKU_NO_TENDYMD >= ? ")
				.append("                 AND    ZM0301.MK_FLG            = '0' ")
				.append("             ) AS NO_KUKAKU_CD ")
				.append("         FROM ")
				.append("             ZM_M_TELNO TE ")
// ST4-2014-0000029対応 20140619 星野 ADD START
				;
				if(isTRJoin){
					sql_Buff
//ST4-2014-0000029対応 20140619 星野 ADD END
					.append("         LEFT OUTER JOIN ZM_T_TELNO_RSV TR ")
					.append("             ON  TR.TELNO = TE.TELNO ")
					.append("             AND TR.MK_FLG = '0' ");
// ST4-2014-0000029対応 20140619 星野 ADD START
				}
				if(isAGJoin){
					sql_Buff
					.append(" LEFT OUTER JOIN ")
					.append("     ZM_T_AGING AG ")
					.append(" ON  AG.AGING_SBT_CD   = '001' ")
					.append(" AND AG.AGING_TG_VALUE = TE.TELNO ")
					.append(" AND AG.MK_FLG         = '0' ");
				}
// ST4-2014-0000029対応 20140619 星野 ADD END

				sql_Buff.append("         WHERE ");
				sql_Buff.append("             TE.MK_FLG = '0' ");
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
				{
					sql_Buff.append("         AND TE.TELNO LIKE ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
				{
					sql_Buff.append("         AND TE.SVC_DIV = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
				{
					sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD = ? ");
				}
				// 20130222 OT-2013-0000146 ADD START
				else
				{
					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
					{
						// "999"(なし)選択時
						if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
						{
							sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD IS NULL ");
						}
					}
				}
				// 20130222 OT-2013-0000146 ADD END
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
				{
					sql_Buff.append("         AND TE.KOJIN_HOJIN_TLN_TAI_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
				{
					sql_Buff.append("         AND TE.TELNO_TENDYMD >= ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
				{
					sql_Buff.append("         AND TE.TELNO_TSTAYMD <= ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
					{
// ST4-2014-0000029対応 20140619 星野 MOD START
//						sql_Buff.append("         AND TR.TELNO_RSV_STAT IS NULL ");
						sql_Buff
						.append(" AND NOT EXISTS( ")
						.append("     SELECT 1 FROM ZM_T_TELNO_RSV TR2")
						.append("     WHERE")
						.append("         TR2.TELNO  = TE.TELNO ")
						.append("         AND TR2.MK_FLG = '0' ")
						.append(" )");
// ST4-2014-0000029対応 20140619 星野 MOD END
					}
					else
					{
						sql_Buff.append("         AND TR.TELNO_RSV_STAT = ? ");
					}
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
				{
// ST4-2014-0000029対応 20140619 星野 ADD START
					if(isTRJoin){
//ST4-2014-0000029対応 20140619 星野 ADD END
						sql_Buff.append("         AND TR.TELNO_RSV_SBT_CD = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
					}else{
						sql_Buff.append("         AND ? IS NULL ");
					}
// ST4-2014-0000029対応 20140619 星野 ADD END
				}
				// 20130218 ST2-2013-0000698 MOD START
				if (
						inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null
						&& inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null
				)
				{
// ST4-2014-0000029対応 20140619 星野 ADD START
					if(isTRJoin){
//ST4-2014-0000029対応 20140619 星野 ADD END
						sql_Buff.append("         AND (");
						sql_Buff.append("                TR.YOYAKSHA_SYSID      = ? ");
						sql_Buff.append("             OR TR.YOYAKSHA_SVC_KEI_NO = ? ");
						sql_Buff.append("         ) ");
// ST4-2014-0000029対応 20140619 星野 ADD START
					}else{
						sql_Buff.append("         AND ( ? IS NULL OR ? IS NULL) ");
					}
// ST4-2014-0000029対応 20140619 星野 ADD END
				}
				else
				{
					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
					{
// ST4-2014-0000029対応 20140619 星野 ADD START
						if(isTRJoin){
//ST4-2014-0000029対応 20140619 星野 ADD END
							sql_Buff.append("         AND TR.YOYAKSHA_SYSID = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
						}else{
							sql_Buff.append("         AND ? IS NULL ");
						}
// ST4-2014-0000029対応 20140619 星野 ADD END
					}
					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
					{
// ST4-2014-0000029対応 20140619 星野 ADD START
						if(isTRJoin){
//ST4-2014-0000029対応 20140619 星野 ADD END
							sql_Buff.append("         AND TR.YOYAKSHA_SVC_KEI_NO = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
						}else{
							sql_Buff.append("         AND ? IS NULL ");
						}
// ST4-2014-0000029対応 20140619 星野 ADD END
					}
				}
				// 20130218 ST2-2013-0000698 MOD END
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
				{
// ST4-2014-0000029対応 20140619 星野 ADD START
					if(isTRJoin){
//ST4-2014-0000029対応 20140619 星野 ADD END
						sql_Buff.append("         AND TR.YOYAKSHA_PROSCST_NO = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
					}else{
						sql_Buff.append("         AND ? IS NULL ");
					}
//ST4-2014-0000029対応 20140619 星野 ADD END
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
				{
// ST4-2014-0000029対応 20140619 星野 ADD START
					if(isTRJoin){
//ST4-2014-0000029対応 20140619 星野 ADD END
						sql_Buff.append("         AND TR.TAIO_KIROK_NO = ? ");
// ST4-2014-0000029対応 20140619 星野 ADD START
					}else{
						sql_Buff.append("         AND ? IS NULL ");
					}
//ST4-2014-0000029対応 20140619 星野 ADD END
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
				{
					sql_Buff.append("         AND TE.NO_CD = ? ");
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
// ANK-4494-00-00 STEP2 MOD START
//					sql_Buff.append("         AND TE.WARIATE_TSJGS_CD = ? ");
					// ＫＥＹ＿割当通信事業者コードをそのままに、対象項目を電話番号取得事業者コードへ当てる
					sql_Buff.append("         AND TE.TLN_STKU_TSJGS_CD = ? ");
// ANK-4494-00-00 STEP2 MOD END
				}
				
// ST4-2014-0000029対応 20140619 星野 ADD START
// 下から移動
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
				{
					// "999"(なし)選択時
					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
					{
						sql_Buff
						.append(" AND NOT EXISTS( ")
						.append("     SELECT 1 FROM ZM_T_AGING AG2")
						.append("     WHERE")
						.append("         AG2.AGING_SBT_CD       = '001' ")
						.append("         AND AG2.AGING_TG_VALUE = TE.TELNO ")
						.append("         AND AG2.MK_FLG         = '0' ")
						.append(" )");
					}
					else
					{
						sql_Buff.append("     AND AG.AGING_STAT = ?  ");
					}
				}
// ST4-2014-0000029対応 20140619 星野 ADD END

				sql_Buff.append("     ) TELNO_RESULT ");
				sql_Buff.append("     WHERE (1 = 1) ");

				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					sql_Buff.append("     AND TELNO_RESULT.NO_KUKAKU_CD = ? ");
				}
// ST4-2014-0000029対応 20140619 星野 DEL START
// 上へ移動
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
//				{
//					// "999"(なし)選択時
//					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
//					{
//						sql_Buff.append("     AND TELNO_RESULT.AGING_STAT IS NULL ");
//					}
//					else
//					{
//						sql_Buff.append("     AND TELNO_RESULT.AGING_STAT = ?  ");
//					}
//				}
// ST4-2014-0000029対応 20140619 星野 DEL END
				// 案件対応 ANK-1670-00-00 2013/11/05 ADD  START
				else {
					sql_Buff.append("     AND ( TELNO_RESULT.AGING_STAT IS NULL OR TELNO_RESULT.AGING_STAT <> '100' ) ");
				}
				// 案件対応 ANK-1670-00-00 2013/11/05 ADD END
// ST4-2014-0000029対応 20140619 星野 MOD START
//				sql_Buff.append("     ORDER BY ")
//				.append("         ROW_NUM ")
//				.append(" ) RESULT ")
//				.append("     WHERE RESULT.ROW_NUM BETWEEN ? AND ? ");
				sql_Buff
				.append(" ) RESULT ")
				.append("     WHERE RESULT.ROW_NUM BETWEEN ? AND ? ")
				.append("     ORDER BY ")
				.append("         ROW_NUM ");

// ST4-2014-0000029対応 20140619 星野 MOD END
			}

			// prepareStatementにSQL文をセット
			pstmt2 = con1.prepareStatement(sql_Buff.toString());

			// ログ出力(SQL文の出力)
			JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);

			// PreparedStatementの指定されたパラメータカラムに 指定された値を設定
			if ( "1".equals( inMsg.getString(EZM0121B030CBSMsg.FUNC_CODE) ) )
			{
				index = 1;

				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt2, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt2, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(ＫＥＹ＿電話番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getString(EZM0121B030CBSMsg.KEY_TELNO) + "%");
				}
				// パラメータの設定(ＫＥＹ＿サービス区分を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV));
				}
				// パラメータの設定(ＫＥＹ＿引当制約種別コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD));
				}
				// パラメータの設定(ＫＥＹ＿個人法人電話番号帯コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD));
				}
				// パラメータの設定(ＫＥＹ＿電話番号適用期間開始を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
				}
				// パラメータの設定(ＫＥＹ＿電話番号適用期間終了を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
				}
				// パラメータの設定(ＫＥＹ＿電話番号予約ステータスを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
				{
					// "999"(なし)選択時
					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
					{
						CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT));
					}
				}
				// パラメータの設定(ＫＥＹ＿電話番号予約種別コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD));
				}
				// パラメータの設定(ＫＥＹ＿予約者ＳＹＳＩＤを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID));
				}
				// パラメータの設定(ＫＥＹ＿予約者サービス契約番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO));
				}
				// パラメータの設定(ＫＥＹ＿予約者問合せ客番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO));
				}
				// パラメータの設定(ＫＥＹ＿対応記録番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO));
				}
				// パラメータの設定(ＫＥＹ＿番号コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD));
				}
				// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
				}
// ST4-2014-0000029対応 20140619 星野 ADD START
// 下から移動
				// パラメータの設定(ＫＥＹ＿エイジングステータスを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
				{
					// "999"(なし)選択時
					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
					{
						CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT));
					}
				}
// ST4-2014-0000029対応 20140619 星野 DEL END
				// パラメータの設定(ＫＥＹ＿番号区画コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD));
				}
// ST4-2014-0000029対応 20140619 星野 DEL START
// 上へ移動
//				// パラメータの設定(ＫＥＹ＿エイジングステータスを指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
//				{
//					// "999"(なし)選択時
//					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
//					{
//						CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT));
//					}
//				}
// ST4-2014-0000029対応 20140619 星野 DEL END

				// 開始レコードの設定
				CAANJDBCUtil.setParam(pstmt2, index++, iStartNum);
				// 終了レコードの設定
				CAANJDBCUtil.setParam(pstmt2, index++, iEndNum);
			}
			// 20130319 OT-2013-0000377 MOD START
			else if ( "2".equals( inMsg.getString(EZM0121B030CBSMsg.FUNC_CODE) ) )
			{
				index = 1;

				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt2, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt2, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt2, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt2, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt2, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(ＫＥＹ＿電話番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getString(EZM0121B030CBSMsg.KEY_TELNO) + "%");
				}
				// パラメータの設定(ＫＥＹ＿番号区画コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD));
				}
				// パラメータの設定(ＫＥＹ＿サービス区分を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV));
				}
				// パラメータの設定(ＫＥＹ＿引当制約種別コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD));
				}
				// パラメータの設定(ＫＥＹ＿個人法人電話番号帯コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD));
				}
				// パラメータの設定(ＫＥＹ＿電話番号適用期間開始を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
				}
				// パラメータの設定(ＫＥＹ＿電話番号適用期間終了を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
				}
				// パラメータの設定(ＫＥＹ＿電話番号予約ステータスを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
				{
					// "999"(なし)選択時
					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
					{
						CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT));
					}
				}
				// パラメータの設定(ＫＥＹ＿電話番号予約種別コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD));
				}
				// パラメータの設定(ＫＥＹ＿予約者ＳＹＳＩＤを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID));
				}
				// パラメータの設定(ＫＥＹ＿予約者サービス契約番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO));
				}
				// パラメータの設定(ＫＥＹ＿予約者問合せ客番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO));
				}
				// パラメータの設定(ＫＥＹ＿対応記録番号を指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO));
				}
				// パラメータの設定(ＫＥＹ＿エイジングステータスを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
				{
					// "999"(なし)選択時
					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
					{
						CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT));
					}
				}
				// パラメータの設定(ＫＥＹ＿番号コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD));
				}
				// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
				}

				// 開始レコードの設定
				CAANJDBCUtil.setParam(pstmt2, index++, iStartNum);
				// 終了レコードの設定
				CAANJDBCUtil.setParam(pstmt2, index++, iEndNum);
			}
			// 20130319 OT-2013-0000377 MOD END

			/* ++++++++++ v1.0.0 追加終了 ++++++++++ */

			// ResultSetの取得
			// 20121129 TAI-2012-0000139 rsltQuery → rsltQuery2、pstmt → pstmt2 MOD START
			rsltQuery2 = pstmt2.executeQuery();
			// 20121129 TAI-2012-0000139 rsltQuery → rsltQuery2、pstmt → pstmt2 MOD START

			// EZM0121B030CBSMsgの明細にセットする項目
			String[] msgKeyList1 = {
					EZM0121B030CBSMsg1List.TELNO
					, EZM0121B030CBSMsg1List.TELNO_TSTAYMD
					, EZM0121B030CBSMsg1List.TELNO_TENDYMD
					, EZM0121B030CBSMsg1List.ZM0121_UPD_DTM
					, EZM0121B030CBSMsg1List.TELNO_RSV_NO
					, EZM0121B030CBSMsg1List.TELNO_RSV_STAT
					, EZM0121B030CBSMsg1List.TELNO_RSV_STAT_NM
					, EZM0121B030CBSMsg1List.ZM0181_UPD_DTM
					, EZM0121B030CBSMsg1List.AGING_NO
					, EZM0121B030CBSMsg1List.AGING_STAT
					, EZM0121B030CBSMsg1List.AGING_STAT_NM
					, EZM0121B030CBSMsg1List.ROW_NO
			};

			// 明細に処理結果(ResultSet)をマッピング
			// 20121129 TAI-2012-0000139 rsltQuery → rsltQuery2 MOD START
			CAANMsg[] outMsg1 = mapMessageList(rsltQuery2,msgKeyList1,"eo.ejb.cbs.cbsmsg.EZM0121B030CBSMsg1List",0);
			// 20121129 TAI-2012-0000139 rsltQuery → rsltQuery2 MOD END
			// inMsg(CBSMsg)に明細をセット
			inMsg.set("EZM0121B030CBSMsg1List", outMsg1);
			
			// 20140918 OM-2014-0000770 Add Start
			}
			// 20140918 OM-2014-0000770 Add End


		} catch(SQLException e) {
			inMsg.set(EZM0121B030CBSMsg.STATUS, StatusCodes.FIND_DB_ERR);
			throw new CAANRuntimeException(e);
		} finally {
			// 資源の解放
			try{
				if(rsltQuery != null){
					rsltQuery.close();
				}
				if(pstmt != null){
					pstmt.close();
				}
				// 20121129 TAI-2012-0000139 ADD START
				if(rsltQuery2 != null){
					rsltQuery2.close();
				}
				if(pstmt2 != null){
					pstmt2.close();
				}
				// 20121129 TAI-2012-0000139 ADD END
				if(con1 != null){
					closeConnection(con1);
				}
			}catch(SQLException e){
				inMsg.set(EZM0121B030CBSMsg.STATUS, StatusCodes.FIND_DB_ERR);
				throw new CAANRuntimeException(e);
			}
		}
	}
	
	// 20140918 OM-2014-0000770 Add Start
	/**
	 * 機能コード「3」の場合の処理.
	 * 
	 * <pre>
	 * 処理概要：局番マスタから番号区画コードで局番リストを取得し、
	 *           電話番号マスタから１件取得する。
	 *           取得できれば終了、取得できない場合は局番リスト分、繰り返す。
	 * </pre>
	 * @param con1
	 * @param inContext
	 * @param inMsg
	 * @param isTRJoin
	 * @param isAGJoin
	 * @param pstmt
	 * @param pstmt2
	 * @param rsltQuery
	 * @param rsltQuery2
	 */
	private void executeFunc3(Connection con1, AgentDispatchContext inContext, CAANMsg inMsg, boolean isTRJoin, boolean isAGJoin,
			PreparedStatement pstmt, PreparedStatement pstmt2, ResultSet rsltQuery, ResultSet rsltQuery2) throws SQLException {

// OM-2017-0000488 2017/05/26 MOD START
//		// 20160303 OM-2016-0000503 性能改善 ADD START
//		// 局番ごとに電話番号マスタを照会する方法（OM-2015-0001304対応前）に戻すが、局番リストの取得方法を変更する
//		StringBuffer sql_Buff = new StringBuffer();
//		// 局番リスト
//		List<String> kyokuNoList = new ArrayList<String>();
//		if (null != inMsg.getString(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD))
//		{
//			// 業務パラメータ管理から局番を取得
//			sql_Buff.append(" SELECT ")
//					.append("        ZM0321.WORK_PARAM_SETTE_VALUE ")
//					.append(" FROM ")
//					.append("        ZM_M_WORK_PARAM_KNRI ZM0321 ")
//					.append(" WHERE ")
//					.append("        ZM0321.WORK_PARAM_ID LIKE 'ZM_HTB_TG_KYOKUNO_%' ")
//					.append(" AND    ZM0321.WORK_PARAM_TSTAYMD <= '").append(JKKModelCommon.getOpeDate(inMsg)).append("' ")
//					.append(" AND    ZM0321.WORK_PARAM_TENDYMD >= '").append(JKKModelCommon.getOpeDate(inMsg)).append("' ")
//					.append(" AND    ZM0321.MK_FLG = '0' ");
//
//			// prepareStatementにSQL文をセット
//			pstmt = con1.prepareStatement(sql_Buff.toString());
//
//			// ログ出力(SQL文の出力)
//			JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
//
//			// ResultSetの取得
//			rsltQuery = pstmt.executeQuery();
//			while (rsltQuery.next())
//			{
//				// データ形式：番号区画コード,局番,局番,…
//				String workParamSetteValue = rsltQuery.getString(ZM0321CBMMsg.WORK_PARAM_SETTE_VALUE);
//				String[] col = workParamSetteValue.split(",");
//				if (null != col && 2 <= col.length)
//				{
//					// 発番対象の番号区画コードの場合
//					if (inMsg.getString(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD).equals(col[0]))
//					{
//						for (int colIndex = 1; colIndex < col.length; colIndex++)
//						{
//							// 局番リストに追加
//							kyokuNoList.add(col[colIndex]);
//						}
//						break;
//					}
//				}
//			}
//
//			// 局番リストのソート
//			kyokuNoList = sortKyokuNoList(kyokuNoList);
//		}
//
//		// 電話番号一覧照会２明細
//		CAANMsg[] eZM0121B030CBSMsg1List = null;
//		if (!kyokuNoList.isEmpty())
//		{
//			// 電話番号取得
//			eZM0121B030CBSMsg1List = getTelNo(con1, inContext, inMsg, isTRJoin, isAGJoin, pstmt2, rsltQuery2, kyokuNoList);
//		}
//
//		if (null == eZM0121B030CBSMsg1List)
//		{
//			kyokuNoList.clear();
//			// 局番マスタから電話番号マスタに存在する局番を取得
//			sql_Buff = new StringBuffer();
//			sql_Buff.append(" SELECT ")
//					.append("        ZM0301.KYOKU_NO ")
//					.append(" FROM ")
//					.append("        ZM_M_KYOKU_NO ZM0301 ")
//					.append(" WHERE ")
//					.append("        ZM0301.KYOKU_NO_TSTAYMD <= ? ")
//					.append(" AND    ZM0301.KYOKU_NO_TENDYMD >= ? ")
//					.append(" AND    ZM0301.MK_FLG = '0' ");
//			if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
//			{
//				sql_Buff
//					.append(" AND    ZM0301.NO_KUKAKU_CD = ? ");
//			}
//			sql_Buff.append(" AND    EXISTS (")
//					.append("            SELECT 1 ")
//					.append("            FROM   ZM_M_TELNO TE ")
//					.append("            WHERE  TE.KYOKU_NO = ZM0301.KYOKU_NO ")
//					.append("            AND    TE.MK_FLG = '0' ");
//			if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
//			{
//				sql_Buff
//					.append("            AND    TE.WARIATE_TSJGS_CD = ? ");
//			}
//			sql_Buff.append("        ) ");
//
//			
//			// prepareStatementにSQL文をセット
//			pstmt = con1.prepareStatement(sql_Buff.toString());
//
//			int index = 1;
//			// パラメータの設定(運用日付を指定)
//			CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
//			// パラメータの設定(運用日付を指定)
//			CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
//			if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
//			{
//				// パラメータの設定(ＫＥＹ＿番号区画コードを指定)
//				CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD));
//			}
//			if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
//			{
//				// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
//				CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
//			}
//
//			// ログ出力(SQL文の出力)
//			JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
//			
//			// ResultSetの取得
//			rsltQuery = pstmt.executeQuery();
//			while (rsltQuery.next())
//			{
//				// 局番リストに追加
//				kyokuNoList.add(rsltQuery.getString(EZM0121B030CBSMsg.KYOKU_NO));
//			}
//
//			// 電話番号取得
//			getTelNo(con1, inContext, inMsg, isTRJoin, isAGJoin, pstmt2, rsltQuery2, kyokuNoList);
//		}
		try {
			// 20160303 OM-2016-0000503 性能改善 ADD START
			// 局番ごとに電話番号マスタを照会する方法（OM-2015-0001304対応前）に戻すが、局番リストの取得方法を変更する
			StringBuffer sql_Buff = new StringBuffer();
			// 局番リスト
			List<String> kyokuNoList = new ArrayList<String>();
			if (null != inMsg.getString(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD))
			{
				// 業務パラメータ管理から局番を取得
				sql_Buff.append(" SELECT ")
						.append("        ZM0321.WORK_PARAM_SETTE_VALUE ")
						.append(" FROM ")
						.append("        ZM_M_WORK_PARAM_KNRI ZM0321 ")
						.append(" WHERE ")
						.append("        ZM0321.WORK_PARAM_ID LIKE 'ZM_HTB_TG_KYOKUNO_%' ")
						.append(" AND    ZM0321.WORK_PARAM_TSTAYMD <= '").append(JKKModelCommon.getOpeDate(inMsg)).append("' ")
						.append(" AND    ZM0321.WORK_PARAM_TENDYMD >= '").append(JKKModelCommon.getOpeDate(inMsg)).append("' ")
						.append(" AND    ZM0321.MK_FLG = '0' ");
	
				// prepareStatementにSQL文をセット
				pstmt = con1.prepareStatement(sql_Buff.toString());
	
				// ログ出力(SQL文の出力)
				JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
	
				// ResultSetの取得
				rsltQuery = pstmt.executeQuery();
				while (rsltQuery.next())
				{
					// データ形式：番号区画コード,局番,局番,…
					String workParamSetteValue = rsltQuery.getString(ZM0321CBMMsg.WORK_PARAM_SETTE_VALUE);
					String[] col = workParamSetteValue.split(",");
					if (null != col && 2 <= col.length)
					{
						// 発番対象の番号区画コードの場合
						if (inMsg.getString(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD).equals(col[0]))
						{
							for (int colIndex = 1; colIndex < col.length; colIndex++)
							{
								// 局番リストに追加
								kyokuNoList.add(col[colIndex]);
							}
							break;
						}
					}
				}
	
				// 局番リストのソート
				kyokuNoList = sortKyokuNoList(kyokuNoList);
			}
	
			// 電話番号一覧照会２明細
			CAANMsg[] eZM0121B030CBSMsg1List = null;
			if (!kyokuNoList.isEmpty())
			{
				// 電話番号取得
				eZM0121B030CBSMsg1List = getTelNo(con1, inContext, inMsg, isTRJoin, isAGJoin, pstmt2, rsltQuery2, kyokuNoList);
			}
	
			if (null == eZM0121B030CBSMsg1List)
			{
				kyokuNoList.clear();
				// 局番マスタから電話番号マスタに存在する局番を取得
				sql_Buff = new StringBuffer();
				sql_Buff.append(" SELECT ")
						.append("        ZM0301.KYOKU_NO ")
						.append(" FROM ")
						.append("        ZM_M_KYOKU_NO ZM0301 ")
						.append(" WHERE ")
						.append("        ZM0301.KYOKU_NO_TSTAYMD <= ? ")
						.append(" AND    ZM0301.KYOKU_NO_TENDYMD >= ? ")
						.append(" AND    ZM0301.MK_FLG = '0' ");
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					sql_Buff
						.append(" AND    ZM0301.NO_KUKAKU_CD = ? ");
				}
				sql_Buff.append(" AND    EXISTS (")
						.append("            SELECT 1 ")
						.append("            FROM   ZM_M_TELNO TE ")
						.append("            WHERE  TE.KYOKU_NO = ZM0301.KYOKU_NO ")
						.append("            AND    TE.MK_FLG = '0' ");
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
// ANK-4494-00-00 STEP2 MOD START
//					sql_Buff
//						.append("            AND    TE.WARIATE_TSJGS_CD = ? ");
					// ＫＥＹ＿割当通信事業者コードをそのままに、対象項目を電話番号取得事業者コードへ当てる
					sql_Buff
					.append("            AND    TE.TLN_STKU_TSJGS_CD = ? ");
// ANK-4494-00-00 STEP2 MOD END
				}
				sql_Buff.append("        ) ");
	
				if(pstmt != null){
					pstmt.close();
				}
				
				// prepareStatementにSQL文をセット
				pstmt = con1.prepareStatement(sql_Buff.toString());
	
				int index = 1;
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
				{
					// パラメータの設定(ＫＥＹ＿番号区画コードを指定)
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD));
				}
				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
				{
					// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
					CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
				}
	
				// ログ出力(SQL文の出力)
				JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
	
				if(rsltQuery != null){
					rsltQuery.close();
				}
				
				// ResultSetの取得
				rsltQuery = pstmt.executeQuery();
				while (rsltQuery.next())
				{
					// 局番リストに追加
					kyokuNoList.add(rsltQuery.getString(EZM0121B030CBSMsg.KYOKU_NO));
				}
	
				// 電話番号取得
				getTelNo(con1, inContext, inMsg, isTRJoin, isAGJoin, pstmt2, rsltQuery2, kyokuNoList);
			}
		} finally {
			// 資源の解放
			if(pstmt != null){
				pstmt.close();
			}
			if(rsltQuery != null){
				rsltQuery.close();
			}
		}
// OM-2017-0000488 2017/05/26 MOD END
	}
	// 20160303 OM-2016-0000503 性能改善 ADD END

	// 20160303 OM-2016-0000503 性能改善 ADD START
	/**
	 * 電話番号マスタから局番リストの局番を持つ電話番号を取得します。
	 * <br>
	 * @param con1 Connectionオブジェクト
	 * @param inContext エージェントの呼び出し情報
	 * @param inMsg 入力情報
	 * @param isTRJoin 電話番号予約を結合するかどうか
	 * @param isAGJoin エイジングを結合するかどうか（副問い合わせ）
	 * @param pstmt2 PreparedStatementオブジェクト
	 * @param rsltQuery2 ResultSetオブジェクト
	 * @param kyokuNoList 局番リスト
	 * @return 電話番号一覧照会２明細オブジェクト。取得できない場合はnull
	 * @throws SQLException DBアクセスエラーが発生した場合
	 */
	private CAANMsg[] getTelNo(Connection con1, AgentDispatchContext inContext, CAANMsg inMsg, boolean isTRJoin,
			boolean isAGJoin, PreparedStatement pstmt2, ResultSet rsltQuery2, List<String> kyokuNoList)
	throws SQLException
	{
		StringBuffer sql_Buff = new StringBuffer();

		int count = 0;			// 件数
		int index = 1;
// OM-2018-0000625 2018/07/14 星野 ADD START
// PreparedStatementを適切にクローズするため、forループの外側にtry-catchを追加
		try{
	// OM-2018-0000625 2018/07/14 星野 ADD END
	
			for (String kyokuNo : kyokuNoList)
			{
	// OM-2017-0000488 2017/05/26 MOD START
	//			count++;
	//
	//			// 1件目の場合、SQL分の構築
	//			if (count == 1) {
	//
	//				sql_Buff.append(" SELECT  ")
	//						.append("             TE.TELNO AS TELNO, ")
	//						.append("             TE.TELNO_TSTAYMD AS TELNO_TSTAYMD, ")
	//						.append("             TE.TELNO_TENDYMD AS TELNO_TENDYMD, ")
	//						.append("             TE.UPD_DTM AS ZM0121_UPD_DTM, ");
	//				if(isTRJoin){
	//					sql_Buff
	//						.append("             TR.TELNO_RSV_NO AS TELNO_RSV_NO, ")
	//						.append("             TR.TELNO_RSV_STAT AS TELNO_RSV_STAT, ")
	//						.append("             ( ")
	//						.append("                     SELECT CD1.CD_DIV_NM ")
	//						.append("                     FROM   ZM_M_CD_NM_KANRI CD1 ")
	//						.append("                     WHERE  CD1.CD_SBT_CD = 'CD00413' ")
	//						.append("                     AND    CD1.CD_DIV = TR.TELNO_RSV_STAT ")
	//						.append("                     AND    CD1.MK_FLG = '0' ")
	//						.append("             ) AS TELNO_RSV_STAT_NM, ")
	//						.append("             TR.UPD_DTM AS ZM0181_UPD_DTM, ")
	//				;
	//				}else{
	//					sql_Buff
	//						.append("             NULL AS TELNO_RSV_NO, ")
	//						.append("             NULL AS TELNO_RSV_STAT, ")
	//						.append("             NULL AS TELNO_RSV_STAT_NM, ")
	//						.append("             NULL AS ZM0181_UPD_DTM, ")
	//					;
	//				}
	//				
	//				if(isAGJoin){
	//					sql_Buff
	//						.append("             AG.AGING_NO AS AGING_NO, ")
	//						.append("             AG.AGING_STAT AS AGING_STAT, ")
	//						.append("             ( ")
	//						.append("                     SELECT CD2.CD_DIV_NM ")
	//						.append("                     FROM   ZM_M_CD_NM_KANRI CD2 ")
	//						.append("                     WHERE  CD2.CD_SBT_CD = 'CD00063' ")
	//						.append("                     AND    CD2.CD_DIV    = AG.AGING_STAT ")
	//						.append("                     AND    CD2.MK_FLG    = '0' ")
	//						.append("             ) AS AGING_STAT_NM, ")
	//				;
	//				}else{
	//					sql_Buff
	//						.append("             NULL AS AGING_NO, ")
	//						.append("             NULL AS AGING_STAT, ")
	//						.append("             NULL AS AGING_STAT_NM, ")
	//					;
	//				}
	//				sql_Buff.append("             ROWNUM AS ROW_NUM ");
	//				sql_Buff.append(" FROM ")
	//						.append("             ZM_M_TELNO TE ")
	//				;
	//				if(isTRJoin){
	//					sql_Buff
	//						.append("             LEFT OUTER JOIN ZM_T_TELNO_RSV TR ")
	//						.append("                 ON  TR.TELNO = TE.TELNO ")
	//						.append("                 AND TR.MK_FLG = '0' ");
	//				}
	//				if(isAGJoin){
	//					sql_Buff
	//						.append("             LEFT OUTER JOIN ZM_T_AGING AG ")
	//						.append("                 ON  AG.AGING_SBT_CD   = '001' ")
	//						.append("                 AND AG.AGING_TG_VALUE = TE.TELNO ")
	//						.append("                 AND AG.MK_FLG         = '0' ");
	//				}
	//				
	//				sql_Buff.append(" WHERE ");
	//				sql_Buff.append("             TE.MK_FLG = '0' ");
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
	//				{
	//					sql_Buff.append("         AND TE.TELNO LIKE ? ");
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
	//				{
	//					sql_Buff.append("         AND TE.SVC_DIV = ? ");
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
	//				{
	//					sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD = ? ");
	//				}
	//				else
	//				{
	//					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
	//					{
	//						// "999"(なし)選択時
	//						if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
	//						{
	//							sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD IS NULL ");
	//						}
	//					}
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
	//				{
	//					sql_Buff.append("         AND TE.KOJIN_HOJIN_TLN_TAI_CD = ? ");
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
	//				{
	//					sql_Buff.append("         AND TE.TELNO_TENDYMD >= ? ");
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
	//				{
	//					sql_Buff.append("         AND TE.TELNO_TSTAYMD <= ? ");
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
	//				{
	//					// "999"(なし)選択時
	//					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
	//					{
	//						sql_Buff
	//						.append(" AND NOT EXISTS( ")
	//						.append("     SELECT 1 FROM ZM_T_TELNO_RSV TR2")
	//						.append("     WHERE")
	//						.append("         TR2.TELNO  = TE.TELNO ")
	//						.append("         AND TR2.MK_FLG = '0' ")
	//						.append(" )");
	//					}
	//					else
	//					{
	//						sql_Buff.append("         AND TR.TELNO_RSV_STAT = ? ");
	//					}
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
	//				{
	//					if(isTRJoin){
	//						sql_Buff.append("         AND TR.TELNO_RSV_SBT_CD = ? ");
	//					}else{
	//						sql_Buff.append("         AND ? IS NULL ");
	//					}
	//				}
	//				if (
	//						inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null
	//						&& inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null
	//				)
	//				{
	//					if(isTRJoin){
	//						sql_Buff.append("         AND (");
	//						sql_Buff.append("                TR.YOYAKSHA_SYSID      = ? ");
	//						sql_Buff.append("             OR TR.YOYAKSHA_SVC_KEI_NO = ? ");
	//						sql_Buff.append("         ) ");
	//					}else{
	//						sql_Buff.append("         AND ( ? IS NULL OR ? IS NULL) ");
	//					}
	//				}
	//				else
	//				{
	//					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
	//					{
	//						if(isTRJoin){
	//							sql_Buff.append("         AND TR.YOYAKSHA_SYSID = ? ");
	//						}else{
	//							sql_Buff.append("         AND ? IS NULL ");
	//						}
	//					}
	//					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
	//					{
	//						if(isTRJoin){
	//							sql_Buff.append("         AND TR.YOYAKSHA_SVC_KEI_NO = ? ");
	//						}else{
	//							sql_Buff.append("         AND ? IS NULL ");
	//						}
	//					}
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
	//				{
	//					if(isTRJoin){
	//						sql_Buff.append("         AND TR.YOYAKSHA_PROSCST_NO = ? ");
	//					}else{
	//						sql_Buff.append("         AND ? IS NULL ");
	//					}
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
	//				{
	//					if(isTRJoin){
	//						sql_Buff.append("         AND TR.TAIO_KIROK_NO = ? ");
	//					}else{
	//						sql_Buff.append("         AND ? IS NULL ");
	//					}
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
	//				{
	//					sql_Buff.append("         AND TE.NO_CD = ? ");
	//				}
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
	//				{
	//					sql_Buff.append("         AND TE.WARIATE_TSJGS_CD = ? ");
	//				}
	//				
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
	//				{
	//					// "999"(なし)選択時
	//					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
	//					{
	//						sql_Buff
	//						.append(" AND NOT EXISTS( ")
	//						.append("     SELECT 1 FROM ZM_T_AGING AG2")
	//						.append("     WHERE")
	//						.append("         AG2.AGING_SBT_CD       = '001' ")
	//						.append("         AND AG2.AGING_TG_VALUE = TE.TELNO ")
	//						.append("         AND AG2.MK_FLG         = '0' ")
	//						.append(" )");
	//					}
	//					else
	//					{
	//						sql_Buff.append("     AND AG.AGING_STAT = ?  ");
	//					}
	//				}
	//				sql_Buff.append(" AND TE.KYOKU_NO = ? ")	// 局番
	//						.append(" AND ROWNUM = 1 ")			// 取得件数
	//						.append(" FOR UPDATE");
	//
	//				// prepareStatementにSQL文をセット
	//				pstmt2 = con1.prepareStatement(sql_Buff.toString());
	//
	//				// パラメータの設定(ＫＥＹ＿電話番号を指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getString(EZM0121B030CBSMsg.KEY_TELNO) + "%");
	//				}
	//				// パラメータの設定(ＫＥＹ＿サービス区分を指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV));
	//				}
	//				// パラメータの設定(ＫＥＹ＿引当制約種別コードを指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD));
	//				}
	//				// パラメータの設定(ＫＥＹ＿個人法人電話番号帯コードを指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD));
	//				}
	//				// パラメータの設定(ＫＥＹ＿電話番号適用期間開始を指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
	//				}
	//				// パラメータの設定(ＫＥＹ＿電話番号適用期間終了を指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
	//				}
	//				// パラメータの設定(ＫＥＹ＿電話番号予約ステータスを指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
	//				{
	//					// "999"(なし)選択時
	//					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
	//					{
	//						CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT));
	//					}
	//				}
	//				// パラメータの設定(ＫＥＹ＿電話番号予約種別コードを指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD));
	//				}
	//				// パラメータの設定(ＫＥＹ＿予約者ＳＹＳＩＤを指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID));
	//				}
	//				// パラメータの設定(ＫＥＹ＿予約者サービス契約番号を指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO));
	//				}
	//				// パラメータの設定(ＫＥＹ＿予約者問合せ客番号を指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO));
	//				}
	//				// パラメータの設定(ＫＥＹ＿対応記録番号を指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO));
	//				}
	//				// パラメータの設定(ＫＥＹ＿番号コードを指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD));
	//				}
	//				// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
	//				{
	//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
	//				}
	//				// パラメータの設定(ＫＥＹ＿エイジングステータスを指定)
	//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
	//				{
	//					// "999"(なし)選択時
	//					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
	//					{
	//						CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT));
	//					}
	//				}
	//				
	//				// ログ出力(SQL文の出力)
	//				JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
	//			} // end-of-if
	//
	//			// パラメータの設定（局番）
	//			CAANJDBCUtil.setParam(pstmt2, index, kyokuNo);
	//
	//			// ログ出力
	//			StringBuffer logStr = new StringBuffer("電話番号検索回数：").append(String.valueOf(count)).append(", 検索局番：").append(kyokuNo);
	//			JSYejbLog.outlog(inContext, JSYejbLog.DEBUG, this.getClass(), logStr);
	//
	//			/**
	//			 * SQL文実行
	//			 */
	//			// ResultSetの取得
	//			rsltQuery2 = pstmt2.executeQuery();
	//	
	//			// EZM0121B030CBSMsgの明細にセットする項目
	//			String[] msgKeyList1 = {
	//					EZM0121B030CBSMsg1List.TELNO
	//					, EZM0121B030CBSMsg1List.TELNO_TSTAYMD
	//					, EZM0121B030CBSMsg1List.TELNO_TENDYMD
	//					, EZM0121B030CBSMsg1List.ZM0121_UPD_DTM
	//					, EZM0121B030CBSMsg1List.TELNO_RSV_NO
	//					, EZM0121B030CBSMsg1List.TELNO_RSV_STAT
	//					, EZM0121B030CBSMsg1List.TELNO_RSV_STAT_NM
	//					, EZM0121B030CBSMsg1List.ZM0181_UPD_DTM
	//					, EZM0121B030CBSMsg1List.AGING_NO
	//					, EZM0121B030CBSMsg1List.AGING_STAT
	//					, EZM0121B030CBSMsg1List.AGING_STAT_NM
	//					, EZM0121B030CBSMsg1List.ROW_NO
	//			};
	//	
	//			// 明細に処理結果(ResultSet)をマッピング
	//			CAANMsg[] outMsg1 = mapMessageList(rsltQuery2,msgKeyList1,"eo.ejb.cbs.cbsmsg.EZM0121B030CBSMsg1List",0);
	//			// inMsg(CBSMsg)に明細をセット
	//			inMsg.set("EZM0121B030CBSMsg1List", outMsg1);
	//
	//			// 取得件数が０件の場合は、次の局番で検索する
	//			if (outMsg1.length == 0) {
	//				continue;
	//			} else {
	//				return outMsg1;
	//			}
				try {
				count++;
		
					// 1件目の場合、SQL分の構築
					if (count == 1) {
		
						sql_Buff.append(" SELECT  ")
								.append("             TE.TELNO AS TELNO, ")
								.append("             TE.TELNO_TSTAYMD AS TELNO_TSTAYMD, ")
								.append("             TE.TELNO_TENDYMD AS TELNO_TENDYMD, ")
								.append("             TE.UPD_DTM AS ZM0121_UPD_DTM, ");
						if(isTRJoin){
							sql_Buff
								.append("             TR.TELNO_RSV_NO AS TELNO_RSV_NO, ")
								.append("             TR.TELNO_RSV_STAT AS TELNO_RSV_STAT, ")
								.append("             ( ")
								.append("                     SELECT CD1.CD_DIV_NM ")
								.append("                     FROM   ZM_M_CD_NM_KANRI CD1 ")
								.append("                     WHERE  CD1.CD_SBT_CD = 'CD00413' ")
								.append("                     AND    CD1.CD_DIV = TR.TELNO_RSV_STAT ")
								.append("                     AND    CD1.MK_FLG = '0' ")
								.append("             ) AS TELNO_RSV_STAT_NM, ")
								.append("             TR.UPD_DTM AS ZM0181_UPD_DTM, ")
						;
						}else{
							sql_Buff
								.append("             NULL AS TELNO_RSV_NO, ")
								.append("             NULL AS TELNO_RSV_STAT, ")
								.append("             NULL AS TELNO_RSV_STAT_NM, ")
								.append("             NULL AS ZM0181_UPD_DTM, ")
							;
						}
						
						if(isAGJoin){
							sql_Buff
								.append("             AG.AGING_NO AS AGING_NO, ")
								.append("             AG.AGING_STAT AS AGING_STAT, ")
								.append("             ( ")
								.append("                     SELECT CD2.CD_DIV_NM ")
								.append("                     FROM   ZM_M_CD_NM_KANRI CD2 ")
								.append("                     WHERE  CD2.CD_SBT_CD = 'CD00063' ")
								.append("                     AND    CD2.CD_DIV    = AG.AGING_STAT ")
								.append("                     AND    CD2.MK_FLG    = '0' ")
								.append("             ) AS AGING_STAT_NM, ")
						;
						}else{
							sql_Buff
								.append("             NULL AS AGING_NO, ")
								.append("             NULL AS AGING_STAT, ")
								.append("             NULL AS AGING_STAT_NM, ")
							;
						}
						sql_Buff.append("             ROWNUM AS ROW_NUM ");
						sql_Buff.append(" FROM ")
								.append("             ZM_M_TELNO TE ")
						;
						if(isTRJoin){
							sql_Buff
								.append("             LEFT OUTER JOIN ZM_T_TELNO_RSV TR ")
								.append("                 ON  TR.TELNO = TE.TELNO ")
								.append("                 AND TR.MK_FLG = '0' ");
						}
						if(isAGJoin){
							sql_Buff
								.append("             LEFT OUTER JOIN ZM_T_AGING AG ")
								.append("                 ON  AG.AGING_SBT_CD   = '001' ")
								.append("                 AND AG.AGING_TG_VALUE = TE.TELNO ")
								.append("                 AND AG.MK_FLG         = '0' ");
						}
						
						sql_Buff.append(" WHERE ");
						sql_Buff.append("             TE.MK_FLG = '0' ");
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
						{
							sql_Buff.append("         AND TE.TELNO LIKE ? ");
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
						{
							sql_Buff.append("         AND TE.SVC_DIV = ? ");
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
						{
							sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD = ? ");
						}
						else
						{
							if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
							{
								// "999"(なし)選択時
								if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
								{
									sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD IS NULL ");
								}
							}
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
						{
							sql_Buff.append("         AND TE.KOJIN_HOJIN_TLN_TAI_CD = ? ");
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
						{
							sql_Buff.append("         AND TE.TELNO_TENDYMD >= ? ");
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
						{
							sql_Buff.append("         AND TE.TELNO_TSTAYMD <= ? ");
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
						{
							// "999"(なし)選択時
							if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
							{
								sql_Buff
								.append(" AND NOT EXISTS( ")
								.append("     SELECT 1 FROM ZM_T_TELNO_RSV TR2")
								.append("     WHERE")
								.append("         TR2.TELNO  = TE.TELNO ")
								.append("         AND TR2.MK_FLG = '0' ")
								.append(" )");
							}
							else
							{
								sql_Buff.append("         AND TR.TELNO_RSV_STAT = ? ");
							}
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
						{
							if(isTRJoin){
								sql_Buff.append("         AND TR.TELNO_RSV_SBT_CD = ? ");
							}else{
								sql_Buff.append("         AND ? IS NULL ");
							}
						}
						if (
								inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null
								&& inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null
						)
						{
							if(isTRJoin){
								sql_Buff.append("         AND (");
								sql_Buff.append("                TR.YOYAKSHA_SYSID      = ? ");
								sql_Buff.append("             OR TR.YOYAKSHA_SVC_KEI_NO = ? ");
								sql_Buff.append("         ) ");
							}else{
								sql_Buff.append("         AND ( ? IS NULL OR ? IS NULL) ");
							}
						}
						else
						{
							if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
							{
								if(isTRJoin){
									sql_Buff.append("         AND TR.YOYAKSHA_SYSID = ? ");
								}else{
									sql_Buff.append("         AND ? IS NULL ");
								}
							}
							if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
							{
								if(isTRJoin){
									sql_Buff.append("         AND TR.YOYAKSHA_SVC_KEI_NO = ? ");
								}else{
									sql_Buff.append("         AND ? IS NULL ");
								}
							}
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
						{
							if(isTRJoin){
								sql_Buff.append("         AND TR.YOYAKSHA_PROSCST_NO = ? ");
							}else{
								sql_Buff.append("         AND ? IS NULL ");
							}
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
						{
							if(isTRJoin){
								sql_Buff.append("         AND TR.TAIO_KIROK_NO = ? ");
							}else{
								sql_Buff.append("         AND ? IS NULL ");
							}
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
						{
							sql_Buff.append("         AND TE.NO_CD = ? ");
						}
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
						{
// ANK-4494-00-00 STEP2 MOD START
//							sql_Buff.append("         AND TE.WARIATE_TSJGS_CD = ? ");
							// ＫＥＹ＿割当通信事業者コードをそのままに、対象項目を電話番号取得事業者コードへ当てる
							sql_Buff.append("         AND TE.TLN_STKU_TSJGS_CD = ? ");
// ANK-4494-00-00 STEP2 MOD END
						}
						
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
						{
							// "999"(なし)選択時
							if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
							{
								sql_Buff
								.append(" AND NOT EXISTS( ")
								.append("     SELECT 1 FROM ZM_T_AGING AG2")
								.append("     WHERE")
								.append("         AG2.AGING_SBT_CD       = '001' ")
								.append("         AND AG2.AGING_TG_VALUE = TE.TELNO ")
								.append("         AND AG2.MK_FLG         = '0' ")
								.append(" )");
							}
							else
							{
								sql_Buff.append("     AND AG.AGING_STAT = ?  ");
							}
						}
						sql_Buff.append(" AND TE.KYOKU_NO = ? ")	// 局番
								.append(" AND ROWNUM = 1 ")			// 取得件数
								.append(" FOR UPDATE");
		
						// prepareStatementにSQL文をセット
						pstmt2 = con1.prepareStatement(sql_Buff.toString());
		
						// パラメータの設定(ＫＥＹ＿電話番号を指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getString(EZM0121B030CBSMsg.KEY_TELNO) + "%");
						}
						// パラメータの設定(ＫＥＹ＿サービス区分を指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV));
						}
						// パラメータの設定(ＫＥＹ＿引当制約種別コードを指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD));
						}
						// パラメータの設定(ＫＥＹ＿個人法人電話番号帯コードを指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD));
						}
						// パラメータの設定(ＫＥＹ＿電話番号適用期間開始を指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
						}
						// パラメータの設定(ＫＥＹ＿電話番号適用期間終了を指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
						}
						// パラメータの設定(ＫＥＹ＿電話番号予約ステータスを指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
						{
							// "999"(なし)選択時
							if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
							{
								CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT));
							}
						}
						// パラメータの設定(ＫＥＹ＿電話番号予約種別コードを指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD));
						}
						// パラメータの設定(ＫＥＹ＿予約者ＳＹＳＩＤを指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID));
						}
						// パラメータの設定(ＫＥＹ＿予約者サービス契約番号を指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO));
						}
						// パラメータの設定(ＫＥＹ＿予約者問合せ客番号を指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO));
						}
						// パラメータの設定(ＫＥＹ＿対応記録番号を指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO));
						}
						// パラメータの設定(ＫＥＹ＿番号コードを指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD));
						}
						// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
						{
							CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
						}
						// パラメータの設定(ＫＥＹ＿エイジングステータスを指定)
						if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
						{
							// "999"(なし)選択時
							if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
							{
								CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT));
							}
						}
						
						// ログ出力(SQL文の出力)
						JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
					} // end-of-if
		
					// パラメータの設定（局番）
					CAANJDBCUtil.setParam(pstmt2, index, kyokuNo);
		
					// ログ出力
					StringBuffer logStr = new StringBuffer("電話番号検索回数：").append(String.valueOf(count)).append(", 検索局番：").append(kyokuNo);
					JSYejbLog.outlog(inContext, JSYejbLog.DEBUG, this.getClass(), logStr);
		
					/**
					 * SQL文実行
					 */
					// ResultSetの取得
					rsltQuery2 = pstmt2.executeQuery();
			
					// EZM0121B030CBSMsgの明細にセットする項目
					String[] msgKeyList1 = {
							EZM0121B030CBSMsg1List.TELNO
							, EZM0121B030CBSMsg1List.TELNO_TSTAYMD
							, EZM0121B030CBSMsg1List.TELNO_TENDYMD
							, EZM0121B030CBSMsg1List.ZM0121_UPD_DTM
							, EZM0121B030CBSMsg1List.TELNO_RSV_NO
							, EZM0121B030CBSMsg1List.TELNO_RSV_STAT
							, EZM0121B030CBSMsg1List.TELNO_RSV_STAT_NM
							, EZM0121B030CBSMsg1List.ZM0181_UPD_DTM
							, EZM0121B030CBSMsg1List.AGING_NO
							, EZM0121B030CBSMsg1List.AGING_STAT
							, EZM0121B030CBSMsg1List.AGING_STAT_NM
							, EZM0121B030CBSMsg1List.ROW_NO
					};
			
					// 明細に処理結果(ResultSet)をマッピング
					CAANMsg[] outMsg1 = mapMessageList(rsltQuery2,msgKeyList1,"eo.ejb.cbs.cbsmsg.EZM0121B030CBSMsg1List",0);
					// inMsg(CBSMsg)に明細をセット
					inMsg.set("EZM0121B030CBSMsg1List", outMsg1);
		
					// 取得件数が０件の場合は、次の局番で検索する
					if (outMsg1.length == 0) {
						continue;
					} else {
						return outMsg1;
					}
				}catch (Exception e) {
					inMsg.set(EZM0121B030CBSMsg.STATUS, StatusCodes.FIND_DB_ERR);
					throw new CAANRuntimeException(e);
				} finally {
// OM-2018-0000625 2018/07/14 星野 DEL START
// PreparedStatementのクローズはループの外側に移動
//					// forループの最後だけpstm2をcloseする
//					if (count == kyokuNoList.size()) {
//						// 資源の解放
//						if(pstmt2 != null){
//							pstmt2.close();
//						}
//					}
// OM-2018-0000625 2018/07/14 星野 DEL END
					if(rsltQuery2 != null){
						rsltQuery2.close();
					}
				}
	// OM-2017-0000488 2017/05/26 MOD END
			}
			
// OM-2018-0000625 2018/07/14 星野 ADD START
		}finally{
			// countが0の場合は一周もループを回ってないのでクローズしない
			// 以外はここでクローズ
			if (count != 0) {
				// 資源の解放
				if(pstmt2 != null){
					pstmt2.close();
				}
			}
		}
// OM-2018-0000625 2018/07/14 星野 ADD END

		return null;
	}
	// 20160303 OM-2016-0000503 性能改善 ADD END
	// 20160303 OM-2016-0000503 性能改善 DEL START
//// OM-2015-0001304 ADD START
//		// SQL
//		StringBuffer sql_Buff = new StringBuffer();
//		// -------------------------
//		// 電話番号を取得する
//		// -------------------------
//		
//		sql_Buff.append(" SELECT  ")
//				.append("             TE.TELNO AS TELNO, ")
//				.append("             TE.TELNO_TSTAYMD AS TELNO_TSTAYMD, ")
//				.append("             TE.TELNO_TENDYMD AS TELNO_TENDYMD, ")
//				.append("             TE.UPD_DTM AS ZM0121_UPD_DTM, ");
//		if(isTRJoin)
//		{
//			sql_Buff
//				.append("             TR.TELNO_RSV_NO AS TELNO_RSV_NO, ")
//				.append("             TR.TELNO_RSV_STAT AS TELNO_RSV_STAT, ")
//				.append("             ( ")
//				.append("                     SELECT CD1.CD_DIV_NM ")
//				.append("                     FROM   ZM_M_CD_NM_KANRI CD1 ")
//				.append("                     WHERE  CD1.CD_SBT_CD = 'CD00413' ")
//				.append("                     AND    CD1.CD_DIV = TR.TELNO_RSV_STAT ")
//				.append("                     AND    CD1.MK_FLG = '0' ")
//				.append("             ) AS TELNO_RSV_STAT_NM, ")
//				.append("             TR.UPD_DTM AS ZM0181_UPD_DTM, ");
//		}
//		else
//		{
//			sql_Buff
//				.append("             NULL AS TELNO_RSV_NO, ")
//				.append("             NULL AS TELNO_RSV_STAT, ")
//				.append("             NULL AS TELNO_RSV_STAT_NM, ")
//				.append("             NULL AS ZM0181_UPD_DTM, ")
//				;
//		}
//				
//		if(isAGJoin)
//		{
//			sql_Buff
//				.append("             AG.AGING_NO AS AGING_NO, ")
//				.append("             AG.AGING_STAT AS AGING_STAT, ")
//				.append("             ( ")
//				.append("                     SELECT CD2.CD_DIV_NM ")
//				.append("                     FROM   ZM_M_CD_NM_KANRI CD2 ")
//				.append("                     WHERE  CD2.CD_SBT_CD = 'CD00063' ")
//				.append("                     AND    CD2.CD_DIV    = AG.AGING_STAT ")
//				.append("                     AND    CD2.MK_FLG    = '0' ")
//				.append("             ) AS AGING_STAT_NM, ");
//		}
//		else
//		{
//			sql_Buff
//				.append("             NULL AS AGING_NO, ")
//				.append("             NULL AS AGING_STAT, ")
//				.append("             NULL AS AGING_STAT_NM, ");
//		}
//		sql_Buff.append("             ROWNUM AS ROW_NUM ");
//		sql_Buff.append(" FROM ")
//				.append("             ZM_M_TELNO TE ");
//		if(isTRJoin)
//		{
//			sql_Buff
//				.append("             LEFT OUTER JOIN ZM_T_TELNO_RSV TR ")
//				.append("                 ON  TR.TELNO = TE.TELNO ")
//				.append("                 AND TR.MK_FLG = '0' ");
//		}
//		if(isAGJoin)
//		{
//			sql_Buff
//				.append("             LEFT OUTER JOIN ZM_T_AGING AG ")
//				.append("                 ON  AG.AGING_SBT_CD   = '001' ")
//				.append("                 AND AG.AGING_TG_VALUE = TE.TELNO ")
//				.append("                 AND AG.MK_FLG         = '0' ");
//		}
//				
//		sql_Buff.append(" WHERE ");
//		sql_Buff.append("             TE.MK_FLG = '0' ");
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
//		{
//			sql_Buff.append("         AND TE.TELNO LIKE ? ");
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
//		{
//			sql_Buff.append("         AND TE.SVC_DIV = ? ");
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
//		{
//			sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD = ? ");
//		}
//		else
//		{
//			if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
//			{
//				// "999"(なし)選択時
//				if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
//				{
//					sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD IS NULL ");
//				}
//			}
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
//		{
//			sql_Buff.append("         AND TE.KOJIN_HOJIN_TLN_TAI_CD = ? ");
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
//		{
//			sql_Buff.append("         AND TE.TELNO_TENDYMD >= ? ");
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
//		{
//			sql_Buff.append("         AND TE.TELNO_TSTAYMD <= ? ");
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
//		{
//			// "999"(なし)選択時
//			if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
//			{
//				sql_Buff
//					.append(" AND NOT EXISTS( ")
//					.append("     SELECT 1 FROM ZM_T_TELNO_RSV TR2")
//					.append("     WHERE")
//					.append("         TR2.TELNO  = TE.TELNO ")
//					.append("         AND TR2.MK_FLG = '0' ")
//					.append(" )");
//			}
//			else
//			{
//				sql_Buff.append("         AND TR.TELNO_RSV_STAT = ? ");
//			}
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
//		{
//			if(isTRJoin)
//			{
//				sql_Buff.append("         AND TR.TELNO_RSV_SBT_CD = ? ");
//			}
//			else
//			{
//				sql_Buff.append("         AND ? IS NULL ");
//			}
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null
//			&& inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
//		{
//			if(isTRJoin)
//			{
//				sql_Buff.append("         AND (");
//				sql_Buff.append("                TR.YOYAKSHA_SYSID      = ? ");
//				sql_Buff.append("             OR TR.YOYAKSHA_SVC_KEI_NO = ? ");
//				sql_Buff.append("         ) ");
//			}
//			else
//			{
//				sql_Buff.append("         AND ( ? IS NULL OR ? IS NULL) ");
//			}
//		}
//		else
//		{
//			if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
//			{
//				if(isTRJoin)
//				{
//					sql_Buff.append("         AND TR.YOYAKSHA_SYSID = ? ");
//				}
//				else
//				{
//					sql_Buff.append("         AND ? IS NULL ");
//				}
//			}
//			if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
//			{
//				if(isTRJoin)
//				{
//					sql_Buff.append("         AND TR.YOYAKSHA_SVC_KEI_NO = ? ");
//				}
//				else
//				{
//					sql_Buff.append("         AND ? IS NULL ");
//				}
//			}
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
//		{
//			if(isTRJoin)
//			{
//				sql_Buff.append("         AND TR.YOYAKSHA_PROSCST_NO = ? ");
//			}
//			else
//			{
//				sql_Buff.append("         AND ? IS NULL ");
//			}
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
//		{
//			if(isTRJoin)
//			{
//				sql_Buff.append("         AND TR.TAIO_KIROK_NO = ? ");
//			}
//			else
//			{
//				sql_Buff.append("         AND ? IS NULL ");
//			}
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
//		{
//			sql_Buff.append("         AND TE.NO_CD = ? ");
//		}
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
//		{
//			sql_Buff.append("         AND TE.WARIATE_TSJGS_CD = ? ");
//		}
//		
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
//		{
//			// "999"(なし)選択時
//			if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
//			{
//				sql_Buff
//				.append(" AND NOT EXISTS( ")
//				.append("     SELECT 1 FROM ZM_T_AGING AG2")
//				.append("     WHERE")
//				.append("         AG2.AGING_SBT_CD       = '001' ")
//				.append("         AND AG2.AGING_TG_VALUE = TE.TELNO ")
//				.append("         AND AG2.MK_FLG         = '0' ")
//				.append(" )");
//			}
//			else
//			{
//				sql_Buff.append("     AND AG.AGING_STAT = ?  ");
//			}
//		}
//		sql_Buff.append(" AND TE.KYOKU_NO IN ")	// 局番
//				.append(" ( ")
//				.append("     SELECT ZM0301.KYOKU_NO ")
//				.append("     FROM  ZM_M_KYOKU_NO ZM0301 ")
//				.append("     WHERE ZM0301.KYOKU_NO_TSTAYMD <= ? ")
//				.append("     AND   ZM0301.KYOKU_NO_TENDYMD >= ? ")
//				.append("     AND   ZM0301.MK_FLG = '0' ");
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
//		{
//			sql_Buff.append("     AND   ZM0301.NO_KUKAKU_CD = ? ");
//		}
//		sql_Buff.append(" ) ");
//
//		sql_Buff.append(" AND ROWNUM = 1 ")			// 取得件数
//				.append(" FOR UPDATE");
//
//
//		// prepareStatementにSQL文をセット
//		pstmt2 = con1.prepareStatement(sql_Buff.toString());
//		
//		/**
//		 * パラメータセット用
//		 */
//		int index = 1;
//
//		// パラメータの設定(ＫＥＹ＿電話番号を指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getString(EZM0121B030CBSMsg.KEY_TELNO) + "%");
//		}
//		// パラメータの設定(ＫＥＹ＿サービス区分を指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV));
//		}
//		// パラメータの設定(ＫＥＹ＿引当制約種別コードを指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD));
//		}
//		// パラメータの設定(ＫＥＹ＿個人法人電話番号帯コードを指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD));
//		}
//		// パラメータの設定(ＫＥＹ＿電話番号適用期間開始を指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
//		}
//		// パラメータの設定(ＫＥＹ＿電話番号適用期間終了を指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
//		}
//		// パラメータの設定(ＫＥＹ＿電話番号予約ステータスを指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
//		{
//			// "999"(なし)選択時
//			if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
//			{
//				CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT));
//			}
//		}
//		// パラメータの設定(ＫＥＹ＿電話番号予約種別コードを指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD));
//		}
//		// パラメータの設定(ＫＥＹ＿予約者ＳＹＳＩＤを指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID));
//		}
//		// パラメータの設定(ＫＥＹ＿予約者サービス契約番号を指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO));
//		}
//		// パラメータの設定(ＫＥＹ＿予約者問合せ客番号を指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO));
//		}
//		// パラメータの設定(ＫＥＹ＿対応記録番号を指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO));
//		}
//		// パラメータの設定(ＫＥＹ＿番号コードを指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD));
//		}
//		// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
//		{
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
//		}
//		// パラメータの設定(ＫＥＹ＿エイジングステータスを指定)
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
//		{
//			// "999"(なし)選択時
//			if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
//			{
//				CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT));
//			}
//		}
//		// パラメータの設定(運用日付を指定)
//		CAANJDBCUtil.setParam(pstmt2, index++, JKKModelCommon.getOpeDate(inMsg));
//		// パラメータの設定(運用日付を指定)
//		CAANJDBCUtil.setParam(pstmt2, index++, JKKModelCommon.getOpeDate(inMsg));
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
//		{
//			// パラメータの設定(ＫＥＹ＿番号区画コードを指定)
//			CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD));
//		}
//		
//		// ログ出力(SQL文の出力)
//		JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
//			
//		/**
//		 * SQL文実行
//		 */
//		// ResultSetの取得
//		rsltQuery2 = pstmt2.executeQuery();
//
//		// EZM0121B030CBSMsgの明細にセットする項目
//		String[] msgKeyList1 = {
//				EZM0121B030CBSMsg1List.TELNO
//				, EZM0121B030CBSMsg1List.TELNO_TSTAYMD
//				, EZM0121B030CBSMsg1List.TELNO_TENDYMD
//				, EZM0121B030CBSMsg1List.ZM0121_UPD_DTM
//				, EZM0121B030CBSMsg1List.TELNO_RSV_NO
//				, EZM0121B030CBSMsg1List.TELNO_RSV_STAT
//				, EZM0121B030CBSMsg1List.TELNO_RSV_STAT_NM
//				, EZM0121B030CBSMsg1List.ZM0181_UPD_DTM
//				, EZM0121B030CBSMsg1List.AGING_NO
//				, EZM0121B030CBSMsg1List.AGING_STAT
//				, EZM0121B030CBSMsg1List.AGING_STAT_NM
//				, EZM0121B030CBSMsg1List.ROW_NO
//		};
//
//		// 明細に処理結果(ResultSet)をマッピング
//		CAANMsg[] outMsg1 = mapMessageList(rsltQuery2,msgKeyList1,"eo.ejb.cbs.cbsmsg.EZM0121B030CBSMsg1List",0);
//		// inMsg(CBSMsg)に明細をセット
//		inMsg.set("EZM0121B030CBSMsg1List", outMsg1);
//		
//		// ログ出力
////		StringBuffer logStr = new StringBuffer("電話番号検索回数：").append(String.valueOf(count)).append(", 最終検索局番：").append(strKyokuNo);
////		JSYejbLog.outlog(inContext, JSYejbLog.DEBUG, this.getClass(), logStr);
//
//		}
//// OM-2015-0001304 ADD END
	// 20160303 OM-2016-0000503 性能改善 DEL END
// OM-2015-0001304 DEL START
//		// SQL
//		StringBuffer sql_Buff = new StringBuffer();
//		
//		
//		// --------------------
//		// 局番リストを取得する
//		// --------------------
//		// 番号区画コードから局番を取得
//		sql_Buff.append(" SELECT ")
//				.append("        ZM0301.KYOKU_NO ")
//				.append(" FROM ")
//				.append("        ZM_M_KYOKU_NO ZM0301 ")
//				.append(" WHERE ")
//				.append("        ZM0301.KYOKU_NO_TSTAYMD <= ? ")
//				.append(" AND    ZM0301.KYOKU_NO_TENDYMD >= ? ")
//				.append(" AND    ZM0301.MK_FLG = '0' ");
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
//		{
//			sql_Buff
//				.append(" AND    ZM0301.NO_KUKAKU_CD = ? ");
//		}
//		
//		/**
//		 * パラメータセット用
//		 */
//		int index = 1;
//
//		// prepareStatementにSQL文をセット
//		pstmt = con1.prepareStatement(sql_Buff.toString());
//		
//
//		// パラメータの設定(運用日付を指定)
//		CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
//		// パラメータの設定(運用日付を指定)
//		CAANJDBCUtil.setParam(pstmt, index++, JKKModelCommon.getOpeDate(inMsg));
//		if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD) != null)
//		{
//			// パラメータの設定(ＫＥＹ＿番号区画コードを指定)
//			CAANJDBCUtil.setParam(pstmt, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_KUKAKU_CD));
//		}
//		
//		// ログ出力(SQL文の出力)
//		JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
//		
//		/**
//		 * SQL文実行
//		 */
//		// ResultSetの取得
//		rsltQuery = pstmt.executeQuery();
//
//		
//		// -------------------------
//		// 電話番号を取得する
//		// -------------------------
//		// SQLのクリア
//		sql_Buff = new StringBuffer();
//		
//		int count = 0;			// 件数
//		String strKyokuNo = "";	// 局番
//		while (rsltQuery.next()) {
//			
//			count++;
//		
//			// 1件目の場合、SQL分の構築
//			if (count == 1) {
//
//				sql_Buff.append(" SELECT  ")
//						.append("             TE.TELNO AS TELNO, ")
//						.append("             TE.TELNO_TSTAYMD AS TELNO_TSTAYMD, ")
//						.append("             TE.TELNO_TENDYMD AS TELNO_TENDYMD, ")
//						.append("             TE.UPD_DTM AS ZM0121_UPD_DTM, ");
//				if(isTRJoin){
//					sql_Buff
//						.append("             TR.TELNO_RSV_NO AS TELNO_RSV_NO, ")
//						.append("             TR.TELNO_RSV_STAT AS TELNO_RSV_STAT, ")
//						.append("             ( ")
//						.append("                     SELECT CD1.CD_DIV_NM ")
//						.append("                     FROM   ZM_M_CD_NM_KANRI CD1 ")
//						.append("                     WHERE  CD1.CD_SBT_CD = 'CD00413' ")
//						.append("                     AND    CD1.CD_DIV = TR.TELNO_RSV_STAT ")
//						.append("                     AND    CD1.MK_FLG = '0' ")
//						.append("             ) AS TELNO_RSV_STAT_NM, ")
//						.append("             TR.UPD_DTM AS ZM0181_UPD_DTM, ")
//				;
//				}else{
//					sql_Buff
//						.append("             NULL AS TELNO_RSV_NO, ")
//						.append("             NULL AS TELNO_RSV_STAT, ")
//						.append("             NULL AS TELNO_RSV_STAT_NM, ")
//						.append("             NULL AS ZM0181_UPD_DTM, ")
//					;
//				}
//				
//				if(isAGJoin){
//					sql_Buff
//						.append("             AG.AGING_NO AS AGING_NO, ")
//						.append("             AG.AGING_STAT AS AGING_STAT, ")
//						.append("             ( ")
//						.append("                     SELECT CD2.CD_DIV_NM ")
//						.append("                     FROM   ZM_M_CD_NM_KANRI CD2 ")
//						.append("                     WHERE  CD2.CD_SBT_CD = 'CD00063' ")
//						.append("                     AND    CD2.CD_DIV    = AG.AGING_STAT ")
//						.append("                     AND    CD2.MK_FLG    = '0' ")
//						.append("             ) AS AGING_STAT_NM, ")
//				;
//				}else{
//					sql_Buff
//						.append("             NULL AS AGING_NO, ")
//						.append("             NULL AS AGING_STAT, ")
//						.append("             NULL AS AGING_STAT_NM, ")
//					;
//				}
//				sql_Buff.append("             ROWNUM AS ROW_NUM ");
//				sql_Buff.append(" FROM ")
//						.append("             ZM_M_TELNO TE ")
//				;
//				if(isTRJoin){
//					sql_Buff
//						.append("             LEFT OUTER JOIN ZM_T_TELNO_RSV TR ")
//						.append("                 ON  TR.TELNO = TE.TELNO ")
//						.append("                 AND TR.MK_FLG = '0' ");
//				}
//				if(isAGJoin){
//					sql_Buff
//						.append("             LEFT OUTER JOIN ZM_T_AGING AG ")
//						.append("                 ON  AG.AGING_SBT_CD   = '001' ")
//						.append("                 AND AG.AGING_TG_VALUE = TE.TELNO ")
//						.append("                 AND AG.MK_FLG         = '0' ");
//				}
//				
//				sql_Buff.append(" WHERE ");
//				sql_Buff.append("             TE.MK_FLG = '0' ");
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
//				{
//					sql_Buff.append("         AND TE.TELNO LIKE ? ");
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
//				{
//					sql_Buff.append("         AND TE.SVC_DIV = ? ");
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
//				{
//					sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD = ? ");
//				}
//				else
//				{
//					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
//					{
//						// "999"(なし)選択時
//						if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
//						{
//							sql_Buff.append("         AND TE.HKAT_SIYK_SBT_CD IS NULL ");
//						}
//					}
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
//				{
//					sql_Buff.append("         AND TE.KOJIN_HOJIN_TLN_TAI_CD = ? ");
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
//				{
//					sql_Buff.append("         AND TE.TELNO_TENDYMD >= ? ");
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
//				{
//					sql_Buff.append("         AND TE.TELNO_TSTAYMD <= ? ");
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
//				{
//					// "999"(なし)選択時
//					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
//					{
//						sql_Buff
//						.append(" AND NOT EXISTS( ")
//						.append("     SELECT 1 FROM ZM_T_TELNO_RSV TR2")
//						.append("     WHERE")
//						.append("         TR2.TELNO  = TE.TELNO ")
//						.append("         AND TR2.MK_FLG = '0' ")
//						.append(" )");
//					}
//					else
//					{
//						sql_Buff.append("         AND TR.TELNO_RSV_STAT = ? ");
//					}
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
//				{
//					if(isTRJoin){
//						sql_Buff.append("         AND TR.TELNO_RSV_SBT_CD = ? ");
//					}else{
//						sql_Buff.append("         AND ? IS NULL ");
//					}
//				}
//				if (
//						inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null
//						&& inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null
//				)
//				{
//					if(isTRJoin){
//						sql_Buff.append("         AND (");
//						sql_Buff.append("                TR.YOYAKSHA_SYSID      = ? ");
//						sql_Buff.append("             OR TR.YOYAKSHA_SVC_KEI_NO = ? ");
//						sql_Buff.append("         ) ");
//					}else{
//						sql_Buff.append("         AND ( ? IS NULL OR ? IS NULL) ");
//					}
//				}
//				else
//				{
//					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
//					{
//						if(isTRJoin){
//							sql_Buff.append("         AND TR.YOYAKSHA_SYSID = ? ");
//						}else{
//							sql_Buff.append("         AND ? IS NULL ");
//						}
//					}
//					if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
//					{
//						if(isTRJoin){
//							sql_Buff.append("         AND TR.YOYAKSHA_SVC_KEI_NO = ? ");
//						}else{
//							sql_Buff.append("         AND ? IS NULL ");
//						}
//					}
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
//				{
//					if(isTRJoin){
//						sql_Buff.append("         AND TR.YOYAKSHA_PROSCST_NO = ? ");
//					}else{
//						sql_Buff.append("         AND ? IS NULL ");
//					}
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
//				{
//					if(isTRJoin){
//						sql_Buff.append("         AND TR.TAIO_KIROK_NO = ? ");
//					}else{
//						sql_Buff.append("         AND ? IS NULL ");
//					}
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
//				{
//					sql_Buff.append("         AND TE.NO_CD = ? ");
//				}
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
//				{
//					sql_Buff.append("         AND TE.WARIATE_TSJGS_CD = ? ");
//				}
//				
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
//				{
//					// "999"(なし)選択時
//					if ("999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
//					{
//						sql_Buff
//						.append(" AND NOT EXISTS( ")
//						.append("     SELECT 1 FROM ZM_T_AGING AG2")
//						.append("     WHERE")
//						.append("         AG2.AGING_SBT_CD       = '001' ")
//						.append("         AND AG2.AGING_TG_VALUE = TE.TELNO ")
//						.append("         AND AG2.MK_FLG         = '0' ")
//						.append(" )");
//					}
//					else
//					{
//						sql_Buff.append("     AND AG.AGING_STAT = ?  ");
//					}
//				}
//				sql_Buff.append(" AND TE.KYOKU_NO = ? ")	// 局番
//						.append(" AND ROWNUM = 1 ")			// 取得件数
//						.append(" FOR UPDATE");
//		
//				// prepareStatementにSQL文をセット
//				pstmt2 = con1.prepareStatement(sql_Buff.toString());
//				
//				index = 1;
//
//				// パラメータの設定(ＫＥＹ＿電話番号を指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getString(EZM0121B030CBSMsg.KEY_TELNO) + "%");
//				}
//				// パラメータの設定(ＫＥＹ＿サービス区分を指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_SVC_DIV));
//				}
//				// パラメータの設定(ＫＥＹ＿引当制約種別コードを指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_HKAT_SIYK_SBT_CD));
//				}
//				// パラメータの設定(ＫＥＹ＿個人法人電話番号帯コードを指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_KOJIN_HOJIN_TLN_TAI_CD));
//				}
//				// パラメータの設定(ＫＥＹ＿電話番号適用期間開始を指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_STA));
//				}
//				// パラメータの設定(ＫＥＹ＿電話番号適用期間終了を指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_APLY_PRD_END));
//				}
//				// パラメータの設定(ＫＥＹ＿電話番号予約ステータスを指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT) != null)
//				{
//					// "999"(なし)選択時
//					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT)))
//					{
//						CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_STAT));
//					}
//				}
//				// パラメータの設定(ＫＥＹ＿電話番号予約種別コードを指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TELNO_RSV_SBT_CD));
//				}
//				// パラメータの設定(ＫＥＹ＿予約者ＳＹＳＩＤを指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SYSID));
//				}
//				// パラメータの設定(ＫＥＹ＿予約者サービス契約番号を指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_SVC_KEI_NO));
//				}
//				// パラメータの設定(ＫＥＹ＿予約者問合せ客番号を指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_YOYAKSHA_PROSCST_NO));
//				}
//				// パラメータの設定(ＫＥＹ＿対応記録番号を指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_TAIO_KIROK_NO));
//				}
//				// パラメータの設定(ＫＥＹ＿番号コードを指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_NO_CD));
//				}
//				// パラメータの設定(ＫＥＹ＿割当通信事業者コードを指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD) != null)
//				{
//					CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_WARIATE_TSJGS_CD));
//				}
//				// パラメータの設定(ＫＥＹ＿エイジングステータスを指定)
//				if (inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT) != null)
//				{
//					// "999"(なし)選択時
//					if (!"999".equals(inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT)))
//					{
//						CAANJDBCUtil.setParam(pstmt2, index++, inMsg.getObject(EZM0121B030CBSMsg.KEY_AGING_STAT));
//					}
//				}
//				
//				// ログ出力(SQL文の出力)
//				JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
//			} // end-of-if
//			
//			// 局番を取得
//			strKyokuNo = rsltQuery.getString(EZM0121B030CBSMsg.KYOKU_NO);
//			// パラメータの設定（局番）
//			CAANJDBCUtil.setParam(pstmt2, index, strKyokuNo);
//			
//			/**
//			 * SQL文実行
//			 */
//			// ResultSetの取得
//			rsltQuery2 = pstmt2.executeQuery();
//	
//			// EZM0121B030CBSMsgの明細にセットする項目
//			String[] msgKeyList1 = {
//					EZM0121B030CBSMsg1List.TELNO
//					, EZM0121B030CBSMsg1List.TELNO_TSTAYMD
//					, EZM0121B030CBSMsg1List.TELNO_TENDYMD
//					, EZM0121B030CBSMsg1List.ZM0121_UPD_DTM
//					, EZM0121B030CBSMsg1List.TELNO_RSV_NO
//					, EZM0121B030CBSMsg1List.TELNO_RSV_STAT
//					, EZM0121B030CBSMsg1List.TELNO_RSV_STAT_NM
//					, EZM0121B030CBSMsg1List.ZM0181_UPD_DTM
//					, EZM0121B030CBSMsg1List.AGING_NO
//					, EZM0121B030CBSMsg1List.AGING_STAT
//					, EZM0121B030CBSMsg1List.AGING_STAT_NM
//					, EZM0121B030CBSMsg1List.ROW_NO
//			};
//	
//			// 明細に処理結果(ResultSet)をマッピング
//			CAANMsg[] outMsg1 = mapMessageList(rsltQuery2,msgKeyList1,"eo.ejb.cbs.cbsmsg.EZM0121B030CBSMsg1List",0);
//			// inMsg(CBSMsg)に明細をセット
//			inMsg.set("EZM0121B030CBSMsg1List", outMsg1);
//			
//			// 取得件数が０件の場合は、次の局番で検索する
//			if (outMsg1.length == 0) {
//				continue;
//			} else {
//				break;
//			}
//			
//		} // end-of-while
//		
//		// ログ出力
//		StringBuffer logStr = new StringBuffer("電話番号検索回数：").append(String.valueOf(count)).append(", 最終検索局番：").append(strKyokuNo);
//		JSYejbLog.outlog(inContext, JSYejbLog.DEBUG, this.getClass(), logStr);
//	}
//	// 20140918 OM-2014-0000770 Add End
// OM-2015-0001304 DEL END

	// 20160303 OM-2016-0000503 性能改善 ADD START
	/**
	 * 局番リストを発番する順に並び替えて返します。<br>
	 * 引数の局番リストは、発番可能な電話番号が多い順に並んでいることを前提し、以下の通りに並び替えを行います。<br>
	 * @発番可能な電話番号が多い順の上位の局番と下位の局番に分け、それぞれでランダムに並び替える。<br>
	 * A局番リストの件数分、99.9%を上位の局番から、0.1%を下位の局番から取得することを繰り返し、取得結果を返す。
	 * <br>
	 * @param kyokuNoList 局番リスト
	 * @return 並び替えた局番リスト
	 */
	private List<String> sortKyokuNoList(List<String> kyokuNoList)
	{
		List<String> sortList = new ArrayList<String>();

		if (null == kyokuNoList || kyokuNoList.isEmpty())
		{
			return kyokuNoList;
		}

		// 下位の局番の最初のインデックス
		int bottomStaIndex = (int)(kyokuNoList.size() * 0.5);

		// 上位の局番のインデックス順をランダムにする
		List<Integer> topIndexList = new ArrayList<Integer>();
		for (int i = 0; i < bottomStaIndex; i++)
		{
			topIndexList.add(i);
		}
		Collections.shuffle(topIndexList);

		// 下位の局番のインデックス順をランダムにする
		List<Integer> bottomIndexList = new ArrayList<Integer>();
		for (int i = bottomStaIndex; i < kyokuNoList.size(); i++)
		{
			bottomIndexList.add(i);
		}
		Collections.shuffle(bottomIndexList);

		Iterator<Integer> topIndex = topIndexList.iterator();
		Iterator<Integer> bottomIndex = bottomIndexList.iterator();
		for (int i = 0; i < kyokuNoList.size(); i++)
		{
			double rand = Math.random();
			// 99.9%は上位の局番から取得
			if (rand < 0.999)
			{
				if (topIndex.hasNext())
				{
					sortList.add(kyokuNoList.get(topIndex.next()));
				}
				else if (bottomIndex.hasNext())
				{
					sortList.add(kyokuNoList.get(bottomIndex.next()));
				}
			}
			// 0.1%は下位の局番から取得
			else
			{
				if (bottomIndex.hasNext())
				{
					sortList.add(kyokuNoList.get(bottomIndex.next()));
				}
				else if (topIndex.hasNext())
				{
					sortList.add(kyokuNoList.get(topIndex.next()));
				}
			}
		}

		return sortList;
	}
	// 20160303 OM-2016-0000503 性能改善 ADD END
}
