/*******************************************************************************
 *	All Rights reserved,Copyright (c) K-Opticom
 ********************************************************************************
 *＜プログラム内容＞
 *	システム名		：eo顧客基幹システム構築
 *	モジュール名	：CRW02603SFLogic
 *	ソースファイル名：CRW02603SFLogic.java
 *	作成者			：富士通
 *	日付			：2011年10月25日
 *＜機能概要＞
 *	問合せ客情報詳細ビューロジック
 *＜修正履歴＞
 *	バージョン	修正日		修正者		修正内容
 *	ｖ1.00.00
 *	v29.00.00	2017/02/10	ＦＪ) 笠川	ANK-2928-00-00 お客さま申告アドレスの複数登録
*
 ********************************************************************************/

package eo.web.webview.CRW02603SF;

import java.util.EventObject;
import java.util.HashMap;

import com.fujitsu.futurity.web.x31.X31CID;
import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x33.X33SException;

import eo.common.constant.JCRStrConst;
import eo.common.constant.JPCModelConstant;
import eo.common.constant.JZMStrConst;
import eo.common.util.JCRUtilCommon;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CRW01201SF.CRW01201SFConst;
import eo.web.webview.CRW02501SF.CRW02501SFConst;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.common.JCCScreenConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JCRScreenConst;
import eo.web.webview.common.JCRWebCommon;
import eo.web.webview.common.JZMScreenConst;
import eo.web.webview.mapping.CRSV0094_CRSV0094OPDBMapper;
import eo.web.webview.mapping.CRSV0095_CRSV0095OPDBMapper;

/**
 * 問合せ客情報詳細ビューロジック.<p>
 * <BR>
 * @author 富士通
 */
@SuppressWarnings("serial")
public class CRW02603SFLogic extends JCCWebBusinessLogic
{

	/**
	 * 住所検索Key情報
	 */
	private static final String[][] KEYSEARCHCONDITION = 
	{
		{JZMStrConst.key_pcd_1, CRW02603SFConst.PCD_1},          // 郵便番号
		{JZMStrConst.key_pcd_2, CRW02603SFConst.PCD_2},
		{JZMStrConst.key_state_nm, CRW02603SFConst.STATE_NM},    //都道府県名
		{JZMStrConst.key_city_nm, CRW02603SFConst.CITY_NM},      //市区町村名
		{JZMStrConst.key_oaztsu_nm, CRW02603SFConst.OAZTSU_NM},  //大字通称名
		{JZMStrConst.key_azcho_nm, CRW02603SFConst.AZCHO_NM}     //字丁目
	};

	/**
	 * 住所検索Key
	 */
	private static final int SEARCH_KEY = 0;
	/**
	 * 住所検索データビーンKey
	 */
	private static final int DATABEAN_KEY = 1;
	
	/**
	 * 住所検索結果情報
	 */
	private static final String[][] KEYRESULT = 
	{
		{JZMStrConst.ret_pcd_1, CRW02603SFConst.PCD_1},          //郵便番号
		{JZMStrConst.ret_pcd_2, CRW02603SFConst.PCD_2},
		{JZMStrConst.ret_state_nm, CRW02603SFConst.STATE_NM},    //都道府県名
		{JZMStrConst.ret_city_nm, CRW02603SFConst.CITY_NM},      //市区町村名
		{JZMStrConst.ret_oaztsu_nm, CRW02603SFConst.OAZTSU_NM},  //大字通称名
		{JZMStrConst.ret_azcho_nm, CRW02603SFConst.AZCHO_NM}     //字丁目
	};
	
	/**
	 * 住所検索結果Key
	 */
	private static final int RESULT_KEY = 0;
	/**
	 * 住所検索結果データビーンKey
	 */
	private static final int RESULT_DATABEAN_KEY = 1;

	/**
	 * 出力モード
	 */
	private static final String OUTPUTMODE_PROSCST = "1";

	/**
	 * 契約者タイプ
	 */
	private static final String KEISHA_TYPE_KOJIN    = "1";

	/**
	 * 初期選択 西暦和暦区分：[和暦]
	 */
	private static final String SEIREKI_WAREKI_KBN_WAREKI = "1";

	/**
	 * 初期選択 元号：[昭和]
	 */
	private static final String GENGO_SHOWA = "3";

	
	/**
	 * 親クラスX31BWebBusinessLogicのreceiveMessageWebを
	 * オーバーライドして自動生成されたメソッドです。
	 * @param arg0 (I) イベント情報
	 * @param arg1 (I) WebFWでは使用しません
	 * @param arg2 (I) WebFWでは使用しません
	 * @return 処理結果（true:正常終了、false:エラー）
	 * @throws X33SException X33SException
	 */
	@Override
	protected boolean receiveMessageWeb(X31CID arg0, Object arg1,
			EventObject arg2) throws X33SException
	{
		return false;
	}

	/**
	 * 初期表示処理<br>
	 * <br>
	 * 問合せ客情報更新（初期表示）サービスを呼び出し、
	 * 問合せ客情報更新画面の初期表示を行う。
	 * 
	 * @return boolean
	 * @exception Exception Exception
	 */
	public boolean initUpd() throws Exception
	{

		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// 共有フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// -------------------------------------------------- //
		// (1)引継情報の取得
		// -------------------------------------------------- //
		JCCWebCommon.getScreenInfo(this);

		// -------------------------------------------------- //
		// (2)サービスフォームBeanの設定
		// -------------------------------------------------- //
		// システム日付の取得
		String sysDate = JCRWebCommon.getSysDate();
		// 運用日付の取得
		String opeDate = JCRWebCommon.getOpeDate(this, null);

		// サービスフォームBean項目の設定
		bean.sendMessageString(CRW02603SFConst.STDARD_YMD, X31CWebConst.DATABEAN_SET_VALUE, sysDate);
		bean.sendMessageString(CRW02603SFConst.OPE_DATE, X31CWebConst.DATABEAN_SET_VALUE, opeDate);

		// サービスフォームBeanの項目をクリアする。
		clearBean();
		
		// -------------------------------------------------- //
		// (3)サービス呼出処理
		// -------------------------------------------------- //
		// ユースケースID格納用マップ
		HashMap<Object, String> paramMap = new HashMap<Object, String>();

		// ユースケースID格納
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "CRSV0094");

		// マッピングクラス
		CRSV0094_CRSV0094OPDBMapper mapper = new CRSV0094_CRSV0094OPDBMapper();

		// マッピング用Map
		HashMap<String, Object> dataMap = new HashMap<String, Object>();

		// マッピングクラスを使用する為、配列化
		X31SDataBeanAccess[] paramBean = {bean};

		// マッピング処理（上り）
		mapper.setGETCDNMCTLCC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
		mapper.setCRSV009401SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
		mapper.setCRSV009402SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
		mapper.setCRSV009403SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
		mapper.setCRSV009404SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
		mapper.setGETSEIKYKEI1RCC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
		mapper.setGETCUST1ICC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);

		// サービス実行結果データ用Map
		HashMap<String, Object> outputMap = new HashMap<String, Object>();

		// サービス実行
		invokeService(paramMap, dataMap, outputMap);

		// -------------------------------------------------- //
		// (4)サービス処理結果の設定
		// -------------------------------------------------- //
		// マッピング処理（下り）
		mapper.getGETCDNMCTLCC(paramBean, outputMap);
		mapper.getCRSV009401SC(paramBean, outputMap);
		mapper.getCRSV009402SC(paramBean, outputMap);
		mapper.getCRSV009403SC(paramBean, outputMap);
		mapper.getCRSV009404SC(paramBean, outputMap);
		mapper.getGETSEIKYKEI1RCC(paramBean, outputMap);
		mapper.getGETCUST1ICC(paramBean, outputMap);

		// 初期値設定
		setDefault(bean);

		// 初期表示時の内容を退避
		saveBeanToWork(bean);

		// -------------------------------------------------- //
		// (5)引継情報の設定
		// -------------------------------------------------- //
		// なし。
		
		// -------------------------------------------------- //
		// (6)共有フォームBeanの設定
		// -------------------------------------------------- //
		// 遷移先画面IDを共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_ID_CRW02603);

		// 遷移先画面名を共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_NAME_CRW02603);

		return true;
	}

	/**
	 * 住所検索ボタン押下処理を行う。<br>
	 * <br>
	 * 住所検索ボタンが押された時、引継情報を渡し住所検索画面をポップアップで表示する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean searchAd() throws Exception
	{

		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// 共有フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// -------------------------------------------------- //
		// (1)引継情報の取得
		// -------------------------------------------------- //
		JCCWebCommon.getScreenInfo(this);

		// -------------------------------------------------- //
		// (2)サービスフォームBeanの設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (3)サービス呼出処理
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (4)サービス処理結果の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (5)引継情報の設定
		// -------------------------------------------------- //
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		for (int iCnt = 0 ; iCnt < KEYSEARCHCONDITION.length ; iCnt++)
		{
			String strValue = bean.sendMessageString(KEYSEARCHCONDITION[iCnt][DATABEAN_KEY], X31CWebConst.DATABEAN_GET_VALUE);
			dataMap.put(KEYSEARCHCONDITION[iCnt][SEARCH_KEY], strValue);
		}
		// 機能コードの設定
		dataMap.put(JZMStrConst.key_func_cd, JPCModelConstant.FUNC_CD_1);

		// 子画面に親画面の画面IDを設定
		JCCWebCommon.setScreenId(this, JZMScreenConst.SCREEN_ID_ZMW10601, JCRScreenConst.SCREEN_ID_CRW02603);

		// 遷移先画面に渡す情報を設定
		JCRWebCommon.setScreenInfo(this, JZMScreenConst.SCREEN_ID_ZMW10601, dataMap);

		// -------------------------------------------------- //
		// (6)遷移先画面の設定
		// -------------------------------------------------- //
		// 遷移先画面IDを共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JZMScreenConst.SCREEN_ID_ZMW10601);

		// 遷移先画面名を共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JZMScreenConst.SCREEN_NAME_ZMW10601);

		return true;
	}

	/**
	 * 更新確認処理を行う。<br>
	 * <br>
	 * 入力チェックを行い、エラーがない場合は、問合せ客情報更新確認画面に遷移する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean confirmUpd() throws Exception
	{
		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// 共有フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// -------------------------------------------------- //
		// (1)引継情報の取得
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (2)サービスフォームBeanの設定
		// -------------------------------------------------- //
		// 入力項目の値を表示用領域に編集
		editBeanToDisplay(bean);

		// -------------------------------------------------- //
		// (3)サービス呼出処理
		// -------------------------------------------------- //
		// マッピングクラスを使用する為、配列化
		X31SDataBeanAccess[] paramBean = {bean};

		// ユースケースID格納用マップ
		HashMap<Object, String> paramMap = new HashMap<Object, String>();

		// ユースケースID格納
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "CRSV0095");

		// マッピング用Map
		HashMap<String, Object> dataMap = new HashMap<String, Object>();

		// マッピングクラス
		CRSV0095_CRSV0095OPDBMapper mapper = new CRSV0095_CRSV0095OPDBMapper();

		// マッピング処理（上り）
		// 問合せ客
		if((OUTPUTMODE_PROSCST).equals(bean.sendMessageString(CRW02603SFConst.OUTPUT_MODE, X31CWebConst.DATABEAN_GET_VALUE)))
		{
			mapper.setCRSV009501SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
		}
		else
		{
			// お客様
			if((KEISHA_TYPE_KOJIN).equals(bean.sendMessageString(CRW02603SFConst.KEISHA_TYPE_CD, X31CWebConst.DATABEAN_GET_VALUE)))
			{
				mapper.setCRSV009502SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
			}
			else
			{
				mapper.setCRSV009503SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
			}

			// 連絡先
			if(JCRUtilCommon.isNull(bean.sendMessageString(CRW02603SFConst.RRKS_NO, X31CWebConst.DATABEAN_GET_VALUE)))
			{
				// 登録
				mapper.setCRSV009504SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
			}
			else
			{
				// 更新
				mapper.setCRSV009505SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
			}
	        // 20170210 ANK-2928-00-00  ADD  START
			// 連絡先２
			if(JCRUtilCommon.isNull(bean.sendMessageString(CRW02603SFConst.RRKS_NO2, X31CWebConst.DATABEAN_GET_VALUE)))
			{
				// 登録
				mapper.setCRSV009506SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
			}
			else
			{
				// 更新
				mapper.setCRSV009507SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
			}
			// 連絡先３
			if(JCRUtilCommon.isNull(bean.sendMessageString(CRW02603SFConst.RRKS_NO3, X31CWebConst.DATABEAN_GET_VALUE)))
			{
				// 登録
				mapper.setCRSV009508SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
			}
			else
			{
				// 更新
				mapper.setCRSV009509SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_2);
			}
	        // 20170210 ANK-2928-00-00  ADD  END
		}

		
		// サービス実行結果データ用Map
		HashMap<String, Object> outputMap = new HashMap<String, Object>();

		// サービス実行
		invokeService(paramMap, dataMap, outputMap);

		// -------------------------------------------------- //
		// (4)サービス処理結果の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (5)引継情報の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (6)共有フォームBeanの設定
		// -------------------------------------------------- //
		// 遷移先画面IDを共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_ID_CRW02604);

		// 遷移先画面名を共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_NAME_CRW02604);

		return true;
	}

	/**
	 * 戻るボタン押下処理。<br>
	 * <br>
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean back() throws Exception
	{

		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// 共有フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// -------------------------------------------------- //
		// (1)引継情報の取得
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (2)サービスフォームBeanの設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (3)サービス呼出処理
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (4)サービス処理結果の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (5)引継情報の設定
		// -------------------------------------------------- //
		// 引き継ぎの情報を格納するMAPを生成する。 
		HashMap<String, Object> dataMap = new HashMap<String, Object>();

		dataMap.put(CRW02501SFConst.SVC_KEI_NO,
				bean.sendMessageString(CRW02603SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CRW02501SFConst.SVC_KEI_UCWK_NO,
				bean.sendMessageString(CRW02603SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CRW02501SFConst.SVC_KEI_KAISEN_UCWK_NO,
				bean.sendMessageString(CRW02603SFConst.SVC_KEI_KAISEN_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CRW02501SFConst.PROSCST_NO,
				bean.sendMessageString(CRW02603SFConst.PROSCST_NO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CRW02501SFConst.SYSID,
				bean.sendMessageString(CRW02603SFConst.SYSID, X31CWebConst.DATABEAN_GET_VALUE));

		// 画面情報設定部品（JCCWebCommon.setScreenInfo)を使用し、次画面への引継情報を設定する。
		JCRWebCommon.setScreenInfo(this, JCRScreenConst.SCREEN_ID_CRW02501, dataMap);

		// -------------------------------------------------- //
		// (6)遷移先画面の設定
		// -------------------------------------------------- //
		// 遷移先画面IDを共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_ID_CRW02501);

		// 遷移先画面名を共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_NAME_CRW02501);

		return true;
	}

	/**
	 * クリアボタン押下処理。<br>
	 * <br>
	 * 画面の入力項目をクリアし、
	 * 問合せ客情報更新画面を初期表示した状態に戻します。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean clear() throws Exception
	{
		// -------------------------------------------------- //
		// (1)引継情報の取得
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (2)サービスフォームBeanの設定
		// -------------------------------------------------- //
		// なし。
		
		// -------------------------------------------------- //
		// (3)サービス呼出処理
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (4)サービス処理結果の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (5)引継情報の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (6)遷移先画面の設定
		// -------------------------------------------------- //
		// なし。
		
		// -------------------------------------------------- //
		// (7)その他
		// -------------------------------------------------- //
		// 初期表示処理
		initUpd();

		return true;
	}

	/**
	 * リフレッシュ処理（住所検索画面からの値反映）を行う。<br>
	 * <br>
	 * 住所検索画面からの引継情報を受け取り、問合せ客情報更新画面をリフレッシュする。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean refreshAfterSearchAd() throws Exception
	{

		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// 共有フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// -------------------------------------------------- //
		// (1)引継情報の取得
		// -------------------------------------------------- //
		//子画面からの情報を取得し、サービスフォームBeanへセットする。
		HashMap<String, Object> map = JCCWebCommon.getScreenInfo(this);

		// -------------------------------------------------- //
		// (2)サービスフォームBeanの設定
		// -------------------------------------------------- //
		for (int iCnt = 0; iCnt < KEYRESULT.length; iCnt++)
		{
			String strValue = (String)map.get(KEYRESULT[iCnt][RESULT_KEY]);
			if (!JCRUtilCommon.isNull(strValue))
			{
				bean.sendMessageString(KEYRESULT[iCnt][RESULT_DATABEAN_KEY], X31CWebConst.DATABEAN_SET_VALUE, strValue);
			}
		}

		// -------------------------------------------------- //
		// (3)サービス呼出処理
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (4)サービス処理結果の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (5)引継情報の設定
		// -------------------------------------------------- //

		// -------------------------------------------------- //
		// (6)遷移先画面の設定
		// -------------------------------------------------- //
		// 遷移先画面IDを共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_ID_CRW02603);

		// 遷移先画面名を共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_NAME_CRW02603);

		return true;
	}

	/**
	 * 確定処理を行う。<br>
	 * <br>
	 * 問合せ客情報更新を確定する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean fix() throws Exception
	{

		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// 共有フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// -------------------------------------------------- //
		// (1)引継情報の取得
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (2)サービスフォームBeanの設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (3)サービス呼出処理
		// -------------------------------------------------- //
		// マッピングクラスを使用する為、配列化
		X31SDataBeanAccess[] paramBean = {bean};

		// ユースケースID格納用マップ
		HashMap<Object, String> paramMap = new HashMap<Object, String>();

		// ユースケースID格納
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "CRSV0095");

		// マッピング用Map
		HashMap<String, Object> dataMap = new HashMap<String, Object>();

		// マッピングクラス
		CRSV0095_CRSV0095OPDBMapper mapper = new CRSV0095_CRSV0095OPDBMapper();

		// マッピング処理（上り）
		if((OUTPUTMODE_PROSCST).equals(bean.sendMessageString(CRW02603SFConst.OUTPUT_MODE, X31CWebConst.DATABEAN_GET_VALUE)))
		{
			// 問合せ客
			mapper.setCRSV009501SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
		}
		else
		{
			if((KEISHA_TYPE_KOJIN).equals(bean.sendMessageString(CRW02603SFConst.KEISHA_TYPE_CD, X31CWebConst.DATABEAN_GET_VALUE)))
			{
				// お客様（個人）
				mapper.setCRSV009502SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
			}
			else
			{
				// お客様（法人）
				mapper.setCRSV009503SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
			}

			// 連絡先
			if(JCRUtilCommon.isNull(bean.sendMessageString(CRW02603SFConst.RRKS_NO, X31CWebConst.DATABEAN_GET_VALUE)))
			{
				// 登録
				mapper.setCRSV009504SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
			}
			else
			{
				// 更新
				mapper.setCRSV009505SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
			}
	        // 20170210 ANK-2928-00-00  ADD  START
			// 連絡先２
			if(JCRUtilCommon.isNull(bean.sendMessageString(CRW02603SFConst.RRKS_NO2, X31CWebConst.DATABEAN_GET_VALUE)))
			{
				// 登録
				mapper.setCRSV009506SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
			}
			else
			{
				// 更新
				mapper.setCRSV009507SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
			}
			// 連絡先３
			if(JCRUtilCommon.isNull(bean.sendMessageString(CRW02603SFConst.RRKS_NO3, X31CWebConst.DATABEAN_GET_VALUE)))
			{
				// 登録
				mapper.setCRSV009508SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
			}
			else
			{
				// 更新
				mapper.setCRSV009509SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
			}
	        // 20170210 ANK-2928-00-00  ADD  END
		}

		// サービス実行結果データ用Map
		HashMap<String, Object> outputMap = new HashMap<String, Object>();

		// サービス実行
		invokeService(paramMap, dataMap, outputMap);

		// -------------------------------------------------- //
		// (4)サービス処理結果の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (5)引継情報の設定
		// -------------------------------------------------- //
		String screenId = JCRWebCommon.getScreenId(this);

		if (!JCRScreenConst.SCREEN_ID_CRW02501.equals(screenId))
		{
			// 遷移先画面に渡す情報用HashMap
			HashMap<String, Object> hktgMap = new HashMap<String, Object>();

			hktgMap.put(CRW01201SFConst.SVC_KEI_NO,
					bean.sendMessageString(CRW02603SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
			hktgMap.put(CRW01201SFConst.PROSCST_NO,
					bean.sendMessageString(CRW02603SFConst.PROSCST_NO, X31CWebConst.DATABEAN_GET_VALUE));

			// 遷移先画面に渡す情報を設定
			JCRWebCommon.setScreenInfo(this, screenId, hktgMap);
		}

		// -------------------------------------------------- //
		// (6)遷移先画面の設定
		// -------------------------------------------------- //
		if (bean.sendMessageBoolean(CRW02603SFConst.SHOW_MODALESS_FLG, X31CWebConst.DATABEAN_GET_VALUE))
		{
			// 遷移先画面IDを共有フォームBeanに設定
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
					JCCScreenConst.SCREEN_ID_CCW00104);

			// 遷移先画面名を共有フォームBeanに設定
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
					JCCScreenConst.SCREEN_NAME_CCW00104);
		}
		else
		{
			// 遷移先画面IDを共有フォームBeanに設定
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
					JCCScreenConst.SCREEN_ID_CCW00105);

			// 遷移先画面名を共有フォームBeanに設定
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
					JCCScreenConst.SCREEN_NAME_CCW00105);
		}

		return true;
	}

	/**
	 * キャンセル処理を行う。<br>
	 * <br>
	 * 問合せ客情報更新確認画面に戻る。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean cancel() throws Exception
	{

		// 共有フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// -------------------------------------------------- //
		// (1)引継情報の取得
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (2)サービスフォームBeanの設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (3)サービス呼出処理
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (4)サービス処理結果の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (5)引継情報の設定
		// -------------------------------------------------- //
		// なし。

		// -------------------------------------------------- //
		// (6)遷移先画面の設定
		// -------------------------------------------------- //
		// 遷移先画面IDを共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_ID_CRW02603);

		// 遷移先画面名を共有フォームBeanに設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JCRScreenConst.SCREEN_NAME_CRW02603);

		return true;
	}

	/**
	 * サービスフォームBeanのクリア処理<br>
	 * <br>
	 * サービスフォームBeanの引継ぎ項目以外の値をクリアします。
	 * 引継ぎ項目：引継用対応記録番号、引継用更新年月日時分秒、タブID
	 * 
	 */
	private void clearBean()
	{
		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// サービスフォームBeanの項目をクリアする。
		bean.getDataBeanArray(CRW02603SFConst.RRK_WAY).clearArray();
		bean.getDataBeanArray(CRW02603SFConst.GENGO).clearArray();
		bean.getDataBeanArray(CRW02603SFConst.CUST_RANK).clearArray();
	}	
	
	/**
	 * 初期値設定処理<br>
	 * <br>
	 * 初期値設定を行う。
	 * @param bean 
	 */
	private void setDefault(X31SDataBeanAccess bean) 
	{
		// 西暦和暦区分：[和暦]
		bean.sendMessageString(CRW02603SFConst.SEIREKI_WAREKI_KBN, X31CWebConst.DATABEAN_SET_VALUE, SEIREKI_WAREKI_KBN_WAREKI);

		X31SDataBeanAccess rrkwaybean = bean.getDataBeanArray(CRW02603SFConst.RRK_WAY).getDataBean(0);
		String rrkwayCode = bean.sendMessageString(CRW02603SFConst.RRK_WAY_CD, X31CWebConst.DATABEAN_GET_VALUE);
		rrkwaybean.sendMessageString(CRW02603SFConst.L0_RRK_WAY_IDX_01, X31CWebConst.DATABEAN_SET_VALUE, 
				JCRWebCommon.getPullDownIndex(bean, rrkwayCode, CRW02603SFConst.RRK_WAY, CRW02603SFConst.L0_RRK_WAY_CD_01));

		X31SDataBeanAccess rankbean = bean.getDataBeanArray(CRW02603SFConst.CUST_RANK).getDataBean(0);
		String rankCode = bean.sendMessageString(CRW02603SFConst.RANK_CD, X31CWebConst.DATABEAN_GET_VALUE);
		rankbean.sendMessageString(CRW02603SFConst.L2_CUST_RANK_IDX_03, X31CWebConst.DATABEAN_SET_VALUE, 
				JCRWebCommon.getPullDownIndex(bean, rankCode, CRW02603SFConst.CUST_RANK, CRW02603SFConst.L2_CUST_RANK_CD_03));

		String gengo_cd = bean.sendMessageString(CRW02603SFConst.GENGO_CD, X31CWebConst.DATABEAN_GET_VALUE);
		if (JCRUtilCommon.isNull(gengo_cd))
		{
//			// 和暦：[3.昭和]
//			gengo_cd = "3";

			// 元号：[昭和]
			X31SDataBeanAccess comboBean = bean.getDataBeanArray(CRW02603SFConst.GENGO).getDataBean(0);
			int itemCount = ((Integer)(comboBean.sendMessage(CRW02603SFConst.L1_GENGO_CD_02, X31CWebConst.DATABEAN_GET_COUNT))).intValue();
			for (int i = 0; i < itemCount; i++)
			{
				// 元号リスト.元号コードリストが"3"(昭和)の場合
				if (!JCRUtilCommon.isNull(comboBean.sendMessageString(CRW02603SFConst.L1_GENGO_CD_02, X31CWebConst.DATABEAN_GET_VALUE, i))
					&& comboBean.sendMessageString(CRW02603SFConst.L1_GENGO_CD_02, X31CWebConst.DATABEAN_GET_VALUE, i).equals(GENGO_SHOWA))
				{
					gengo_cd = String.valueOf(i);
					break;
				}
			}
		}
		String selectedIndex = JCRWebCommon.getPullDownIndex(bean, gengo_cd, CRW02603SFConst.GENGO, CRW02603SFConst.L1_GENGO_CD_02);
		X31SDataBeanAccess gengobean = bean.getDataBeanArray(CRW02603SFConst.GENGO).getDataBean(0);
		gengobean.sendMessageString(CRW02603SFConst.L1_GENGO_IDX_02, X31CWebConst.DATABEAN_SET_VALUE, selectedIndex);

	}

	/**
	 * サービスフォームBean退避処理
	 * サービスフォームBeanの入力項目の値を退避領域にコピーします。
	 *
	 * @param bean X31SDataBeanAccess
	 */
	private void saveBeanToWork(X31SDataBeanAccess bean) 
	{
		X31SDataBeanAccess rrkwaybean = bean.getDataBeanArray(CRW02603SFConst.RRK_WAY).getDataBean(0);
		bean.sendMessageString(CRW02603SFConst.BK_RRK_WAY_IDX, X31CWebConst.DATABEAN_SET_VALUE, 
				rrkwaybean.sendMessageString(CRW02603SFConst.L0_RRK_WAY_IDX_01, X31CWebConst.DATABEAN_GET_VALUE));
		bean.sendMessageString(CRW02603SFConst.BK_RRK_WAY_HOKI, X31CWebConst.DATABEAN_SET_VALUE,
				bean.sendMessageString(CRW02603SFConst.RRK_WAY_HOKI, X31CWebConst.DATABEAN_GET_VALUE));
		bean.sendMessageString(CRW02603SFConst.BK_BIKO, X31CWebConst.DATABEAN_SET_VALUE,
				bean.sendMessageString(CRW02603SFConst.BIKO, X31CWebConst.DATABEAN_GET_VALUE));
		X31SDataBeanAccess rankbean = bean.getDataBeanArray(CRW02603SFConst.CUST_RANK).getDataBean(0);
		bean.sendMessageString(CRW02603SFConst.BK_CUST_RANK_IDX, X31CWebConst.DATABEAN_SET_VALUE, 
				rankbean.sendMessageString(CRW02603SFConst.L2_CUST_RANK_IDX_03, X31CWebConst.DATABEAN_GET_VALUE));
		bean.sendMessageBoolean(CRW02603SFConst.BK_DEL_TRGT_GAI_FLG, X31CWebConst.DATABEAN_SET_VALUE, 
				bean.sendMessageBoolean(CRW02603SFConst.DEL_TRGT_GAI_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		bean.sendMessageString(CRW02603SFConst.BK_SKK_AD, X31CWebConst.DATABEAN_SET_VALUE,
				bean.sendMessageString(CRW02603SFConst.SKK_AD, X31CWebConst.DATABEAN_GET_VALUE));
        // 20170210 ANK-2928-00-00  ADD  START
		bean.sendMessageString(CRW02603SFConst.BK_SKK_AD_2, X31CWebConst.DATABEAN_SET_VALUE,
				bean.sendMessageString(CRW02603SFConst.SKK_AD_2, X31CWebConst.DATABEAN_GET_VALUE));
		bean.sendMessageString(CRW02603SFConst.BK_SKK_AD_3, X31CWebConst.DATABEAN_SET_VALUE,
				bean.sendMessageString(CRW02603SFConst.SKK_AD_3, X31CWebConst.DATABEAN_GET_VALUE));
        // 20170210 ANK-2928-00-00  ADD  END

		// 問合せ客の場合
		if((OUTPUTMODE_PROSCST).equals(bean.sendMessageString(CRW02603SFConst.OUTPUT_MODE, X31CWebConst.DATABEAN_GET_VALUE)))
		{
			bean.sendMessageString(CRW02603SFConst.BK_NM, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.NM, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_KANA, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.KANA, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_SEX_CD, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.SEX_CD, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_SEIREKI_WAREKI_KBN, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.SEIREKI_WAREKI_KBN, X31CWebConst.DATABEAN_GET_VALUE));
			X31SDataBeanAccess gengobean = bean.getDataBeanArray(CRW02603SFConst.GENGO).getDataBean(0);
			bean.sendMessageString(CRW02603SFConst.BK_GENGO_IDX, X31CWebConst.DATABEAN_SET_VALUE,
					gengobean.sendMessageString(CRW02603SFConst.L1_GENGO_IDX_02, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_WAREKI_BIRTHD_YEAR, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.WAREKI_BIRTHD_YEAR, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_WAREKI_BIRTHD_MONTH, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.WAREKI_BIRTHD_MONTH, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_WAREKI_BIRTHD_DAY, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.WAREKI_BIRTHD_DAY, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_PCD_1, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.PCD_1, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_PCD_2, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.PCD_2, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_STATE_NM, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.STATE_NM, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_CITY_NM, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.CITY_NM, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_OAZTSU_NM, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.OAZTSU_NM, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_AZCHO_NM, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.AZCHO_NM, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.BNCHIGO, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_ADRTTM, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.ADRTTM, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_ADRRM, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.ADRRM, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_TELNO, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.TELNO, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_KTAI_TELNO, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.KTAI_TELNO, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_MLAD, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.MLAD, X31CWebConst.DATABEAN_GET_VALUE));
			bean.sendMessageString(CRW02603SFConst.BK_MSKMSHO_NO, X31CWebConst.DATABEAN_SET_VALUE,
					bean.sendMessageString(CRW02603SFConst.MSKMSHO_NO, X31CWebConst.DATABEAN_GET_VALUE));
		}
	}

	/**
	 * サービスフォームBean編集処理
	 * サービスフォームBeanの入力項目の値を表示用領域に編集します。
	 *
	 * @param bean X31SDataBeanAccess
	 */
	private void editBeanToDisplay(X31SDataBeanAccess bean) 
	{
		// 連絡手段プルダウン項目名
		bean.sendMessageString(CRW02603SFConst.DISPLAY_RRK_WAY, X31CWebConst.DATABEAN_SET_VALUE
				, JCRWebCommon.getPullDownName(bean, CRW02603SFConst.RRK_WAY, CRW02603SFConst.L0_RRK_WAY_IDX_01
				, CRW02603SFConst.L0_RRK_WAY_CD_01, CRW02603SFConst.L0_RRK_WAY_NM_01));

		// お客様ランクプルダウン項目名
		bean.sendMessageString(CRW02603SFConst.DISPLAY_CUST_RANK, X31CWebConst.DATABEAN_SET_VALUE
				, JCRWebCommon.getPullDownName(bean, CRW02603SFConst.CUST_RANK, CRW02603SFConst.L2_CUST_RANK_IDX_03
				, CRW02603SFConst.L2_CUST_RANK_CD_03, CRW02603SFConst.L2_CUST_RANK_NM_03));
		
		// 問合せ客の場合
		if ((OUTPUTMODE_PROSCST).equals(bean.sendMessageString(CRW02603SFConst.OUTPUT_MODE, X31CWebConst.DATABEAN_GET_VALUE)))
		{
			// 問合せ客性別名
			String sexcd = bean.sendMessageString(CRW02603SFConst.SEX_CD, X31CWebConst.DATABEAN_GET_VALUE);
			if (JCRStrConst.PROSCST_SEX_CD_MALE.equals(sexcd))
			{
				// 男性の場合
				bean.sendMessageString(CRW02603SFConst.DISPLAY_SEX, X31CWebConst.DATABEAN_SET_VALUE, JCRStrConst.PROSCST_SEX_CD_NM_MALE);
			}
			else if (JCRStrConst.PROSCST_SEX_CD_FEMALE.equals(sexcd))
			{
				// 女性の場合
				bean.sendMessageString(CRW02603SFConst.DISPLAY_SEX, X31CWebConst.DATABEAN_SET_VALUE, JCRStrConst.PROSCST_SEX_CD_NM_FEMALE);
			}
	
			// 生年月日
			String seireki = null;
			String wareki = null;
			String seirekiwarekikbn = bean.sendMessageString(CRW02603SFConst.SEIREKI_WAREKI_KBN, X31CWebConst.DATABEAN_GET_VALUE);
			bean.sendMessageString(CRW02603SFConst.DISPLAY_BIRTHD_SEIREKI, X31CWebConst.DATABEAN_SET_VALUE, "");
			bean.sendMessageString(CRW02603SFConst.DISPLAY_BIRTHD_WAREKI, X31CWebConst.DATABEAN_SET_VALUE, "");

			if (JCRStrConst.YEAR_DISPLAY_KBN_WAREKI.equals(seirekiwarekikbn))
			{
				// 和暦入力の場合
				String gengoCd = JCRWebCommon.getPullDownCode(bean, CRW02603SFConst.GENGO, CRW02603SFConst.L1_GENGO_IDX_02, CRW02603SFConst.L1_GENGO_CD_02);
				String gengo = JCRWebCommon.getGengoS(gengoCd);
	
				if (!JCRUtilCommon.isNull(bean.sendMessageString(CRW02603SFConst.WAREKI_BIRTHD_YEAR, X31CWebConst.DATABEAN_GET_VALUE))) 
				{
					String wareki1 = gengo +
							bean.sendMessageString(CRW02603SFConst.WAREKI_BIRTHD_YEAR, X31CWebConst.DATABEAN_GET_VALUE) +
							bean.sendMessageString(CRW02603SFConst.WAREKI_BIRTHD_MONTH, X31CWebConst.DATABEAN_GET_VALUE) +
							bean.sendMessageString(CRW02603SFConst.WAREKI_BIRTHD_DAY, X31CWebConst.DATABEAN_GET_VALUE);
					// 和暦年月日を編集
					wareki = JCRWebCommon.toCcString(wareki1);
					// 和暦⇒西暦変換
					seireki = JCRUtilCommon.formatDate(JCRWebCommon.toWestCalendar(wareki1), 
								JCRStrConst.FMT_YMD, JCRStrConst.FMT_EDIT_YMD_SEIREKI_JAPANESE_CHARACTER);
				}
			}
			else if (JCRStrConst.YEAR_DISPLAY_KBN_SEIREKI.equals(seirekiwarekikbn))
			{
				if (!JCRUtilCommon.isNull(bean.sendMessageString(CRW02603SFConst.SEIREKI_BIRTHD_YEAR, X31CWebConst.DATABEAN_GET_VALUE)))
				{
					// 西暦入力の場合
					String seirekiDate = JCRWebCommon.concatYmd(bean.sendMessageString(CRW02603SFConst.SEIREKI_BIRTHD_YEAR, X31CWebConst.DATABEAN_GET_VALUE),
							bean.sendMessageString(CRW02603SFConst.SEIREKI_BIRTHD_MONTH, X31CWebConst.DATABEAN_GET_VALUE),
							bean.sendMessageString(CRW02603SFConst.SEIREKI_BIRTHD_DAY, X31CWebConst.DATABEAN_GET_VALUE));
					// 西暦年月日を編集
					seireki = JCRUtilCommon.formatDate(seirekiDate, 
								JCRStrConst.FMT_YMD, JCRStrConst.FMT_EDIT_YMD_SEIREKI_JAPANESE_CHARACTER);
					// 西暦⇒和暦変換
					wareki = JCRWebCommon.getJapaneseCalendar(seirekiDate);
				}
			}
			// 表示用生年月日
			if (!JCRUtilCommon.isNull(seireki))
			{
				bean.sendMessageString(CRW02603SFConst.DISPLAY_BIRTHD_SEIREKI, X31CWebConst.DATABEAN_SET_VALUE, " (" + seireki + ")");
			}
			bean.sendMessageString(CRW02603SFConst.DISPLAY_BIRTHD_WAREKI, X31CWebConst.DATABEAN_SET_VALUE, wareki);
	
			// 表示用郵便番号
			bean.sendMessageString(CRW02603SFConst.DISPLAY_PCD, X31CWebConst.DATABEAN_SET_VALUE, JCRWebCommon.getZipCodeCharactor(
					bean.sendMessageString(CRW02603SFConst.PCD_1, X31CWebConst.DATABEAN_GET_VALUE) + 
					bean.sendMessageString(CRW02603SFConst.PCD_2, X31CWebConst.DATABEAN_GET_VALUE)));

			// 表示用名
			bean.sendMessageString(CRW02603SFConst.DISPLAY_NM, X31CWebConst.DATABEAN_SET_VALUE, 
					bean.sendMessageString(CRW02603SFConst.NM, X31CWebConst.DATABEAN_GET_VALUE));
			// 表示用カナ名
			bean.sendMessageString(CRW02603SFConst.DISPLAY_KANA, X31CWebConst.DATABEAN_SET_VALUE, 
					bean.sendMessageString(CRW02603SFConst.KANA, X31CWebConst.DATABEAN_GET_VALUE));
			// 表示用都道府県名
			bean.sendMessageString(CRW02603SFConst.DISPLAY_STATE_NM, X31CWebConst.DATABEAN_SET_VALUE, 
					bean.sendMessageString(CRW02603SFConst.STATE_NM, X31CWebConst.DATABEAN_GET_VALUE));
			// 表示用市区町村名
			bean.sendMessageString(CRW02603SFConst.DISPLAY_CITY_NM, X31CWebConst.DATABEAN_SET_VALUE, 
					bean.sendMessageString(CRW02603SFConst.CITY_NM, X31CWebConst.DATABEAN_GET_VALUE));
			// 表示用大字通称名
			bean.sendMessageString(CRW02603SFConst.DISPLAY_OAZTSU_NM, X31CWebConst.DATABEAN_SET_VALUE, 
					bean.sendMessageString(CRW02603SFConst.OAZTSU_NM, X31CWebConst.DATABEAN_GET_VALUE));
			// 表示用字丁目名
			bean.sendMessageString(CRW02603SFConst.DISPLAY_AZCHO_NM, X31CWebConst.DATABEAN_SET_VALUE, 
					bean.sendMessageString(CRW02603SFConst.AZCHO_NM, X31CWebConst.DATABEAN_GET_VALUE));
			// 表示用番地・号
			bean.sendMessageString(CRW02603SFConst.DISPLAY_BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE, 
					bean.sendMessageString(CRW02603SFConst.BNCHIGO, X31CWebConst.DATABEAN_GET_VALUE));
			// 表示用建物名
			bean.sendMessageString(CRW02603SFConst.DISPLAY_ADRTTM, X31CWebConst.DATABEAN_SET_VALUE, 
					bean.sendMessageString(CRW02603SFConst.ADRTTM, X31CWebConst.DATABEAN_GET_VALUE));
			// 表示用部屋番号
			bean.sendMessageString(CRW02603SFConst.DISPLAY_ADRRM, X31CWebConst.DATABEAN_SET_VALUE, 
					bean.sendMessageString(CRW02603SFConst.ADRRM, X31CWebConst.DATABEAN_GET_VALUE));
		}
	}
}
