/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：JSYejbEKK1061D010TMCK
*	ソースファイル名：JSYejbEKK1061D010TMCK.java
*	作成者			：EK911025
*	日付			：2014/10/17
*＜機能概要＞
*	通知書内訳登録 単項目チェック部品です。 
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00
*
********************************************************************************/

package eo.ejb.check.item;

import java.util.ArrayList;
import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.ejb.common.JSYejbLog;
import com.fujitsu.futurity.model.ejb.common.ComPatternsCheck;
import com.fujitsu.futurity.model.ejb.common.fw.AgentDispatchContext;
import com.fujitsu.futurity.model.ejb.common.fw.TankomokuCheckHandler;
import eo.ejb.cbs.cbsmsg.EKK1061D010CBSMsg;
import eo.ejb.domain.JSYejbBaseDomain;

/**
 * 通知書内訳登録(EKK1061D010)の単項目チェッククラス
 */
public class JSYejbEKK1061D010TMCK implements TankomokuCheckHandler {

	/**
	 * 通知書内訳登録(EKK1061D010)の単項目チェックを行う
	 *
	 * @param inCBSMsg  CBSMsg
	 * @param inContext Agentから渡されたAgentDispatchContext
	 */
	public void invoke(CAANMsg inCBSMsg, AgentDispatchContext inContext) {

		//チェック対象項目の配列
		final String[][] tmckArgs = {
			//{項目,項目エラー,必須ErrFlg,ドメインErrFlg,桁ErrFlg,リファErrFlg,必須CHK区分,ドメインID,桁CHK区分,桁From,桁to,リファ型,リファレンス値}
			//通知書番号 必須あり，ドメイン：番号(12桁)(識別子)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.TCHISHO_NO, EKK1061D010CBSMsg.TCHISHO_NO_ERR, "E1", "E2", "E3", "E4", "1", "C0000026", "1", "", "", "9", "" },
			//通知書内訳種別コード 必須なし，ドメイン：コード(3桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.TCHISHO_UCWK_SBT_CD, EKK1061D010CBSMsg.TCHISHO_UCWK_SBT_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000072", "1", "", "", "9", "" },
			//サービスコード 必須なし，ドメイン：コード(2桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.SVC_CD, EKK1061D010CBSMsg.SVC_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000071", "1", "", "", "9", "" },
			//料金グループコード 必須なし，ドメイン：コード(2桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.PRC_GRP_CD, EKK1061D010CBSMsg.PRC_GRP_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000071", "1", "", "", "9", "" },
			//料金コースコード 必須なし，ドメイン：コード(3桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.PCRS_CD, EKK1061D010CBSMsg.PCRS_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000072", "1", "", "", "9", "" },
			//料金プランコード 必須なし，ドメイン：コード(6桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.PPLAN_CD, EKK1061D010CBSMsg.PPLAN_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000075", "1", "", "", "9", "" },
			//サービス契約内訳番号 必須なし，ドメイン：番号(12桁)(識別子)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.SVC_KEI_UCWK_NO, EKK1061D010CBSMsg.SVC_KEI_UCWK_NO_ERR, "E1", "E2", "E3", "E4", "0", "C0000026", "1", "", "", "9", "" },
			//利用開始年月日 必須なし，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.USE_STAYMD, EKK1061D010CBSMsg.USE_STAYMD_ERR, "E1", "E2", "E3", "E4", "0", "C0000001", "1", "", "", "9", "" },
			//ADSL利用開始年月日 必須なし，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.ADSL_USE_STAYMD, EKK1061D010CBSMsg.ADSL_USE_STAYMD_ERR, "E1", "E2", "E3", "E4", "0", "C0000001", "1", "", "", "9", "" },
			//整理番号 必須なし，ドメイン：整理番号，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.SEIRI_NO, EKK1061D010CBSMsg.SEIRI_NO_ERR, "E1", "E2", "E3", "E4", "0", "C0000352", "1", "", "", "9", "" },
			//eoID 必須なし，ドメイン：eoID，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.EOID, EKK1061D010CBSMsg.EOID_ERR, "E1", "E2", "E3", "E4", "0", "C0000321", "1", "", "", "9", "" },
			//初期eoID 必須なし，ドメイン：eoID，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.SHK_EOID, EKK1061D010CBSMsg.SHK_EOID_ERR, "E1", "E2", "E3", "E4", "0", "C0000321", "1", "", "", "9", "" },
			//初期eoIDパスワード 必須なし，ドメイン：パスワード，桁：可変長:最小:1、最大:8，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.SHK_EOID_PWD, EKK1061D010CBSMsg.SHK_EOID_PWD_ERR, "E1", "E2", "E3", "E4", "0", "M0000009", "3", "1", "8", "9", "" },
			//家族入会コード 必須なし，ドメイン：コード(12桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.FAMILY_JOIN_CD, EKK1061D010CBSMsg.FAMILY_JOIN_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000079", "1", "", "", "9", "" },
			//家族入会コードパスワード 必須なし，ドメイン：パスワード，桁：可変長:最小:1、最大:8，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.FAMILY_JOIN_CD_PWD, EKK1061D010CBSMsg.FAMILY_JOIN_CD_PWD_ERR, "E1", "E2", "E3", "E4", "0", "M0000009", "3", "1", "8", "9", "" },
			//通知書印字名 必須なし，ドメイン：名，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.TCHISHO_PRT_NM, EKK1061D010CBSMsg.TCHISHO_PRT_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000030", "1", "", "", "9", "" },
			//認証ID 必須なし，ドメイン：ID(半角英数字2)，桁：可変長:最小:1、最大:64，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.NINSHO_ID, EKK1061D010CBSMsg.NINSHO_ID_ERR, "E1", "E2", "E3", "E4", "0", "M0000025", "3", "1", "64", "9", "" },
			//認証IDパスワード 必須なし，ドメイン：パスワード，桁：可変長:最小:1、最大:8，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.NINSHO_ID_PWD, EKK1061D010CBSMsg.NINSHO_ID_PWD_ERR, "E1", "E2", "E3", "E4", "0", "M0000009", "3", "1", "8", "9", "" },
			//メールアドレス 必須なし，ドメイン：メールアドレス(E-mail4)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.MLAD, EKK1061D010CBSMsg.MLAD_ERR, "E1", "E2", "E3", "E4", "0", "C0000402", "1", "", "", "9", "" },
			//POPIDパスワード 必須なし，ドメイン：パスワード(1桁-16桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.POP_ID_PWD, EKK1061D010CBSMsg.POP_ID_PWD_ERR, "E1", "E2", "E3", "E4", "0", "C0000196", "1", "", "", "9", "" },
			//WebID 必須なし，ドメイン：WebID，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.WEB_ID, EKK1061D010CBSMsg.WEB_ID_ERR, "E1", "E2", "E3", "E4", "0", "C0000049", "1", "", "", "9", "" },
			//WebIDパスワード 必須なし，ドメイン：パスワード，桁：可変長:最小:1、最大:8，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.WEB_ID_PWD, EKK1061D010CBSMsg.WEB_ID_PWD_ERR, "E1", "E2", "E3", "E4", "0", "M0000009", "3", "1", "8", "9", "" },
			//KOPT電話番号 必須なし，ドメイン：電話番号(10桁-11桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KOPT_TELNO, EKK1061D010CBSMsg.KOPT_TELNO_ERR, "E1", "E2", "E3", "E4", "0", "C0000083", "1", "", "", "9", "" },
			//発信者番号通知コード 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.HASINSHA_NO_TCH_CD, EKK1061D010CBSMsg.HASINSHA_NO_TCH_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//VAポート番号 必須なし，ドメイン：番号(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.VA_PORT_NO, EKK1061D010CBSMsg.VA_PORT_NO_ERR, "E1", "E2", "E3", "E4", "0", "C0000127", "1", "", "", "9", "" },
			//電話オプション設定用リモート操作用パスワード 必須なし，ドメイン：パスワード，桁：固定長:8，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.TEL_OP_SETTE_RMTS_PWD, EKK1061D010CBSMsg.TEL_OP_SETTE_RMTS_PWD_ERR, "E1", "E2", "E3", "E4", "0", "M0000009", "2", "8", "", "9", "" },
			//IEEE802.1X用SSID 必須なし，ドメイン：SSID，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.IEEE802_1X_SSID, EKK1061D010CBSMsg.IEEE802_1X_SSID_ERR, "E1", "E2", "E3", "E4", "0", "C0000190", "1", "", "", "9", "" },
			//WPA2/AES用SSID 必須なし，ドメイン：SSID，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.WPA2_AES_SSID, EKK1061D010CBSMsg.WPA2_AES_SSID_ERR, "E1", "E2", "E3", "E4", "0", "C0000190", "1", "", "", "9", "" },
			//WEP用SSID 必須なし，ドメイン：SSID，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.WEP_SSID, EKK1061D010CBSMsg.WEP_SSID_ERR, "E1", "E2", "E3", "E4", "0", "C0000190", "1", "", "", "9", "" },
			//WEPキー 必須なし，ドメイン：可変長記入欄(半角英数字)，桁：可変長:最小:1、最大:13，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.WEP_KEY, EKK1061D010CBSMsg.WEP_KEY_ERR, "E1", "E2", "E3", "E4", "0", "M0000017", "3", "1", "13", "9", "" },
			//FTPサーバーURL 必須なし，ドメイン：URL(半角英数字9)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.FTP_SERVER_URL, EKK1061D010CBSMsg.FTP_SERVER_URL_ERR, "E1", "E2", "E3", "E4", "0", "C0000389", "1", "", "", "9", "" },
			//POPサーバーURL 必須なし，ドメイン：URL(半角英数字9)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.POP_SERVER_URL, EKK1061D010CBSMsg.POP_SERVER_URL_ERR, "E1", "E2", "E3", "E4", "0", "C0000389", "1", "", "", "9", "" },
			//SMTPサーバーURL 必須なし，ドメイン：URL(半角英数字9)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.SMTP_SERVER_URL, EKK1061D010CBSMsg.SMTP_SERVER_URL_ERR, "E1", "E2", "E3", "E4", "0", "C0000389", "1", "", "", "9", "" },
			//更新年月日時分秒(更新前) 必須あり，ドメイン：年月日時分秒(yyyyMMddHHmmssSSS)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.UPD_DTM_BF, EKK1061D010CBSMsg.UPD_DTM_BF_ERR, "E1", "E2", "E3", "E4", "1", "C0000004", "1", "", "", "9", "" },
			//割賦契約締結年月日 必須なし，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KAP_KEI_CNC_YMD, EKK1061D010CBSMsg.KAP_KEI_CNC_YMD_ERR, "E1", "E2", "E3", "E4", "0", "C0000001", "1", "", "", "9", "" },
			//割賦販売形態コード 必須なし，ドメイン：コード(2桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KAP_HAMBAI_FORM_CD, EKK1061D010CBSMsg.KAP_HAMBAI_FORM_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000071", "1", "", "", "9", "" },
			//タブレット宅内機器型式コード 必須なし，ドメイン：コード(1桁-20桁)(半角英数字2)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.TABLET_TAKNKIKI_MODEL_CD, EKK1061D010CBSMsg.TABLET_TAKNKIKI_MODEL_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000181", "1", "", "", "9", "" },
			//タブレット宅内機器型式名 必須なし，ドメイン：可変長記入欄(MIX2)，桁：可変長:最小:1、最大:121，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.TABLET_TAKNKIKI_MODEL_NM, EKK1061D010CBSMsg.TABLET_TAKNKIKI_MODEL_NM_ERR, "E1", "E2", "E3", "E4", "0", "M0000026", "3", "1", "121", "9", "" },
			//機器送付先住所コード 必須なし，ドメイン：住所コード，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KIKI_SOHUS_AD_CD, EKK1061D010CBSMsg.KIKI_SOHUS_AD_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000014", "1", "", "", "9", "" },
			//機器送付先郵便番号 必須なし，ドメイン：郵便番号，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KIKI_SOHUS_PCD, EKK1061D010CBSMsg.KIKI_SOHUS_PCD_ERR, "E1", "E2", "E3", "E4", "0", "C0000013", "1", "", "", "9", "" },
			//機器送付先都道府県名 必須なし，ドメイン：都道府県名，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KIKI_SOHUS_STATE_NM, EKK1061D010CBSMsg.KIKI_SOHUS_STATE_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000015", "1", "", "", "9", "" },
			//機器送付先市区町村名 必須なし，ドメイン：市区町村名，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KIKI_SOHUS_CITY_NM, EKK1061D010CBSMsg.KIKI_SOHUS_CITY_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000016", "1", "", "", "9", "" },
			//機器送付先大字通称名 必須なし，ドメイン：大字通称名，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KIKI_SOHUS_OAZTSU_NM, EKK1061D010CBSMsg.KIKI_SOHUS_OAZTSU_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000017", "1", "", "", "9", "" },
			//機器送付先字丁目名 必須なし，ドメイン：字丁目名，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KIKI_SOHUS_AZCHO_NM, EKK1061D010CBSMsg.KIKI_SOHUS_AZCHO_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000018", "1", "", "", "9", "" },
			//機器送付先番地号 必須なし，ドメイン：番地号(都道府県名〜番地号)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KIKI_SOHUS_BNCHIGO, EKK1061D010CBSMsg.KIKI_SOHUS_BNCHIGO_ERR, "E1", "E2", "E3", "E4", "0", "C0000326", "1", "", "", "9", "" },
			//機器送付先住所補記・建物名 必須なし，ドメイン：補記・建物名，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KIKI_SOHUS_ADRTTM, EKK1061D010CBSMsg.KIKI_SOHUS_ADRTTM_ERR, "E1", "E2", "E3", "E4", "0", "C0000020", "1", "", "", "9", "" },
			//機器送付先住所補記・部屋番号 必須なし，ドメイン：補記・部屋番号，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.KIKI_SOHUS_ADRRM, EKK1061D010CBSMsg.KIKI_SOHUS_ADRRM_ERR, "E1", "E2", "E3", "E4", "0", "C0000021", "1", "", "", "9", "" },
			//端末購入受付担当者名 必須なし，ドメイン：名(30桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.TNMT_BUY_UK_TNTSHA_NM, EKK1061D010CBSMsg.TNMT_BUY_UK_TNTSHA_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000251", "1", "", "", "9", "" },
			//ＵＲＬ（ドメイン） 必須なし，ドメイン：URL(半角英数字9)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.URL_DOMAIN, EKK1061D010CBSMsg.URL_DOMAIN_ERR, "E1", "E2", "E3", "E4", "0", "C0000389", "1", "", "", "9", "" },
			//ＵＲＬ（アカウント） 必須なし，ドメイン：URL(半角英数字9)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.URL_ACCOUNT, EKK1061D010CBSMsg.URL_ACCOUNT_ERR, "E1", "E2", "E3", "E4", "0", "C0000389", "1", "", "", "9", "" },
			//容量 必須なし，ドメイン：容量(MB)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.CAPA, EKK1061D010CBSMsg.CAPA_ERR, "E1", "E2", "E3", "E4", "0", "C0000050", "1", "", "", "9", "" },
			//ＦＴＰサーバー接続初期フォルダ名 必須なし，ドメイン：可変長記入欄(半角英数字)，桁：固定長:11，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.FTP_SVRCNT_SHK_FOLDER_NM, EKK1061D010CBSMsg.FTP_SVRCNT_SHK_FOLDER_NM_ERR, "E1", "E2", "E3", "E4", "0", "M0000017", "2", "11", "", "9", "" },
			//独自ドメイン名 必須なし，ドメイン：ドメイン，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.DOKUJI_DOMAIN_NM, EKK1061D010CBSMsg.DOKUJI_DOMAIN_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000062", "1", "", "", "9", "" },
			//ホスティングメール管理者ＩＤ 必須なし，ドメイン：ID(10桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.HOSML_KRISHA_ID, EKK1061D010CBSMsg.HOSML_KRISHA_ID_ERR, "E1", "E2", "E3", "E4", "0", "C0000095", "1", "", "", "9", "" },
			//ホスティング初期メール管理者ＩＤパスワード 必須なし，ドメイン：パスワード，桁：可変長:最小:1、最大:8，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.HOSTING_SHKM_KRISHA_ID_PWD, EKK1061D010CBSMsg.HOSTING_SHKM_KRISHA_ID_PWD_ERR, "E1", "E2", "E3", "E4", "0", "M0000009", "3", "1", "8", "9", "" },
			//ホスティングメールボックス総容量 必須なし，ドメイン：容量(MB)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.HOSML_BOX_CAPA, EKK1061D010CBSMsg.HOSML_BOX_CAPA_ERR, "E1", "E2", "E3", "E4", "0", "C0000050", "1", "", "", "9", "" },
			//ホスティングメールアカウント数 必須なし，ドメイン：数値(12桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.HOSML_ACCOUNT_CNT, EKK1061D010CBSMsg.HOSML_ACCOUNT_CNT_ERR, "E1", "E2", "E3", "E4", "0", "C0000029", "1", "", "", "9", "" },
			//ホスティングメール管理者ＰＯＰＩＤ 必須なし，ドメイン：POPID(1桁-92桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.HOSML_KRISHA_POP_ID, EKK1061D010CBSMsg.HOSML_KRISHA_POP_ID_ERR, "E1", "E2", "E3", "E4", "0", "C0000189", "1", "", "", "9", "" },
			//ホスティング初期メール管理者ＰＯＰＩＤパスワード 必須なし，ドメイン：パスワード，桁：可変長:最小:1、最大:16，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.HOS_SHKM_KRISHA_POP_ID_PWD, EKK1061D010CBSMsg.HOS_SHKM_KRISHA_POP_ID_PWD_ERR, "E1", "E2", "E3", "E4", "0", "M0000009", "3", "1", "16", "9", "" },
			//ホスティングメール管理者メールアドレス 必須なし，ドメイン：メールアドレス(E-mail1)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.HOSML_KRISHA_MLAD, EKK1061D010CBSMsg.HOSML_KRISHA_MLAD_ERR, "E1", "E2", "E3", "E4", "0", "C0000109", "1", "", "", "9", "" },
			//申込年月日 必須なし，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.MSKM_YMD, EKK1061D010CBSMsg.MSKM_YMD_ERR, "E1", "E2", "E3", "E4", "0", "C0000001", "1", "", "", "9", "" },
			//申込形態コード 必須なし，ドメイン：コード(2桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{EKK1061D010CBSMsg.MSKM_FORM_CD, EKK1061D010CBSMsg.MSKM_FORM_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000071", "1", "", "", "9", "" }
		};
		final String[][] strArMsg = createTMCKArgs(tmckArgs);

		JSYejbLog.println(JSYejbLog.DEBUG,this.getClass(),"Call");

		//チェックを行う
		ComPatternsCheck.check(inContext, inCBSMsg, strArMsg, EKK1061D010CBSMsg.STATUS);

		JSYejbLog.println(JSYejbLog.DEBUG,this.getClass(),"End");

	}

	/**
	 * 単項目制約定義とドメイン定義から、単項目チェック定義を生成
	 * @param args 単項目制約定義情報
	 * @return	単項目制約情報（単項目チェック部品へ引き渡すチェック用パラメタ配列）
	 *
	 */
	private String[][] createTMCKArgs(String[][] args) {
		
		ArrayList tmckList = new ArrayList();
		for ( int i=0; i< args.length; i++ ) {
			ArrayList tmckRec = new ArrayList();
			String[] komokuDef = args[i];
			String domainID = komokuDef[7];
			String domainCls = "eo.ejb.domain.JSYejb" + domainID + "Domain";
			try {
				JSYejbBaseDomain domain =
					(JSYejbBaseDomain) Class.forName(domainCls).newInstance();
				tmckRec = domain.getTmckDefine(komokuDef);
				for (int p=0;p<tmckRec.size();p++) {
					tmckList.add(tmckRec.get(p));
				}
			} catch (Exception e) {
			}
		}
	
		return (String[][])tmckList.toArray(new String[tmckList.size()][0]);
	
	}

}
