/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatFUWebDataShukFileScidOut
*	ソースファイル名	：JBSbatFUWebDataShukFileScidOut.java
*	作成者				：富士通
*	作成日				：2012年06月29日
*＜機能概要＞
*　ＷＥＢデータ集計結果ファイル（画面ＩＤ）出力処理部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2012/06/29   富士通		新規作成
*	v4.00.00	2013/03/07   FJ)八坂	IT1-2013-0000523 障害対応
*********************************************************************/
package eo.business.service;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JCCbatDenshiFileUtil;
import eo.business.common.JFUBatCommon;
import eo.common.constant.JFUStrConst;
import eo.common.constant.JPCBatchMessageConstant;
import eo.common.util.JPCDateUtil;
import eo.framework.application.JBSbatBusinessException;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.file.JBSbatInputFileUtil;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.util.JBSbatBusinessFileUtil;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatFUWebDataShukFileScidOut extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(Ｗｅｂ申込受付実績)*/
	private static final String D_TBL_NAME_FU_T_WEB_MSKM_UK_JSK = "FU_T_WEB_MSKM_UK_JSK";

	/** テーブル(Ｗｅｂ申込集計結果)*/
	private static final String D_TBL_NAME_FU_T_WEBMK_SRLT = "FU_T_WEBMK_SRLT";

	/** テーブル(コード名称管理)*/
	private static final String D_TBL_NAME_ZM_M_CD_NM_KANRI = "ZM_M_CD_NM_KANRI";

	/** テーブル(ダウンロードファイル管理)*/
	private static final String D_TBL_NAME_ZM_T_DL_FILE_KANRI = "ZM_T_DL_FILE_KANRI";

	/** SQL定義キー(FU_SELECT_003)*/
	private static final String FU_T_WEB_MSKM_UK_JSK_FU_SELECT_003 = "FU_SELECT_003";

	/** SQL定義キー(FU_SELECT_002)*/
	private static final String FU_T_WEBMK_SRLT_FU_SELECT_002 = "FU_SELECT_002";

	/** SQL定義キー(FU_SELECT_001)*/
	private static final String ZM_M_CD_NM_KANRI_FU_SELECT_001 = "FU_SELECT_001";

	/** SQL定義キー(FU_SELECT_002)*/
	private static final String ZM_M_CD_NM_KANRI_FU_SELECT_002 = "FU_SELECT_002";

	/** SQL定義キー(FU_INSERT_001)*/
	private static final String ZM_T_DL_FILE_KANRI_FU_INSERT_001 = "FU_INSERT_001";

	/** SQL定義キー(FU_INSERT_001)*/
	private static final String ZM_T_DL_FILE_KANRI_FU_SELECT_001 = "FU_SELECT_001";

	/** テーブルアクセスクラス(Ｗｅｂ申込受付実績)*/
	private JBSbatSQLAccess db_FU_T_WEB_MSKM_UK_JSK = null;

	/** テーブルアクセスクラス(Ｗｅｂ申込集計結果)*/
	private JBSbatSQLAccess db_FU_T_WEBMK_SRLT = null;

	/** テーブルアクセスクラス(コード名称管理)*/
	private JBSbatSQLAccess db_ZM_M_CD_NM_KANRI = null;

	/** テーブルアクセスクラス(ダウンロードファイル管理)*/
	private JBSbatSQLAccess db_ZM_T_DL_FILE_KANRI = null;
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	/** メッセージキー*/
	private static final String EFUB0120AI = JPCBatchMessageConstant.EFUB0120AI;

	/** メッセージキー*/
	private static final String EFUB0170KE = JPCBatchMessageConstant.EFUB0170KE;

	/** 処理管理番号 */
	private static final String TRN_KANRI_NO = "000000000062";

	/** ファイルコード */
	private static final String S_FILE_CD = "FU01";

	/** タイムスタンプ置換用文字列*/
	private static final String FILE_NM_TIMESTAMP = "yyyymmddhhmmss";

	/** タイムスタンプ置換用文字列*/
	private static final String FILE_NM_DTM = "yyyymm";

	/** 出力ファイル名称*/
	private static final String OUT_FILE_NM = "ＷＥＢデータ集計結果ファイル（申込）";

	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_FU_T_WEB_MSKM_UK_JSK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_FU_T_WEB_MSKM_UK_JSK);
		db_FU_T_WEBMK_SRLT = new JBSbatSQLAccess(commonItem, D_TBL_NAME_FU_T_WEBMK_SRLT);
		db_ZM_M_CD_NM_KANRI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_ZM_M_CD_NM_KANRI);
		db_ZM_T_DL_FILE_KANRI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_ZM_T_DL_FILE_KANRI);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	@SuppressWarnings("unchecked")
	public JBSbatOutputItem execute() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		int iCdNmCnt = 0;			// コード名称管理取得件数

		// システム日付取得
		String strSysDateTimeStamp = JFUBatCommon.getSysDateTimeStamp();
		String strSysDate = strSysDateTimeStamp.substring(0, 8);

		// 処理対象日付取得用arraylist
		ArrayList<String> dateList = new ArrayList<String>();

		// FREEパラメータ取得
		String strFreeParam = commonItem.getFreeItem();
		String[] lines = strFreeParam.split(JFUStrConst.S_PARAM_DELIM);
		if(lines.length != 5)
		{
			throw new JBSbatBusinessException(EFUB0170KE, new String[] {strFreeParam});
		}
		// パラメータ取得
		String strFreeParam1 = lines[0];	// 起動パラメータ(1:定期起動、2:随時起動)
		String strFreeParam2 = lines[1];	// 1:定期起動用_出力対象ファイル(ファイルパス込み)
		String strFreeParam3 = lines[2];	// 1:定期起動用_出力対象ファイル
		String strFreeParam4 = lines[3];	// 2:随時起動用_出力対象ファイル(ファイルパス込み)
		String strFreeParam5 = lines[4];	// 2:随時起動用_出力対象ファイル

		// コード名称管理より、帳票出力用の文言の件数を取得する
		// コード名称管理取得件数格納用領域作成
		JBSbatCommonDBInterface cd_nm_cnt_map = null;
		JBSbatCommonDBInterface cd_nm_cnt_dbList = new JBSbatCommonDBInterface();

		cd_nm_cnt_dbList. setValue(JFUStrConst.S_CD_SBT_NM_CDxxx2);
		executeZM_M_CD_NM_KANRI_FU_SELECT_002(cd_nm_cnt_dbList.getList().toArray());
		cd_nm_cnt_map = db_ZM_M_CD_NM_KANRI.selectNext();

		// 取得できた要素数をカウントする(配列の大きさを確定)
		iCdNmCnt = Integer.parseInt(cd_nm_cnt_map.getString("CNT"));

		// 取得した要素数を元に配列を定義
		String[][] tyohyo_nm_map = new String[iCdNmCnt][2];

		// コード名称管理より、帳票出力用の日本語名を取得する
		// コード名称管理取得結果格納用領域作成
		JBSbatCommonDBInterface cd_nm_map = null;
		JBSbatCommonDBInterface cd_nm_dbList = new JBSbatCommonDBInterface();

		cd_nm_dbList. setValue(JFUStrConst.S_CD_SBT_NM_CDxxx2);
		executeZM_M_CD_NM_KANRI_FU_SELECT_001(cd_nm_dbList.getList().toArray());

		int iCnt = 0;
		for(cd_nm_map = db_ZM_M_CD_NM_KANRI.selectNext(); null != cd_nm_map; cd_nm_map = db_ZM_M_CD_NM_KANRI.selectNext())
		{
			tyohyo_nm_map[iCnt][0] = cd_nm_map.getString("CD_DIV");
			tyohyo_nm_map[iCnt][1] = cd_nm_map.getString("CD_DIV_NM");
			iCnt++;
		}

		// 2013/03/07 【IT1-2013-0000523 障害対応】
		String strFilePath = JFUBatCommon.getApplicationConst(JFUStrConst.FU_WEB_DATA_SHUK_CD_FILE_PATH);
		HashMap<String, String> webDataShukCdMap = new HashMap<String, String>();

		// WEBデータ集計コード定義ファイルパス
		JBSbatInputFileUtil inFile = null;

		try {

			inFile = new JBSbatInputFileUtil(strFilePath);
			inFile.setEncode("UTF-8"); // 文字コード
			inFile.createReader();

			while (true) {
				String line = inFile.readLine();
				if (line == null) {
					break;
				}
				String[] item = line.split(JFUStrConst.COMMA);
				webDataShukCdMap.put(item[0], item[1]);
			}

		} catch (IOException e) {
			// 例外処理
			throw new JBSbatBusinessException("EFUB0210KE",
					new String[] { strFilePath });
		} finally {
			if (null != inFile) {
				// ファイルオブジェクトをクローズ
				inFile.close();
			}

		}

		// 定期起動時の処理年月日(システム日付の前日)を取得
		String strTranYMD = JPCDateUtil.addDay(strSysDate, -1);

		// 随時起動か定期起動による処理分岐
		if(JFUStrConst.S_WEB_SHUK_KIDO_PARA_1.equals(strFreeParam1))
		{
			// 定期起動時はＷｅｂ申込受付実績より処理対象日のデータを抽出
			JBSbatCommonDBInterface dbList1 = new JBSbatCommonDBInterface();
			dbList1. setValue(strTranYMD);
			executeFU_T_WEB_MSKM_UK_JSK_FU_SELECT_003(dbList1.getList().toArray());

			// WEB申込受付実績SQL発行用領域作成
			JBSbatCommonDBInterface web_mskm_map = new JBSbatCommonDBInterface();

			// 取得した結果(処理対象日付)を取得結果レコードが読み終わるまで、ArrayListへ格納する。
			for(web_mskm_map = db_FU_T_WEB_MSKM_UK_JSK.selectNext(); null != web_mskm_map; web_mskm_map = db_FU_T_WEB_MSKM_UK_JSK.selectNext())
			{
				dateList.add(web_mskm_map.getString("SCREEN_DSP_YMD"));
			}
		}
		else
		{
			dateList.add(strSysDate);
		}

		// 処理対象日付取得用arraylistに存在する日付の分、ＷＥＢデータ集計結果ファイル（申込）ファイル出力及び電子ファイル管理登録処理を実行する
		int dateListCount = dateList.size();
		for(int i = 0; dateListCount > i; i++)
		{
			String strEndDay = "";			// 月末日格納用変数
			int intOutputCnt = 0;			// outputファイル件数

			String strFileNm = "";			// ダウンロード用ファイル名称
			String strFilePass = ""; 		// ファイルパス格納用
			String strEfileKanriNo = "";	// 電子ファイル管理番号
			String[] strEFileReturn = null;	// 電子ファイル管理登録後戻り値格納用

			// 出力ファイル生成オブジェクト初期化(随時起動or定期起動でファイル名が変更)
			if(JFUStrConst.S_WEB_SHUK_KIDO_PARA_1.equals(strFreeParam1))
			{
				strFileNm = strFreeParam3.replace(FILE_NM_DTM, dateList.get(i));
				strFilePass = strFreeParam2.replace(FILE_NM_DTM, dateList.get(i));
			}
			else
			{
				strFileNm = strFreeParam5.replace(FILE_NM_TIMESTAMP, strSysDateTimeStamp);
				strFilePass = strFreeParam4.replace(FILE_NM_TIMESTAMP, strSysDateTimeStamp);
			}
			JBSbatBusinessFileUtil obj1 = JFUBatCommon.createBusinessFileUtil(strFilePass, JFUStrConst.SJIS,
			JFUStrConst.S_LINE_SEPARAOR_LF, JFUStrConst.S_SEP_CAM);

			// ＷＥＢデータ集計結果ファイル（申込）レコード格納領域初期化
			ArrayList<String> webMskmFileList = new ArrayList();

			// ヘッダー部編集処理を実施
			ArrayList<String> webHeadFileList = new ArrayList();
			webHeadFileList.add(JFUStrConst.S_WEB_DATA_WORD_1);
			webHeadFileList.add(JFUStrConst.S_WEB_DATA_WORD_15);
			webHeadFileList.add(JFUStrConst.S_WEB_DATA_WORD_16);
			webHeadFileList.add(JFUStrConst.S_WEB_DATA_WORD_17);

			// ファイルへ、ヘッダー部を出力
			JFUBatCommon.printBusinessFileUtil(obj1, webHeadFileList);
			webHeadFileList.clear();

			// 処理対象日を設定し、Ｗｅｂ申込集計結果よりデータを取得(随時起動用と定期起動用で分岐)
			JBSbatCommonDBInterface dbList = new JBSbatCommonDBInterface();
			if(JFUStrConst.S_WEB_SHUK_KIDO_PARA_1.equals(strFreeParam1))
			{
				dbList.setValue(dateList.get(i) + JFUStrConst.S_FIRST_DAY); // 取得対象月の初日を設定
				if (!(strTranYMD.substring(0, 6)).equals(dateList.get(i)) && JFUStrConst.S_WEB_SHUK_KIDO_PARA_1.equals(strFreeParam1))
				{
					strEndDay = JFUBatCommon.addDay(JFUBatCommon.addMonth(dateList.get(i) + JFUStrConst.S_FIRST_DAY, 1), -1);
					// 取得対象月が今月以外の場合は対象月の末日を設定
					dbList.setValue(strEndDay);
				}
				else
				{
					dbList.setValue(strTranYMD);		// 取得対象月が今月の場合はシステム日付を設定
				}
			}
			else
			{
				dbList. setValue(dateList.get(i));
				dbList. setValue(dateList.get(i));
			}
			dbList. setValue(JFUStrConst.S_WEB_MSKM_SHUK_CD_3);
			executeFU_T_WEBMK_SRLT_FU_SELECT_002(dbList.getList().toArray());

			JBSbatCommonDBInterface dbMap = null;
			for(dbMap = db_FU_T_WEBMK_SRLT.selectNext(); null != dbMap; dbMap = db_FU_T_WEBMK_SRLT.selectNext())
			{
				// 2013/03/08 【IT1-2013-0000523 障害対応】
				webMskmFileList.add(dbMap.getString("SHUK_TG_MSKM_YMD"));								// 集計対象年月日
				if(webDataShukCdMap.containsKey(dbMap.getString("WEBMK_SHUK_TG_VALUE")))
				{
					webMskmFileList.add(webDataShukCdMap.get(dbMap.getString("WEBMK_SHUK_TG_VALUE")));	// 画面名称
				}
				else
				{
					webMskmFileList.add(dbMap.getString("WEBMK_SHUK_TG_VALUE"));						// 画面ID
				}
				webMskmFileList.add(dbMap.getString("WEBMK_SHUK_TG_VALUE"));							// 画面ID
				webMskmFileList.add(dbMap.getString("SCREEN_BETU_RDT_CNT"));							// 申込件数（ホーム電話）

				// ファイルへデータ部を出力
				JFUBatCommon.printBusinessFileUtil(obj1, webMskmFileList);
				webMskmFileList.clear();
				intOutputCnt++;
			}

			if (null != obj1)
			{
				// ファイルオブジェクトをクローズ
				JFUBatCommon.closeBusinessFileUtil(obj1);
			}

			// ファイル削除年月日の算出
			String strFileDelYMD = JPCDateUtil.addDay(strSysDate, JFUStrConst.S_WEB_DATA_BK_TIME);

			// ダウンロードファイル管理を検索し、同名ファイルが存在するか確認する。
			JBSbatCommonDBInterface dbList3 = new JBSbatCommonDBInterface();
			dbList3. setValue(strFileNm);
			executeZM_T_DL_FILE_KANRI_FU_SELECT_001(dbList3.getList().toArray());

			JBSbatCommonDBInterface dbmap3 = null;
			for(dbmap3 = db_ZM_T_DL_FILE_KANRI.selectNext(); null != dbmap3; dbmap3 = db_ZM_T_DL_FILE_KANRI.selectNext())
			{
				strEfileKanriNo = dbmap3.getString("EFILE_KANRI_NO");
				break;
			}

			// 取得結果が空の場合は電子ファイル管理にＷＥＢデータ集計結果ファイル（申込）を登録する
			if("".equals(strEfileKanriNo))
			{
				strEFileReturn = JCCbatDenshiFileUtil.createDenshiFile(commonItem, S_FILE_CD, strFilePass, strFileDelYMD);
			}
			// 取得結果が存在する場合は電子ファイル管理にＷＥＢデータ集計結果ファイル（申込）を更新する
			else
			{
				strEFileReturn = JCCbatDenshiFileUtil.updateDenshiFile(commonItem, strEfileKanriNo, strFilePass, strFileDelYMD);
			}

			// 電子ファイル管理番号取得
			String strEFileKanriNo = strEFileReturn[0];

			// 取得したデータをファイルとして出力し、ダウンロード管理テーブルへ登録
			String[] insertData = new String[7];
			insertData[0] = TRN_KANRI_NO;
			insertData[1] = strFileNm;
			insertData[2] = String.valueOf(intOutputCnt);
			insertData[3] = JFUBatCommon.getSysDateTimeStamp();
			insertData[4] = strFileDelYMD;
			insertData[5] = strEFileKanriNo;
			insertData[6] = strEFileReturn[1];
			executeZM_T_DL_FILE_KANRI_FU_INSERT_001(insertData);

			super.logPrint.printBusinessErrorLog(EFUB0120AI, new String[] { OUT_FILE_NM + strFileNm, String.valueOf(intOutputCnt) });
		}

		return null;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_FU_T_WEB_MSKM_UK_JSK.close();
		db_FU_T_WEBMK_SRLT.close();
		db_ZM_M_CD_NM_KANRI.close();
		db_ZM_T_DL_FILE_KANRI.close();
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/

	/**
	 * SQLKEY(FU_SELECT_003)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 *
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	画面表示年月日時分秒
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeFU_T_WEB_MSKM_UK_JSK_FU_SELECT_003(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_FU_T_WEB_MSKM_UK_JSK.selectBySqlDefine(paramList, FU_T_WEB_MSKM_UK_JSK_FU_SELECT_003);
	}

	/**
	 * SQLKEY(FU_SELECT_002)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 *
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	集計対象年月日
	 *		 	集計対象年月日
	 *		 	Web申込集計種別コード
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeFU_T_WEBMK_SRLT_FU_SELECT_002(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());

		// DBアクセスを実行します
		db_FU_T_WEBMK_SRLT.selectBySqlDefine(paramList, FU_T_WEBMK_SRLT_FU_SELECT_002);
	}

	/**
	 * SQLKEY(FU_SELECT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 *
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	コード種別コード
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeZM_M_CD_NM_KANRI_FU_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_ZM_M_CD_NM_KANRI.selectBySqlDefine(paramList, ZM_M_CD_NM_KANRI_FU_SELECT_001);
	}

	/**
	 * SQLKEY(FU_SELECT_002)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 *
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	コード種別コード
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeZM_M_CD_NM_KANRI_FU_SELECT_002(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_ZM_M_CD_NM_KANRI.selectBySqlDefine(paramList, ZM_M_CD_NM_KANRI_FU_SELECT_002);
	}

	/**
	 * SQLKEY(FU_INSERT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 *
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	処理管理番号
	 *		 	電子ファイル管理番号
	 *		 	件数
	 *		 	ファイル登録年月日時分秒
	 *		 	ファイル削除年月日
	 *		 	電子ファイル管理番号
	 *		 	世代登録年月日時分秒
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeZM_T_DL_FILE_KANRI_FU_INSERT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());

		// DBアクセスを実行します
		db_ZM_T_DL_FILE_KANRI.executeBySqlDefine(paramList, ZM_T_DL_FILE_KANRI_FU_INSERT_001);
	}

	/**
	 * SQLKEY(FU_SELECT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 *
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	コード種別コード
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeZM_T_DL_FILE_KANRI_FU_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_ZM_T_DL_FILE_KANRI.selectBySqlDefine(paramList, ZM_T_DL_FILE_KANRI_FU_SELECT_001);
	}
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
}
