/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatCHPrcReAdjListMake
*	ソースファイル名	：JBSbatCHPrcReAdjListMake.java
*	作成者				：富士通　
*	作成日				：2011年11月11日
*＜機能概要＞
*　料金再調整リスト作成部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2011/11/11   富士通		新規作成
*	v3.00		2012/06/15   FJ)永田	【ANK-0024-04-00】	
*	v3.01.00	2012/08/28   FJ)成田	【TG1-2012-0000145】パラメータ取得部品の共通化、それに伴う不要な初期化削除、クローズ処理を追加。
*	v4.00.00	2012/11/01   FJ)加島	督促番号が空文字の場合、空文字を返却。
*	v4.01.00	2012/11/20   FJ)加島	ＤＢ未存在エラー[ECHB0270CH]を[ECHB0240CW]に変更
*	v4.01.00	2013/02/15   FJ)黒木	【KT1-2013-0000188】
*	v4.02.00	2013/03/05   FJ)狭間	【ST4-2013-0000163】水平展開。
*	v5.00.00	2013/07/23   FJ)小柴	【LT-2013-0000610】料金項目出力名称マスタからデータが取得できない場合に、エラーとせず処理を続行するように修正
*	v5.01.00	2013/07/29   FJ)前田	【IT1-2013-0001466】記事の項目に改行が存在する場合改行を削除
*	v5.02.00	2013/08/23   FJ)小柴	【OM-2013-0000727】料金対応記録からのデータ取得条件を修正
*	v5.03.00	2013/09/02   FJ)後藤	【OM-2013-0001137】区分編集方法修正
*	v8.00.00	2014/01/22	 FJ)伊藤	【ANK-1794-00-00】請求書電話番号表示対応
*	v9.00.00	2014/04/18	 FJ)小掠	【ANK-2054-00-00】端末補償対応。
*	v9.00.01	2014/04/29	 FJ)安井	【IT1-2014-0000169】利用期間先頭の"*"を" "に変更
*															端末名称を全角変換するよう修正
*															料金内訳名の最大桁数を30に変更
*															項番のカウントアップを改ページキーごとに行うよう修正
*															料金項目出力名称の金額表示カラム数が"0"の場合金額表示しないよう修正
*	v9.00.02	2014/06/24	 FJ)早崎	【OM-2014-0002068・IT1-2014-0000215】
*															部屋番号取得処理の削除
*															契約者名取得の条件分岐を修正
*	v9.00.03	2014/07/01	FJ)早崎		【IT1-2014-0000215】出力項目「ID番号」「料金内訳名」の設定値を修正
*	v16.00.00	2015/06/04	FJ)酒井		【ANK-2480-00-00】新電力対応
*	v36.00.00	2018/01/22	 FJ) 森		【ANK-3296-00-00】	標準工事費
*															出力対象外の処理を追加
*															埋込み項目コード"6"を追加
*															調整前金額、調整後金額、調整差額の処理を修正
*	v71.00.00   2024/04/04  FJ）久山	【ANK-4468-00-00】eo光ネット「シンプルプラン」追加対応
*********************************************************************/
package eo.business.service;

import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;

import eo.business.common.JACBatCommon;
import eo.business.common.JACbatDebugLogUtil;
import eo.business.common.JACbatParamUtil;
import eo.business.common.JBSbatBusinessService;
import eo.business.common.JCHbatSeikyKaknoBusinessUtil;
import eo.business.common.JACbatSchdlUtil;
import eo.business.util.file.JBSbatCHIFE056;
import eo.business.util.file.JBSbatCHIFM054;
import eo.business.util.file.JBSbatCHIFM104;
import eo.business.util.table.JBSbatCH_M_PRC_KMK_CS_CHGE;
import eo.business.util.table.JBSbatCH_M_PRC_KMK_OPUT_NM;
import eo.business.util.table.JBSbatCH_T_PRC_TAIOKRK;
import eo.business.util.table.JBSbatCH_T_SEIKY_UCWK;
import eo.business.util.table.JBSbatCK_T_CUST;
import eo.business.util.table.JBSbatKK_T_KAISEN_TG_SVKEI;
import eo.business.util.table.JBSbatKK_T_SVC_KEI;
import eo.business.util.table.JBSbatKK_T_SVKEI_KAISEN_UW;
import eo.business.util.table.JBSbatKK_T_KKTK_SVC_KEI;
import eo.business.util.table.JBSbatZM_M_TKMDL_KNRN_INFO;
import eo.business.util.table.JBSbatZM_M_USER;
import eo.common.constant.JACStrConst;
import eo.common.constant.JKKStrConst;
import eo.common.constant.JPCBatchMessageConstant;
import eo.common.util.JCHCommonFormatUtil;
import eo.common.util.JPCUtilCommon;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatServiceInterfaceMap;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatCHPrcReAdjListMake extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(ユーザー)*/
	private static final String D_TBL_NAME_ZM_M_USER = "ZM_M_USER";

	/** テーブル(料金対応記録)*/
	private static final String D_TBL_NAME_CH_T_PRC_TAIOKRK = "CH_T_PRC_TAIOKRK";

	/** テーブル(料金項目出力名称)*/
	private static final String D_TBL_NAME_CH_M_PRC_KMK_OPUT_NM = "CH_M_PRC_KMK_OPUT_NM";

	/** テーブル(料金項目抽出変換)*/
	private static final String D_TBL_NAME_CH_M_PRC_KMK_CS_CHGE = "CH_M_PRC_KMK_CS_CHGE";

	/** テーブル(請求内訳)*/
	private static final String D_TBL_NAME_CH_T_SEIKY_UCWK = "CH_T_SEIKY_UCWK";

	/** テーブル(回線対象サービス契約)*/
	private static final String D_TBL_NAME_KK_T_KAISEN_TG_SVKEI = "KK_T_KAISEN_TG_SVKEI";

	/** テーブル(サービス契約)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI = "KK_T_SVC_KEI";

	/** テーブル(機器提供サービス契約)*/
	private static final String D_TBL_NAME_KK_T_KKTK_SVC_KEI = "KK_T_KKTK_SVC_KEI";

	/** SQL定義キー(CH_SELECT_001)*/
	private static final String ZM_M_USER_CH_SELECT_001 = "CH_SELECT_001";

	/** SQL定義キー(CH_SELECT_004)*/
	private static final String CH_T_PRC_TAIOKRK_CH_SELECT_004 = "CH_SELECT_004";

	/** SQL定義キー(CH_SELECT_001)*/
	private static final String CH_M_PRC_KMK_OPUT_NM_CH_SELECT_001 = "CH_SELECT_001";

	/** SQL定義キー(CH_SELECT_004)*/
	private static final String CH_M_PRC_KMK_CS_CHGE_CH_SELECT_004 = "CH_SELECT_004";

	/** SQL定義キー(CH_SELECT_013)*/
	private static final String CH_T_SEIKY_UCWK_CH_SELECT_013 = "CH_SELECT_013";

	/** SQL定義キー(CH_SELECT_001)*/
	private static final String KK_T_KAISEN_TG_SVKEI_CH_SELECT_001 = "CH_SELECT_001";

	/** SQL定義キー(CH_SELECT_005)*/
	private static final String KK_T_SVC_KEI_CH_SELECT_005 = "CH_SELECT_005";

	/** SQL定義キー(CH_SELECT_001)*/
	private static final String KK_T_KKTK_SVC_KEI_CH_SELECT_001 = "CH_SELECT_001";

	/** テーブルアクセスクラス(ユーザー)*/
	private JBSbatSQLAccess db_ZM_M_USER = null;

	/** テーブルアクセスクラス(料金対応記録)*/
	private JBSbatSQLAccess db_CH_T_PRC_TAIOKRK = null;

	/** テーブルアクセスクラス(料金項目出力名称)*/
	private JBSbatSQLAccess db_CH_M_PRC_KMK_OPUT_NM = null;

	/** テーブルアクセスクラス(料金項目抽出変換)*/
	private JBSbatSQLAccess db_CH_M_PRC_KMK_CS_CHGE = null;

	/** テーブルアクセスクラス(請求内訳)*/
	private JBSbatSQLAccess db_CH_T_SEIKY_UCWK = null;

	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI = null;

	/** テーブルアクセスクラス(機器提供サービス契約)*/
	private JBSbatSQLAccess db_KK_T_KKTK_SVC_KEI = null;
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	
	/** 空白パディング（4桁） */
	private static final int 	SPACE_PAD_4 	= 4;
	
	/** 編集用文字列：変更 */
	private static final String 	CHNGE 			= "変更";
	
	/** 編集用文字列：追加 */
	private static final String 	ADD 			= "追加";
	
	/** 編集用文字列：削除 */
	private static final String 	DELETE 			= "削除";
	
	/** 編集用文字列：変更残 */
	private static final String 	CHNGE_ZAN 		= "変更残";
	
	/** 編集用文字列：追加残 */
	private static final String 	ADD_ZAN 		= "追加残";
	
	/** 編集用文字列：削除残 */
	private static final String 	DELETE_ZAN 		= "削除残";
	
	/** 編集用 文字数制限値（８） */
	private static final int 	MOJISUU_8 		= 8;
	
	/** 編集用 文字数制限値（４０） */
	private static final int 	MOJISUU_20 		= 20;
	
//IT1-2014-0000169 MOD STA
//	/** 編集用 文字数制限値（２５） */
//	private static final int 	MOJISUU_25 		= 25;
	/** 編集用 文字数制限値（３０） */
	private static final int 	MOJISUU_30 		= 30;
//IT1-2014-0000169 MOD END
	
	/** 編集用 文字数制限値（１４０） */
	private static final int 	MOJISUU_140 	= 140;
	
	/** 編集用 分 */
	private static final String 	CHAR_MIN 		= "分";

	/** 編集用 MB */
	private static final String 	CHAR_MB 		= "MB";

// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
	/** 編集用 回 */
	private static final String 	CHAR_KAI 		= "回";
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
	
	/** 時分秒書式(HHmmss) */
	private static final String 	FMT_HMS 		= "HHmmss";

	/** 時分秒編集書式(HH:mm:ss)  */
	private static final String 	EDIT_HMS 		= "HH:mm:ss";
	
	/** 固定値：-1 */
	private static final BigDecimal MINUS_ONE 	= new BigDecimal("-1");
	
	/** パラメータ取得部品 */
	private JACbatParamUtil paramUtil = null;
	
	/** 項番 */
	private int 		workSeqNo 		= 0;
	
	/** 退避．ＩＤ番号 */
	private String 	befSaveIdNo 	= null;
	
	/** 調整前料金項目 */
	private String 	adjBf 			= null;
	
	/** 部屋番号付加文字 */
	private String 	rmNoDsp 		= null;
	
	/** 部屋番号桁数 */
	private String 	rmNoLen 		= null;
	
	/** 退避.追加行作成用金額 */
	private String addLineAmnt 		= null;
	
	/** 料金項目抽出変換マップ */
	private HashMap<String, JBSbatCommonDBInterface> prcKmkCsChgeMap 	= null;
	
	/** 料金項目出力名称マップ */
	private HashMap<String, HashMap<String, String>> prcKmkOutNmMap 	= null;
	
	/** 当月月末 */
	private String	tmpMonEndDay	= null;
	
	/** 機器製造番号 */
	private String	kikiSeizoNo	= null;
	
	/** 通知書用宅内機器型式名 */
	private String	kikiKatasikiNm	= null;
//IT1-2014-0000169 ADD STA
	/** 前レコード改ページキー */
	private String 	bkKaiPageKey	= null;
//IT1-2014-0000169 ADD END

	/** 未入居明細用サービス契約番号 */
	private String miNyukyoDtlSvcKeiNo = null;
	
	/** 未入居明細用契約者名 */
	private String miNyukyoDtlKeiNm = null;
	
	/** オーナー用料金グループコードリスト */
	private ArrayList<String> ornerGroupCdList = null;
	
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
	/** 料金項目コード（出力対象外）セット */
	private HashSet<String> prcKmkCsChgeNoOutputMap = null;
	
	/** 退避．業務機能識別コード（通信料＿数量） */
	private String wKinoSkbtTsusinA = null;
	
	/** 退避．業務機能識別コード（訂正通信量＿数量） */
	private String wKinoSkbtTseTsusinA = null;
	
	/** 退避．業務機能識別コード（標準工事費＿回数） */
	private String wKinoSkbtKjHiKai = null;
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
	
	
	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_ZM_M_USER = new JBSbatSQLAccess(commonItem, D_TBL_NAME_ZM_M_USER);
		db_CH_T_PRC_TAIOKRK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_CH_T_PRC_TAIOKRK);
		db_CH_M_PRC_KMK_OPUT_NM = new JBSbatSQLAccess(commonItem, D_TBL_NAME_CH_M_PRC_KMK_OPUT_NM);
		db_CH_M_PRC_KMK_CS_CHGE = new JBSbatSQLAccess(commonItem, D_TBL_NAME_CH_M_PRC_KMK_CS_CHGE);
		db_CH_T_SEIKY_UCWK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_CH_T_SEIKY_UCWK);
		db_KK_T_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
		db_KK_T_KKTK_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KKTK_SVC_KEI);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
		
		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 + "]");
		
		// パラメータ取得部品の初期化
		paramUtil = new JACbatParamUtil(commonItem);
		
		// 業務パラメータ取得
		getGyoumuParameter();
		
		// 料金項目抽出変換マップ作成
		makePrcKmkCsChgeMap();
		
		// 料金項目出力名称マップ作成
		makePrcKmkOutNmMap();
		
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
		// 料金項目コード（出力対象外）セットを初期化
		prcKmkCsChgeNoOutputMap = new HashSet<String>();
		
		// 料金項目コード（出力対象外）セット作成
		makePrcKmkCsChgeNoOutputMap(wKinoSkbtTsusinA);
		makePrcKmkCsChgeNoOutputMap(wKinoSkbtTseTsusinA);
		makePrcKmkCsChgeNoOutputMap(wKinoSkbtKjHiKai);
		
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
		paramUtil.close();
		
		// 料金スケジュール定義アクセス部品初期処理
		JACbatSchdlUtil schdlUtil 	= new JACbatSchdlUtil(commonItem);
		
		// 請求年月を取得する
		String seikyYm = schdlUtil.getBillDate(super.opeDate, JACStrConst.EVENT_CD_RYOKIN_KEISAN_YMD);
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "バッチ運用日" + super.opeDate + "から取得した請求年月：" + seikyYm);
		
		// 月初日、月末日を取得する		
		// 月初日[0] 月末日[1]		
		String[] ymd 		= schdlUtil.getUseStrEnd(seikyYm, JACStrConst.EVENT_CD_USE_STAYMD, JACStrConst.EVENT_CD_USE_ENDYMD);
		//this.tmpMonStaDay 	= ymd[0];	
		this.tmpMonEndDay 	= ymd[1];	
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][initial]");
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][execute]");
		assert inMap != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][execute][inMap = " + inMap.getMap().toString() + "]") : true;

		// 操作者名取得
		String userName = getUserNm(inMap);

		// 記事取得
		String kiji = getKiji(inMap);
		
//IT1-2014-0000169 MOD STA
//		// 項番カウントアップ
//		this.workSeqNo++;
		// 改ページキー
		String KaiPageKey = makeKaiPageKeyValue(inMap);
		// 改ページキーが変わった場合
		if(!KaiPageKey.equals(bkKaiPageKey))
		{
			// 項番カウントアップ
			this.workSeqNo++;
			// 改ページキー更新
			bkKaiPageKey = KaiPageKey;
		}
//IT1-2014-0000169 MOD END
		
		//料金再調整リスト作成
		JBSbatOutputItem outputItem = makePrcReAdjList(inMap, userName, kiji);
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][execute][workSeqNo=" + this.workSeqNo + "]");
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][execute]");
		
		return outputItem;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_ZM_M_USER.close();
		db_CH_T_PRC_TAIOKRK.close();
		db_CH_M_PRC_KMK_OPUT_NM.close();
		db_CH_M_PRC_KMK_CS_CHGE.close();
		db_CH_T_SEIKY_UCWK.close();
		db_KK_T_SVC_KEI.close();
		db_KK_T_KKTK_SVC_KEI.close();
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][terminal]");
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][terminal]");
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/

	/**
	 * SQLKEY(CH_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_USER_CH_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_ZM_M_USER.selectBySqlDefine(paramList, ZM_M_USER_CH_SELECT_001);
	}

	/**
	 * SQLKEY(CH_SELECT_004)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	請求契約番号
	 *		 	料金対応記録種別コード
	 *		 	料金対応記録種別詳細コード
	 *		 	対応年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeCH_T_PRC_TAIOKRK_CH_SELECT_004(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());

		// DBアクセスを実行します
		db_CH_T_PRC_TAIOKRK.selectBySqlDefine(paramList, CH_T_PRC_TAIOKRK_CH_SELECT_004);
	}

	/**
	 * SQLKEY(CH_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 executeCH_M_PRC_KMK_OPUT_NM_CH_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_CH_M_PRC_KMK_OPUT_NM.selectBySqlDefine(paramList, CH_M_PRC_KMK_OPUT_NM_CH_SELECT_001);
	}

	/**
	 * SQLKEY(CH_SELECT_004)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	料金項目抽出変換．システムコード
	 *		 	料金項目抽出変換．業務機能識別コード
	 *		 	料金項目抽出変換．抽出変換コード
	 *		 	料金項目抽出変換．適用開始年月日
	 *		 	料金項目抽出変換．適用終了年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeCH_M_PRC_KMK_CS_CHGE_CH_SELECT_004(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());

		// DBアクセスを実行します
		db_CH_M_PRC_KMK_CS_CHGE.selectBySqlDefine(paramList, CH_M_PRC_KMK_CS_CHGE_CH_SELECT_004);
	}

	/**
	 * SQLKEY(CH_SELECT_013)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	請求番号
	 *		 	請求契約番号
	 *		 	請求年月
	 *		 	整理番号
	 *		 	サービス契約番号
	 *		 	料金グループコード
	 *		 	料金コースコード
	 *		 	料金サービスコード
	 *		 	料金項目コード
	 *		 	合算請求年月
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeCH_T_SEIKY_UCWK_CH_SELECT_013(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());
		paramList.setValue(param[7].toString());
		paramList.setValue(param[8].toString());
		paramList.setValue(param[9].toString());

		// DBアクセスを実行します
		db_CH_T_SEIKY_UCWK.selectBySqlDefine(paramList, CH_T_SEIKY_UCWK_CH_SELECT_013);
	}

	
	/**
	 * SQLKEY(CH_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 executeKK_T_KKTK_SVC_KEI_CH_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());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());

		// DBアクセスを実行します
		db_KK_T_KKTK_SVC_KEI.selectBySqlDefine(paramList, KK_T_KKTK_SVC_KEI_CH_SELECT_001);
	}

	/**
	 * SQLKEY(CH_SELECT_005)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適用年月日
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_CH_SELECT_005(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_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_CH_SELECT_005);
	}
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
	
	/**
	 * 業務パラメータ取得
	 * @throws Exception
	 */
	private void getGyoumuParameter() throws Exception
	{
		// 料金調整対象料金項目
		this.adjBf 					= paramUtil.getGyoumuParameter(JACStrConst.WKPRA_CH_WKS_TEISE_PSB_PRC);
		
		// 部屋番号付加文字
		this.rmNoDsp 		= paramUtil.getGyoumuParameter(JACStrConst.WKPARA_CH_RM_NO_DSP);
		
		// 部屋番号桁数
		this.rmNoLen 		= paramUtil.getGyoumuParameter(JACStrConst.WKPARA_CH_RM_NO_LEN);
		
		// 未入居明細用サービス契約番号
		this.miNyukyoDtlSvcKeiNo	= paramUtil.getGyoumuParameter(JACStrConst.WKPAR_AC_MINYUKYO_SVCKEINO);
		
		// 未入居明細用契約者名
		this.miNyukyoDtlKeiNm		= paramUtil.getGyoumuParameter(JACStrConst.WKPAR_CH_MINYUKYO_KEI_NM);
		
		
		// オーナー用料金グループコード
		this.ornerGroupCdList = new ArrayList<String>();
		String[] groupCdCubic = paramUtil.getGyoumuParameter(JACStrConst.WKPARA_AC_OWNR_PRC_GRP_CD).split(JACStrConst.COMMA);
		for(String groupCd : groupCdCubic)
		{
			this.ornerGroupCdList.add(groupCd);
		}
		
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
		// 業務機能識別コード（通信料＿数量）
		this.wKinoSkbtTsusinA = paramUtil.getGyoumuParameter(JACStrConst.WKPRA_CH_WKS_TSUSIN_A);
		
		// 業務機能識別コード（訂正通信量＿数量）
		this.wKinoSkbtTseTsusinA = paramUtil.getGyoumuParameter(JACStrConst.WKPRA_CH_WKS_TS_TSUSIN_A);
		
		// 業務機能識別コード（標準工事費＿回数）
		this.wKinoSkbtKjHiKai = paramUtil.getGyoumuParameter(JACStrConst.WKPRA_CH_WKS_KJ_HI_KAI);
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
	}

	/**
	 * 料金項目抽出変換マップ作成
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void makePrcKmkCsChgeMap() throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][makePrcKmkCsChgeMap]");

		JBSbatCommonDBInterface param = new JBSbatCommonDBInterface();
		// 検索条件設定
		param.setValue(super.systemCode); 				// システムコード
		param.setValue(this.adjBf); 					// 業務機能識別コード
		param.setValue(JACStrConst.CHSHT_CHG_CD_CST); 	// 抽出変換コード
		param.setValue(super.opeDate); 					// 適用開始年月日
		param.setValue(super.opeDate); 					// 適用終了年月日
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcKmkCsChgeMap][param = " + param.getList().toString() + "]");

		// SQL実行
		executeCH_M_PRC_KMK_CS_CHGE_CH_SELECT_004(param.getList().toArray());
		JBSbatCommonDBInterface dbMap = db_CH_M_PRC_KMK_CS_CHGE.selectNext();
		
		// 料金項目抽出変換マップを初期化
		prcKmkCsChgeMap = new HashMap<String, JBSbatCommonDBInterface>();
		
		// 取得結果がある限り処理を継続
		// 該当データなしの場合
		if (dbMap == null)
		{
			// DB未存在エラー
			String[] msgParam = new String[]
			{
				JBSbatCH_M_PRC_KMK_CS_CHGE.TABLE_NAME, param.getList().toString()
			};
			// 業務エラーとして処理
			super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.ECHB0240CW, msgParam);
		}
		// 正常終了した場合
		else
		{
			// マップ格納用キー
			StringBuffer mapKey = null;
			while(dbMap != null)
			{
				// キー作成
				mapKey = new StringBuffer();
				mapKey.append(dbMap.getString(JBSbatCH_M_PRC_KMK_CS_CHGE.PRC_GRP_CD)); 	// 料金グループコード
				mapKey.append(dbMap.getString(JBSbatCH_M_PRC_KMK_CS_CHGE.PCRS_CD)); 		// 料金コースコード
				mapKey.append(dbMap.getString(JBSbatCH_M_PRC_KMK_CS_CHGE.PRC_SVC_CD)); 	// 料金サービスコード
				mapKey.append(dbMap.getString(JBSbatCH_M_PRC_KMK_CS_CHGE.PRC_KMK_CD)); 	// 料金項目コード
				// 取得結果を料金項目抽出変換マップに退避
				prcKmkCsChgeMap.put(mapKey.toString(), dbMap);
				
				dbMap = db_CH_M_PRC_KMK_CS_CHGE.selectNext();
			}
		}
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][makePrcKmkCsChgeMap]");
	}

	/**
	 * 料金項目出力名称マップ作成
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void makePrcKmkOutNmMap() throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][makePrcKmkOutNmMap]");

		JBSbatCommonDBInterface param = new JBSbatCommonDBInterface();
		// 検索条件設定
		param.setValue(JACStrConst.PRC_KMK_NM_SBT_CD_PRC_KMK); 	// 料金項目名称種別コード
		param.setValue(super.opeDate); 							// 適用開始年月日
		param.setValue(super.opeDate); 							// 適用終了年月日
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcKmkOutNmMap][param = " + param.getList().toString() + "]");

		// SQL実行
		executeCH_M_PRC_KMK_OPUT_NM_CH_SELECT_001(param.getList().toArray());
		JBSbatCommonDBInterface dbMap = db_CH_M_PRC_KMK_OPUT_NM.selectNext();

		// マップを初期化
		this.prcKmkOutNmMap = new HashMap<String, HashMap<String, String>>();
		
		// 該当データなしの場合
		if (dbMap == null)
		{
			// DB未存在エラー
			String[] msgParam = new String[]
			{
				JBSbatCH_M_PRC_KMK_OPUT_NM.TABLE_NAME, param.getList().toString()
			};
			// 業務エラーとして処理
			super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.ECHB0240CW, msgParam);
		}
		// 正常終了した場合
		else
		{
			// マップ格納用キー
			String mapKey = null;
			// 料金項目出力名称情報マップ
			HashMap<String, String> prcKmkOutNmInfoMap = null;
			
			// 取得結果がある限り処理を継続
			while(dbMap != null)
			{
				// キー作成
				// 料金グループコード ＋ 料金コースコード ＋ 料金サービスコード ＋ 料金項目コード
				mapKey = makeStr(dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_GRP_CD),
									dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.PCRS_CD),
									dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_SVC_CD),
									dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_KMK_CD));
				// 情報マップ作成
				prcKmkOutNmInfoMap = new HashMap<String, String>();
				prcKmkOutNmInfoMap = makePrcKmkNmInfo(dbMap);
				
				// 取得結果を料金項目抽出変換マップに退避
				this.prcKmkOutNmMap.put(mapKey, prcKmkOutNmInfoMap);
				
				dbMap = db_CH_M_PRC_KMK_OPUT_NM.selectNext();
			}
		}
		assert dbMap != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcKmkOutNmMap][dbMap = " + dbMap + "]") : true;
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][makePrcKmkOutNmMap]");
	}

// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
	/**
	 * 料金項目抽出変換マップ作成（業務機能識別コードを入力）
	 * @param arg 業務機能識別コード
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void makePrcKmkCsChgeNoOutputMap(String arg) throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][makePrcKmkCsChgeNoOutputMap]");

		JBSbatCommonDBInterface param = new JBSbatCommonDBInterface();
		// 検索条件設定
		param.setValue(super.systemCode); 				// システムコード
		param.setValue(arg); 							// 業務機能識別コード
		param.setValue(JACStrConst.CHSHT_CHG_CD_CST); 	// 抽出変換コード
		param.setValue(super.opeDate); 					// 適用開始年月日
		param.setValue(super.opeDate); 					// 適用終了年月日
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcKmkCsChgeNoOutputMap][param = " + param.getList().toString() + "]");

		// SQL実行
		executeCH_M_PRC_KMK_CS_CHGE_CH_SELECT_004(param.getList().toArray());
		JBSbatCommonDBInterface dbMap = db_CH_M_PRC_KMK_CS_CHGE.selectNext();
		
		// 取得結果がある限り処理を継続
		// 該当データなしの場合
		if (dbMap == null)
		{
			// DB未存在エラー
			String[] msgParam = new String[]
			{
				JBSbatCH_M_PRC_KMK_CS_CHGE.TABLE_NAME, param.getList().toString()
			};
			// 業務エラーとして処理
			super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.ECHB0240CW, msgParam);
		}
		// 正常終了した場合
		else
		{
			while(dbMap != null)
			{
				// 取得結果を料金項目コード（出力対象外）セットに退避
				prcKmkCsChgeNoOutputMap.add(dbMap.getString(JBSbatCH_M_PRC_KMK_CS_CHGE.PRC_KMK_CD));
				
				dbMap = db_CH_M_PRC_KMK_CS_CHGE.selectNext();
			}
		}
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][makePrcKmkCsChgeNoOutputMap]");
	}
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
	
	/**
	 * 情報マップ作成
	 * @param  dbMap   検索結果
	 * @return infoMap 料金項目出力名称情報マップ
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private HashMap<String, String> makePrcKmkNmInfo(JBSbatCommonDBInterface dbMap) throws Exception
	{
		HashMap<String, String> infoMap = new HashMap<String, String>();
		// 料金項目名称
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_KMK_NM, 					dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_KMK_NM));
		// 埋込み項目コード
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD, 				dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD));
		// 埋込み料金グループコード
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_GRP_CD, 			dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_GRP_CD));
		// 料金グループコード
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_GRP_CD, 					dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_GRP_CD));
		// 埋込み料金コースコード
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PCRS_CD, 				dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PCRS_CD));
		// 埋込み料金サービスコード
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_SVC_CD, 			dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_SVC_CD));
		// 埋込み料金項目コード
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_KMK_CD, 			dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_KMK_CD));
		// 埋込み料金名称文字付加コード
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_NM_MOJI_HUKA_CD, 	dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_NM_MOJI_HUKA_CD));
		// 表示順
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.DSP_JUN, 					dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.DSP_JUN));
		// インデント数
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.INDENT_CNT, 					dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.INDENT_CNT));
		// 請求書NO欄表示制御フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.SKS_NO_RAN_DSP_CTRL_FLG, 	dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.SKS_NO_RAN_DSP_CTRL_FLG));
		// サービス契約番号表示制御フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.SVKEI_NO_DSP_CTRL_FLG, 		dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.SVKEI_NO_DSP_CTRL_FLG));
		// 請求契約番号表示制御フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.SEIKY_KEI_NO_DSP_CTRL_FLG, 	dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.SEIKY_KEI_NO_DSP_CTRL_FLG));
		// 整理番号表示制御フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.SEIRI_NO_DSP_CTRL_FLG, 		dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.SEIRI_NO_DSP_CTRL_FLG));
		// マンションID表示制御フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.MANS_ID_DSP_CTRL_FLG, 		dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.MANS_ID_DSP_CTRL_FLG));
		// 部屋番号表示制御フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.ADRRM_DSP_CTRL_FLG, 			dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.ADRRM_DSP_CTRL_FLG));
		// 利用期間表示制御フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.USE_PRD_DSP_CTRL_FLG, 		dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.USE_PRD_DSP_CTRL_FLG));
		// 料金コード表示制御フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_CD_DSP_CTRL_FLG, 		dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_CD_DSP_CTRL_FLG));
		// 金額表示カラム数
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT, 			dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT));
		// 金額編集パターンコード
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_HENSHU_PTN_CD, 			dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_HENSHU_PTN_CD));
		// 税区分表示フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.TAX_DIV_DSP_FLG, 			dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.TAX_DIV_DSP_FLG));
		// コメント表示フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.COMMENT_DSP_FLG, 			dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.COMMENT_DSP_FLG));
		// 0円明細表示制御フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.N_0_YEN_DTL_DSP_CTRL_FLG, 	dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.N_0_YEN_DTL_DSP_CTRL_FLG));
		// 空行挿入フラグ
		infoMap.put(JBSbatCH_M_PRC_KMK_OPUT_NM.KUGYO_INS_FLG, 				dbMap.getString(JBSbatCH_M_PRC_KMK_OPUT_NM.KUGYO_INS_FLG));

		return infoMap;
	}

	/**
	 * ユーザー情報を取得します。
	 * 
	 * @param inMap 料金再調整情報
	 * @return JBSbatCommonDBInterface ユーザー情報
	 * @throws Exception 業務サービス内で発生した例外全般
	 */
	private String getUserNm(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][getUserNm]");
		
		JBSbatCommonDBInterface param = new JBSbatCommonDBInterface();
		
		// 料金再調整情報.一時金更新ユーザーＩＤ
		param.setValue(inMap.get(JBSbatCHIFM104.ICJKN_UPD_USER_ID));
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getUserNm][param = " + param.getList().toString() + "]");
		
		// SQL実行
		executeZM_M_USER_CH_SELECT_001(param.getList().toArray());
		JBSbatCommonDBInterface outputInfo = db_ZM_M_USER.selectNext();
		
		if (outputInfo == null)
		{
			// DB未存在エラー
			String[] msgParam = new String[]
			{
				JBSbatZM_M_USER.TABLE_NAME, param.getList().toString()
			};
			// 業務エラーとして処理
			super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.ECHB0240CW, msgParam);

			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][getUserNm]");
			return JACStrConst.KARA_MOJI;
		}
		
		assert outputInfo != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getUserNm][outputInfo = " + outputInfo + "]") : true;
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][getUserNm]");
		
		return outputInfo.getString(JBSbatZM_M_USER.USER_NM);
	}

	/**
	 * 料金対応記録情報を取得します。
	 * @param inMap 料金再調整情報
	 * @return JBSbatCommonDBInterface 料金対応記録情報
	 * @throws Exception 業務サービス内で発生した例外全般
	 */
	private String getKiji(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][getKiji]");

		JBSbatCommonDBInterface param = new JBSbatCommonDBInterface();
		
		// 料金再調整情報.請求契約番号
		param.setValue(inMap.get(JBSbatCHIFM104.SEIKY_KEI_NO));
		// 料金対応記録種別コード:料金調整
		param.setValue(JACStrConst.TKRK_SBT_PRC_ADJ);
		// 料金対応記録種別詳細コード:請求額調整
		param.setValue(JACStrConst.TKRK_SBTD_SEIKY_AMNT_ADJ);
		// 料金対応記録種別詳細コード:請求削除
		param.setValue(JACStrConst.TKRK_SBTD_SEIKY_DEL);
		// 対応年月日:一時金更新年月日時分秒
		String icjknDtm = inMap.getString(JBSbatCHIFM104.ICJKN_UPD_DTM);
		
		// NullPointer対策：一時金更新年月日時分秒が取得できない場合は空文字にする
		if (icjknDtm == null)
		{
			icjknDtm = JACStrConst.KARA_MOJI;
		}
		
		// 9文字以上持っている場合は8文字でカットする
		if (icjknDtm.length() > 8)
		{
			icjknDtm = icjknDtm.substring(0, 8);
		}
		
		param.setValue(icjknDtm.concat("%"));
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getKiji][param = " + param.getList().toString() + "]");

		// SQL実行
		executeCH_T_PRC_TAIOKRK_CH_SELECT_004(param.getList().toArray());
		JBSbatCommonDBInterface outputInfo = db_CH_T_PRC_TAIOKRK.selectNext();
		
		if (outputInfo == null)
		{
			// DB未存在エラー
			String[] msgParam = new String[]
			{
				JBSbatCH_T_PRC_TAIOKRK.TABLE_NAME, param.getList().toString()
			};
			// 業務エラーとして処理
			super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.ECHB0240CW, msgParam);
			
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][getKiji]");
			return JACStrConst.KARA_MOJI;
		}

		assert outputInfo != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getKiji][outputInfo = " + outputInfo + "]") : true;
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][getKiji]");
		
		return kaigyoDel(outputInfo.getString(JBSbatCH_T_PRC_TAIOKRK.KIJI));
	}

	/**
	 * 料金再調整リスト情報を作成します。
	 * @param inMap        入力情報
	 * @param userName     操作者名
	 * @param seikyKeiKana 請求先名（カナ）
	 * @param kiji         記事
	 * @param tkskStat     督促ステータス
	 * @return outputItem  出力情報
	 * @throws Exception   業務サービス内で発生した例外全般
	 */
	private JBSbatOutputItem makePrcReAdjList(JBSbatServiceInterfaceMap inMap,
			String userName, String kiji) throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][makePrcReAdjList]");
		assert inMap != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][makePrcReAdjList][inMap=" + inMap.getMap().toString() + "]") :true;
		assert userName != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][makePrcReAdjList][userName=" + userName + "]") :true;
		assert kiji != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][makePrcReAdjList][kiji=" + kiji + "]") :true;
		
		// 機器製造番号
		this.kikiSeizoNo = JACStrConst.KARA_MOJI;
		// 通知書用宅内機器型式名
		this.kikiKatasikiNm = JACStrConst.KARA_MOJI;
		
		//ANK-4468-00-00 ADD START
		//料金グループ計編集フラグ ＝ "1"（あり）の場合
		if(JACStrConst.PRC_GRP_KEI_HENSYU_FLG_TRGT.equals(inMap.getString(JBSbatCHIFM104.PRC_GRP_KEI_HENSYU_FLG)))
		{
			//シンプルプランの料金項目コードをセットする
			inMap.set(JBSbatCHIFM104.PRC_KMK_CD, JACStrConst.SIMPLE_PLAN_PRC_KMK_CD);		
		}
		//ANK-4468-00-00 ADD END
		
		// 料金項目出力名称検索キー
		// 料金グループコード ＋ 料金コースコード ＋ 料金サービスコード ＋ 料金項目コード
		String searchKey = makeStr(inMap.getString(JBSbatCHIFM104.PRC_GRP_CD),
									inMap.getString(JBSbatCHIFM104.PCRS_CD),
									inMap.getString(JBSbatCHIFM104.PRC_SVC_CD),
									inMap.getString(JBSbatCHIFM104.PRC_KMK_CD));
		
		// 退避.料金項目出力情報マップ
		HashMap<String, String> thPrcKmkOutNmInfoMap = null;
		
		String thRmNo 			= null; // 退避.部屋番号
		String thKeiNm 			= null; // 退避.契約者名
		String thChgKbn 		= null; // 退避.変更区分
		String thUsePrd 		= null; // 退避.利用期間
		String thPrcKmkOutNm 	= null; // 退避.料金項目出力名称
		String thIndent 		= null; // 退避.インデント
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList]["+ inMap.getString(JBSbatCHIFM104.PRC_GRP_CD) + "]");
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList]["+ inMap.getString(JBSbatCHIFM104.PCRS_CD) + "]");
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList]["+ inMap.getString(JBSbatCHIFM104.PRC_SVC_CD) + "]");
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList]["+ inMap.getString(JBSbatCHIFM104.PRC_KMK_CD) + "]");
		
		// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
		// 入力．料金項目コードが料金項目コード（出力対象外）セットに存在する場合
		if(this.prcKmkCsChgeNoOutputMap.contains(inMap.getString(JBSbatCHIFM104.PRC_KMK_CD)))
		{
			return null;
		}
		// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
		
		// 料金項目出力名称マップに検索キーに該当するデータが存在する場合
		if(this.prcKmkOutNmMap.containsKey(searchKey))
		{
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList][料金項目出力名称マップに検索キーに該当するデータが存在する]");
			// 退避.料金項目出力情報マップ
			thPrcKmkOutNmInfoMap = new HashMap<String, String>();
			
			// 退避.料金項目出力情報マップに情報を退避
			thPrcKmkOutNmInfoMap = this.prcKmkOutNmMap.get(searchKey);
			
			// 部屋番号取得
			thRmNo 		= inMap.getString(JBSbatCHIFM104.ROOM_NO);
			
			// 部屋番号を取得している場合
			if(thRmNo != null && !JACStrConst.KARA_MOJI.equals(thRmNo))
			{
				// 出力用の部屋番号に置換する
				if(thRmNo.equals("ZZZZZ"))
				{
					thRmNo = "00000";
				}
				
				// 半角全角変換
				thRmNo = JCHbatSeikyKaknoBusinessUtil.formatHanToZen(thRmNo, JACStrConst.HAN_TO_ZEN_CHR);
				// 全角空白文字充填
				thRmNo = JPCUtilCommon.fillSpace(thRmNo, Integer.parseInt(this.rmNoLen), true);
				// 退避.部屋番号付加文字＋部屋番号
				thRmNo = makeStr(this.rmNoDsp, thRmNo);
			}
			
			// 部屋番号表示制御フラグ＝"1"(表示)の場合
			if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.ADRRM_DSP_CTRL_FLG).equals(JACStrConst.ADRRM_DSP_CTRL_FLG_DSP))
			{
				assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList][部屋番号表示制御フラグ＝1]");
				
				// 契約者名（初期値：退避．未入居明細用契約者名）
				thKeiNm = this.miNyukyoDtlKeiNm;
				
				// 入力．サービス契約番号　≠　未入居明細用サービス契約番号の場合
				if(!this.miNyukyoDtlSvcKeiNo.equals(inMap.getString(JBSbatCHIFM104.SVC_KEI_NO)))
				{
					// お客様名取得
					thKeiNm = getKeiNm(inMap.getString(JBSbatCHIFM104.SVC_KEI_NO));
				}
			}

			// 利用期間表示制御フラグ＝"1"(表示)の場合
			if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.USE_PRD_DSP_CTRL_FLG).equals(JACStrConst.USE_PRD_DSP_CTRL_FLG_ON))
			{
				assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList][利用期間表示制御フラグ＝1]");
//IT1-2014-0000169 MOD STA
//				// 利用開始年月日≠空文字　かつ　利用終了年月日≠空文字
//				if(!inMap.getString(JBSbatCHIFM104.USE_STAYMD).equals(JACStrConst.KARA_MOJI)
//						&& !inMap.getString(JBSbatCHIFM104.USE_ENDYMD).equals(JACStrConst.KARA_MOJI))
//				{
//					// 変更区分に"*"を格納
//					thChgKbn = JACStrConst.ASTERISK;
//				}
//				else
//				{
//					// 変更区分に" "(半角空白)を格納
//					thChgKbn = JACStrConst.SPACE_1;
//				}
				// 変更区分に" "(半角空白)を格納
				thChgKbn = JACStrConst.SPACE_1;
//IT1-2014-0000169 MOD END
				// 利用期間を設定
				// 変更区分 ＋ 利用開始年月日 ＋ "-" ＋ 利用終了年月日
				thUsePrd = makeStr(thChgKbn, inMap.getString(JBSbatCHIFM104.USE_STAYMD), JACStrConst.HYPHEN, inMap.getString(JBSbatCHIFM104.USE_ENDYMD));
			}

			// インデント数
			thIndent = JPCUtilCommon.fillSpace(JACStrConst.FULL_SPACE_1,
					Integer.parseInt(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.INDENT_CNT)),
					true);
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList][インデント数=" + thIndent + "]");
			
			// 埋込み項目コード="4"(端末名称・製造番号)の場合機器製造番号、通知書用宅内機器型式名を取得しておく
			if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_SVC_DTL_SKBT_NO_TNAME_SIZO_NO))
			{
				getKikiNm(inMap, thPrcKmkOutNmInfoMap);
				
				// 料金項目出力名称＋インデント
//IT1-2014-0000169 MOD STA
//				this.kikiKatasikiNm = makeStr(thIndent, this.kikiKatasikiNm);
				this.kikiKatasikiNm = makeStr(thIndent, JCHbatSeikyKaknoBusinessUtil.formatHanToZen(this.kikiKatasikiNm , JACStrConst.HAN_TO_ZEN_CHR));
//IT1-2014-0000169 MOD END
			}
			
			// 料金項目出力名称
			thPrcKmkOutNm = getPrcKmkOutNm(inMap, thPrcKmkOutNmInfoMap);
			// 料金項目出力名称＋インデント
			thPrcKmkOutNm = makeStr(thIndent, thPrcKmkOutNm);
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList][料金項目出力名称＋インデント=" + thPrcKmkOutNm + "]");
		}

		// 各項目設定
		String pcrsCd 		= JACStrConst.KARA_MOJI; // 料金コースコード
		String prcSvcCd 	= JACStrConst.KARA_MOJI; // 料金サービスコード
		String prcKmkCd 	= JACStrConst.KARA_MOJI; // 料金項目コード
		String adjDiv 		= JACStrConst.KARA_MOJI; // 調整区分
		String adjBfAmnt 	= JACStrConst.KARA_MOJI; // 調整前金額
		String adjAfAmnt 	= JACStrConst.KARA_MOJI; // 調整後金額
		String adjSagaku 	= JACStrConst.KARA_MOJI; // 調整差額
		String prcUcwkNm 	= null; 			// 料金内訳名

		// 料金項目抽出変換マップに検索キーに該当するデータが存在する場合
		if(this.prcKmkCsChgeMap.containsKey(searchKey))
		{
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList][料金項目抽出変換マップに検索キーに該当するデータが存在する場合]");
			pcrsCd 		= inMap.getString(JBSbatCHIFM104.PCRS_CD); 		// 料金コースコード
			prcSvcCd 	= inMap.getString(JBSbatCHIFM104.PRC_SVC_CD); 	// 料金サービスコード
			prcKmkCd 	= inMap.getString(JBSbatCHIFM104.PRC_KMK_CD); 	// 料金項目コード
		}
		// 部屋番号表示制御フラグ＝"1"
		if(thPrcKmkOutNmInfoMap != null && thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.ADRRM_DSP_CTRL_FLG).equals(JACStrConst.ADRRM_DSP_CTRL_FLG_DSP))
		{
			// 料金内訳名に部屋番号＋ "　"(全角空白1桁) ＋契約者名を設定
			prcUcwkNm = makeStr(thRmNo, JACStrConst.FULL_SPACE_1, thKeiNm);
		}
		else
		{
			// 料金内訳名に料金項目出力名称を設定
			prcUcwkNm = thPrcKmkOutNm;
		}
		
//IT1-2014-0000169 MOD STA
		// 対処区分＝"1"(追加)
		if(inMap.getString(JBSbatCHIFM104.TAISYO_DIV).equals(JACStrConst.UPD_DIV_ADD))
		{
			if(inMap.getString(JBSbatCHIFM104.TRKM_ZAN_FLG).equals(JACStrConst.UM_ARI))
			{
				// 調整区分に追加残を設定
				adjDiv = ADD_ZAN;
			}
			else
			{
				// 調整区分に追加を設定
				adjDiv = ADD;
			}
		}
		// 対処区分＝"2"(変更)
		else if(inMap.getString(JBSbatCHIFM104.TAISYO_DIV).equals(JACStrConst.UPD_DIV_ADJ))
		{
			if(inMap.getString(JBSbatCHIFM104.TRKM_ZAN_FLG).equals(JACStrConst.UM_ARI))
			{
				// 調整区分に変更残を設定
				adjDiv = CHNGE_ZAN;
			}
			else
			{
				// 調整区分に変更を設定
				adjDiv = CHNGE;
			}
		}
		// 対処区分＝"3"(削除)
		else if(inMap.getString(JBSbatCHIFM104.TAISYO_DIV).equals(JACStrConst.UPD_DIV_DEL))
		{
			if(inMap.getString(JBSbatCHIFM104.TRKM_ZAN_FLG).equals(JACStrConst.UM_ARI))
			{
				// 調整区分に削除残を設定
				adjDiv = DELETE_ZAN;
			}
			else
			{
				// 調整区分に削除を設定
				adjDiv = DELETE;
			}
		}
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
		// 料金項目出力名称情報マップ.金額表示カラム数≠"0"(金額表示なし以外の場合)または埋込み項目コード="2"(埋込み料金項目を全角に置き換える)の場合
		//if(thPrcKmkOutNmInfoMap != null && (!thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT).equals(JACStrConst.AMNT_DSP_COLUM_CNT_ZERO)
		//	|| thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL)))
		//{
		
		if(thPrcKmkOutNmInfoMap != null)
		{
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
			// 対処区分＝"0"(対応なし)
			if(inMap.getString(JBSbatCHIFM104.TAISYO_DIV).equals(JACStrConst.TAISYO_DIV_NON))
			{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
				// 料金項目出力名称情報マップ.金額表示カラム数≠"0"(金額表示なし以外)の場合
				if(! JACStrConst.AMNT_DSP_COLUM_CNT_ZERO.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT)))
				{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
					// 調整前金額に金額を数値書式編集して設定
					adjBfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.AMNT));
					
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
					// 調整後金額に金額を数値書式編集して設定
					adjAfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.AMNT));
					
				}
				// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)
				//if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL))
				
				// 料金項目出力名称情報マップ.金額表示カラム数="0"(金額表示なし)、かつ埋込み項目コード="2"(埋込み料金項目を全角に置き換える)の場合
				if(JACStrConst.AMNT_DSP_COLUM_CNT_ZERO.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT))
						&& JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
				{
					// 金額＋埋込み料金名称文字付加コード
					adjBfAmnt = makeStr(adjBfAmnt, CHAR_MB);
					// 金額＋埋込み料金名称文字付加コード
					adjAfAmnt = makeStr(adjAfAmnt, CHAR_MB);
				}
			}
			// 対処区分＝"1"(追加)
			else if(inMap.getString(JBSbatCHIFM104.TAISYO_DIV).equals(JACStrConst.UPD_DIV_ADD))
			{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
				// 料金項目出力名称情報マップ.金額表示カラム数≠"0"(金額表示なし以外)の場合
				if(! JACStrConst.AMNT_DSP_COLUM_CNT_ZERO.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT)))
				{
					// 調整後金額に調整済金額を数値書式編集して設定
					adjAfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.ADJ_ZM_AMNT));
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
					// 調整差額に調整金額を数値書式編集して設定
					adjSagaku = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.ADJ_AMNT));
				}
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
				//if(!inMap.getString(JBSbatCHIFM104.TRKM_ZAN_FLG).equals(JACStrConst.UM_ARI))
				//{
				//	// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)
				//	if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL))
				//	{
				//		// 金額＋埋込み料金名称文字付加コード
				//		adjSagaku = makeStr(adjSagaku, CHAR_MB);
				//	}
				//}
				
				// 調整後金額に調整済金額を数値書式編集して設定
				//adjAfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.ADJ_ZM_AMNT));
				
				
				// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)
				//if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL))
				
				// 料金項目出力名称情報マップ.金額表示カラム数="0"(金額表示なし)、かつ埋込み項目コード="2"(埋込み料金項目を全角に置き換える)の場合
				if(JACStrConst.AMNT_DSP_COLUM_CNT_ZERO.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT))
						&& JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
					{
					// 金額＋埋込み料金名称文字付加コード
					adjAfAmnt = makeStr(adjAfAmnt, CHAR_MB);
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
					// 金額＋埋込み料金名称文字付加コード
					adjSagaku = makeStr(adjSagaku, CHAR_MB);
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
				}
			}
			// 対処区分＝"2"(変更)
			else if(inMap.getString(JBSbatCHIFM104.TAISYO_DIV).equals(JACStrConst.UPD_DIV_ADJ))
			{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
				// 料金項目出力名称情報マップ.金額表示カラム数≠"0"(金額表示なし以外)の場合
				if(! JACStrConst.AMNT_DSP_COLUM_CNT_ZERO.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT)))
				{
					// 調整前金額に金額を数値書式編集して設定
					adjBfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.AMNT));
					// 調整後金額に調整済金額を数値書式編集して設定
					adjAfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.ADJ_ZM_AMNT));
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
					// 調整差額に調整金額を数値書式編集して設定
					adjSagaku = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.ADJ_AMNT));
				}
				
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
				//if(!inMap.getString(JBSbatCHIFM104.TRKM_ZAN_FLG).equals(JACStrConst.UM_ARI))
				//{
				//	// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)
				//	if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL))
				//	{
				//		// 金額＋埋込み料金名称文字付加コード
				//		adjSagaku = makeStr(adjSagaku, CHAR_MB);
				//	}
				//}
				// 調整前金額に金額を設定
				//adjBfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.AMNT));
				// 調整後金額に調整済金額を数値書式編集して設定
				//adjAfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.ADJ_ZM_AMNT));
				// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)
				//if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL))

				// 料金項目出力名称情報マップ.金額表示カラム数="0"(金額表示なし)、かつ埋込み項目コード="2"(埋込み料金項目を全角に置き換える)の場合
				if(JACStrConst.AMNT_DSP_COLUM_CNT_ZERO.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT))
						&& JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
				{
					// 金額＋埋込み料金名称文字付加コード
					adjBfAmnt = makeStr(adjBfAmnt, CHAR_MB);
					// 金額＋埋込み料金名称文字付加コード
					adjAfAmnt = makeStr(adjAfAmnt, CHAR_MB);
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
					// 金額＋埋込み料金名称文字付加コード
					adjSagaku = makeStr(adjSagaku, CHAR_MB);
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
				}
			}
			// 対処区分＝"3"(削除)
			else if(inMap.getString(JBSbatCHIFM104.TAISYO_DIV).equals(JACStrConst.UPD_DIV_DEL))
			{
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
				//if(!inMap.getString(JBSbatCHIFM104.TRKM_ZAN_FLG).equals(JACStrConst.UM_ARI))
				
				// 料金項目出力名称情報マップ.金額表示カラム数≠"0"(金額表示なし以外)の場合
				if(! JACStrConst.AMNT_DSP_COLUM_CNT_ZERO.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT)))
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
				{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
					// 調整前金額に金額を数値書式編集して設定
					adjBfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.AMNT));
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
					
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
					// 調整差額に金額 * -1を数値書式編集して設定
					adjSagaku = JPCUtilCommon.formatNumber(chgMinus(inMap.getString(JBSbatCHIFM104.AMNT)));
					
				//	 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)
				//	if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL))
				//	{
				//		// 金額＋埋込み料金名称文字付加コード
				//		adjSagaku = makeStr(adjSagaku, CHAR_MB);
				//	}
				//}
				//else
				//{
				//	adjSagaku = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.ADJ_AMNT));
				//}
				//	// 調整前金額に金額を設定
				//	adjBfAmnt = JPCUtilCommon.formatNumber(inMap.getString(JBSbatCHIFM104.AMNT));
				}
				// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)
				//if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL))
				
				// 料金項目出力名称情報マップ.金額表示カラム数="0"(金額表示なし)、かつ埋込み項目コード="2"(埋込み料金項目を全角に置き換える)の場合
				if(JACStrConst.AMNT_DSP_COLUM_CNT_ZERO.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT))
						&& JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
				{
					// 金額＋埋込み料金名称文字付加コード
					adjBfAmnt = makeStr(adjBfAmnt, CHAR_MB);
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
					// 金額＋埋込み料金名称文字付加コード
					adjSagaku = makeStr(adjSagaku, CHAR_MB);
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
				}
			}
			
// v16.00.00 ANK-2480-00-00 ADD START
			if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_KMK_CD) != null){
				JACbatDebugLogUtil.printDebugLog(super.logPrint,"埋込み料金項目コード：" + thPrcKmkOutNmInfoMap.get(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_KMK_CD).substring(10, 11)));
			}
			// 料金項目出力名称情報マップ.埋込み項目コード＝"2"(埋込み料金項目を全角に置き換える)の場合
			// かつ、料金項目出力名称情報マップ.料金グループ＝"17"(eo電気)の場合
			// かつ、料金項目出力名称情報マップ.料金項目コード末尾＝"2"（数量）の場合
			if(JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD))
					&& JKKStrConst.CD00133_17.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_GRP_CD))
					&& "2".equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_KMK_CD).substring(10, 11)))
			{
				// 調整前金額、調整後金額、調整差額を空文字で再設定
				adjBfAmnt 	= JACStrConst.KARA_MOJI;
				adjAfAmnt 	= JACStrConst.KARA_MOJI;
				adjSagaku 	= JACStrConst.KARA_MOJI;
			}
// v16.00.00 ANK-2480-00-00 ADD END
		}
//IT1-2014-0000169 MOD END
		
		// 出力共通電文設定
		JBSbatOutputItem outputItem = new JBSbatOutputItem();
		// 出力情報格納マップ
		JBSbatServiceInterfaceMap prcReAdjList = new JBSbatServiceInterfaceMap();
		
		// 埋込み項目コード="4"(端末名称・製造番号)
		if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_SVC_DTL_SKBT_NO_TNAME_SIZO_NO))
		{
			// 改ページキー
			prcReAdjList.set(JBSbatCHIFE056.KAI_PAGE_KEY, 	makeKaiPageKeyValue(inMap));
			// 操作者コード
			prcReAdjList.set(JBSbatCHIFE056.SOSA_CD, 		inMap.getString(JBSbatCHIFM104.ICJKN_UPD_USER_ID));
			// 操作者名
			prcReAdjList.set(JBSbatCHIFE056.SOSA_NM, 		this.getLCutString(userName, MOJISUU_8));
			// 項番
			prcReAdjList.set(JBSbatCHIFE056.NO, 			JPCUtilCommon.fillHalfSpace(String.valueOf(this.workSeqNo), SPACE_PAD_4, false));
			// 投入時刻
			prcReAdjList.set(JBSbatCHIFE056.TONYU_JI, 		this.toFormatDate(inMap.getString(JBSbatCHIFM104.ICJKN_UPD_DTM)));
			// 請求年月
			prcReAdjList.set(JBSbatCHIFE056.SEIKY_YM, 		JCHbatSeikyKaknoBusinessUtil.formatDate(inMap.getString(JBSbatCHIFM104.SEIKY_YM)).concat(CHAR_MIN));
			// 請求先番号
			prcReAdjList.set(JBSbatCHIFE056.SEIKY_SAKI_NO, 	inMap.getString(JBSbatCHIFM104.SEIKY_KEI_NO));
			// 請求先名（カナ）
			prcReAdjList.set(JBSbatCHIFE056.SEIKY_SAKI_NM, 	this.getLCutString(inMap.getString(JBSbatCHIFM104.SHS_KANA), MOJISUU_20));
			// 督促ステータス
			prcReAdjList.set(JBSbatCHIFE056.TOKUSOKU_STAT, 	inMap.getString(JBSbatCHIFM104.TOKUSOKU_STAT));
			// 記事
			prcReAdjList.set(JBSbatCHIFE056.KIJI, 			this.getLCutString(kiji, MOJISUU_140));
			// ＩＤ番号
			prcReAdjList.set(JBSbatCHIFE056.ID_NO, 			makeIdNo(inMap, thPrcKmkOutNmInfoMap, thUsePrd));
			// 料金コースコード
			prcReAdjList.set(JBSbatCHIFE056.PCRS_CD, 		pcrsCd);
			// 料金サービスコード
			prcReAdjList.set(JBSbatCHIFE056.PRC_SVC_CD, 	prcSvcCd);
			// 料金項目コード
			prcReAdjList.set(JBSbatCHIFE056.PRC_KMK_CD, 	prcKmkCd);
			// 料金内訳名
//IT1-2014-0000169 MOD STA
//			prcReAdjList.set(JBSbatCHIFE056.PRC_UCWK_NM, 	this.getLCutString(this.kikiKatasikiNm, MOJISUU_25));
			prcReAdjList.set(JBSbatCHIFE056.PRC_UCWK_NM, 	this.getLCutString(this.kikiKatasikiNm, MOJISUU_30));
//IT1-2014-0000169 MOD END
			// 調整区分
			prcReAdjList.set(JBSbatCHIFE056.ADJ_DIV, 		JACStrConst.KARA_MOJI);
			// 調整前金額
			prcReAdjList.set(JBSbatCHIFE056.ADJ_BF_AMNT, 	JACStrConst.KARA_MOJI);
			// 調整後金額
			prcReAdjList.set(JBSbatCHIFE056.ADJ_AF_AMNT, 	JACStrConst.KARA_MOJI);
			// 調整差額
			prcReAdjList.set(JBSbatCHIFE056.ADJ_SAGAKU, 	JACStrConst.KARA_MOJI);
			
			// 出力内容を項目ごとにダブルクォーテーション（""）で囲む
			prcReAdjList.setMap(JCHbatSeikyKaknoBusinessUtil.quote(prcReAdjList.getMap(), JACStrConst.DOUBLE_QUOTE, JACStrConst.DOUBLE_QUOTE));
			// 出力フラグON
			prcReAdjList.setOutFlg(true);
			
			// 出力共通電文設定
			outputItem.addOutMapList(prcReAdjList);
			prcReAdjList = new JBSbatServiceInterfaceMap();
		}
		// 改ページキー
		prcReAdjList.set(JBSbatCHIFE056.KAI_PAGE_KEY, 	makeKaiPageKeyValue(inMap));
		// 操作者コード
		prcReAdjList.set(JBSbatCHIFE056.SOSA_CD, 		inMap.getString(JBSbatCHIFM104.ICJKN_UPD_USER_ID));
		// 操作者名
		prcReAdjList.set(JBSbatCHIFE056.SOSA_NM, 		this.getLCutString(userName, MOJISUU_8));
		// 項番
		prcReAdjList.set(JBSbatCHIFE056.NO, 			JPCUtilCommon.fillHalfSpace(String.valueOf(this.workSeqNo), SPACE_PAD_4, false));
		// 投入時刻
		prcReAdjList.set(JBSbatCHIFE056.TONYU_JI, 		this.toFormatDate(inMap.getString(JBSbatCHIFM104.ICJKN_UPD_DTM)));
		// 請求年月
		prcReAdjList.set(JBSbatCHIFE056.SEIKY_YM, 		JCHbatSeikyKaknoBusinessUtil.formatDate(inMap.getString(JBSbatCHIFM104.SEIKY_YM)).concat(CHAR_MIN));
		// 請求先番号
		prcReAdjList.set(JBSbatCHIFE056.SEIKY_SAKI_NO, 	inMap.getString(JBSbatCHIFM104.SEIKY_KEI_NO));
		// 請求先名（カナ）
		prcReAdjList.set(JBSbatCHIFE056.SEIKY_SAKI_NM, 	this.getLCutString(inMap.getString(JBSbatCHIFM104.SHS_KANA), MOJISUU_20));
		// 督促ステータス
		prcReAdjList.set(JBSbatCHIFE056.TOKUSOKU_STAT, 	inMap.getString(JBSbatCHIFM104.TOKUSOKU_STAT));
		// 記事
		prcReAdjList.set(JBSbatCHIFE056.KIJI, 			this.getLCutString(kiji, MOJISUU_140));
		// ＩＤ番号
		prcReAdjList.set(JBSbatCHIFE056.ID_NO, 			makeIdNo(inMap, thPrcKmkOutNmInfoMap, thUsePrd));
		// 料金コースコード
		prcReAdjList.set(JBSbatCHIFE056.PCRS_CD, 		pcrsCd);
		// 料金サービスコード
		prcReAdjList.set(JBSbatCHIFE056.PRC_SVC_CD, 	prcSvcCd);
		// 料金項目コード
		prcReAdjList.set(JBSbatCHIFE056.PRC_KMK_CD, 	prcKmkCd);
		// 料金内訳名
//IT1-2014-0000169 MOD STA
//		prcReAdjList.set(JBSbatCHIFE056.PRC_UCWK_NM, 	this.getLCutString(prcUcwkNm, MOJISUU_25));
		prcReAdjList.set(JBSbatCHIFE056.PRC_UCWK_NM, 	this.getLCutString(prcUcwkNm, MOJISUU_30));
//IT1-2014-0000169 MOD STA
		// 調整区分
		prcReAdjList.set(JBSbatCHIFE056.ADJ_DIV, 		adjDiv);
		// 調整前金額
		prcReAdjList.set(JBSbatCHIFE056.ADJ_BF_AMNT, 	adjBfAmnt);
		// 調整後金額
		prcReAdjList.set(JBSbatCHIFE056.ADJ_AF_AMNT, 	adjAfAmnt);
		// 調整差額
		prcReAdjList.set(JBSbatCHIFE056.ADJ_SAGAKU, 	adjSagaku);
		// 出力内容を項目ごとにダブルクォーテーション（""）で囲む
		prcReAdjList.setMap(JCHbatSeikyKaknoBusinessUtil.quote(prcReAdjList.getMap(), JACStrConst.DOUBLE_QUOTE, JACStrConst.DOUBLE_QUOTE));
		// 出力フラグON
		prcReAdjList.setOutFlg(true);
		
		// 出力共通電文設定
		outputItem.addOutMapList(prcReAdjList);
		
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
		// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)　かつ　料金項目出力名称情報マップ.金額表示カラム数≠"0"(金額表示なしの場合)
		//if(thPrcKmkOutNmInfoMap != null && thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL)
		//	&& !thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT).equals(JACStrConst.AMNT_DSP_COLUM_CNT_ZERO))
		
		// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)　または"6"(埋め込み料金項目を全角に置き換える（付加文字なし）)、
		// かつ　料金項目出力名称情報マップ.金額表示カラム数≠"0"(金額表示なし以外)の場合
		if(thPrcKmkOutNmInfoMap != null && (JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD))
				|| JACStrConst.UMKM_KMK_CD_FULL_NO_TANI.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
				&& !thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.AMNT_DSP_COLUM_CNT).equals(JACStrConst.AMNT_DSP_COLUM_CNT_ZERO))
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
		{
			// 追加行作成処理
			// 出力情報格納マップ
			prcReAdjList = new JBSbatServiceInterfaceMap();
			
			// 改ページキー
			prcReAdjList.set(JBSbatCHIFE056.KAI_PAGE_KEY, 	makeKaiPageKeyValue(inMap));
			// 操作者コード
			prcReAdjList.set(JBSbatCHIFE056.SOSA_CD, 		inMap.getString(JBSbatCHIFM104.ICJKN_UPD_USER_ID));
			// 操作者名
			prcReAdjList.set(JBSbatCHIFE056.SOSA_NM, 		this.getLCutString(userName, MOJISUU_8));
			// 項番
			prcReAdjList.set(JBSbatCHIFE056.NO, 			JPCUtilCommon.fillHalfSpace(String.valueOf(this.workSeqNo), SPACE_PAD_4, false));
			// 投入時刻
			prcReAdjList.set(JBSbatCHIFE056.TONYU_JI, 		this.toFormatDate(inMap.getString(JBSbatCHIFM104.ICJKN_UPD_DTM)));
			// 請求年月
			prcReAdjList.set(JBSbatCHIFE056.SEIKY_YM, 		JCHbatSeikyKaknoBusinessUtil.formatDate(inMap.getString(JBSbatCHIFM104.SEIKY_YM)).concat(CHAR_MIN));
			// 請求先番号
			prcReAdjList.set(JBSbatCHIFE056.SEIKY_SAKI_NO, 	inMap.getString(JBSbatCHIFM104.SEIKY_KEI_NO));
			// 請求先名（カナ）
			prcReAdjList.set(JBSbatCHIFE056.SEIKY_SAKI_NM, 	this.getLCutString(inMap.getString(JBSbatCHIFM104.SHS_KANA), MOJISUU_20));
			// 督促ステータス
			prcReAdjList.set(JBSbatCHIFE056.TOKUSOKU_STAT, 	inMap.getString(JBSbatCHIFM104.TOKUSOKU_STAT));
			// 記事
			prcReAdjList.set(JBSbatCHIFE056.KIJI, 			this.getLCutString(kiji, MOJISUU_140));
			// ＩＤ番号
			prcReAdjList.set(JBSbatCHIFE056.ID_NO, 			JACStrConst.KARA_MOJI);
			// 料金コースコード
			prcReAdjList.set(JBSbatCHIFE056.PCRS_CD, 		JACStrConst.KARA_MOJI);
			// 料金サービスコード
			prcReAdjList.set(JBSbatCHIFE056.PRC_SVC_CD, 	JACStrConst.KARA_MOJI);
			// 料金項目コード
			prcReAdjList.set(JBSbatCHIFE056.PRC_KMK_CD, 	JACStrConst.KARA_MOJI);
			// 料金内訳名
			prcReAdjList.set(JBSbatCHIFE056.PRC_UCWK_NM, 	JACStrConst.KARA_MOJI);
			// 調整区分
			prcReAdjList.set(JBSbatCHIFE056.ADJ_DIV, 		JACStrConst.KARA_MOJI);
			
			// 対処区分＝"1"(追加)の場合
			if(inMap.getString(JBSbatCHIFM104.TAISYO_DIV).equals(JACStrConst.UPD_DIV_ADD))
			{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
				// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)の場合
				if(JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
				{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
					// 調整前金額
					prcReAdjList.set(JBSbatCHIFE056.ADJ_BF_AMNT, 	JACStrConst.KARA_MOJI);
					// 調整後金額
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
					//prcReAdjList.set(JBSbatCHIFE056.ADJ_AF_AMNT, 	JPCUtilCommon.formatNumber(this.addLineAmnt)); 
					prcReAdjList.set(JBSbatCHIFE056.ADJ_AF_AMNT, 	makeStr(JPCUtilCommon.formatNumber(this.addLineAmnt), CHAR_MB));
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
				}
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
				// 埋込み項目コード="6"(埋込み料金項目を全角に置き換える(文字付加なし))の場合
				if(JACStrConst.UMKM_KMK_CD_FULL_NO_TANI.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
				{
					// 調整前金額
					prcReAdjList.set(JBSbatCHIFE056.ADJ_BF_AMNT, 	JACStrConst.KARA_MOJI);
					// 調整後金額
					prcReAdjList.set(JBSbatCHIFE056.ADJ_AF_AMNT, 	makeStr(this.addLineAmnt, CHAR_KAI));
				}
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
			}
			// 対処区分≠"1"(追加以外)の場合
			else
			{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
				// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)の場合
				if(JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
				{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
					// 調整前金額
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
//					prcReAdjList.set(JBSbatCHIFE056.ADJ_BF_AMNT, 	JPCUtilCommon.formatNumber(this.addLineAmnt));
					prcReAdjList.set(JBSbatCHIFE056.ADJ_BF_AMNT, 	makeStr(JPCUtilCommon.formatNumber(this.addLineAmnt), CHAR_MB));
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
					// 調整後金額
					prcReAdjList.set(JBSbatCHIFE056.ADJ_AF_AMNT, 	JACStrConst.KARA_MOJI);
				}
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
				// 埋込み項目コード="6"(埋込み料金項目を全角に置き換える(文字付加なし))の場合
				if(JACStrConst.UMKM_KMK_CD_FULL_NO_TANI.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
				{
					// 調整前金額
					prcReAdjList.set(JBSbatCHIFE056.ADJ_BF_AMNT, 	makeStr(this.addLineAmnt, CHAR_KAI));
					// 調整後金額
					prcReAdjList.set(JBSbatCHIFE056.ADJ_AF_AMNT, 	JACStrConst.KARA_MOJI);
				}
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
			}
			// 調整差額
			prcReAdjList.set(JBSbatCHIFE056.ADJ_SAGAKU, 	JACStrConst.KARA_MOJI);
			// 出力内容を項目ごとにダブルクォーテーション（""）で囲む
			prcReAdjList.setMap(JCHbatSeikyKaknoBusinessUtil.quote(prcReAdjList.getMap(), JACStrConst.DOUBLE_QUOTE, JACStrConst.DOUBLE_QUOTE));
			// 出力フラグON
			prcReAdjList.setOutFlg(true);
			
			outputItem.addOutMapList(prcReAdjList);
		}
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][makePrcReAdjList][befSaveIdNo=" + this.befSaveIdNo + "]");
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][makePrcReAdjList]");
		
		return outputItem;
	}
	
	/**
	 * 機器製造番号,通知書用宅内機器型式名取得
	 * @param  inMap 入力電文
	 * @param  thPrcKmkOutNmInfoMap 料金項目出力名称情報マップ
	 */
	private void getKikiNm(JBSbatServiceInterfaceMap inMap, HashMap<String, String> thPrcKmkOutNmInfoMap) throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][getKikiNm]");
		
		// 機器製造番号、通知書用宅内機器型式名取得
		JBSbatCommonDBInterface param = new JBSbatCommonDBInterface();
		// サービス詳細識別番号
		param.setValue(inMap.get(JBSbatCHIFM104.SVC_DTL_SKBT_NO));
		// 適用予約年月日
		param.setValue(this.tmpMonEndDay);
		// 適用予約年月日
		param.setValue(this.tmpMonEndDay);
		// 当月の利用終了日
		param.setValue(this.tmpMonEndDay);
		// 当月の利用終了日
		param.setValue(this.tmpMonEndDay);
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getKikiNm][param = " + param.getList().toString() + "]");
		
		// SQL実行
		executeKK_T_KKTK_SVC_KEI_CH_SELECT_001(param.getList().toArray());
		JBSbatCommonDBInterface outputInfo = db_KK_T_KKTK_SVC_KEI.selectNext();
		
		// 取得結果≠nullの場合
		if (outputInfo != null)
		{
			// 機器製造番号
			this.kikiSeizoNo = outputInfo.getString(JBSbatKK_T_KKTK_SVC_KEI.KIKI_SEIZO_NO);
			// 通知書用宅内機器型式名
			this.kikiKatasikiNm = outputInfo.getString(JBSbatZM_M_TKMDL_KNRN_INFO.TCHISHO_YO_TKMDL_NM);
		}
		else
		{
			
			String seiKyKeiNo 		= inMap.getString(JBSbatCHIFM104.SEIKY_KEI_NO); 	// 請求契約番号
			String svcKeiNo 		= inMap.getString(JBSbatCHIFM104.SVC_KEI_NO); 		// サービス契約番号
			String svcDtlSkbtNo		= inMap.getString(JBSbatCHIFM104.SVC_DTL_SKBT_NO); 	// サービス詳細識別番号
			
			// DB未存在エラー
			String[] msgParam = new String[]
			{
					JBSbatKK_T_KKTK_SVC_KEI.TABLE_NAME, "SEIKY_KEI_NO:" +  seiKyKeiNo, "SVC_KEI_NO:" +  svcKeiNo, "SVC_DTL_SKBT_NO:" +  svcDtlSkbtNo
			};
			// 業務エラーとして処理
			super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.ECHB0240CW, msgParam);

			// 機器製造番号を初期化
			this.kikiSeizoNo = JACStrConst.KARA_MOJI;
			// 通知書用宅内機器型式名を初期化
			this.kikiKatasikiNm = JACStrConst.KARA_MOJI;
		}
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][getKikiNm]");
	}
	
	/**
	 * 負数変換
	 * @param  amnt      金額
	 * @return chgAmnt   変換後金額
	 * @throws Exception 業務サービス内で発生した例外全般
	 */
	private String chgMinus(String amnt) throws Exception
	{
		// 変換後金額
		String chgAmnt = amnt;
		// 変換後金額≠""(空文字)の場合
		if(!chgAmnt.equals(JACStrConst.KARA_MOJI))
		{
			// 引数の金額をBigDecimalに変換
			BigDecimal tmpAmnt = new BigDecimal(chgAmnt);
			// -1で乗算
			tmpAmnt = tmpAmnt.multiply(MINUS_ONE);
			// 乗算結果を格納
			chgAmnt = tmpAmnt.toString();
		}
		return chgAmnt;
	}

	/**
	 * 契約者名取得
	 * @param  svcKeiNo サービス契約番号
	 * @return 契約者名
	 * @throws Exception   業務サービス内で発生した例外全般
	 */
	private String getKeiNm(String svcKeiNo) throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][getKeiNm]");
		
		JBSbatCommonDBInterface param = new JBSbatCommonDBInterface();
		// サービス契約番号
		param.setValue(svcKeiNo);
		// 予約適用年月日
		param.setValue(super.opeDate);
		// 予約適用年月日
		param.setValue(super.opeDate);
		
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getKeiNm][param = " + param.getList().toString() + "]");
		
		// SQL実行
		executeKK_T_SVC_KEI_CH_SELECT_005(param.getList().toArray());
		JBSbatCommonDBInterface outputInfo = db_KK_T_SVC_KEI.selectNext();
		
		if (outputInfo == null)
		{
			// DB未存在エラー
			String[] msgParam = new String[]
			{
				JBSbatKK_T_SVC_KEI.TABLE_NAME, param.getList().toString()
			};
			// 業務エラーとして処理
			super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.ECHB0240CW, msgParam);

			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][getKeiNm]");
			return JACStrConst.KARA_MOJI;
			
		}
		assert outputInfo != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getKeiNm][outputInfo = " + outputInfo + "]") : true;
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][getKeiNm]");

		return outputInfo.getString(JBSbatCK_T_CUST.CUST_NM);
	}

	/**
	 * 料金項目出力名称
	 * @param  inMap 入力電文
	 * @param  thPrcKmkOutNmInfoMap 料金項目出力名称情報マップ
	 * @return 料金項目出力名称
	 * @throws Exception   業務サービス内で発生した例外全般
	 */
	private String getPrcKmkOutNm(JBSbatServiceInterfaceMap inMap, HashMap<String, String> thPrcKmkOutNmInfoMap) throws Exception
	{
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[S][getPrcKmkOutNm]");
		// 料金項目出力名称
		String[] tmpPrcKmkOutNm = JCHbatSeikyKaknoBusinessUtil.chrBunkatu(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_KMK_NM), JACStrConst.ZENKAKU_DOLLARS_SIGN);
		String umkmKmk = JACStrConst.KARA_MOJI;
		String hukaMoji = JACStrConst.KARA_MOJI;
		
		// 埋込み項目コード="1"(合算請求年月)
		if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_GSAN_SEIKY_YM))
		{
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getPrcKmkOutNm]埋め込みコード=1");
			// 合算請求年月
			String thGsanYm = inMap.getString(JBSbatCHIFM104.GSAN_SEIKY_YM);
			// 年月書式編集(yyyy年mm月)
			thGsanYm = JCHbatSeikyKaknoBusinessUtil.formatDate(thGsanYm);
			// 半角全角変換して埋め込み項目へ
			umkmKmk = JCHbatSeikyKaknoBusinessUtil.formatHanToZen(thGsanYm, JACStrConst.HAN_TO_ZEN_CHR);
		}
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod Start
		// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)
		//else if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_FULL))
		
		// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)、または"6"(埋込み料金項目を全角に置き換える（文字付加なし）)
		else if(JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)) 
				|| JACStrConst.UMKM_KMK_CD_FULL_NO_TANI.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
		{
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getPrcKmkOutNm]埋め込みコード=2,6");
// ANK-3296-00-00 v36.00.00 2018/01/22 Mod End
			// 通信量編集対象金額
			String amnt = null;
			
			JBSbatCommonDBInterface param = new JBSbatCommonDBInterface();
			// 請求番号
			param.setValue(inMap.get(JBSbatCHIFM104.SEIKY_NO));
			// 請求契約番号
			param.setValue(inMap.get(JBSbatCHIFM104.SEIKY_KEI_NO));
			// 請求年月
			param.setValue(inMap.get(JBSbatCHIFM104.SEIKY_YM));
			// 整理番号
			param.setValue(inMap.get(JBSbatCHIFM104.SEIRI_NO));
			// サービス契約番号
			param.setValue(inMap.get(JBSbatCHIFM104.SVC_KEI_NO));
			// 料金グループコード
			param.setValue(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_GRP_CD));
			// 料金コースコード
			param.setValue(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PCRS_CD));
			// 料金サービスコード
			param.setValue(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_SVC_CD));
			// 料金項目コード
			param.setValue(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_KMK_CD));
			// 合算請求年月
			param.setValue(inMap.get(JBSbatCHIFM104.GSAN_SEIKY_YM));
			
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getPrcKmkOutNm][param = " + param.getList().toString() + "]");
			
			// SQL実行
			executeCH_T_SEIKY_UCWK_CH_SELECT_013(param.getList().toArray());
			JBSbatCommonDBInterface outputInfo = db_CH_T_SEIKY_UCWK.selectNext();
			
			// 取得結果≠nullの場合
			if (outputInfo != null)
			{
				// 取得結果.金額を退避
				amnt = outputInfo.getString(JBSbatCH_T_SEIKY_UCWK.AMNT);
				// 追加行作成用金額を退避
				this.addLineAmnt = amnt;
			}
			else
			{
				// 追加行作成用金額を初期化
				this.addLineAmnt = "0";
			}
			assert outputInfo != null ? JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getPrcKmkOutNm][outputInfo = " + outputInfo + "]") : true;
			
			// 共通部品より金額を通信量に編集する
			JCHCommonFormatUtil su = new JCHCommonFormatUtil(super.commonItem.getConnection(), super.opeDate);
			ArrayList<String> amntList = new ArrayList<String>();
			
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
			// 埋込み項目コード="2"(埋込み料金項目を全角に置き換える)の場合
			if(JACStrConst.UMKM_KMK_CD_FULL.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
			{
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
				
// v16.00.00 ANK-2480-00-00 ADD START
				//amntList = su.formatTushin(amnt, thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_NM_MOJI_HUKA_CD));
				amntList = su.formatTushinTaniTikan(amnt, thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_NM_MOJI_HUKA_CD),
														thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_PRC_GRP_CD));
// v16.00.00 ANK-2480-00-00 ADD END
				
// ANK-3296-00-00 v36.00.00 2018/01/22 Add Start
			}
			// 埋込み項目コード="6"(埋込み料金項目を全角に置き換える（文字付加なし）)の場合
			else if(JACStrConst.UMKM_KMK_CD_FULL_NO_TANI.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
			{
				// 標準工事費割賦代金の支払回数を編集
				amntList.add(0, JACStrConst.KARA_MOJI);
				amntList.add(1, JCHCommonFormatUtil.formatHanToZen(amnt, JACStrConst.HAN_TO_ZEN_SUCHI));
			}
// ANK-3296-00-00 v36.00.00 2018/01/22 Add End
			
			// 編集後の金額を埋め込み項目へ
			umkmKmk = amntList.get(1);
			// 通信量桁あふれ付加文字を付加文字へ
			hukaMoji = amntList.get(0);
		}
		// 埋込み項目コード="3"(サービス詳細識別番号（電話番号）)
		else if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_SVC_DTL_SKBT_NO))
		{
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getPrcKmkOutNm]埋め込みコード=3");
			// サービス詳細識別番号
			String svcDtlSkbtNo = inMap.getString(JBSbatCHIFM104.SVC_DTL_SKBT_NO);
			
			// 共通部品よりサービス詳細識別番号を電話番号に編集する
			umkmKmk = JCHCommonFormatUtil.formatSvcDtlSkbtNo(svcDtlSkbtNo);
		}
		// 埋込み項目コード="4"(サービス詳細識別番号（製造番号）)
		else if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD).equals(JACStrConst.UMKM_KMK_CD_SVC_DTL_SKBT_NO_TNAME_SIZO_NO))
		{
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getPrcKmkOutNm]埋め込みコード=4          製造番号行編集");
			umkmKmk = JCHbatSeikyKaknoBusinessUtil.formatHanToZen(this.kikiSeizoNo , JACStrConst.HAN_TO_ZEN_CHR);
		}
// v16.00.00 ANK-2480-00-00 ADD START
		// 埋込み項目コード="5"(サービス詳細識別番号(端末名称・供給地点特定番号))
		else if(JACStrConst.UMKM_KMK_CD_SVC_DTL_SKBT_NO_KYOKYU_TKT_NO.equals(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.UMKM_KMK_CD)))
		{
			assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[L][getPrcKmkOutNm]埋め込みコード=5");
			// サービス詳細識別番号
			String svcDtlSkbtNo = inMap.getString(JBSbatCHIFM104.SVC_DTL_SKBT_NO);
			
			// 共通部品よりサービス詳細識別番号を電話番号に編集する
			umkmKmk = JCHCommonFormatUtil.formatHanToZen(svcDtlSkbtNo, JACStrConst.HAN_TO_ZEN_SUCHI);
		}
// v16.00.00 ANK-2480-00-00 ADD END
		assert JACbatDebugLogUtil.printDebugLog(super.logPrint, "[E][getPrcKmkOutNm]");

		return makeStr(tmpPrcKmkOutNm[0], umkmKmk, tmpPrcKmkOutNm[1], hukaMoji);
	}

	/**
	 * 改ページキー設定
	 * @param  inMap 入力電文
	 * @return 改ページキー
	 * @throws Exception   業務サービス内で発生した例外全般
	 */
	private String makeKaiPageKeyValue(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		// 一時金更新ユーザーID ＋ 一時金更新時分秒(一時金更新年月日時分秒の時分秒) ＋ 請求契約番号
		String kaiPageKey = makeStr(inMap.getString(JBSbatCHIFM104.ICJKN_UPD_USER_ID),
									toFormatDate(inMap.getString(JBSbatCHIFM104.ICJKN_UPD_DTM)),
									inMap.getString(JBSbatCHIFM104.SEIKY_KEI_NO));
		return kaiPageKey;
	}

	/**
	 * ID番号設定
	 * @param inMap 入力電文
	 * @param thPrcKmkOutNmInfoMap 料金項目出力名称情報マップ
	 * @param thUsePrd 利用期間
	 * @return ID番号
	 * @throws Exception   業務サービス内で発生した例外全般
	 */
	private String makeIdNo(JBSbatServiceInterfaceMap inMap, HashMap<String, String> thPrcKmkOutNmInfoMap, String thUsePrd) throws Exception
	{
		// ID番号
		String idNo = JACStrConst.KARA_MOJI;
		if(thPrcKmkOutNmInfoMap != null)
		{
			// ID番号設定
			
			// サービス契約番号表示制御フラグ＝"1"
			if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.SVKEI_NO_DSP_CTRL_FLG).equals(JACStrConst.SVKEI_NO_DSP_CTRL_FLG_ON))
			{
				// ID番号にサービス契約番号を設定
				idNo = inMap.getString(JBSbatCHIFM104.SVC_KEI_NO);
			}
			// マンションＩＤ表示制御フラグ＝"1"　かつ
			// 料金グループコードがオーナー用料金グループコードリストに含まれる
			else if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.MANS_ID_DSP_CTRL_FLG).equals(JACStrConst.MANS_ID_DSP_CTRL_FLG_TRGT)
					&& this.ornerGroupCdList.contains(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.PRC_GRP_CD)))
			{
				// ID番号に整理番号を設定
				idNo = inMap.getString(JBSbatCHIFM104.SEIRI_NO);

			}
			// 利用期間表示制御フラグ＝"1"
			else if(thPrcKmkOutNmInfoMap.get(JBSbatCH_M_PRC_KMK_OPUT_NM.USE_PRD_DSP_CTRL_FLG).equals(JACStrConst.USE_PRD_DSP_CTRL_FLG_ON))
			{
				// ID番号に利用期間を設定
				idNo = thUsePrd;
			}

			// グルーピング判定
			// 退避.ID番号＝ID番号の場合
			if(idNo.equals(this.befSaveIdNo))
			{
				// ID番号に空文字設定
				idNo = JACStrConst.KARA_MOJI;
			}
			// 退避.ID番号≠ID番号の場合
			else
			{
				// 退避.ID番号にID番号を設定
				this.befSaveIdNo = idNo;
			}
		}
		return idNo;
	}
	
	/**
	 * <p>
	 * 年月日時分秒文字列(yyyyMMddHHmmssSSS)から時分秒(HHmmss)の文字列を取得し,
	 * HH:mm:ssの形式に変換します。
	 * </p>
	 * @param ym 年月日時分秒文字列(yyyyMMddHHmmssSSS)
	 * @return 時分秒文字列(HH:mm:ss)
	 */
	private String toFormatDate(String ym)
	{
		if (17 != ym.length())
		{
			return ym;
		}

		// 時分秒(HHmmss)の文字列を取り出す
		String hms = ym.substring(8, 14);

		try
		{
			SimpleDateFormat instance = new SimpleDateFormat(FMT_HMS);
			return new SimpleDateFormat(EDIT_HMS).format(instance.parse(hms));
		}
		catch (ParseException e)
		{
			return hms;
		}
	}

	/**
	 * 対象文字列から指定桁数分の文字列を切出し取得する
	 * @param  value 対象文字列
	 * @param  length 桁数
	 * @return value 指定桁数の文字列
	 */
	private String getLCutString(String value, int length)
	{
		String ret = "";

		if(value == null) 
		{
			return null;
		}
		else if(length < value.length())
		{
			ret = value.substring(0, length);
		}
		else
		{
			ret = value;
		}

		return ret;
	}
	
	/**
	 * 文字を連結します
	 * @param  string 文字
	 * @return strBuf 連結した文字列
	 */
	private String makeStr(String ...string)
	{
		StringBuffer strBuf = new StringBuffer();
		for(String str:string)
		{
			if(str == null)
			{
				strBuf.append(JACStrConst.KARA_MOJI);
			}
			else
			{
				strBuf.append(str);
			}
		}
		
		return strBuf.toString();
	}
	
	/**
	 * 改行を空文字に変換する。
	 * @param kiji 記事
	 * @return
	 */
	private String kaigyoDel(String kiji)
	{
		
		String kaigyoReplace = JACStrConst.KARA_MOJI;
		
		if(kiji != null)
		{
		
			kaigyoReplace = kiji.replaceAll(JACBatCommon.chgKaigyo(JACStrConst.LINE_CRLF)
																	, JACStrConst.KARA_MOJI);
		
		}
		return kaigyoReplace;
	}

}
