/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：JSYejbEKK0321B505TPDA
*	ソースファイル名：JSYejbEKK0321B505TPDA.java
*	作成者			：EKek0087
*	日付			：2012年05月17日
*＜機能概要＞
*	課金先一覧照会(マンション情報)テンプレートDBアクセス部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00
*   ｖ5.00.00	2013/07/30  FJ) 文元   【LT-2013-0000641】回線対象サービス契約にて回線使用終了分は取得しない、および請求書用回線場所住所部屋番号を取得
*   ｖ5.00.01	2013/07/30  FJ) 米谷   【LT-2013-0000641】ソート優先順位を修正。請求書用回線場所住所部屋番号を昇順に修正。
*   ｖ9.00.01	2014/08/05  FJ) 桑島   【OM-2014-0002355】ID番号コンボのソート順を修正。登録データの料金グループコードの修正。
*   ｖ10.00.01	2014/09/22  FJ) 桑島   【OM-2014-0002935】ID番号コンボのデータ取得修正（サービス契約ステータスでの判断追加）。
********************************************************************************/

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 eo.ejb.cbs.cbsmsg.EKK0321B505CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0321B505CBSMsg1List;
import eo.ejb.cbm.entity.AC0091ETMsg;
import eo.ejb.common.JPCModelCommon;

/**
*
*  テンプレートDBアクセス部品　EKK0321B505_SQLF<br>
*  入力された項目からSQL文を動的に組み立て、<br>
*  検索結果をCBSMsgにセットします。<br>
*/
public class JSYejbEKK0321B505TPDA extends CAANSQLFacility implements TemplateDBAccessHandler{
	
	/**
	 * コンストラクタ
	 */
	public JSYejbEKK0321B505TPDA()	{
	}
	
	/**
	*   EKK0321B505_SQLF<br>
	*   @param inMsg    入力値の格納されたCBSMsg <br>
	*   @return void
	*/
	public void invoke(CAANMsg inMsg,AgentDispatchContext inContext){
		
		// コネクション
		Connection con1 = null;
		
		// プリペアステートメント
		PreparedStatement pstmt = null;
		
		// リザルトセット
		ResultSet rsltQuery = null;
		
		/******************** 
		 * SQL文の作成
		 ********************/

		try{
			
			//コネクション取得
			con1 = JSYejbConnection.getConnection(AC0091ETMsg.getTableName());
			
			
			// SQL文_基本部1
			StringBuffer sql_Buff = new StringBuffer();
			sql_Buff.append("  SELECT  ")
			.append("     KK0321.SVC_KEI_NO ")
			.append("    ,KK0321.SEIRI_NO ")
			.append("    ,KK0321.MANSION_ID ")
			.append("    ,KK0321.CATID ")
			.append("    ,KK0321.MSBSN_ANKEN_KNRI_NO ")
			.append("    ,KK0321.KAISEN_PLACE_ADRRM ")
			//OM-2014-0002355 ADD START
			.append("    ,KK0321.PAY_HOSHIKI_CD ")
			//OM-2014-0002355 ADD END
			.append(" FROM ")
			.append("    ( ")
			.append("     SELECT ")
			.append("         KK0321.SVC_KEI_NO ")
			.append("        ,KK0081.SEIRI_NO ")
			.append("        ,NULL AS MANSION_ID ")
			.append("        ,NULL AS CATID ")
			.append("        ,NULL AS MSBSN_ANKEN_KNRI_NO ")
			.append("        ,NULL AS KAISEN_PLACE_ADRRM ")
			.append("        ,NULL AS PAY_HOSHIKI_CD ")
			.append("     FROM ")
			.append("         KK_T_KAKINS KK0321 ")
			.append("         INNER JOIN ")
			.append("               ( SELECT ")
			.append("                     KK0081.SVC_KEI_NO ")
			.append("                    ,KK0081.SEIRI_NO ")
			.append("                    ,KK0081.TK_HOSHIKI_KEI_NO ")
			.append("                 FROM ")
			.append("                     KK_T_SVC_KEI KK0081 ")
			.append("                 WHERE ")
			.append("                     KK0081.RSV_APLY_YMD || KK0081.GENE_ADD_DTM =  ")
			.append("                          ( SELECT ")
			.append("                                MAX(KK0081_GENE.RSV_APLY_YMD || KK0081_GENE.GENE_ADD_DTM) AS KK0081_MAX ")
			.append("                            FROM ")
			.append("                                KK_T_SVC_KEI KK0081_GENE ")
			.append("                            WHERE ")
			.append("                                KK0081_GENE.SVC_KEI_NO = KK0081.SVC_KEI_NO ")
			.append("                            AND KK0081_GENE.RSV_APLY_YMD <= ?  ")
			.append("                            AND KK0081_GENE.RSV_APLY_CD = '2' ")
			//OM-2014-0002935 ADD START
			.append("                            AND KK0081_GENE.MK_FLG = '0' ) ")
			.append("                      AND KK0081.SVC_KEI_STAT IN ('030','100','210','220','910') ) KK0081 ")
			//OM-2014-0002935 ADD START
			.append("           ON KK0081.SVC_KEI_NO = KK0321.SVC_KEI_NO ")
			.append("     WHERE ")
			.append("         KK0321.SEIKY_KEI_NO = ?  ")
			.append("     AND KK0321.SVC_KEI_NO IS NOT NULL ")
			.append("     AND KK0321.KAKINS_TSTAYMD <= ?  ")
			.append("     AND KK0321.KAKINS_TENDYMD >= ?  ")
			.append("     AND KK0321.MK_FLG = '0' ")
			.append("     AND NOT EXISTS ")
			.append("               ( SELECT ")
			.append("                     KK2281.SVC_KEI_NO ")
			.append("                 FROM ")
			.append("                     KK_T_SVC_KEI_DUMMY KK2281 ")
			.append("                 WHERE ")
			.append("                     KK2281.GENE_ADD_DTM =  ")
			.append("                          ( SELECT ")
			.append("                                MAX(KK2281_GENE.GENE_ADD_DTM) AS KK2281_MAX ")
			.append("                            FROM ")
			.append("                                KK_T_SVC_KEI_DUMMY KK2281_GENE ")
			.append("                            WHERE ")
			.append("                                KK2281_GENE.SVC_KEI_NO = KK2281.SVC_KEI_NO ")
			.append("                            AND KK2281_GENE.RSV_APLY_CD = '2' ")
			.append("                            AND KK2281_GENE.MK_FLG = '0' ) ")
			.append("                 AND KK2281.SVC_KEI_NO = KK0321.SVC_KEI_NO) ")
			.append("     UNION ")
			.append("     SELECT ")
			.append("         KK0321.SVC_KEI_NO ")
			.append("        ,KK2281.SEIRI_NO ")
			.append("        ,KK2281.MANSION_ID ")
			.append("        ,KK2281.CATID ")
			.append("        ,KK2281.MSBSN_ANKEN_KNRI_NO ")
			.append("        ,KK2281.KAISEN_PLACE_ADRRM ")
			//OM-2014-0002935 DEL START
			//OM-2014-0002355 ADD START
//			.append("        ,KK2281.PAY_HOSHIKI_CD ")
			//OM-2014-0002355 ADD END
			//OM-2014-0002935 DEL END
			//OM-2014-0002935 ADD START
			.append("        ,KK2281.KANYU_KEI_PAY_HOSHIKI_CD AS PAY_HOSHIKI_CD ")
			//OM-2014-0002935 ADD END
			.append("     FROM ")
			.append("         KK_T_KAKINS KK0321 ")
			.append("         INNER JOIN ")
			.append("                  ( SELECT ")
			.append("                        KK2281.SVC_KEI_NO ")
			.append("                       ,KK0081.SEIRI_NO ")
			.append("                       ,KK0881.MANSION_ID ")
			.append("                       ,KK0881.CATID ")
			.append("                       ,KK0881.MSBSN_ANKEN_KNRI_NO ")
			.append("                       ,NULL AS KAISEN_PLACE_ADRRM ")
			//OM-2014-0002935 MOD START
//			.append("                       ,KK0871.PAY_HOSHIKI_CD ")
			.append("                       ,KK0891.KANYU_KEI_PAY_HOSHIKI_CD ")
			//OM-2014-0002935 MOD END
			.append("                    FROM ")
			.append("                        KK_T_SVC_KEI_DUMMY KK2281 ")
			.append("                        INNER JOIN  ")
			.append("                                KK_T_TK_HOSHIKI_KEI KK0891 ")
			.append("                                INNER JOIN ")
			.append("                                         KK_T_KAISEN_USE_KEI KK0881 ")
			//OM-2014-0002935 DEL START
			//OM-2014-0002355 ADD START
//			.append("                                         INNER JOIN ")
//			.append("                                                  KK_T_OWNR_KEI KK0871 ")
//			.append("                                            ON KK0871.OWNR_KEI_NO = KK0881.OWNR_KEI_NO ")
//			.append("                                           AND KK0871.PAY_HOSHIKI_CD IN ('001','003','004') ")
//			.append("                                           AND KK0871.MK_FLG = '0' ")
			//OM-2014-0002355 ADD END
			//.append("                                          ")
			//OM-2014-0002935 DEL END
			.append("                                   ON KK0881.KAISEN_USE_KEI_NO = KK0891.KAISEN_USE_KEI_NO ")
			.append("                                  AND KK0881.MK_FLG = '0' ")
			.append("                          ON KK0891.TK_HOSHIKI_KEI_NO = KK2281.REPLICA_MOTO_TK_HSK_KEI_NO ")
			//OM-2014-0002935 ADD START
			.append("                         AND KK0891.KANYU_KEI_PAY_HOSHIKI_CD IN ('001','003','004') ")
			//OM-2014-0002935 ADD END
			.append("                         AND KK0891.MK_FLG = '0' ")
			.append("                          ")
			.append("                        INNER JOIN ")
			.append("                              ( SELECT ")
			.append("                                    KK0081.SVC_KEI_NO ")
			.append("                                   ,KK0081.SEIRI_NO ")
			.append("                                FROM ")
			.append("                                    KK_T_SVC_KEI KK0081 ")
			.append("                                WHERE ")
			.append("                                    KK0081.RSV_APLY_YMD || KK0081.GENE_ADD_DTM = ")
			.append("                                         ( SELECT ")
			.append("                                               MAX(KK0081_GENE.RSV_APLY_YMD || KK0081_GENE.GENE_ADD_DTM) AS KK0081_MAX ")
			.append("                                           FROM ")
			.append("                                               KK_T_SVC_KEI KK0081_GENE ")
			.append("                                           WHERE ")
			.append("                                               KK0081_GENE.SVC_KEI_NO = KK0081.SVC_KEI_NO ")
			.append("                                           AND KK0081_GENE.RSV_APLY_YMD <= ?  ")
			.append("                                           AND KK0081_GENE.RSV_APLY_CD = '2' ")
			//OM-2014-0002935 ADD START
			.append("                                           AND KK0081_GENE.MK_FLG = '0' ) ")
			.append("                                    AND KK0081.SVC_KEI_STAT IN ('030','100','210','220','910') ) KK0081 ")
			//OM-2014-0002935 ADD END
			.append("                           ON KK0081.SVC_KEI_NO = KK2281.SVC_KEI_NO ")
			.append("                    WHERE ")
			.append("                        KK2281.GENE_ADD_DTM = ")
			.append("                             ( SELECT ")
			.append("                                   MAX(KK2281_GENE.GENE_ADD_DTM) AS KK2281_MAX ")
			.append("                               FROM ")
			.append("                                   KK_T_SVC_KEI KK2281_GENE ")
			.append("                               WHERE ")
			.append("                                   KK2281_GENE.SVC_KEI_NO = KK2281.SVC_KEI_NO ")
			.append("                               AND KK2281_GENE.RSV_APLY_CD = '2' ")
			.append("                               AND KK2281_GENE.MK_FLG = '0' ) ) KK2281 ")
			.append("            ON KK2281.SVC_KEI_NO = KK0321.SVC_KEI_NO ")
			.append("     WHERE ")
			.append("         KK0321.SEIKY_KEI_NO = ?  ")
			.append("     AND KK0321.SVC_KEI_NO IS NOT NULL ")
			.append("     AND KK0321.KAKINS_TSTAYMD <= ?  ")
			.append("     AND KK0321.KAKINS_TENDYMD >= ?  ")
			.append("     AND KK0321.MK_FLG = '0' ")
			.append("     UNION ")
			.append("     SELECT ")
			.append("         KK2281.SVC_KEI_NO_KK0081 ")
			.append("        ,KK2281.SEIRI_NO ")
			.append("        ,KK2281.MANSION_ID ")
			.append("        ,KK2281.CATID ")
			.append("        ,KK2281.MSBSN_ANKEN_KNRI_NO ")
			.append("        ,KK2281.KAISEN_PLACE_ADRRM ")
			//OM-2014-0002355 ADD START
			.append("        ,NULL AS PAY_HOSHIKI_CD ")
			//OM-2014-0002355 ADD END
			.append("     FROM ")
			.append("         KK_T_KAKINS KK0321 ")
			.append("         INNER JOIN ")
			.append("                  ( SELECT ")
			.append("                        KK2281.SVC_KEI_NO ")
			.append("                       ,KK0081.SVC_KEI_NO AS SVC_KEI_NO_KK0081 ")
			.append("                       ,KK0081.SEIRI_NO ")
			.append("                       ,KK0881.MANSION_ID ")
			.append("                       ,KK0881.CATID ")
			.append("                       ,KK0881.MSBSN_ANKEN_KNRI_NO ")
			.append("                       ,KK0081.KAISEN_PLACE_ADRRM ")
			.append("                    FROM ")
			.append("                        KK_T_SVC_KEI_DUMMY KK2281 ")
			.append("                        INNER JOIN  ")
			.append("                                KK_T_TK_HOSHIKI_KEI KK0891 ")
			.append("                                INNER JOIN ")
			.append("                                         KK_T_KAISEN_USE_KEI KK0881 ")
			//OM-2014-0002935 DEL START
			//OM-2014-0002355 ADD START
//			.append("                                         INNER JOIN ")
//			.append("                                                  KK_T_OWNR_KEI KK0871 ")
//			.append("                                            ON KK0871.OWNR_KEI_NO = KK0881.OWNR_KEI_NO ")
//			.append("                                           AND KK0871.PAY_HOSHIKI_CD IN ('001','003','004') ")
//			.append("                                           AND KK0871.MK_FLG = '0' ")
			//OM-2014-0002355 ADD END
			//OM-2014-0002935 DEL END
			.append("                                   ON KK0881.KAISEN_USE_KEI_NO = KK0891.KAISEN_USE_KEI_NO ")
			.append("                                  AND KK0881.MK_FLG = '0' ")
			.append("                                INNER JOIN ")
			.append("                                        ( SELECT  ")
			.append("                                              KK0081.TK_HOSHIKI_KEI_NO ")
			.append("                                             ,KK0081.SVC_KEI_NO ")
			.append("                                             ,KK0081.SEIRI_NO ")
			.append("                                             ,KK0081.MK_FLG ")
			.append("                                             ,KK0251.KAISEN_PLACE_ADRRM ")
			.append("                                          FROM ")
			.append("                                              KK_T_SVC_KEI KK0081 ")
			.append("                                              INNER JOIN  ")
			.append("                                                        KK_T_KAISEN_TG_SVKEI KK0241 ")
			.append("                                                        INNER JOIN  ")
			.append("                                                                ( SELECT ")
			.append("                                                                      KK0251.SKS_YO_KISN_PLACE_AD_RM_NO AS KAISEN_PLACE_ADRRM ")
			.append("                                                                     ,KK0251.SVC_KEI_KAISEN_UCWK_NO ")
			.append("                                                                  FROM ")
			.append("                                                                      KK_T_SVKEI_KAISEN_UW KK0251 ")
			.append("                                                                  WHERE ")
			.append("                                                                      KK0251.GENE_ADD_DTM = ")
			.append("                                                                           ( SELECT ")
			.append("                                                                                 MAX(KK0251_GENE.GENE_ADD_DTM) ")
			.append("                                                                             FROM ")
			.append("                                                                                 KK_T_SVKEI_KAISEN_UW KK0251_GENE ")
			.append("                                                                             WHERE ")
			.append("                                                                                 KK0251_GENE.SVC_KEI_KAISEN_UCWK_NO = KK0251.SVC_KEI_KAISEN_UCWK_NO ")
			.append("                                                                             AND KK0251_GENE.MK_FLG = '0' ) ) KK0251 ")
			.append("                                                           ON KK0251.SVC_KEI_KAISEN_UCWK_NO = KK0241.SVC_KEI_KAISEN_UCWK_NO ")
			.append("                                                           AND KK0241.KAISEN_UCWK_USE_STAYMD <= ?  ")
			.append("                                                           AND KK0241.KAISEN_UCWK_USE_ENDYMD >= ?  ")
			.append("                                                 ON KK0241.SVC_KEI_NO = KK0081.SVC_KEI_NO ")
			.append("                                                AND KK0241.MK_FLG = '0' ")
			.append("                                                 ")
			//OM-2014-0002355 ADD START
			.append("                                                INNER JOIN ")
			.append("                                                         KK_T_TK_HSK_KEI_PRC KK1921 ")
			.append("                                                   ON KK1921.TK_HOSHIKI_KEI_NO = KK0081.TK_HOSHIKI_KEI_NO ")
			.append("                                                   AND KK1921.KANYU_KEI_AITAI_PPLAN_CD = KK0081.PPLAN_CD ")
			.append("                                                   AND KK1921.GENE_ADD_DTM = ")
			.append("                                                           ( SELECT ")
			.append("                                                                 MAX(KK1921_GENE.GENE_ADD_DTM) ")
			.append("                                                             FROM ")
			.append("                                                                 KK_T_TK_HSK_KEI_PRC KK1921_GENE ")
			.append("                                                             WHERE ")
			.append("                                                                 KK1921_GENE.TK_HOSHIKI_KEI_NO = KK1921.TK_HOSHIKI_KEI_NO ")
			.append("                                                             AND KK1921_GENE.KANYU_KEI_AITAI_PPLAN_CD = KK1921.KANYU_KEI_AITAI_PPLAN_CD ")
			.append("                                                             AND KK1921_GENE.MK_FLG = '0' ) ")
			.append("                                                  AND KK1921.MK_FLG = '0' ")
			//OM-2014-0002355 ADD END
			.append("                                         ")
			.append("                                          WHERE ")
			.append("                                              KK0081.RSV_APLY_YMD || KK0081.GENE_ADD_DTM = ")
			.append("                                                   ( SELECT ")
			.append("                                                         MAX(KK0081_GENE.RSV_APLY_YMD || KK0081_GENE.GENE_ADD_DTM) AS KK0081_MAX ")
			.append("                                                     FROM ")
			.append("                                                         KK_T_SVC_KEI KK0081_GENE ")
			.append("                                                     WHERE ")
			.append("                                                         KK0081_GENE.SVC_KEI_NO = KK0081.SVC_KEI_NO ")
			.append("                                                     AND KK0081_GENE.RSV_APLY_YMD <= ?  ")
			.append("                                                     AND KK0081_GENE.RSV_APLY_CD = '2' ")
			//OM-2014-0002935 ADD START
			.append("                                                     AND KK0081_GENE.MK_FLG = '0' ) ")
			.append("                                              AND KK0081.SVC_KEI_STAT IN ('030','100','210','220','910') ) KK0081 ")
			//OM-2014-0002935 ADD END
			.append("                                   ON KK0081.TK_HOSHIKI_KEI_NO = KK0891.TK_HOSHIKI_KEI_NO ")
			.append("                                  AND KK0081.MK_FLG = '0' ")
			.append("                          ON KK0891.TK_HOSHIKI_KEI_NO = KK2281.REPLICA_MOTO_TK_HSK_KEI_NO ")
			//OM-2014-0002935 ADD START
			.append("                          AND KK0891.KANYU_KEI_PAY_HOSHIKI_CD IN ('001','003','004') ")
			//OM-2014-0002935 ADD END
			.append("                         AND KK0891.MK_FLG = '0' ")
			.append("                    WHERE ")
			.append("                        KK2281.GENE_ADD_DTM = ")
			.append("                             ( SELECT ")
			.append("                                   MAX(KK2281_GENE.GENE_ADD_DTM) AS KK2281_MAX ")
			.append("                               FROM ")
			.append("                                   KK_T_SVC_KEI KK2281_GENE ")
			.append("                               WHERE ")
			.append("                                   KK2281_GENE.SVC_KEI_NO = KK2281.SVC_KEI_NO ")
			.append("                               AND KK2281_GENE.RSV_APLY_CD = '2' ")
			.append("                               AND KK2281_GENE.MK_FLG = '0' ) ) KK2281 ")
			.append("            ON KK2281.SVC_KEI_NO = KK0321.SVC_KEI_NO ")
			.append("     WHERE ")
			.append("         KK0321.SEIKY_KEI_NO = ?  ")
			.append("     AND KK0321.SVC_KEI_NO IS NOT NULL ")
			.append("     AND KK0321.KAKINS_TSTAYMD <= ?  ")
			.append("     AND KK0321.KAKINS_TENDYMD >= ?  ")
			.append("     AND KK0321.MK_FLG = '0' ")
			.append("    ) KK0321 ");
			// SQL文_個別部1
			if ( "1".equals( inMsg.getObject(EKK0321B505CBSMsg.FUNC_CODE).toString() ) ) {
 				sql_Buff.append(" ORDER BY ")
 				//OM-2014-0002355 ADD START
 						.append("    KK0321.MANSION_ID ASC NULLS FIRST ")
 						.append("   ,KK0321.KAISEN_PLACE_ADRRM ASC NULLS FIRST ")
 				//OM-2014-0002355 ADD END
						.append("   ,KK0321.MANSION_ID ASC ")
						.append("   ,KK0321.CATID ASC ")
						.append("   ,KK0321.MSBSN_ANKEN_KNRI_NO ASC ")
						.append("   ,KK0321.KAISEN_PLACE_ADRRM ASC ")
 						.append("   ,KK0321.SVC_KEI_NO ASC ");
			}
			
			//prepareStatementにSQL文をセット
			pstmt = con1.prepareStatement(sql_Buff.toString());
			
			//ログ出力(SQL文の出力)
			JSYejbLog.outlog(inContext, JSYejbLog.DBACCESS, this.getClass(), sql_Buff);
			
// 手修正個所S
			// パラメータインデックス
			int i = 1;
			
			// PreparedStatementの指定されたパラメータカラムに 指定された値を設定
			if ( "1".equals( inMsg.getString(EKK0321B505CBSMsg.FUNC_CODE) ) ) {
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				// パラメータの設定(ＫＥＹ＿請求契約番号を指定)
				CAANJDBCUtil.setParam(pstmt, i++, inMsg.getObject(EKK0321B505CBSMsg.KEY_SEIKY_KEI_NO));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				// パラメータの設定(ＫＥＹ＿請求契約番号を指定)
				CAANJDBCUtil.setParam(pstmt, i++, inMsg.getObject(EKK0321B505CBSMsg.KEY_SEIKY_KEI_NO));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				// パラメータの設定(ＫＥＹ＿請求契約番号を指定)
				CAANJDBCUtil.setParam(pstmt, i++, inMsg.getObject(EKK0321B505CBSMsg.KEY_SEIKY_KEI_NO));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, JPCModelCommon.getOpeDate(inMsg, inContext, null));
			}
// 手修正個所E
			// ResultSetの取得
			rsltQuery = pstmt.executeQuery();
			
// 手修正個所S
			
			ArrayList<CAANMsg> outList = new ArrayList<CAANMsg>();
			
			// outリストの編集
			while(rsltQuery.next()){
				
				// 各項目を取得する。
				String sSVC_KEI_NO = rsltQuery.getString("SVC_KEI_NO");
				String sSEIRI_NO = rsltQuery.getString("SEIRI_NO");
				String sMANSION_ID = rsltQuery.getString("MANSION_ID");
				String sCATID = rsltQuery.getString("CATID");
				String sMSBSN_ANKEN_KNRI_NO = rsltQuery.getString("MSBSN_ANKEN_KNRI_NO");
				String sKAISEN_PLACE_ADRRM = rsltQuery.getString("KAISEN_PLACE_ADRRM");
				
				//OM-2014-0002355 ADD START
				//支払方式コード
				String sPAY_HOSHIKI_CD = rsltQuery.getString("PAY_HOSHIKI_CD");
				//OM-2014-0002355 ADD END
				
				CAANMsg outMsg = new CAANMsg("eo.ejb.cbs.cbsmsg.EKK0321B505CBSMsg1List");
				
				// サービス契約番号の設定
				outMsg.set(EKK0321B505CBSMsg1List.SVC_KEI_NO, sSVC_KEI_NO);
				// 整理番号
				outMsg.set(EKK0321B505CBSMsg1List.SEIRI_NO, sSEIRI_NO);
				// マンションＩＤの設定
				if(sMANSION_ID != null){
					outMsg.set(EKK0321B505CBSMsg1List.MANSION_ID, sMANSION_ID);
				}
				else if(sCATID != null){
					outMsg.set(EKK0321B505CBSMsg1List.MANSION_ID, sCATID);
				}
				else if(sMSBSN_ANKEN_KNRI_NO != null){
					outMsg.set(EKK0321B505CBSMsg1List.MANSION_ID, sMSBSN_ANKEN_KNRI_NO);
				}
				// 部屋番号の設定
				if(sKAISEN_PLACE_ADRRM != null){
					outMsg.set(EKK0321B505CBSMsg1List.KAISEN_PLACE_ADRRM, sKAISEN_PLACE_ADRRM);
				}
				
				//OM-2014-0002355 ADD START
				//支払方式コード設定
				if(sPAY_HOSHIKI_CD != null){
					outMsg.set(EKK0321B505CBSMsg1List.PAY_HOSHIKI_CD, sPAY_HOSHIKI_CD);
				}
				//OM-2014-0002355 ADD END
				
				outList.add(outMsg);
			}
			
			CAANMsg[] outMsg1 = (CAANMsg[]) outList.toArray(new CAANMsg[0]);
			
// 手修正個所E
			
			// inMsg(CBSMsg)に明細をセット
			inMsg.set("EKK0321B505CBSMsg1List", outMsg1);
			

		} catch(SQLException e) {
			inMsg.set(EKK0321B505CBSMsg.STATUS, StatusCodes.FIND_DB_ERR);
			throw new CAANRuntimeException(e);
		} finally {
			// 資源の解放
			try{
				if(rsltQuery != null){
					rsltQuery.close();
				}
				if(pstmt != null){
					pstmt.close();
				}
				if(con1 != null){
					closeConnection(con1);
				}
			}catch(SQLException e){
				inMsg.set(EKK0321B505CBSMsg.STATUS, StatusCodes.FIND_DB_ERR);
				throw new CAANRuntimeException(e);
			}
		}
	}
}
