/*******************************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：JETU0081D011TPMA
*	ソースファイル名：JETU0081D011TPMA.java
*	作成者			：FJ
*	日付			：2011年03月14日
*＜機能概要＞
*	電話帳掲載情報登録サービスインターフェイスCBS主処理部品
*	電話帳申込、電話帳申込内容の２スキーマに登録処理を行う。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v3.00.00	2012/03/17	FJ)楠神		新規作成
*	v4.00.00	2012/05/30	FJ)宮本		ANK-0398-00-00
*	v4.01.00	2012/08/7	FJ)宮本		TAI-2012-0000093
*	v48.00.00	2020/01/16	FJ)西窪		ANK-3507-00-00 TDIS連携の自動化対応
*
********************************************************************************/
package eo.ejb.cbs.mainproc;

import java.util.ArrayList;

import com.fujitsu.futurity.model.base.CAANCreateException;
import com.fujitsu.futurity.model.base.CAANException;
import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.ejb.common.StatusCodes;
import com.fujitsu.futurity.model.ejb.common.fw.AgentDispatchContext;
import com.fujitsu.futurity.model.ejb.common.fw.TemplateMainHandler;

import eo.common.constant.JTUStrConst;
import eo.common.constant.JPCModelConstant;
import eo.ejb.cbm.entity.TU0041ETMsg;
import eo.ejb.cbm.entity.TU0051ETMsg;
import eo.ejb.cbm.entity.TU0081ETMsg;
import eo.ejb.cbm.entity.TU0091ETMsg;
import eo.ejb.cbs.cbsmsg.ETU0081D011CBSMsg;
import eo.ejb.common.JTUModelCommon;
import eo.ejb.common.JPCModelCommon;
import eo.ejb.common.db.JTUejbTU0041SecProc;
import eo.ejb.common.db.JTUejbTU0051SecProc;
import eo.ejb.common.db.JTUejbTU0081SecProc;
import eo.ejb.common.db.JTUejbTU0091SecProc;

/**
 * <p>
 * 電話帳掲載情報登録独自処理部品です。
 * </p>
 * @author FJ
 */
public class JETU0081D011TPMA implements TemplateMainHandler
{

	/**
	 * 関連エラーコード
	 */
	/** 電話帳申込情報存在チェック(変更・削除) */
	private static final String KNRNERR_EXISTS_DNWCAHOMSKM = "EA";
	/** 排他チェック(変更・削除) */
	private static final String KNRNERR_HAITA = "EB";
	/** 登録・変更データ非存在チェック(登録) */
	private static final String KNRNERR_NOT_EXISTS_ADDCHG = "EC";
	/** 削除データ非存在チェック(変更・削除) */
	private static final String KNRNERR_NOT_EXISTS_DEL = "ED";
	/** 電話帳申込内容情報存在チェック(変更・削除) */
	private static final String KNRNERR_EXISTS_DNWCAHOMSKM_NYO = "EE";
	/** ステータスチェック */
	private static final String KNRNERR_STATUS = "EF";
	/** 通信事業者情報存在チェック */
	private static final String KNRNERR_EXISTS_TUSHIN_JGYOSHA = "EG";
	/** 申込事業所情報存在チェック */
	private static final String KNRNERR_EXISTS_MSKM_JIGSHO = "EH";
	/** 掲載住所情報存在チェック */
	private static final String KNRNERR_EXISTS_AD_KEISAI = "EI";
	/** 設置住所情報存在チェック */
	private static final String KNRNERR_EXISTS_AD_SETPLACE = "EJ";
	/** 送信済み電話帳申込存在チェック */
	private static final String KNRNERR_EXISTS_SENDZM_DNWCHMSK = "EK";
	
	/**
	 *  スキーマID
	 */
	/** 電話帳申込 */
	private static final String SCHEMAID_TU0081 = "TU0081";
	
	/**
	 * コンストラクタです。
	 */
	public JETU0081D011TPMA()
	{
		super();
	}

	/**
	 * 主処理
	 * @param inCBSMsg
	 * @param inContext
	 * @throws CAANException
	 */
	public void invoke(CAANMsg inCBSMsg, AgentDispatchContext inContext) throws CAANException
	{
		// 電話帳申込異動内容コード取得
		String dnwachomsk_ido_naiyo_cd = inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD);
		// インプットの電話帳申込異動内容コードが「2：変更」「3：削除」の場合のみ
		if(JTUStrConst.RQNY_CHG.equals(dnwachomsk_ido_naiyo_cd) 
				|| JTUStrConst.RQNY_DEL.equals(dnwachomsk_ido_naiyo_cd))
		{
			/** 電話帳申込存在・排他チェック **/
			if(!isExistsHaita(inCBSMsg, inContext))
			{
				return;
			}
		}
		
		/** 最新情報取得処理 **/
		// 電話帳申込最新情報取得
		JTUejbTU0081SecProc spTU0081 = new JTUejbTU0081SecProc();
		CAANMsg inTU0081Msg = new CAANMsg(TU0081ETMsg.class.getName());
		CAANMsg outTU0081Msg = null;
		inTU0081Msg.set(TU0081ETMsg.SVC_KEI_UCWK_NO, inCBSMsg.getString(ETU0081D011CBSMsg.SVC_KEI_UCWK_NO));
		inTU0081Msg.set(TU0081ETMsg.HJIN_EO_YKAE_SVKEI_NO, inCBSMsg.getString(ETU0081D011CBSMsg.HJIN_EO_YKAE_SVKEI_NO));
		inTU0081Msg.set(TU0081ETMsg.REQ_JI_KISAI_JUN_SKCD, inCBSMsg.getString(ETU0081D011CBSMsg.REQ_JI_KISAI_JUN_SKCD));
		outTU0081Msg = spTU0081.findByService(inTU0081Msg, inCBSMsg.getString(ETU0081D011CBSMsg.NTT_TELNO));

		// 電話帳申込内容情報取得
		JTUejbTU0091SecProc spTU0091 = new JTUejbTU0091SecProc();
		CAANMsg inTU0091Msg = new CAANMsg(TU0091ETMsg.class.getName());
		CAANMsg[] outTU0091MsgList = null;
		if(outTU0081Msg != null)
		{
			inTU0091Msg.set(TU0091ETMsg.DNWACHO_MSKM_NO, outTU0081Msg.getString(TU0081ETMsg.DNWACHO_MSKM_NO));
			inTU0091Msg.set(TU0091ETMsg.GENE_ADD_DTM, outTU0081Msg.getString(TU0081ETMsg.GENE_ADD_DTM));
			inTU0091Msg.set(TU0091ETMsg.MK_FLG,  JTUStrConst.MK_FLG_YK);
			outTU0091MsgList = spTU0091.findByCondition(inTU0091Msg);
		}
		
		/** 関連制約処理 **/
		if(!chkKnrn(inCBSMsg, inContext, outTU0081Msg, outTU0091MsgList))
		{
			return;
		}
		
		/** 機能コード判定 **/
		// 機能コードが１でない場合終了
		if(!JPCModelConstant.FUNC_CD_1.equals(inCBSMsg.getString(ETU0081D011CBSMsg.FUNC_CODE)))
		{
			return;
		}

		/** 登録処理 **/
		// 電話帳申込
		if(!addDnwachoMskm(inCBSMsg, inContext))
		{
			return;
		}
		
		// 電話帳申込内容新掲載情報登録
		if(!addDnwachoMskmNyoNew(inCBSMsg, inContext))
		{
			return;
		}
		
		// 最新情報の新掲載情報を保持
		CAANMsg rcntNewTU0091Msg = new CAANMsg(TU0091ETMsg.class.getName());
		if(outTU0091MsgList != null && outTU0091MsgList.length != 0)
		{
			for(CAANMsg msg : outTU0091MsgList)
			{
				if(JTUStrConst.NEW_DATA.equals(msg.getString(TU0091ETMsg.DNWACHOMSK_NEW_OLD_FLG)))
				{
					rcntNewTU0091Msg = msg;
					break;
				}
			}
		}
		// 電話帳申込内容旧掲載情報登録
		if(!addDnwachoMskmNyoOld(inCBSMsg, inContext, rcntNewTU0091Msg))
		{
			return;
		}
		
		return;
		
	}

	/**
	 * 電話帳申込存在・排他チェック
	 * @param inCBSMsg
	 * @param inContext
	 * @return boolean
	 * @throws CAANException
	 */
	private boolean isExistsHaita(CAANMsg inCBSMsg, AgentDispatchContext inContext) throws CAANException
	{
		/** 電話帳申込情報存在チェック(変更・削除) */
		JTUejbTU0081SecProc spTU0081 = new JTUejbTU0081SecProc();
		CAANMsg inTU0081Msg = new CAANMsg(TU0081ETMsg.class.getName());
		inTU0081Msg.set(TU0081ETMsg.SVC_KEI_UCWK_NO, inCBSMsg.getString(ETU0081D011CBSMsg.SVC_KEI_UCWK_NO));
		inTU0081Msg.set(TU0081ETMsg.HJIN_EO_YKAE_SVKEI_NO, inCBSMsg.getString(ETU0081D011CBSMsg.HJIN_EO_YKAE_SVKEI_NO));
		inTU0081Msg.set(TU0081ETMsg.REQ_JI_KISAI_JUN_SKCD, inCBSMsg.getString(ETU0081D011CBSMsg.REQ_JI_KISAI_JUN_SKCD));
		inTU0081Msg.set(TU0081ETMsg.MK_FLG, JTUStrConst.MK_FLG_YK);
		
		CAANMsg[] outTU0081MsgList = null;
		outTU0081MsgList = spTU0081.findByCondition(inTU0081Msg);
		
		// 電話帳申込番号のリスト作成(重複は除く)
		ArrayList<String> dnwachoMskmNoList = new ArrayList<String>();
		
		JTUejbTU0091SecProc spTU0091 = new JTUejbTU0091SecProc();
		CAANMsg inTU0091Msg = new CAANMsg(TU0091ETMsg.class.getName());
		CAANMsg[] outTU0091MsgList = null;
		
		for(CAANMsg tu0081Msg: outTU0081MsgList)
		{
			if (!dnwachoMskmNoList.contains(tu0081Msg.getString(TU0081ETMsg.DNWACHO_MSKM_NO)))
			{
				// NTT電話番号を追加し、電話帳申込内容を検索する
				inTU0091Msg.set(TU0091ETMsg.DNWACHO_MSKM_NO, tu0081Msg.getString(TU0081ETMsg.DNWACHO_MSKM_NO));
				inTU0091Msg.set(TU0091ETMsg.GENE_ADD_DTM, tu0081Msg.getString(TU0081ETMsg.GENE_ADD_DTM));
				if(JTUStrConst.RQNY_DEL.equals(tu0081Msg.getString(TU0081ETMsg.DNWACHOMSK_IDO_NAIYO_CD)))
				{
					// 削除データ
					inTU0091Msg.set(TU0091ETMsg.DNWACHOMSK_NEW_OLD_FLG, JTUStrConst.OLD_DATA);
				}
				else
				{
					// 登録・変更データ
					inTU0091Msg.set(TU0091ETMsg.DNWACHOMSK_NEW_OLD_FLG, JTUStrConst.NEW_DATA);
				}
				inTU0091Msg.set(TU0091ETMsg.NTT_TELNO, inCBSMsg.getString(ETU0081D011CBSMsg.NTT_TELNO));
				inTU0091Msg.set(TU0091ETMsg.MK_FLG,  JTUStrConst.MK_FLG_YK);
				outTU0091MsgList = spTU0091.findByCondition(inTU0091Msg);
				
				// 取得できた場合リストに格納
				if (outTU0091MsgList != null && outTU0091MsgList.length != 0)
				{
					dnwachoMskmNoList.add(tu0081Msg.getString(TU0081ETMsg.DNWACHO_MSKM_NO));
				}
			}
		}
		
		// 対象の電話帳申込情報が存在しない場合エラー
		if (dnwachoMskmNoList == null || dnwachoMskmNoList.size() == 0)
		{
			inCBSMsg.set(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD_ERR, KNRNERR_EXISTS_DNWCAHOMSKM);
			inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
			return false;
		}
		
		// 電話帳申込番号から電話帳申込レコードのカレントを取得しリストに格納する
		CAANMsg outTU0081MsgCur = null;
		ArrayList<CAANMsg> curMsgList = new ArrayList<CAANMsg>();
		for(String dnwachoMskmNo: dnwachoMskmNoList)
		{
			inTU0081Msg.set(TU0081ETMsg.DNWACHO_MSKM_NO, dnwachoMskmNo);
			outTU0081MsgCur = spTU0081.findByCurrent(inTU0081Msg);

			if(outTU0081MsgCur != null)
			{
				curMsgList.add(outTU0081MsgCur);
			}
		}
		/** 排他チェック(変更・削除) */
		// 排他モードタイムスタンプチェック
		for(CAANMsg dnwMskmMsg : curMsgList)
		{
			if (!JPCModelCommon.succeededExclusiveLock(dnwMskmMsg, inContext, SCHEMAID_TU0081))
			{
				inCBSMsg.set(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD_ERR, KNRNERR_HAITA);
				inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
				return false;
			}
		}
		
		// 正常
		return true;
	}
	
	/**
	 * 関連制約
	 * @param inCBSMsg
	 * @param inContext
	 * @param msgTU0081
	 * @param msgTU0091List
	 * @return boolean
	 * @throws CAANException
	 */
	private boolean chkKnrn(CAANMsg inCBSMsg, AgentDispatchContext inContext, CAANMsg msgTU0081, CAANMsg[] msgTU0091List) throws CAANException
	{
		String dnwachomsk_ido_naiyo_cd = inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD);
		
		if(JTUStrConst.RQNY_ADD.equals(dnwachomsk_ido_naiyo_cd))
		{
			/** 登録・変更データ非存在チェック(登録) */
			// 登録・変更データが存在する場合エラー
			if(msgTU0081 != null)
			{
				if(JTUStrConst.RQNY_ADD.equals(msgTU0081.getString(TU0081ETMsg.DNWACHOMSK_IDO_NAIYO_CD))
						|| JTUStrConst.RQNY_CHG.equals(msgTU0081.getString(TU0081ETMsg.DNWACHOMSK_IDO_NAIYO_CD)))
				{
					inCBSMsg.set(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD_ERR, KNRNERR_NOT_EXISTS_ADDCHG);
					inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
					return false;
				}
			}
		}
		else
		{
			/** 送信済みデータ存在チェック(変更・削除) */
			if(msgTU0081 == null)
			{
				inCBSMsg.set(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD_ERR, KNRNERR_EXISTS_SENDZM_DNWCHMSK);
				inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
				return false;
			}
			/** 削除データ非存在チェック(変更・削除) */
			if(JTUStrConst.RQNY_DEL.equals(msgTU0081.getString(TU0081ETMsg.DNWACHOMSK_IDO_NAIYO_CD)))
			{
				inCBSMsg.set(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD_ERR, KNRNERR_NOT_EXISTS_DEL);
				inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
				return false;
			}
		}
		
		// 最新掲載情報が取得できた場合
		if(msgTU0081 != null)
		{
			/** 電話帳申込内容情報存在チェック */
			int newCnt = 0;
			int oldCnt = 0;
			if(msgTU0091List != null && msgTU0091List.length != 0)
			{
				for(CAANMsg msg : msgTU0091List)
				{
					if(JTUStrConst.NEW_DATA.equals(msg.getString(TU0091ETMsg.DNWACHOMSK_NEW_OLD_FLG)))
					{
						newCnt += 1;
					}
					else
					{
						oldCnt += 1;
					}
				}
			}
			// 電話帳申込内容情報が新旧一つずつ存在しない場合エラー
			if(!(newCnt == 1 && oldCnt == 1))
			{
				inCBSMsg.set(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD_ERR, KNRNERR_EXISTS_DNWCAHOMSKM_NYO);
				inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
				return false;
			}
			
			/** ステータスチェック */
			// 電話帳申込ステータスが「021：ＴＤＩＳ送信待ち」「022：ＴＤＩＳ送信済み」の場合、エラー
			if(JTUStrConst.TDIS_SEND_STAY.equals(msgTU0081.getString(TU0081ETMsg.DNWACHO_MSKM_STAT))
					|| JTUStrConst.TDIS_SEND_ZUMI.equals(msgTU0081.getString(TU0081ETMsg.DNWACHO_MSKM_STAT)))
			{
				inCBSMsg.set(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD_ERR, KNRNERR_STATUS);
				inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
				return false;
			}
		}
		
		/** 通信事業者情報存在チェック */
		JTUejbTU0051SecProc spTU0051 = new JTUejbTU0051SecProc();
		CAANMsg inMsgTU0051 = new CAANMsg(TU0051ETMsg.class.getName());
		inMsgTU0051.set(TU0051ETMsg.TSJGS_CD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_TSJGS_CD));
		if(!spTU0051.isExistsPrimaryKey(inMsgTU0051, true))
		{
			inCBSMsg.set(ETU0081D011CBSMsg.DNWACHOMSK_TSJGS_CD_ERR, KNRNERR_EXISTS_TUSHIN_JGYOSHA);
			inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
			return false;
		}
		/** 申込事業所情報存在チェック */
		JTUejbTU0041SecProc spTU0041 = new JTUejbTU0041SecProc();
		CAANMsg inMsgTU0041 = new CAANMsg(TU0041ETMsg.class.getName());
		inMsgTU0041.set(TU0041ETMsg.MSKM_JIGSHO_NO, inCBSMsg.getString(ETU0081D011CBSMsg.MSKM_JIGSHO_NO));
		inMsgTU0041.set(TU0041ETMsg.MSKM_JIGSHO_SBT_CD, JTUStrConst.MSKM_JIGSHO_TDIS);
		if(!spTU0041.isMskm(inMsgTU0041, true))
		{
			inCBSMsg.set(ETU0081D011CBSMsg.MSKM_JIGSHO_NO_ERR, KNRNERR_EXISTS_MSKM_JIGSHO);
			inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
			return false;
		}
		
		// 削除でない場合、住所の存在チェックを行う
		if(!JTUStrConst.RQNY_DEL.equals(dnwachomsk_ido_naiyo_cd))
		{
			/** 掲載住所情報存在チェック */
			String keisai_ad_man_input_flg = inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_AD_MAN_INPUT_FLG);
			String keisai_ad_cd = inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_AD_CD);
			String keisai_pcd = inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_PCD);
			if(JTUStrConst.MAN_INPUT_FLG_NON.equals(keisai_ad_man_input_flg)
					&& !JTUModelCommon.isAdCdExistsCheck001(inCBSMsg, inContext, keisai_ad_cd, keisai_pcd))
			{
				inCBSMsg.set(ETU0081D011CBSMsg.KEISAI_AD_CD_ERR, KNRNERR_EXISTS_AD_KEISAI);
				inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
				return false;
			}
			
			/** 設置住所情報存在チェック */
			String setplace_ad_man_input_flg = inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_AD_MAN_INPUT_FLG);
			String setplace_ad_cd = inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_AD_CD);
			String setplace_pcd = inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_PCD);
			if(JTUStrConst.MAN_INPUT_FLG_NON.equals(setplace_ad_man_input_flg)
					&& !JTUModelCommon.isAdCdExistsCheck001(inCBSMsg, inContext, setplace_ad_cd, setplace_pcd))
			{
				inCBSMsg.set(ETU0081D011CBSMsg.SETPLACE_AD_CD_ERR, KNRNERR_EXISTS_AD_SETPLACE);
				inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.RELATION_ERR);
				return false;
			}
		}
		return true;
	}
	
	/**
	 * 電話帳申込登録
	 * @param inCBSMsg
	 * @param inContext
	 * @return boolean
	 * @throws CAANException
	 */
	private boolean addDnwachoMskm(CAANMsg inCBSMsg, AgentDispatchContext inContext) throws CAANException
	{
		JTUejbTU0081SecProc spTU0081 = new JTUejbTU0081SecProc();

		// 電話帳申込のETメッセージを作成
		CAANMsg msgTU0081 = new CAANMsg(TU0081ETMsg.class.getName());
		/** 共通部設定 **/
		String sysDate = inCBSMsg.getString(ETU0081D011CBSMsg.OPERATEDATETIME);
		String opeId = inCBSMsg.getString(ETU0081D011CBSMsg.OPERATORID);

		/** 更新項目設定 **/
		// 電話帳申込番号
		msgTU0081.set(TU0081ETMsg.DNWACHO_MSKM_NO, JTUModelCommon.getDnwachoMskmNo(inCBSMsg, inContext));
		// 世代登録年月日時分秒
		msgTU0081.set(TU0081ETMsg.GENE_ADD_DTM, JTUModelCommon.getSysDateTimeStamp());
		// 電話帳申込ステータス
		msgTU0081.set(TU0081ETMsg.DNWACHO_MSKM_STAT, JTUStrConst.TDIS_SEND_STAY);
		// サービス契約内訳番号
		msgTU0081.set(TU0081ETMsg.SVC_KEI_UCWK_NO, inCBSMsg.getString(ETU0081D011CBSMsg.SVC_KEI_UCWK_NO));
		// 法人サービス契約受付番号
		msgTU0081.set(TU0081ETMsg.HOJIN_SVC_KEI_UK_NO, inCBSMsg.getString(ETU0081D011CBSMsg.HOJIN_SVC_KEI_UK_NO));
		// 法人eo読替サービス契約番号
		msgTU0081.set(TU0081ETMsg.HJIN_EO_YKAE_SVKEI_NO, inCBSMsg.getString(ETU0081D011CBSMsg.HJIN_EO_YKAE_SVKEI_NO));
		// 依頼時記載順識別コード
		msgTU0081.set(TU0081ETMsg.REQ_JI_KISAI_JUN_SKCD, inCBSMsg.getString(ETU0081D011CBSMsg.REQ_JI_KISAI_JUN_SKCD));
		// TDIS契約番号
		msgTU0081.set(TU0081ETMsg.TDIS_KEI_NO, inCBSMsg.getString(ETU0081D011CBSMsg.TDIS_KEI_NO));
		// 法人個人コード
		msgTU0081.set(TU0081ETMsg.HOJIN_KOJIN_CD, inCBSMsg.getString(ETU0081D011CBSMsg.HOJIN_KOJIN_CD));
		// 依頼受付年月日
		msgTU0081.set(TU0081ETMsg.REQ_UK_YMD, inCBSMsg.getString(ETU0081D011CBSMsg.REQ_UK_YMD));
		// 電話帳申込異動年月日
		msgTU0081.set(TU0081ETMsg.DNWACHOMSK_IDO_YMD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_IDO_YMD));
		// 電話帳申込異動内容コード
		msgTU0081.set(TU0081ETMsg.DNWACHOMSK_IDO_NAIYO_CD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD));
		// 電話帳申込異動内容(その他選択時)
		msgTU0081.set(TU0081ETMsg.DNWACHOMSK_IDO_NAIYO_OTHER, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_OTHER));
		// 掲載サービス開始年月日
		msgTU0081.set(TU0081ETMsg.KEISAI_SVC_STAYMD, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_SVC_STAYMD));
		// 番ポ有無
		msgTU0081.set(TU0081ETMsg.BMP_UM, inCBSMsg.getString(ETU0081D011CBSMsg.BMP_UM));
		// 104案内有無
		msgTU0081.set(TU0081ETMsg.N_104_GUIDE_UM, inCBSMsg.getString(ETU0081D011CBSMsg.N_104_GUIDE_UM));
		// TDIS情報チェックフラグ
		msgTU0081.set(TU0081ETMsg.TDIS_INFO_CHK_FLG, inCBSMsg.getString(ETU0081D011CBSMsg.TDIS_INFO_CHK_FLG));
		// オーダ番号
		msgTU0081.set(TU0081ETMsg.ORDER_NO, inCBSMsg.getString(ETU0081D011CBSMsg.ORDER_NO));
		// 住所チェック結果コード
		msgTU0081.set(TU0081ETMsg.AD_CHK_RSLT_CD, inCBSMsg.getString(ETU0081D011CBSMsg.AD_CHK_RSLT_CD));
		// 電話帳記載コード
		msgTU0081.set(TU0081ETMsg.DNWACHO_KISAI_CD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_KISAI_CD));
		// 登録整理番号
		msgTU0081.set(TU0081ETMsg.ADD_SEIRI_NO, inCBSMsg.getString(ETU0081D011CBSMsg.ADD_SEIRI_NO));
		// 登録枝番
		msgTU0081.set(TU0081ETMsg.ADD_SEQ, inCBSMsg.getString(ETU0081D011CBSMsg.ADD_SEQ));
		// 電話帳申込担当ユーザーID
		msgTU0081.set(TU0081ETMsg.DNWACHOMSK_TNT_USER_ID, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_TNT_USER_ID));
		// 電話帳申込備考
		msgTU0081.set(TU0081ETMsg.DNWACHOMSK_BIKO, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_BIKO));
		// 申込事業所番号
		msgTU0081.set(TU0081ETMsg.MSKM_JIGSHO_NO, inCBSMsg.getString(ETU0081D011CBSMsg.MSKM_JIGSHO_NO));
		// 電話帳申込通信事業者コード
		msgTU0081.set(TU0081ETMsg.DNWACHOMSK_TSJGS_CD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_TSJGS_CD));
		// 電話帳申込年月日
		msgTU0081.set(TU0081ETMsg.DNWACHO_MSKM_YMD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_MSKM_YMD));
		// TDIS送信回数
		msgTU0081.set(TU0081ETMsg.TDIS_SEND_CNT, "0");
		// 送付番号
		msgTU0081.set(TU0081ETMsg.SOHU_NO, inCBSMsg.getString(ETU0081D011CBSMsg.SOHU_NO));
		// 電話帳申込結果読込年月日
		msgTU0081.set(TU0081ETMsg.DNWACHO_MSKM_RSLT_YMD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_MSKM_RSLT_YMD));
		// 電話帳申込可否
		msgTU0081.set(TU0081ETMsg.DNWACHO_MSKM_KH, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_MSKM_KH));
		// 電話帳申込結果コード
		msgTU0081.set(TU0081ETMsg.NTT_REQ_RSLT_CD, inCBSMsg.getString(ETU0081D011CBSMsg.NTT_REQ_RSLT_CD));
		// 送信抑止フラグ
		msgTU0081.set(TU0081ETMsg.SEND_YOKSI_FLG, inCBSMsg.getString(ETU0081D011CBSMsg.SEND_YOKSI_FLG));
		// 電話帳申込中止コード
		msgTU0081.set(TU0081ETMsg.DNWACHO_MSKM_STP_CD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_MSKM_STP_CD));
		// 電話帳申込中止年月日
		msgTU0081.set(TU0081ETMsg.DNWACHO_MSKM_STP_YMD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_MSKM_STP_YMD));
		// 電話帳掲載変更年月日
		msgTU0081.set(TU0081ETMsg.DNWACHO_KEISAI_CHGE_YMD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_KEISAI_CHGE_YMD));
		// FAX送信先名
		msgTU0081.set(TU0081ETMsg.FAX_SENDS_NM, inCBSMsg.getString(ETU0081D011CBSMsg.FAX_SENDS_NM));
		// 法人結果出力済フラグ
		msgTU0081.set(TU0081ETMsg.HOJIN_RSLT_OPUT_ZUMI_FLG, JTUStrConst.MIZUMI_MI);
		// 対応記録連携情報作成済フラグ
		msgTU0081.set(TU0081ETMsg.TIOKR_RNK_INF_SKSI_ZM_FLG, JTUStrConst.MIZUMI_MI);
		// 登録年月日時分秒
		msgTU0081.set(TU0081ETMsg.ADD_DTM, sysDate);
		// 登録オペレータアカウント
		msgTU0081.set(TU0081ETMsg.ADD_OPEACNT, opeId);
		// 更新年月日時分秒
		msgTU0081.set(TU0081ETMsg.UPD_DTM, sysDate);
		// 更新オペレータアカウント
		msgTU0081.set(TU0081ETMsg.UPD_OPEACNT, opeId);
		// 無効フラグ
		msgTU0081.set(TU0081ETMsg.MK_FLG, JTUStrConst.MK_FLG_YK);
		// ANK-3507-00-00 ADD START
		// データ送信可否
		msgTU0081.set(TU0081ETMsg.DATA_SEND_KH, inCBSMsg.getString(ETU0081D011CBSMsg.DATA_SEND_KH));
		// TDIS初回連携年月日時分秒
		msgTU0081.set(TU0081ETMsg.TDIS_FST_RENKEI_DTM, inCBSMsg.getString(ETU0081D011CBSMsg.TDIS_FST_RENKEI_DTM));
		// ANK-3507-00-00 ADD END

		/** 登録処理を実行する */
		try
		{
			spTU0081.create(msgTU0081);
		}
		catch (CAANCreateException cce)
		{
			inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.CREATE_DB_ERR);
			throw cce;
		}
		
		/** インターフェイスのOUTPUT項目に実行結果を設定する */
		// 電話帳申込番号
		inCBSMsg.set(ETU0081D011CBSMsg.DNWACHO_MSKM_NO, msgTU0081.getString(TU0081ETMsg.DNWACHO_MSKM_NO));
		// 世代登録年月日時分秒
		inCBSMsg.set(ETU0081D011CBSMsg.GENE_ADD_DTM, msgTU0081.getString(TU0081ETMsg.GENE_ADD_DTM));
		// 電話帳申込ステータス
		inCBSMsg.set(ETU0081D011CBSMsg.DNWACHO_MSKM_STAT, msgTU0081.getString(TU0081ETMsg.DNWACHO_MSKM_STAT));
		// TDIS送信回数
		inCBSMsg.set(ETU0081D011CBSMsg.TDIS_SEND_CNT, msgTU0081.getString(TU0081ETMsg.TDIS_SEND_CNT));
		// 法人結果出力済フラグ
		inCBSMsg.set(ETU0081D011CBSMsg.HOJIN_RSLT_OPUT_ZUMI_FLG, msgTU0081.getString(TU0081ETMsg.HOJIN_RSLT_OPUT_ZUMI_FLG));
		// 対応記録連携情報作成済フラグ
		inCBSMsg.set(ETU0081D011CBSMsg.TIOKR_RNK_INF_SKSI_ZM_FLG, msgTU0081.getString(TU0081ETMsg.TIOKR_RNK_INF_SKSI_ZM_FLG));
		// 電話帳申込＿登録年月日時分秒
		inCBSMsg.set(ETU0081D011CBSMsg.ADD_DTM_TU0081, msgTU0081.getString(TU0081ETMsg.ADD_DTM));
		// 電話帳申込＿登録オペレータアカウント
		inCBSMsg.set(ETU0081D011CBSMsg.ADD_OPEACNT_TU0081, msgTU0081.getString(TU0081ETMsg.ADD_OPEACNT));
		// 電話帳申込＿更新年月日時分秒
		inCBSMsg.set(ETU0081D011CBSMsg.UPD_DTM_TU0081, msgTU0081.getString(TU0081ETMsg.UPD_DTM));
		// 電話帳申込＿更新オペレータアカウント
		inCBSMsg.set(ETU0081D011CBSMsg.UPD_OPEACNT_TU0081, msgTU0081.getString(TU0081ETMsg.UPD_OPEACNT));
		// 電話帳申込＿無効フラグ
		inCBSMsg.set(ETU0081D011CBSMsg.MK_FLG_TU0081, msgTU0081.getString(TU0081ETMsg.MK_FLG));
		
		// 正常終了
		return true;

	}
	
	/**
	 * 電話帳申込内容新掲載情報登録
	 * @param inCBSMsg
	 * @param inContext
	 * @return boolean
	 * @throws CAANException
	 */
	private boolean addDnwachoMskmNyoNew(CAANMsg inCBSMsg, AgentDispatchContext inContext) throws CAANException
	{
		JTUejbTU0091SecProc spTU0091 = new JTUejbTU0091SecProc();

		// 電話帳申込内容のETメッセージを作成
		CAANMsg msgTU0091 = new CAANMsg(TU0091ETMsg.class.getName());
		/** 共通部設定 **/
		String sysDate = inCBSMsg.getString(ETU0081D011CBSMsg.OPERATEDATETIME);
		String opeId = inCBSMsg.getString(ETU0081D011CBSMsg.OPERATORID);

		/** 更新項目設定 **/
		// 電話帳申込番号
		msgTU0091.set(TU0091ETMsg.DNWACHO_MSKM_NO, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_MSKM_NO));
		// 世代登録年月日時分秒
		msgTU0091.set(TU0091ETMsg.GENE_ADD_DTM, inCBSMsg.getString(ETU0081D011CBSMsg.GENE_ADD_DTM));
		// 電話帳申込内容番号
		msgTU0091.set(TU0091ETMsg.DNWACHO_MSKM_NAIYO_NO, JTUModelCommon.getDnwachoMskmNaiyoNo(inCBSMsg, inContext));
		// 電話帳申込内容新旧フラグ
		msgTU0091.set(TU0091ETMsg.DNWACHOMSK_NEW_OLD_FLG, JTUStrConst.NEW_DATA);

		// 電話帳申込異動内容コードが「3：削除」でない場合、転記
		if(!JTUStrConst.RQNY_DEL.equals(inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD)))
		{
			// NTT電話番号
			msgTU0091.set(TU0091ETMsg.NTT_TELNO, inCBSMsg.getString(ETU0081D011CBSMsg.NTT_TELNO));
		}
		// 契約電話番号
		msgTU0091.set(TU0091ETMsg.KEI_TELNO, inCBSMsg.getString(ETU0081D011CBSMsg.KEI_TELNO));
		// 企業個人別フラグ
		msgTU0091.set(TU0091ETMsg.COMP_KOBET_FLG, inCBSMsg.getString(ETU0081D011CBSMsg.COMP_KOBET_FLG));
		
		// 電話帳申込異動内容コードが「3：削除」でない場合、転記
		if(!JTUStrConst.RQNY_DEL.equals(inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_IDO_NAIYO_CD)))
		{
			// 電話帳申込通信事業者コード
			msgTU0091.set(TU0091ETMsg.DNWACHOMSK_TSJGS_CD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHOMSK_TSJGS_CD));
		}
		// 事住別フラグ
		msgTU0091.set(TU0091ETMsg.JIJUBETS_FLG, inCBSMsg.getString(ETU0081D011CBSMsg.JIJUBETS_FLG));
		// 重複掲載フラグ
		msgTU0091.set(TU0091ETMsg.DBLE_KEISAI_FLG, inCBSMsg.getString(ETU0081D011CBSMsg.DBLE_KEISAI_FLG));
		// 掲載案内利用コード
		msgTU0091.set(TU0091ETMsg.KEISAI_GUIDE_USE_CD, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_GUIDE_USE_CD));
		// 撤去表示コード
		msgTU0091.set(TU0091ETMsg.TEKKYO_DSP_CD, inCBSMsg.getString(ETU0081D011CBSMsg.TEKKYO_DSP_CD));
		// 掲載住所区分
		msgTU0091.set(TU0091ETMsg.KEISAI_AD_DIV, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_AD_DIV));
		// 掲載住所手動入力フラグ
		msgTU0091.set(TU0091ETMsg.KEISAI_AD_MAN_INPUT_FLG, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_AD_MAN_INPUT_FLG));
		// 掲載住所コード
		msgTU0091.set(TU0091ETMsg.KEISAI_AD_CD, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_AD_CD));
		// 掲載郵便番号
		msgTU0091.set(TU0091ETMsg.KEISAI_PCD, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_PCD));
		// 掲載都道府県名
		msgTU0091.set(TU0091ETMsg.KEISAI_STATE_NM, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_STATE_NM));
		// 掲載市区町村名
		msgTU0091.set(TU0091ETMsg.KEISAI_CITY_NM, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_CITY_NM));
		// 掲載大字通称名
		msgTU0091.set(TU0091ETMsg.KEISAI_OAZTSU_NM, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_OAZTSU_NM));
		// 掲載字丁目名
		msgTU0091.set(TU0091ETMsg.KEISAI_AZCHO_NM, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_AZCHO_NM));
		// 掲載住所番地号
		msgTU0091.set(TU0091ETMsg.KEISAI_AD_BNCHIGO, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_AD_BNCHIGO));
		// 掲載住所補記・建物名
		msgTU0091.set(TU0091ETMsg.KEISAI_ADRTTM, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_ADRTTM));
		// 掲載住所補記・部屋番号
		msgTU0091.set(TU0091ETMsg.KEISAI_ADRRM, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_ADRRM));
		// 設置場所住所手動入力フラグ
		msgTU0091.set(TU0091ETMsg.SETPLACE_AD_MAN_INPUT_FLG, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_AD_MAN_INPUT_FLG));
		// 設置場所住所コード
		msgTU0091.set(TU0091ETMsg.SETPLACE_AD_CD, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_AD_CD));
		// 設置場所郵便番号
		msgTU0091.set(TU0091ETMsg.SETPLACE_PCD, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_PCD));
		// 設置場所都道府県名
		msgTU0091.set(TU0091ETMsg.SETPLACE_STATE_NM, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_STATE_NM));
		// 設置場所市区町村名
		msgTU0091.set(TU0091ETMsg.SETPLACE_CITY_NM, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_CITY_NM));
		// 設置場所大字通称名
		msgTU0091.set(TU0091ETMsg.SETPLACE_OAZTSU_NM, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_OAZTSU_NM));
		// 設置場所字丁目名
		msgTU0091.set(TU0091ETMsg.SETPLACE_AZCHO_NM, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_AZCHO_NM));
		// 設置場所番地号
		msgTU0091.set(TU0091ETMsg.SETPLACE_BNCHIGO, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_BNCHIGO));
		// 設置場所住所補記・建物名
		msgTU0091.set(TU0091ETMsg.SETPLACE_ADRTTM, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_ADRTTM));
		// 設置場所住所補記・部屋番号
		msgTU0091.set(TU0091ETMsg.SETPLACE_ADRRM, inCBSMsg.getString(ETU0081D011CBSMsg.SETPLACE_ADRRM));
		// 掲載カナ名
		msgTU0091.set(TU0091ETMsg.KEISAI_KANA_NM, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_KANA_NM));
		// 掲載名
		msgTU0091.set(TU0091ETMsg.KEISAI_NM, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_NM));
		// 電略符号
		msgTU0091.set(TU0091ETMsg.DNRYAK_SYMBOL, inCBSMsg.getString(ETU0081D011CBSMsg.DNRYAK_SYMBOL));
		// 掲載名付記
		msgTU0091.set(TU0091ETMsg.KEISAI_NM_APPDX, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_NM_APPDX));
		// 記事欄
		msgTU0091.set(TU0091ETMsg.KIJIRAN, inCBSMsg.getString(ETU0081D011CBSMsg.KIJIRAN));
		// 掲載情報外字表示要否
		msgTU0091.set(TU0091ETMsg.KEISAI_INFO_GIJ_DSP_YH, inCBSMsg.getString(ETU0081D011CBSMsg.KEISAI_INFO_GIJ_DSP_YH));
		// 電話帳表示用回線識別コード
		msgTU0091.set(TU0091ETMsg.DNWACHO_DSP_KISN_SKBT_CD, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_DSP_KISN_SKBT_CD));
		// 自由定義項目
		msgTU0091.set(TU0091ETMsg.FREE_TEIGI_KMK, inCBSMsg.getString(ETU0081D011CBSMsg.FREE_TEIGI_KMK));
		// 登録年月日時分秒
		msgTU0091.set(TU0091ETMsg.ADD_DTM, sysDate);
		// 登録オペレータアカウント
		msgTU0091.set(TU0091ETMsg.ADD_OPEACNT, opeId);
		// 更新年月日時分秒
		msgTU0091.set(TU0091ETMsg.UPD_DTM, sysDate);
		// 更新オペレータアカウント
		msgTU0091.set(TU0091ETMsg.UPD_OPEACNT, opeId);
		// 無効フラグ
		msgTU0091.set(TU0091ETMsg.MK_FLG, JTUStrConst.MK_FLG_YK);

		/** 登録処理を実行する */
		try
		{
			spTU0091.create(msgTU0091);
		}
		catch (CAANCreateException cce)
		{
			inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.CREATE_DB_ERR);
			throw cce;
		}
		
		/** インターフェイスのOUTPUT項目に実行結果を設定する */
		// 電話帳申込内容番号
		inCBSMsg.set(ETU0081D011CBSMsg.DNWACHO_MSKM_NAIYO_NO, msgTU0091.getString(TU0091ETMsg.DNWACHO_MSKM_NAIYO_NO));
		// 電話帳申込内容＿登録年月日時分秒
		inCBSMsg.set(ETU0081D011CBSMsg.ADD_DTM_TU0091, msgTU0091.getString(TU0091ETMsg.ADD_DTM));
		// 電話帳申込内容＿登録オペレータアカウント
		inCBSMsg.set(ETU0081D011CBSMsg.ADD_OPEACNT_TU0091, msgTU0091.getString(TU0091ETMsg.ADD_OPEACNT));
		// 電話帳申込内容＿更新年月日時分秒
		inCBSMsg.set(ETU0081D011CBSMsg.UPD_DTM_TU0091, msgTU0091.getString(TU0091ETMsg.UPD_DTM));
		// 電話帳申込内容＿更新オペレータアカウント
		inCBSMsg.set(ETU0081D011CBSMsg.UPD_OPEACNT_TU0091, msgTU0091.getString(TU0091ETMsg.UPD_OPEACNT));
		// 電話帳申込内容＿無効フラグ
		inCBSMsg.set(ETU0081D011CBSMsg.MK_FLG_TU0091, msgTU0091.getString(TU0091ETMsg.MK_FLG));
		// 正常終了
		return true;
	}
	
	/**
	 * 電話帳申込内容旧掲載情報登録
	 * @param inCBSMsg
	 * @param inContext
	 * @param rcntNewMsg
	 * @return boolean
	 * @throws CAANException
	 */
	private boolean addDnwachoMskmNyoOld(CAANMsg inCBSMsg, AgentDispatchContext inContext, CAANMsg rcntNewMsg) throws CAANException
	{
		JTUejbTU0091SecProc spTU0091 = new JTUejbTU0091SecProc();

		// 電話帳申込内容のETメッセージを作成
		CAANMsg msgTU0091 = new CAANMsg(TU0091ETMsg.class.getName());
		/** 共通部設定 **/
		String sysDate = inCBSMsg.getString(ETU0081D011CBSMsg.OPERATEDATETIME);
		String opeId = inCBSMsg.getString(ETU0081D011CBSMsg.OPERATORID);

		/** 更新項目設定 **/
		// 電話帳申込番号
		msgTU0091.set(TU0091ETMsg.DNWACHO_MSKM_NO, inCBSMsg.getString(ETU0081D011CBSMsg.DNWACHO_MSKM_NO));
		// 世代登録年月日時分秒
		msgTU0091.set(TU0091ETMsg.GENE_ADD_DTM, inCBSMsg.getString(ETU0081D011CBSMsg.GENE_ADD_DTM));
		// 電話帳申込内容番号
		msgTU0091.set(TU0091ETMsg.DNWACHO_MSKM_NAIYO_NO, JTUModelCommon.getDnwachoMskmNaiyoNo(inCBSMsg, inContext));
		// 電話帳申込内容新旧フラグ
		msgTU0091.set(TU0091ETMsg.DNWACHOMSK_NEW_OLD_FLG, JTUStrConst.OLD_DATA);
		// NTT電話番号
		msgTU0091.set(TU0091ETMsg.NTT_TELNO, rcntNewMsg.getString(TU0091ETMsg.NTT_TELNO));
		// 契約電話番号
		msgTU0091.set(TU0091ETMsg.KEI_TELNO, rcntNewMsg.getString(TU0091ETMsg.KEI_TELNO));
		// 企業個人別フラグ
		msgTU0091.set(TU0091ETMsg.COMP_KOBET_FLG, rcntNewMsg.getString(TU0091ETMsg.COMP_KOBET_FLG));
		// 電話帳申込通信事業者コード
		msgTU0091.set(TU0091ETMsg.DNWACHOMSK_TSJGS_CD, rcntNewMsg.getString(TU0091ETMsg.DNWACHOMSK_TSJGS_CD));
		// 事住別フラグ
		msgTU0091.set(TU0091ETMsg.JIJUBETS_FLG, rcntNewMsg.getString(TU0091ETMsg.JIJUBETS_FLG));
		// 重複掲載フラグ
		msgTU0091.set(TU0091ETMsg.DBLE_KEISAI_FLG, rcntNewMsg.getString(TU0091ETMsg.DBLE_KEISAI_FLG));
		// 掲載案内利用コード
		msgTU0091.set(TU0091ETMsg.KEISAI_GUIDE_USE_CD, rcntNewMsg.getString(TU0091ETMsg.KEISAI_GUIDE_USE_CD));
		// 撤去表示コード
		msgTU0091.set(TU0091ETMsg.TEKKYO_DSP_CD, rcntNewMsg.getString(TU0091ETMsg.TEKKYO_DSP_CD));
		// 掲載住所区分
		msgTU0091.set(TU0091ETMsg.KEISAI_AD_DIV, rcntNewMsg.getString(TU0091ETMsg.KEISAI_AD_DIV));
		// 掲載住所手動入力フラグ
		msgTU0091.set(TU0091ETMsg.KEISAI_AD_MAN_INPUT_FLG, rcntNewMsg.getString(TU0091ETMsg.KEISAI_AD_MAN_INPUT_FLG));
		// 掲載住所コード
		msgTU0091.set(TU0091ETMsg.KEISAI_AD_CD, rcntNewMsg.getString(TU0091ETMsg.KEISAI_AD_CD));
		// 掲載郵便番号
		msgTU0091.set(TU0091ETMsg.KEISAI_PCD, rcntNewMsg.getString(TU0091ETMsg.KEISAI_PCD));
		// 掲載都道府県名
		msgTU0091.set(TU0091ETMsg.KEISAI_STATE_NM, rcntNewMsg.getString(TU0091ETMsg.KEISAI_STATE_NM));
		// 掲載市区町村名
		msgTU0091.set(TU0091ETMsg.KEISAI_CITY_NM, rcntNewMsg.getString(TU0091ETMsg.KEISAI_CITY_NM));
		// 掲載大字通称名
		msgTU0091.set(TU0091ETMsg.KEISAI_OAZTSU_NM, rcntNewMsg.getString(TU0091ETMsg.KEISAI_OAZTSU_NM));
		// 掲載字丁目名
		msgTU0091.set(TU0091ETMsg.KEISAI_AZCHO_NM, rcntNewMsg.getString(TU0091ETMsg.KEISAI_AZCHO_NM));
		// 掲載住所番地号
		msgTU0091.set(TU0091ETMsg.KEISAI_AD_BNCHIGO, rcntNewMsg.getString(TU0091ETMsg.KEISAI_AD_BNCHIGO));
		// 掲載住所補記・建物名
		msgTU0091.set(TU0091ETMsg.KEISAI_ADRTTM, rcntNewMsg.getString(TU0091ETMsg.KEISAI_ADRTTM));
		// 掲載住所補記・部屋番号
		msgTU0091.set(TU0091ETMsg.KEISAI_ADRRM, rcntNewMsg.getString(TU0091ETMsg.KEISAI_ADRRM));
		// 設置場所住所手動入力フラグ
		msgTU0091.set(TU0091ETMsg.SETPLACE_AD_MAN_INPUT_FLG, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_AD_MAN_INPUT_FLG));
		// 設置場所住所コード
		msgTU0091.set(TU0091ETMsg.SETPLACE_AD_CD, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_AD_CD));
		// 設置場所郵便番号
		msgTU0091.set(TU0091ETMsg.SETPLACE_PCD, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_PCD));
		// 設置場所都道府県名
		msgTU0091.set(TU0091ETMsg.SETPLACE_STATE_NM, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_STATE_NM));
		// 設置場所市区町村名
		msgTU0091.set(TU0091ETMsg.SETPLACE_CITY_NM, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_CITY_NM));
		// 設置場所大字通称名
		msgTU0091.set(TU0091ETMsg.SETPLACE_OAZTSU_NM, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_OAZTSU_NM));
		// 設置場所字丁目名
		msgTU0091.set(TU0091ETMsg.SETPLACE_AZCHO_NM, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_AZCHO_NM));
		// 設置場所番地号
		msgTU0091.set(TU0091ETMsg.SETPLACE_BNCHIGO, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_BNCHIGO));
		// 設置場所住所補記・建物名
		msgTU0091.set(TU0091ETMsg.SETPLACE_ADRTTM, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_ADRTTM));
		// 設置場所住所補記・部屋番号
		msgTU0091.set(TU0091ETMsg.SETPLACE_ADRRM, rcntNewMsg.getString(TU0091ETMsg.SETPLACE_ADRRM));
		// 掲載カナ名
		msgTU0091.set(TU0091ETMsg.KEISAI_KANA_NM, rcntNewMsg.getString(TU0091ETMsg.KEISAI_KANA_NM));
		// 掲載名
		msgTU0091.set(TU0091ETMsg.KEISAI_NM, rcntNewMsg.getString(TU0091ETMsg.KEISAI_NM));
		// 電略符号
		msgTU0091.set(TU0091ETMsg.DNRYAK_SYMBOL, rcntNewMsg.getString(TU0091ETMsg.DNRYAK_SYMBOL));
		// 掲載名付記
		msgTU0091.set(TU0091ETMsg.KEISAI_NM_APPDX, rcntNewMsg.getString(TU0091ETMsg.KEISAI_NM_APPDX));
		// 記事欄
		msgTU0091.set(TU0091ETMsg.KIJIRAN, rcntNewMsg.getString(TU0091ETMsg.KIJIRAN));
		// 掲載情報外字表示要否
		msgTU0091.set(TU0091ETMsg.KEISAI_INFO_GIJ_DSP_YH, rcntNewMsg.getString(TU0091ETMsg.KEISAI_INFO_GIJ_DSP_YH));
		// 電話帳表示用回線識別コード
		msgTU0091.set(TU0091ETMsg.DNWACHO_DSP_KISN_SKBT_CD, rcntNewMsg.getString(TU0091ETMsg.DNWACHO_DSP_KISN_SKBT_CD));
		// 自由定義項目
		msgTU0091.set(TU0091ETMsg.FREE_TEIGI_KMK, rcntNewMsg.getString(TU0091ETMsg.FREE_TEIGI_KMK));
		// 登録年月日時分秒
		msgTU0091.set(TU0091ETMsg.ADD_DTM, sysDate);
		// 登録オペレータアカウント
		msgTU0091.set(TU0091ETMsg.ADD_OPEACNT, opeId);
		// 更新年月日時分秒
		msgTU0091.set(TU0091ETMsg.UPD_DTM, sysDate);
		// 更新オペレータアカウント
		msgTU0091.set(TU0091ETMsg.UPD_OPEACNT, opeId);
		// 無効フラグ
		msgTU0091.set(TU0091ETMsg.MK_FLG, JTUStrConst.MK_FLG_YK);


		/** 登録処理を実行する */
		try
		{
			spTU0091.create(msgTU0091);
		}
		catch (CAANCreateException cce)
		{
			inCBSMsg.set(ETU0081D011CBSMsg.STATUS, StatusCodes.CREATE_DB_ERR);
			throw cce;
		}
		

		// 正常終了
		return true;
	}
}
