/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom, 2011
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：コード名称管理一覧照会ViewLogic
*   ソースファイル名：ZMW07101SFLogic.java
*   作成者          ：富士通
*   日付            ：2011年05月12日
*＜機能概要＞
*   コード名称管理一覧照会ViewLogicです。
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*	v1.00		2011/05/12   FJ) 木田	新規作成
*
**********************************************************************/

package eo.web.webview.ZMW07101SF;

import java.util.HashMap;

import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccessArray;

import eo.common.constant.JPCModelConstant;
import eo.common.constant.JPCOnlineMessageConstant;
import eo.common.constant.JZMStrConst;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.common.JZMScreenConst;
import eo.web.webview.common.JZMWebCommon;
import eo.web.webview.common.JZMWebConst;
import eo.web.webview.mapping.ZMSV0009_ZMSV0009OPDBMapper;

/**
 * コード名称管理一覧照会ViewLogic。
 * @author FJ
 */
@SuppressWarnings("serial")
public class ZMW07101SFLogic  extends JCCWebBusinessLogic
{

	/** 機能コード1  */
	private static final String FUNC_CD_1 = JPCModelConstant.FUNC_CD_1;
	
	/**
	 * 初期表示処理.<br>
	 * 初期表示を行う。
	 * 
	 * @return boolean
	 * @exception Exception Exception
	 */
	@SuppressWarnings("unchecked")
	public boolean init() throws Exception
	{
		
		// セッション情報取得
		HashMap<String, Object> searchInfo = JZMWebCommon.getScreenInfo(this);
		
		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();
				
		// 共通フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// ユースケースID格納用マップ
		HashMap paramMap = new HashMap();

		// マッピング用Map
		HashMap dataMap = new HashMap();

		// サービス実行結果データ用Map
		HashMap outputMap = new HashMap();

		if(searchInfo != null)
		{
			
			// 削除完了画面からの遷移の場合ページリンク情報と選択コード種別コードを削除する
			if(JZMWebCommon.getScreenInfo(this, JZMScreenConst.SCREEN_ID_ZMW07402) != null)
			{
				JZMWebCommon.clearPageLinkInfo(this, this.getGamenId());
				bean.sendMessageString(ZMW07101SFConst.CHOICE_CD_SBT_CD,
						X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.BLANK);
			}
			
			// 検索フラグに"1"をセット
			bean.sendMessageString(ZMW07101SFConst.SEARCH_FLG,
					X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_ON);
	
			// 明細表示フラグに"0"をセット
			bean.sendMessageString(ZMW07101SFConst.DTL_DSP_FLG,
					X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_OFF);
			
			// コード種別コードをコード種別コード（表示用）にセット
			bean.sendMessageString(ZMW07101SFConst.DSP_CD_SBT_CD,
					X31CWebConst.DATABEAN_SET_VALUE, bean.sendMessageString(
							ZMW07101SFConst.CD_SBT_CD,
							X31CWebConst.DATABEAN_GET_VALUE));
			
			// コード種別名をコード種別名（表示用）にセット
			bean.sendMessageString(ZMW07101SFConst.DSP_CD_SBT_NM,
					X31CWebConst.DATABEAN_SET_VALUE, bean.sendMessageString(
							ZMW07101SFConst.CD_SBT_NM,
							X31CWebConst.DATABEAN_GET_VALUE));
			
			// 選択行をクリア
			bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.BLANK);
			
			// マッピングクラスを使用する為、配列化
			X31SDataBeanAccess[] paramBean = {bean};

			// ユースケースID格納
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JZMWebConst.SV09);

			// マッピングクラス
			ZMSV0009_ZMSV0009OPDBMapper mapper = new ZMSV0009_ZMSV0009OPDBMapper();

			// マッピング処理（上り）
			mapper.setZMSV000901CC(paramBean, dataMap, FUNC_CD_1);
			
			// ページング情報の設定
			JZMWebCommon.upmapperPageLinkInfo(this, JZMWebConst.CC0901, dataMap);
			
			// サービス実行
			invokeService(paramMap, dataMap, outputMap);
			
			// 一覧クリア
			bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST).clearArray();
			X31SDataBeanAccessArray dataList = bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST); 
			dataList.clearArray();
			
			// マッピング処理（下り）
			mapper.getZMSV000901CC(paramBean, outputMap);
			
			// ページング情報の設定
			JZMWebCommon.downmapperPageLinkInfo(this, JZMWebConst.CC0901, outputMap);
			
			// 検索エラーフラグの取得
			String searchErrFlg = JZMWebCommon.getSearchErrFlg(JZMWebConst.CC0901, outputMap);
			
			if (JPCModelConstant.SEARCH_ERR_FLG_ZERO.equals(searchErrFlg))
			{
				if(!JZMWebCommon.hasMsgList(commoninfoBean))
				{
					
					// 検索結果が0件の場合、エラーメッセージを表示
					JZMWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0330__I);
				}
			}
			else if (JPCModelConstant.SEARCH_ERR_FLG_OVERMAX.equals(searchErrFlg))
			{
				if(!JZMWebCommon.hasMsgList(commoninfoBean))
				{
					
					// 検索結果が最大検索件数を超える場合、エラーメッセージを表示
					String[] item = {JZMWebCommon.getSearchConst("ZMW07101_MAX_SHOW_CNT")};
					JZMWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0340__I, item);
				}
			}
			else if (JPCModelConstant.SEARCH_ERR_FLG_NODATA.equals(searchErrFlg))
			{
				if(!JZMWebCommon.hasMsgList(commoninfoBean))
				{
					
					// 表示ページに該当するデータが存在しない場合、エラーメッセージを表示
					JZMWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0350__I);
				}
				
				// 明細表示フラグに"1"をセット
				bean.sendMessageString(ZMW07101SFConst.DTL_DSP_FLG,
						X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_ON);
				
				// 先頭行の選択を選択状態にする
				bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.ZERO);
				
				// 背景色のスタイルクラスを設定
				JZMWebCommon.setRowStyleClass(bean, ZMW07101SFConst.EZM0171B011CBSMSG1LIST, ZMW07101SFConst.ROW_STYLE_CLASS_01);
			
			}
			else
			{
			
				dataList = bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST);
			
				// 明細表示フラグに"1"をセット
				bean.sendMessageString(ZMW07101SFConst.DTL_DSP_FLG,
						X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_ON);
				
				// 選択コード種別コード
				String choiceCdSbtCd = bean.sendMessageString(ZMW07101SFConst.CHOICE_CD_SBT_CD,
						X31CWebConst.DATABEAN_GET_VALUE);
				
				boolean sameflg = false;
				
				for (int i = 0; i < dataList.getCount(); i++) 
				{
					
					// コード区分情報Beanの取得
					X31SDataBeanAccess listBean = bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST).getDataBean(i);
					
					String cdSbtCd = listBean.sendMessageString(ZMW07101SFConst.CD_SBT_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
					
					if ((cdSbtCd).equals(choiceCdSbtCd)) 
					{
						
						// 一致するコードの選択を選択状態にする
						bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_SET_VALUE, Integer.toString(i));
						sameflg = true;
						break;
					}
					
				}
				
				if(!sameflg)
				{
					
					// 先頭行の選択を選択状態にする
					bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.ZERO);
				}
				
				// 背景色のスタイルクラスを設定
				JZMWebCommon.setRowStyleClass(bean, ZMW07101SFConst.EZM0171B011CBSMSG1LIST, ZMW07101SFConst.ROW_STYLE_CLASS_01);
			
			}
			
			// 検索コマンドID設定
			JZMWebCommon.setSearchCommand(this, JZMWebConst.EVENT_ID_PAGING);
			
		}
		
		// 戻り先IDの取得
		String screenId = JZMWebCommon.getScreenId(this);
		
		if(screenId != null)
		{
			
			// 戻り先IDの有無で戻るボタン表示フラグを表示する
			JZMWebCommon.setSendMessageString(bean, ZMW07101SFConst.BACK_BTN_DSP_FLG, JZMStrConst.FLG_ON);
		}
		
		
		// 遷移先画面ID、名称の設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_ID_ZMW07101);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_NAME_ZMW07101);
		
		return true;
	}

	/**
	 * 検索ボタン押下.<br>
	 * キーワード情報の一覧検索する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	@SuppressWarnings("unchecked")
	public boolean search() throws Exception 
	{

		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// 共通フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// ユースケースID格納用マップ
		HashMap paramMap = new HashMap();

		// マッピング用Map
		HashMap dataMap = new HashMap();

		// サービス実行結果データ用Map
		HashMap outputMap = new HashMap();

		// コード種別コード（表示用）をコード種別コードにセット
		bean.sendMessageString(ZMW07101SFConst.CD_SBT_CD,
				X31CWebConst.DATABEAN_SET_VALUE, bean.sendMessageString(
						ZMW07101SFConst.DSP_CD_SBT_CD,
						X31CWebConst.DATABEAN_GET_VALUE));
		
		// コード種別名（表示用）をコード種別名にセット
		bean.sendMessageString(ZMW07101SFConst.CD_SBT_NM,
				X31CWebConst.DATABEAN_SET_VALUE, bean.sendMessageString(
						ZMW07101SFConst.DSP_CD_SBT_NM,
						X31CWebConst.DATABEAN_GET_VALUE));
		
		// 検索フラグに"1"をセット
		bean.sendMessageString(ZMW07101SFConst.SEARCH_FLG,
				X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_ON);

		// 明細表示フラグに"0"をセット
		bean.sendMessageString(ZMW07101SFConst.DTL_DSP_FLG,
				X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_OFF);
		
		// 選択コード種別コードをクリア
		bean.sendMessageString(ZMW07101SFConst.CHOICE_CD_SBT_CD,
				X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.BLANK);
		
		// 選択行をクリア
		bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.BLANK);
		
		// マッピングクラスを使用する為、配列化
		X31SDataBeanAccess[] paramBean = {bean};

		// ユースケースID格納
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JZMWebConst.SV09);

		// マッピングクラス
		ZMSV0009_ZMSV0009OPDBMapper mapper = new ZMSV0009_ZMSV0009OPDBMapper();

		// マッピング処理（上り）
		mapper.setZMSV000901CC(paramBean, dataMap, FUNC_CD_1);
		
		// ページング情報をクリア
		JZMWebCommon.clearPageLinkInfo(this, JZMScreenConst.SCREEN_ID_ZMW07101);
		
		// ページング情報の設定
		JZMWebCommon.upmapperPageLinkInfo(this, JZMWebConst.CC0901, dataMap);
		
		// サービス実行
		invokeService(paramMap, dataMap, outputMap);
		
		// 一覧クリア
		bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST).clearArray();
		X31SDataBeanAccessArray dataList = bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST); 
		dataList.clearArray();
		
		// マッピング処理（下り）
		mapper.getZMSV000901CC(paramBean, outputMap);
		
		// ページング情報の設定
		JZMWebCommon.downmapperPageLinkInfo(this, JZMWebConst.CC0901, outputMap);
		
		// 検索エラーフラグの取得
		String searchErrFlg = JZMWebCommon.getSearchErrFlg(JZMWebConst.CC0901, outputMap);
		
		if (JPCModelConstant.SEARCH_ERR_FLG_ZERO.equals(searchErrFlg))
		{
			
			// 検索結果が0件の場合、エラーメッセージを表示
			JZMWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0330__I);
		}
		else if (JPCModelConstant.SEARCH_ERR_FLG_OVERMAX.equals(searchErrFlg))
		{
			
			// 検索結果が最大検索件数を超える場合、エラーメッセージを表示
			String[] item = {JZMWebCommon.getSearchConst("ZMW07101_MAX_SHOW_CNT")};
			JZMWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0340__I, item);
		}
		else
		{
			
			// 明細表示フラグに"1"をセット
			bean.sendMessageString(ZMW07101SFConst.DTL_DSP_FLG,
					X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_ON);
			
			// 先頭行の選択を選択状態にする
			bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.ZERO);
			
			// 背景色のスタイルクラスを設定
			JZMWebCommon.setRowStyleClass(bean, ZMW07101SFConst.EZM0171B011CBSMSG1LIST, ZMW07101SFConst.ROW_STYLE_CLASS_01);
		
		}
		
		// 検索コマンドID設定
		JZMWebCommon.setSearchCommand(this, JZMWebConst.EVENT_ID_PAGING);
		
		// 遷移先画面ID、名称の設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_ID_ZMW07101);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_NAME_ZMW07101);

		return true;
	}
	
	/**
	 * ページリンク押下.<br>
	 * キーワード情報の一覧検索する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	@SuppressWarnings("unchecked")
	public boolean paging() throws Exception 
	{

		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// 共通フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();

		// ユースケースID格納用マップ
		HashMap paramMap = new HashMap();

		// マッピング用Map
		HashMap dataMap = new HashMap();

		// サービス実行結果データ用Map
		HashMap outputMap = new HashMap();

		// コード種別コードをコード種別コード（表示用）にセット
		bean.sendMessageString(ZMW07101SFConst.DSP_CD_SBT_CD,
				X31CWebConst.DATABEAN_SET_VALUE, bean.sendMessageString(
						ZMW07101SFConst.CD_SBT_CD,
						X31CWebConst.DATABEAN_GET_VALUE));
		
		// コード種別名をコード種別名（表示用）にセット
		bean.sendMessageString(ZMW07101SFConst.DSP_CD_SBT_NM,
				X31CWebConst.DATABEAN_SET_VALUE, bean.sendMessageString(
						ZMW07101SFConst.CD_SBT_NM,
						X31CWebConst.DATABEAN_GET_VALUE));
		
		// 検索フラグに"1"をセット
		bean.sendMessageString(ZMW07101SFConst.SEARCH_FLG,
				X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_ON);

		// 明細表示フラグに"0"をセット
		bean.sendMessageString(ZMW07101SFConst.DTL_DSP_FLG,
				X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_OFF);
		
		// 選択コード種別コードをクリア
		bean.sendMessageString(ZMW07101SFConst.CHOICE_CD_SBT_CD,
				X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.BLANK);

		// マッピングクラスを使用する為、配列化
		X31SDataBeanAccess[] paramBean = {bean};

		// ユースケースID格納
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JZMWebConst.SV09);

		// マッピングクラス
		ZMSV0009_ZMSV0009OPDBMapper mapper = new ZMSV0009_ZMSV0009OPDBMapper();

		// マッピング処理（上り）
		mapper.setZMSV000901CC(paramBean, dataMap, FUNC_CD_1);
		
		// ページング情報の設定
		JZMWebCommon.upmapperPageLinkInfo(this, JZMWebConst.CC0901, dataMap);
		
		// サービス実行
		invokeService(paramMap, dataMap, outputMap);
		
		// 一覧クリア
		bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST).clearArray();
		X31SDataBeanAccessArray dataList = bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST); 
		dataList.clearArray();
		
		// マッピング処理（下り）
		mapper.getZMSV000901CC(paramBean, outputMap);
		
		// ページング情報の設定
		JZMWebCommon.downmapperPageLinkInfo(this, JZMWebConst.CC0901, outputMap);
		
		// 検索エラーフラグの取得
		String searchErrFlg = JZMWebCommon.getSearchErrFlg(JZMWebConst.CC0901, outputMap);
		
		if (JPCModelConstant.SEARCH_ERR_FLG_ZERO.equals(searchErrFlg))
		{
			
			// 検索結果が0件の場合、エラーメッセージを表示
			JZMWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0330__I);
		}
		else if (JPCModelConstant.SEARCH_ERR_FLG_OVERMAX.equals(searchErrFlg))
		{
			
			// 検索結果が最大検索件数を超える場合、エラーメッセージを表示
			String[] item = {JZMWebCommon.getSearchConst("ZMW07101_MAX_SHOW_CNT")};
			JZMWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0340__I, item);
		}
		else if (JPCModelConstant.SEARCH_ERR_FLG_NODATA.equals(searchErrFlg))
		{
			
			// 表示ページに該当するデータが存在しない場合、エラーメッセージを表示
			JZMWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0350__I);
			
			// 明細表示フラグに"1"をセット
			bean.sendMessageString(ZMW07101SFConst.DTL_DSP_FLG,
					X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_ON);
			
			// 先頭行の選択を選択状態にする
			bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.ZERO);
			
			// 背景色のスタイルクラスを設定
			JZMWebCommon.setRowStyleClass(bean, ZMW07101SFConst.EZM0171B011CBSMSG1LIST, ZMW07101SFConst.ROW_STYLE_CLASS_01);
			
		}
		else
		{
			
			// 明細表示フラグに"1"をセット
			bean.sendMessageString(ZMW07101SFConst.DTL_DSP_FLG,
					X31CWebConst.DATABEAN_SET_VALUE, JZMStrConst.FLG_ON);
			
			// 先頭行の選択を選択状態にする
			bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_SET_VALUE, JZMWebConst.ZERO);
			
			// 背景色のスタイルクラスを設定
			JZMWebCommon.setRowStyleClass(bean, ZMW07101SFConst.EZM0171B011CBSMSG1LIST, ZMW07101SFConst.ROW_STYLE_CLASS_01);
		
		}
		
		// 検索コマンドID設定
		JZMWebCommon.setSearchCommand(this, JZMWebConst.EVENT_ID_PAGING);
		
		// 遷移先画面ID、名称の設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_ID_ZMW07101);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_NAME_ZMW07101);

		return true;
	}
	
	/**
	 * 新規登録ボタン押下.<br>
	 * コード名称管理情報登録画面へ遷移する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean newAdd() throws Exception
	{
		
		// 共通フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();
		
		// 画面情報をセッションに設定
		this.setSessionInfo();
		
		// セッションに戻り先画面IDを設定
		JZMWebCommon.setScreenId(this, JZMScreenConst.SCREEN_ID_ZMW07201, JZMScreenConst.SCREEN_ID_ZMW07101);
		
		// セッションに戻り先画面IDを設定
		JZMWebCommon.setScreenId(this, JZMScreenConst.SCREEN_ID_ZMW07203, JZMScreenConst.SCREEN_ID_ZMW07101);
		
		// 遷移先画面ID、名称の設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_ID_ZMW07201);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_NAME_ZMW07201);
		
		return true;
	}
	
	/**
	 * 更新ボタン押下.<br>
	 * コード名称管理情報更新画面へ遷移する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean upd() throws Exception
	{
		
		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();
		
		// 共通フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();
		
		// 画面情報をセッションに設定
		this.setSessionInfo();
		
		// 情報格納用HashMapを初期化
		HashMap<String, Object> paramMap  = new HashMap<String, Object>();
		
		// 選択コード種別コード
		String choiceCdSbtCd = bean.sendMessageString(ZMW07101SFConst.CHOICE_CD_SBT_CD,
				X31CWebConst.DATABEAN_GET_VALUE);
		
		// セッションに渡す情報をHashMapに設定する
		paramMap.put(ZMW07101SFConst.CHOICE_CD_SBT_CD, choiceCdSbtCd);
		
		// セッションに渡す情報を設定
		JZMWebCommon.setScreenInfo(this, JZMScreenConst.SCREEN_ID_ZMW07301, paramMap);
		
		// セッションに戻り先画面IDを設定
		JZMWebCommon.setScreenId(this, JZMScreenConst.SCREEN_ID_ZMW07301, JZMScreenConst.SCREEN_ID_ZMW07101);
		
		// セッションに戻り先画面IDを設定
		JZMWebCommon.setScreenId(this, JZMScreenConst.SCREEN_ID_ZMW07303, JZMScreenConst.SCREEN_ID_ZMW07101);
		
		// 遷移先画面ID、名称の設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_ID_ZMW07301);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_NAME_ZMW07301);
		return true;
	}
	
	/**
	 * 削除ボタン押下.<br>
	 * コード名称管理情報削除画面へ遷移する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean del() throws Exception
	{
		
		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();
		
		// 共通フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();
		
		// 画面情報をセッションに設定
		this.setSessionInfo();
		
		// 情報格納用HashMapを初期化
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// 選択行を取得
		String choice_row = bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_GET_VALUE);
		
		// コード区分情報Beanの取得
		X31SDataBeanAccess listBean = bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST).getDataBean(Integer.parseInt(choice_row));
				
		// 選択コード種別コード
		String choiceCdSbtCd = bean.sendMessageString(ZMW07101SFConst.CHOICE_CD_SBT_CD
				, X31CWebConst.DATABEAN_GET_VALUE);
		
		// セッションに渡す情報をHashMapに設定する
		paramMap.put(ZMW07101SFConst.CHOICE_CD_SBT_CD, choiceCdSbtCd);
		
		// 更新前最終年月日時分秒をセット
		bean.sendMessageString(ZMW07101SFConst.LAST_UPD_DTM_BF,
				X31CWebConst.DATABEAN_SET_VALUE, listBean.sendMessageString(
						ZMW07101SFConst.UPD_DTM_01,
						X31CWebConst.DATABEAN_GET_VALUE));
		
		// 更新前最終年月日時分秒
		String lastupddtmbf = bean.sendMessageString(ZMW07101SFConst.LAST_UPD_DTM_BF
				, X31CWebConst.DATABEAN_GET_VALUE);
		
		// セッションに渡す情報をHashMapに設定する
		paramMap.put(ZMW07101SFConst.LAST_UPD_DTM_BF, lastupddtmbf);
		
		// セッションに渡す情報を設定
		JZMWebCommon.setScreenInfo(this, JZMScreenConst.SCREEN_ID_ZMW07401, paramMap);
		
		// セッションに戻り先画面IDを設定
		JZMWebCommon.setScreenId(this, JZMScreenConst.SCREEN_ID_ZMW07401, JZMScreenConst.SCREEN_ID_ZMW07101);
		
		// セッションに戻り先画面IDを設定
		JZMWebCommon.setScreenId(this, JZMScreenConst.SCREEN_ID_ZMW07402, JZMScreenConst.SCREEN_ID_ZMW07101);
		
		// 遷移先画面ID、名称の設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_ID_ZMW07401);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_NAME_ZMW07401);
		return true;
	}
	
	/**
	 * 詳細ボタン押下.<br>
	 * コード名称管理情報照会画面へ遷移する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean dtail() throws Exception
	{
		
		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();
		
		// 共通フォームBeanの内容を取得
		X31SDataBeanAccess commoninfoBean = getCommonInfoBean();
		
		// 画面情報をセッションに設定
		this.setSessionInfo();
		
		// 情報格納用HashMap
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		
		// 選択コード種別コード
		String choiceCdSbtCd = bean.sendMessageString(ZMW07101SFConst.CHOICE_CD_SBT_CD,
				X31CWebConst.DATABEAN_GET_VALUE);
		
		// セッションに渡す情報をHashMapに設定する
		paramMap.put(ZMW07101SFConst.CHOICE_CD_SBT_CD, choiceCdSbtCd);
		
		// セッションに渡す情報を設定
		JZMWebCommon.setScreenInfo(this, JZMScreenConst.SCREEN_ID_ZMW07501, paramMap);
		
		// セッションに戻り先画面IDを設定
		JZMWebCommon.setScreenId(this, JZMScreenConst.SCREEN_ID_ZMW07501, JZMScreenConst.SCREEN_ID_ZMW07101);

		// 遷移先画面ID、名称の設定
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_ID_ZMW07501);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JZMScreenConst.SCREEN_NAME_ZMW07501);
		return true;
	}
	
	/**
	 * 戻るボタン処理を行います。
	 * <br>
	 * @return 処理結果 
	 * @throws Exception 予期せぬエラー
	 */
	public boolean back()throws Exception
	{

		// 共有フォームBean
		X31SDataBeanAccess commonBean = getCommonInfoBean();

		// 画面遷移
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JZMWebCommon.getScreenId(this));
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE , JZMWebConst.BLANK);
		
		return true;
	}
	
	/**
	 * 画面情報設定処理を行います。
	 * <br>
	 * @return 処理結果 
	 * @throws Exception 予期せぬエラー
	 */
	private void setSessionInfo()throws Exception
	{
		
		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();
		
		// 情報格納用HashMap
		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// サービスフォームBeanから必要な分だけ取得する。
		// コード種別コード
		String cdSbtCd = bean.sendMessageString(ZMW07101SFConst.CD_SBT_CD,
				X31CWebConst.DATABEAN_GET_VALUE);

		// セッションに渡す情報をHashMapに設定する
		paramMap.put(ZMW07101SFConst.CD_SBT_CD, cdSbtCd);
		
		// コード種別名
		String cdSbtNm = bean.sendMessageString(ZMW07101SFConst.CD_SBT_NM,
				X31CWebConst.DATABEAN_GET_VALUE);

		// セッションに渡す情報をHashMapに設定する
		paramMap.put(ZMW07101SFConst.CD_SBT_NM, cdSbtNm);
		
		// セッションに渡す情報をHashMapに設定する
		paramMap.put(ZMW07101SFConst.DSP_CD_SBT_CD, cdSbtCd);
		
		// セッションに渡す情報をHashMapに設定する
		paramMap.put(ZMW07101SFConst.DSP_CD_SBT_NM, cdSbtNm);
		
		// 選択行を取得
		String choice_row = bean.sendMessageString(ZMW07101SFConst.CHOICE_ROW, X31CWebConst.DATABEAN_GET_VALUE);
		
		if(!(JZMWebConst.BLANK).equals(choice_row))
		{
			
			// コード区分情報Beanの取得
			X31SDataBeanAccess listBean = bean.getDataBeanArray(ZMW07101SFConst.EZM0171B011CBSMSG1LIST).getDataBean(Integer.parseInt(choice_row));
			
			// 選択コード種別コードをセット
			bean.sendMessageString(ZMW07101SFConst.CHOICE_CD_SBT_CD,
					X31CWebConst.DATABEAN_SET_VALUE, listBean.sendMessageString(
							ZMW07101SFConst.CD_SBT_CD_01,
							X31CWebConst.DATABEAN_GET_VALUE));
		}
		
		// 選択コード種別コード
		String choiceCdSbtCd = bean.sendMessageString(ZMW07101SFConst.CHOICE_CD_SBT_CD,
				X31CWebConst.DATABEAN_GET_VALUE);
		
		// セッションに渡す情報をHashMapに設定する
		paramMap.put(ZMW07101SFConst.CHOICE_CD_SBT_CD, choiceCdSbtCd);
		
		// セッションに渡す情報を設定
		JZMWebCommon.setScreenInfo(this, JZMScreenConst.SCREEN_ID_ZMW07101, paramMap);
	}
}
