/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatZMDlydSetWri
*	ソースファイル名	：JBSbatZMDlydSetWri.java
*	作成者				：富士通　
*	作成日				：2011年12月20日
*＜機能概要＞
*　セット割用ディレイド処理依頼登録部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v71.00.01	2024/04/26	 FJ)山岡	【ANK-4491-00-00】セット割補正機能の自動化対応
*********************************************************************/
package eo.business.service;

import java.util.HashMap;

import eo.business.common.JACbatDebugLogUtil;
import eo.business.common.JBSbatBusinessService;
import eo.business.common.JCCBatCommon;
import eo.common.constant.JACStrConst;
import eo.common.constant.JPCBatchMessageConstant;
import eo.common.util.JPCDateUtil;
import eo.framework.application.JBSbatBusinessException;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;
import eo.business.util.table.JBSbatCC_T_DLYD_TRN_REQ;
/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatZMDlydSetWri extends JBSbatBusinessService
{
	/** テーブル(電子ファイル管理)*/
	private static final String D_TBL_NAME_CC_T_EFILE_KANRII = "CC_T_EFILE_KANRI";
	/** テーブル(ディレイド処理依頼)*/
	private static final String D_TBL_NAME_ZM_T_DLYD_TRN_REQ = "CC_T_DLYD_TRN_REQ";
	/** テーブル(データ一括登録管理)*/
	private static final String D_TBL_NAME_ZM_T_DATAIKTTRK_KNRI = "ZM_T_DATAIKTTRK_KNRI";

	
	/** テーブルアクセスクラス(電子ファイル管理)*/
	private JBSbatSQLAccess db_CC_T_EFILE_KANRII = null;
	/** テーブルアクセスクラス(ディレイド処理依頼)*/
	private JBSbatSQLAccess db_CC_T_DLYD_TRN_REQ = null;
	/** テーブルアクセスクラス(データ一括登録管理)*/
	private JBSbatSQLAccess db_ZM_T_DATAIKTTRK_KNRI = null;

	// TODO 仮コードを設定↓↓↓
	/** ファイルコード */
	private static final String FILE_CD = "0000";
	// ↑↑↑↑↑↑↑↑↑↑↑↑↑
	
	/** ファイル絶対パス */
	private String filePath = null;
	
	/** データ件数*/
	private String dataCount = null;
	
	/** ダウンロード管理登録制御フラグ*/
	private String dlKnrFlg = null;
	
	/**運用日付*/
	private String bdate = null;
	
	/** ファイル保存月数*/
	private String fileSaveMonCnt = null;
	
	/** ファイル削除年月日*/
	private String fileDelYmd = null;
	
	/** 処理管理番号*/
	private String trnKanriNo = null;
	
	private String OpeId = "BATSQLDEF";
	
	/** ダウンロード管理登録制御フラグが"1"（登録）*/
	private static final String DLTOUROKU = "1";

	/** メッセージ用文字（ファイルパス） */
	private static final String MESSEGI_STR = "ファイルパス";
	
	/** シーケンス接頭辞（ファイル番号） */
	private static final String SEQ_PREFIX_SEQ_FILE_NOO = "";
	
	/** シーケンス桁数（ファイル番号） */
	private static final int SEQ_LEN_SEQ_FILE_NO = 12;



	/** SQL定義キー(AK_SELECT_001)*/
	private static final String CC_T_DLYD_TRN_REQ_AK_SELECT_001 = "AK_SELECT_001";
	/** SQL定義キー(KK_SELECT_002)*/
	private static final String ZM_T_DATAIKTTRK_KNRI_ZM_INSERT_001 = "ZM_INSERT_001";

	/*バッチ用ユーザID*/
	private String wkBatUser = null;
	
	/** テーブルアクセスクラス(ディレイド処理依頼)*/

	//ディレイド処理依頼ステータス 001(依頼中)
	private static final String DLYD_TRN_REQ_STAT_001 = "001";
	//ディレイド処理依頼ステータス 004(処理中)
	private static final String DLYD_TRN_REQ_STAT_004 = "004";
	
	//ディレイド処理依頼ステータス 003（処理エラー）
	private static final String DLYD_TRN_REQ_STAT_ERR = "003";

	private static final String DLYD_TRN_JSSI_UNYO_DTM = "00000000000000000";
	
	private static final String SYS_CD = "99";
	
	private static final String DLYD_TRN_REQ_SBT_CD = "ZM109";
	/** 処理依頼ジョブＩＤ */
	private static final String reqJob_Id = "EOP2Y0510J0";
	//処理方式フラグ 1：ディレイド処理
	private static final String TRN_HOSHIKI_FLG = "1";

	//処理ID　EO61W0110J0　（料金調整一括登録）
	private static final String shoriIraiId = "EO61W0110J0";
//	private static final String DLYD_TRN_REQ_STAT = null;

	
	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		//ディレイド処理依頼
		db_CC_T_DLYD_TRN_REQ = new JBSbatSQLAccess(commonItem, D_TBL_NAME_ZM_T_DLYD_TRN_REQ);
		//電子ファイル管理テーブル
		db_CC_T_EFILE_KANRII = new JBSbatSQLAccess(commonItem, D_TBL_NAME_CC_T_EFILE_KANRII);
		//データ一括登録管理
		db_ZM_T_DATAIKTTRK_KNRI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_ZM_T_DATAIKTTRK_KNRI);
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][initial]");
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][initial][opeDate=" + super.opeDate + "]");
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][initial][freeItem=" + super.freeItem + "]");
		
		// フリー項目を分割する
		String[] freeItem = super.freeItem.split(JACStrConst.FREE_DIV, -1);
		this.filePath = freeItem[0];
		this.trnKanriNo = freeItem[1];
		this.dataCount = freeItem[2];
		this.dlKnrFlg = freeItem[3];
		this.bdate    = freeItem[4];

		if(JACStrConst.KARA_MOJI.equals(this.filePath) || null == this.filePath)
		{
			// ファイルパス未存在エラー
			String[] msgParam = new String[] {MESSEGI_STR, JACStrConst.KARA_MOJI, JACStrConst.KARA_MOJI};
			// 業務エラーとして処理
			throw new JBSbatBusinessException(JPCBatchMessageConstant.EACB0430CE, msgParam);
		}
		assert this.filePath != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][initial][filePath = " + this.filePath + "]") : true;
		assert this.trnKanriNo != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][initial][trnKanriNo = " + this.trnKanriNo + "]") : true;
		assert this.dataCount != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][initial][dataCount = " + this.dataCount + "]") : true;
		assert this.dlKnrFlg != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][initial][dlKnrFlg = " + this.dlKnrFlg + "]") : true;
		
		assert this.fileSaveMonCnt != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][initial][fileSaveMonCnt = " + this.fileSaveMonCnt + "]") : true;
				
		// ファイル削除年月日の取得
		if(null != this.fileSaveMonCnt)
		{
			this.fileDelYmd = JPCDateUtil.addMonth(super.opeDate, Integer.valueOf(this.fileSaveMonCnt));
			assert this.fileDelYmd != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][initial][fileDelYmd = " + this.fileDelYmd + "]") : true;
		}

	}

	/**
	 * 主処理
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute() throws Exception
	{
				
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][execute]");
		
		// 電子ファイル管理
		String[] eFileInfo = new String[]{};
		try{
			
			// 電子ファイル管理スキーマ登録
			eFileInfo = JCCBatCommon.createDenshiFile(super.commonItem, FILE_CD, this.filePath, this.fileDelYmd);

		}catch(Exception ex){
			commonItem.getConnection().rollback();
			throw ex;
		}
		
		
		//ディレイド処理依頼スキーマ抽出
		executeCC_T_DLYD_TRN_REQ_AK_SELECT_001(new Object[] {shoriIraiId, DLYD_TRN_REQ_STAT_001, DLYD_TRN_REQ_STAT_004});
		JBSbatCommonDBInterface record = db_CC_T_DLYD_TRN_REQ.selectNext();

		// ディレイド処理依頼番号を採番する。
		String seqDlydTrnReqNo = JCCBatCommon.getFormatedNextSeq(commonItem, "SEQ_DLYD_TRN_REQ_NO", "D", 14);

		if(record != null){
			//料金調整一括登録処理のレコードがある場合
			//業務エラー

			String[] paramValue = this.createCcTDlydTrnReqErr(seqDlydTrnReqNo, eFileInfo);
			this.executeCC_T_DLYD_TRN_REQ_PKINSERT(paramValue);
			
			//警告エラー（マイナーアラーム発生） 
			super.commonItem.setErrFlg(true); 
			// ログを出力
			commonItem.getLogPrint().printBusinessErrorLog(JPCBatchMessageConstant.EAKB0350CW ); 
			
		}else{
		
			//ディレイド処理依頼スキーマ登録
			try
			{	
				// ディレイド処理依頼登録処理
				String[] paramValue = this.createCcTDlydTrnReq(seqDlydTrnReqNo, eFileInfo);
				this.executeCC_T_DLYD_TRN_REQ_PKINSERT(paramValue);
			}
			catch (Exception ex)
			{
				commonItem.getConnection().rollback();
				throw ex;
			}
		}
		
		//データ一括登録管理スキーマ登録処理
		try{

			// データ一括登録管理スキーマ登録処理
			insZmDIKttrkKanri(seqDlydTrnReqNo,eFileInfo);

		}catch(Exception ex)
		{
			commonItem.getConnection().rollback();
			throw ex;

		}
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][execute]");
		return null;
	}

	
	/**
	 * ディレイド処理依頼情報登録(業務エラー)文字配列を作成します。<br>
	 * <br>
	 * @param seqDlydTrnReqNo ディレイド処理依頼番号
	 * @param retDenshiFile 電子ファイル管理情報
	 * @return 登録用文字配列
	 */
	private String[] createCcTDlydTrnReqErr(String seqDlydTrnReqNo, String[] retDenshiFile)
	{
		String[] strParam = new String[24];

		// ディレイド処理依頼番号
		strParam[0] = seqDlydTrnReqNo;

		// ディレイド処理依頼ステータス
		strParam[1] = DLYD_TRN_REQ_STAT_ERR;

		// ディレイド処理実施運用年月日時分秒
		strParam[2] = DLYD_TRN_JSSI_UNYO_DTM;

		// 入力電子ファイル世代登録年月日時分秒
		strParam[3] = retDenshiFile[1];

		// 入力電子ファイル管理番号
		strParam[4] = retDenshiFile[0];

		// 依頼ジョブID
		strParam[5] = shoriIraiId;

		// システムコード
		strParam[6] = SYS_CD;

		// ディレイド処理依頼種別コード
		strParam[7] = DLYD_TRN_REQ_SBT_CD;

		// ディレイド処理結果コード
		strParam[8] = "2";

		// エラー電子ファイル管理番号
		strParam[9] = null;

		// エラー電子ファイル世代登録年月日時分秒
		strParam[10] = null;
		
		return strParam;
	}
	
	/**
	 * ディレイド処理依頼情報登録(登録)文字配列を作成します。<br>
	 * <br>
	 * @param seqDlydTrnReqNo ディレイド処理依頼番号
	 * @param retDenshiFile 電子ファイル管理情報
	 * @return 登録用文字配列
	 */
	private String[] createCcTDlydTrnReq(String seqDlydTrnReqNo, String[] retDenshiFile)
	{
		String[] strParam = new String[24];

		// ディレイド処理依頼番号
		strParam[0] = seqDlydTrnReqNo;

		// ディレイド処理依頼ステータス
		strParam[1] = DLYD_TRN_REQ_STAT_001;

		// ディレイド処理実施運用年月日時分秒
		strParam[2] = DLYD_TRN_JSSI_UNYO_DTM;

		// 入力電子ファイル世代登録年月日時分秒
		strParam[3] = retDenshiFile[1];

		// 入力電子ファイル管理番号
		strParam[4] = retDenshiFile[0];

		// 依頼ジョブID
		strParam[5] = this.shoriIraiId;

		// システムコード
		strParam[6] = SYS_CD;

		// ディレイド処理依頼種別コード
		strParam[7] = DLYD_TRN_REQ_SBT_CD;

		// ディレイド処理結果コード
		strParam[8] = null;

		// エラー電子ファイル管理番号
		strParam[9] = null;

		// エラー電子ファイル世代登録年月日時分秒
		strParam[10] = null;
		
		return strParam;
	}
	
	
	
	/**
	 * ディレイド処理依頼登録処理
	 * 
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	ディレイド処理依頼番号				DLYD_TRN_REQ_NO
	 *		 	ディレイド処理依頼ステータス				DLYD_TRN_REQ_STAT
	 *		 	ディレイド処理実施運用年月日時分秒				DLYD_TRN_JSSI_UNYO_DTM
	 *		 	入力電子ファイル世代登録年月日時分秒				INPUT_EFILE_GENE_ADD_DTM
	 *		 	入力電子ファイル管理番号				INPUT_EFILE_KANRI_NO
	 *		 	依頼ジョブＩＤ				REQ_JOB_ID
	 *		 	システムコード				SYS_CD
	 *		 	ディレイド処理依頼種別コード				DLYD_TRN_REQ_SBT_CD
	 *		 	ディレイド処理結果コード				DLYD_TRN_RSLT_CD
	 *		 	エラー電子ファイル管理番号				ERR_EFILE_KANRI_NO
	 *		 	エラー電子ファイル世代登録年月日時分秒				ERR_EFILE_GENE_ADD_DTM
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 *		 	登録運用年月日				ADD_UNYO_YMD
	 *		 	登録処理ＩＤ				ADD_TRN_ID
	 *		 	更新運用年月日				UPD_UNYO_YMD
	 *		 	更新処理ＩＤ				UPD_TRN_ID
	 *		 	削除運用年月日				DEL_UNYO_YMD
	 *		 	削除処理ＩＤ				DEL_TRN_ID
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */

	private void executeCC_T_DLYD_TRN_REQ_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("DLYD_TRN_REQ_NO", setParam[0]);
		setMap.setValue("DLYD_TRN_REQ_STAT", setParam[1]);
		setMap.setValue("DLYD_TRN_JSSI_UNYO_DTM", setParam[2]);
		setMap.setValue("INPUT_EFILE_GENE_ADD_DTM", setParam[3]);
		setMap.setValue("INPUT_EFILE_KANRI_NO", setParam[4]);
		setMap.setValue("REQ_JOB_ID", setParam[5]);
		setMap.setValue("SYS_CD", setParam[6]);
		setMap.setValue("DLYD_TRN_REQ_SBT_CD", setParam[7]);
		setMap.setValue("DLYD_TRN_RSLT_CD", setParam[8]);
		setMap.setValue("ERR_EFILE_KANRI_NO", setParam[9]);
		setMap.setValue("ERR_EFILE_GENE_ADD_DTM", setParam[10]);
		setMap.setValue("ADD_DTM", setParam[11]);
		setMap.setValue("ADD_OPEACNT", this.wkBatUser);
		setMap.setValue("UPD_DTM", setParam[13]);
		setMap.setValue("UPD_OPEACNT", setParam[14]);
		setMap.setValue("DEL_DTM", setParam[15]);
		setMap.setValue("DEL_OPEACNT", setParam[16]);
		setMap.setValue("MK_FLG", setParam[17]);
		setMap.setValue("ADD_UNYO_YMD", setParam[18]);
		setMap.setValue("ADD_TRN_ID", setParam[19]);
		setMap.setValue("UPD_UNYO_YMD", setParam[20]);
		setMap.setValue("UPD_TRN_ID", setParam[21]);
		setMap.setValue("DEL_UNYO_YMD", setParam[22]);
		setMap.setValue("DEL_TRN_ID", setParam[23]);
	
		// DBアクセスを実行します
		db_CC_T_DLYD_TRN_REQ.insertByPrimaryKeys(setMap);
				
	}

	/**
	 * ディレイド処理依頼スキーマ抽出
	 * 
	 * @param 依頼ジョブID
	 *
	 * @return JBSbatCommonDBInterface 検索の結果。
	 *  @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeCC_T_DLYD_TRN_REQ_AK_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		
		// DBアクセスを実行します
		db_CC_T_DLYD_TRN_REQ.selectBySqlDefine(paramList, CC_T_DLYD_TRN_REQ_AK_SELECT_001);
	}
	
	
	/**
	 * ダウンロードファイル管理スキーマに登録します。
	 * 
	 * @param eFileInfo 電子ファイル管理情報
	 * @throws Exception 業務サービス内で発生した例外全般
	 */
	private void insZmDIKttrkKanri(String seqDlydTrnReqNo,String[] eFileInfo) throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][insZmDIKttrkKanri]");

		JBSbatCommonDBInterface param = new JBSbatCommonDBInterface();
		
		//1.データ一括登録管理番号
		param.setValue(JCCBatCommon.getFormatedNextSeq(super.commonItem, JACStrConst.SEQ_FILE_NO, SEQ_PREFIX_SEQ_FILE_NOO, SEQ_LEN_SEQ_FILE_NO));
		//  2.ディレイド処理依頼番号
		param.setValue(seqDlydTrnReqNo);
		//  3.電子ファイル管理番号
		param.setValue(eFileInfo[0]);
		//4.処理依頼年月日時分
		param.setValue(eFileInfo[1].substring(0, 12));
		//5.処理方式フラグ
		param.setValue(TRN_HOSHIKI_FLG);
		//6.処理管理番号
		param.setValue("000000000021");
		//7.ファイル名
		String[] fileName = this.filePath.split(JACStrConst.SLASH, -1);
		param.setValue(fileName[fileName.length - 1]);
		//8.処理依頼者オペレータアカウント
		param.setValue("319245");
		//9.バッチパラメータ
		param.setValue("20991231");
		//10.ファイル削除年月日
		param.setValue(null);
		//11.登録年月日時分秒
		param.setValue(eFileInfo[1]);
		//12.登録オペレータアカウント
		param.setValue(OpeId);
		//13.更新年月日時分秒
		param.setValue(eFileInfo[1]);
		// 12.更新オペレータアカウント
		param.setValue(OpeId);
		// 13.削除年月日時分秒
		param.setValue(null);
		// 14.削除オペレータアカウント
		param.setValue(null);
		// 15.無効フラグ
		param.setValue("0");
		//16.登録運用年月日
		param.setValue(eFileInfo[1]);
		//17.登録処理ID
		param.setValue(reqJob_Id);
		//18.更新運用年月日
		param.setValue(eFileInfo[1]);
		//19.更新処理ID
		param.setValue(reqJob_Id);		
		//20.削除運用年月日
		param.setValue(null);
		//21.削除処理ID
		param.setValue(null);
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][insZmDIKttrkKanri][param = " + param.getList().toString() + "]");

		// SQL実行
		executeZM_T_DATAIKTTRK_KNRI_ZM_INSERT_001(param.getList().toArray());

		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][insZmDIKttrkKanri]");
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
		// DBアクセスクラスをクローズします
		db_CC_T_DLYD_TRN_REQ.close();
		db_CC_T_EFILE_KANRII.close();
		db_ZM_T_DATAIKTTRK_KNRI.close();
		
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][terminal]");
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][terminal]");

	}

	
	/** 
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	ファイル番号				FILE_NO
	 *		 	処理管理番号				TRN_KANRI_NO
	 *		 	電子ファイル管理番号				EFILE_KANRI_NO
	 *		 	ファイル名				FILE_NM
	 *		 	ファイルサイズ				FILE_SIZE
	 *		 	データ件数				DATA_CNT
	 *		 	ファイル登録年月日時分秒				FILE_ADD_DTM
	 *		 	ファイル削除年月日				FILE_DEL_YMD
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeZM_T_DATAIKTTRK_KNRI_ZM_INSERT_001(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("DATAIKTTRK_KNRI_NO",setParam[0]);
		setMap.setValue("DLYD_TRN_REQ_NO",setParam[1]);
		setMap.setValue("EFILE_KANRI_NO",setParam[2]);
		setMap.setValue("TRN_REQ_DTM",setParam[3]);
		setMap.setValue("TRN_HOSHIKI_FLG",setParam[4]);
		setMap.setValue("TRN_KANRI_NO",setParam[5]);
		setMap.setValue("FILE_NM",setParam[6]);
		setMap.setValue("TRN_IRAISHA_OPEACNT",setParam[7]);
		setMap.setValue("BAT_PARAMETER",setParam[8]);
		setMap.setValue("FILE_DEL_YMD",setParam[9]);
		setMap.setValue("ADD_DTM",setParam[10]);
		setMap.setValue("ADD_OPEACNT",setParam[11]);
		setMap.setValue("UPD_DTM",setParam[12]);
		setMap.setValue("UPD_OPEACNT",setParam[13]);
		setMap.setValue("DEL_DTM",setParam[14]);
		setMap.setValue("DEL_OPEACNT",setParam[15]);
		setMap.setValue("MK_FLG",setParam[16]);
		setMap.setValue("ADD_UNYO_YMD",setParam[17]);
		setMap.setValue("ADD_TRN_ID",setParam[18]);
		setMap.setValue("UPD_UNYO_YMD",setParam[19]);
		setMap.setValue("UPD_TRN_ID",setParam[20]);
		setMap.setValue("DEL_UNYO_YMD",setParam[21]);
		setMap.setValue("DEL_TRN_ID",setParam[22]);

		// DBアクセスを実行します
		db_ZM_T_DATAIKTTRK_KNRI.insertByPrimaryKeys(setMap);
	}
	
}
