/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：JSYejbEKK0321B509TPDA
*	ソースファイル名：JSYejbEKK0321B509TPDA.java
*	作成者			：EK908575
*	日付			：2015年03月11日
*＜機能概要＞
*	課金先一覧照会（整理番号）テンプレートDBアクセス部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00
*
********************************************************************************/

package eo.ejb.cbs.sqlf;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import com.fujitsu.futurity.model.base.CAANJDBCUtil;
import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.base.CAANRuntimeException;
import com.fujitsu.futurity.model.base.CAANSQLFacility;
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.AgentDispatchContext;
import com.fujitsu.futurity.model.ejb.common.fw.TemplateDBAccessHandler;

import eo.common.constant.JACStrConst;
import eo.ejb.cbm.entity.CH0501ETMsg;
import eo.ejb.cbm.entity.KK0321ETMsg;
import eo.ejb.cbs.cbsmsg.EKK0321B509CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0321B509CBSMsg1List;
import eo.ejb.common.JCHModelCommon;
import eo.ejb.common.JPCModelCommon;

/**
*
*  テンプレートDBアクセス部品　EKK0321B509_SQLF<br>
*  入力された項目からSQL文を動的に組み立て、<br>
*  検索結果をCBSMsgにセットします。<br>
*/
public class JSYejbEKK0321B509TPDA extends CAANSQLFacility implements TemplateDBAccessHandler{
	
	/**
	 * コンストラクタ
	 */
	public JSYejbEKK0321B509TPDA()	{
	}
	
	/**
	*   EKK0321B509_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(KK0321ETMsg.getTableName());
			
			
			// SQL文_基本部1
			StringBuffer sql_Buff = new StringBuffer();
			sql_Buff.append(" SELECT ")
					.append("     KK0321.SVC_KEI_NO ")
					.append("    ,NVL((SELECT KK0081.SEIRI_NO ")
					.append("            FROM KK_T_SVC_KEI KK0081 ")
					.append("           WHERE KK0081.SVC_KEI_NO = KK0321.SVC_KEI_NO ")
					.append("             AND KK0081.RSV_APLY_YMD || KK0081.GENE_ADD_DTM = ( ")
					.append("                   SELECT MAX(KK0081_GENE.RSV_APLY_YMD || KK0081_GENE.GENE_ADD_DTM) KK0081_MAX ")
					.append("                     FROM KK_T_SVC_KEI KK0081_GENE ")
					.append("                    WHERE KK0081_GENE.SVC_KEI_NO = KK0081.SVC_KEI_NO ")
					.append("                      AND KK0081_GENE.RSV_APLY_YMD <= ? ")
					.append("                      AND KK0081_GENE.RSV_APLY_CD = '2' ")
					.append("                      AND KK0081_GENE.MK_FLG = '0')),KK0321.SEIRI_NO) SEIRI_NO ")
					.append("    ,KK0321.MANSION_ID ")
					.append("    ,KK0321.CATID ")
					.append("    ,KK0321.MSBSN_ANKEN_KNRI_NO ")
					.append("    ,KK0321.KAISEN_PLACE_ADRRM ")
					.append("    ,KK0321.PAY_HOSHIKI_CD ")
					.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' ")
					.append("                            AND KK0081_GENE.MK_FLG = '0' ) ")
					.append("                      AND KK0081.SVC_KEI_STAT IN ('030','100','210','220','910') ) KK0081 ")
					.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 ")
					.append("        ,KK2281.KANYU_KEI_PAY_HOSHIKI_CD AS PAY_HOSHIKI_CD ")
					.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 ")
					.append("                       ,KK0891.KANYU_KEI_PAY_HOSHIKI_CD ")
					.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 ")
					.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 ")
					.append("                         AND KK0891.KANYU_KEI_PAY_HOSHIKI_CD IN ('001','003','004') ")
					.append("                         AND KK0891.MK_FLG = '0' ")
					.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' ")
					.append("                                           AND KK0081_GENE.MK_FLG = '0' ) ")
					.append("                                    AND KK0081.SVC_KEI_STAT IN ('030','100','210','220','910') ) KK0081 ")
					.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 ")
					.append("        ,NULL AS PAY_HOSHIKI_CD ")
					.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 ")
					.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("                                                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' ")
					.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' ")
					.append("                                                     AND KK0081_GENE.MK_FLG = '0' ) ")
					.append("                                              AND KK0081.SVC_KEI_STAT IN ('030','100','210','220','910') ) KK0081 ")
					.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 ")
					.append("                          AND KK0891.KANYU_KEI_PAY_HOSHIKI_CD IN ('001','003','004') ")
					.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(EKK0321B509CBSMsg.FUNC_CODE).toString() ) ) {
 				sql_Buff.append(" ORDER BY ")
						.append("    KK0321.MANSION_ID ASC NULLS FIRST ")
						.append("   ,KK0321.KAISEN_PLACE_ADRRM ASC NULLS FIRST ")
						.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);
			
			// パラメータインデックス
			int i = 1;
			
			// PreparedStatementの指定されたパラメータカラムに 指定された値を設定
			if ( "1".equals( inMsg.getString(EKK0321B509CBSMsg.FUNC_CODE) ) )
			{
				// 料金計算日を取得
				String prcCalcDay = JCHModelCommon.getEventYmd(inMsg, inMsg.getString(EKK0321B509CBSMsg.KEY_SEIKY_YM),
						JACStrConst.EVENT_CD_PRC_CALC_DAY).getString(CH0501ETMsg.EVENT_YMD);
				// 運用日付を取得
				String opeDate = JPCModelCommon.getOpeDate(inMsg, null);
				
				// パラメータの設定(料金計算日を指定)
				CAANJDBCUtil.setParam(pstmt, i++, prcCalcDay);
				
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				// パラメータの設定(ＫＥＹ＿請求契約番号を指定)
				CAANJDBCUtil.setParam(pstmt, i++, inMsg.getObject(EKK0321B509CBSMsg.KEY_SEIKY_KEI_NO));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				// パラメータの設定(ＫＥＹ＿請求契約番号を指定)
				CAANJDBCUtil.setParam(pstmt, i++, inMsg.getObject(EKK0321B509CBSMsg.KEY_SEIKY_KEI_NO));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				// パラメータの設定(ＫＥＹ＿請求契約番号を指定)
				CAANJDBCUtil.setParam(pstmt, i++, inMsg.getObject(EKK0321B509CBSMsg.KEY_SEIKY_KEI_NO));
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
				// パラメータの設定(運用日付を指定)
				CAANJDBCUtil.setParam(pstmt, i++, opeDate);
			}
			
			// ResultSetの取得
			rsltQuery = pstmt.executeQuery();
			
			// EKK0321B509CBSMsgの明細にセットする項目
			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");
				String sPAY_HOSHIKI_CD = rsltQuery.getString("PAY_HOSHIKI_CD");
				
				CAANMsg outMsg = new CAANMsg("eo.ejb.cbs.cbsmsg.EKK0321B509CBSMsg1List");
				
				// サービス契約番号の設定
				outMsg.set(EKK0321B509CBSMsg1List.SVC_KEI_NO, sSVC_KEI_NO);
				// 整理番号
				outMsg.set(EKK0321B509CBSMsg1List.SEIRI_NO, sSEIRI_NO);
				// マンションＩＤの設定
				if(sMANSION_ID != null){
					outMsg.set(EKK0321B509CBSMsg1List.MANSION_ID, sMANSION_ID);
				}
				else if(sCATID != null){
					outMsg.set(EKK0321B509CBSMsg1List.MANSION_ID, sCATID);
				}
				else if(sMSBSN_ANKEN_KNRI_NO != null){
					outMsg.set(EKK0321B509CBSMsg1List.MANSION_ID, sMSBSN_ANKEN_KNRI_NO);
				}
				// 部屋番号の設定
				if(sKAISEN_PLACE_ADRRM != null){
					outMsg.set(EKK0321B509CBSMsg1List.KAISEN_PLACE_ADRRM, sKAISEN_PLACE_ADRRM);
				}
				//支払方式コード設定
				if(sPAY_HOSHIKI_CD != null){
					outMsg.set(EKK0321B509CBSMsg1List.PAY_HOSHIKI_CD, sPAY_HOSHIKI_CD);
				}
				
				outList.add(outMsg);
			}
			
			CAANMsg[] outMsg1 = (CAANMsg[]) outList.toArray(new CAANMsg[0]);
			
			// inMsg(CBSMsg)に明細をセット
			inMsg.set("EKK0321B509CBSMsg1List", outMsg1);
			

		} catch(SQLException e) {
			inMsg.set(EKK0321B509CBSMsg.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(EKK0321B509CBSMsg.STATUS, StatusCodes.FIND_DB_ERR);
				throw new CAANRuntimeException(e);
			}
		}
	}
}
