/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：JSYejbETU0151C010TMCK
*	ソースファイル名：JSYejbETU0151C010TMCK.java
*	作成者			：EK965442
*	日付			：2024/04/04
*＜機能概要＞
*	ポートアウト受付情報内容変更 単項目チェック部品です。 
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00
*	ｖ72.00.00	2024/06/12	富士通		ANK-4494-00-00_【eo定期】 双方向番ポ対応
*
********************************************************************************/

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.ETU0151C010CBSMsg;
import eo.ejb.common.JTUModelCommon;
import eo.ejb.domain.JSYejbBaseDomain;

/**
 * ポートアウト受付情報内容変更(ETU0151C010)の単項目チェッククラス
 */
public class JSYejbETU0151C010TMCK implements TankomokuCheckHandler {

// ANK-4494-00-00 ADD START
	/** 移転先事業者使用コード(24桁) **/
	private final static String ITNS_JGS_USE_CD_NUM = "24";
// ANK-4494-00-00 ADD END
	
	/**
	 * ポートアウト受付情報内容変更(ETU0151C010)の単項目チェックを行う
	 *
	 * @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桁)(識別子)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PORT_OUT_NO, ETU0151C010CBSMsg.PORT_OUT_NO_ERR, "E1", "E2", "E3", "E4", "1", "C0000026", "1", "", "", "9", "" },
			//ポートアウトステータス 必須あり，ドメイン：ステータス，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PORT_OUT_STAT, ETU0151C010CBSMsg.PORT_OUT_STAT_ERR, "E1", "E2", "E3", "E4", "1", "C0000027", "1", "", "", "9", "" },
			//サービス契約番号 必須なし，ドメイン：番号(10桁)(識別子)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SVC_KEI_NO, ETU0151C010CBSMsg.SVC_KEI_NO_ERR, "E1", "E2", "E3", "E4", "0", "C0000155", "1", "", "", "9", "" },
			//サービス契約内訳番号 必須なし，ドメイン：番号(12桁)(識別子)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SVC_KEI_UCWK_NO, ETU0151C010CBSMsg.SVC_KEI_UCWK_NO_ERR, "E1", "E2", "E3", "E4", "0", "C0000026", "1", "", "", "9", "" },
			//統合オーダID 必須あり，ドメイン：ID(14桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.TOGO_ODR_ID, ETU0151C010CBSMsg.TOGO_ODR_ID_ERR, "E1", "E2", "E3", "E4", "1", "C0000185", "1", "", "", "9", "" },
			//廃止注文識別 必須あり，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.HAISHI_CHUMN_SKBT, ETU0151C010CBSMsg.HAISHI_CHUMN_SKBT_ERR, "E1", "E2", "E3", "E4", "1", "C0000070", "1", "", "", "9", "" },
			//再番ポ申込識別 必須あり，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.RE_BMP_MKM_SKBT, ETU0151C010CBSMsg.RE_BMP_MKM_SKBT_ERR, "E1", "E2", "E3", "E4", "1", "C0000070", "1", "", "", "9", "" },
			//事後投入識別 必須あり，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.AFT_TONYU_SKBT, ETU0151C010CBSMsg.AFT_TONYU_SKBT_ERR, "E1", "E2", "E3", "E4", "1", "C0000070", "1", "", "", "9", "" },
			//複数番号有無 必須なし，ドメイン：有無，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.HUKUSU_NO_UM, ETU0151C010CBSMsg.HUKUSU_NO_UM_ERR, "E1", "E2", "E3", "E4", "0", "C0000024", "1", "", "", "9", "" },
			//番ポ対象回線数_番ポ廃止対象回線数 必須なし，ドメイン：数値(12桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.BMP_TG_KSSU_BMP_HISTG_KSSU, ETU0151C010CBSMsg.BMP_TG_KSSU_BMP_HISTG_KSSU_ERR, "E1", "E2", "E3", "E4", "0", "C0000029", "1", "", "", "9", "" },
			//自動廃止了承済番号数 必須なし，ドメイン：数値(12桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.AUTO_HAISHI_RYSHZM_NO_NUM, ETU0151C010CBSMsg.AUTO_HAISHI_RYSHZM_NO_NUM_ERR, "E1", "E2", "E3", "E4", "0", "C0000029", "1", "", "", "9", "" },
			//グループID 必須なし，ドメイン：ID(12桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.GRP_ID, ETU0151C010CBSMsg.GRP_ID_ERR, "E1", "E2", "E3", "E4", "0", "C0000130", "1", "", "", "9", "" },
			//お客様申込日 必須あり，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CUST_MSKM_DAY, ETU0151C010CBSMsg.CUST_MSKM_DAY_ERR, "E1", "E2", "E3", "E4", "1", "C0000001", "1", "", "", "9", "" },
			//移転先申込日 必須あり，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ITENS_MSKM_DAY, ETU0151C010CBSMsg.ITENS_MSKM_DAY_ERR, "E1", "E2", "E3", "E4", "1", "C0000001", "1", "", "", "9", "" },
			//変更前申込日 必須なし，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CHBF_MSKM_DAY, ETU0151C010CBSMsg.CHBF_MSKM_DAY_ERR, "E1", "E2", "E3", "E4", "0", "C0000001", "1", "", "", "9", "" },
			//受付拠点番号(取扱サービス) 必須なし，ドメイン：コード(8桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.UK_KYOTEN_NO_TRAT_SVC, ETU0151C010CBSMsg.UK_KYOTEN_NO_TRAT_SVC_ERR, "E1", "E2", "E3", "E4", "0", "C0000166", "1", "", "", "9", "" },
			//移転先事業者名 必須あり，ドメイン：氏名(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ITENS_JIGYOSHA_NM, ETU0151C010CBSMsg.ITENS_JIGYOSHA_NM_ERR, "E1", "E2", "E3", "E4", "1", "C0000418", "1", "", "", "9", "" },
			//移転先事業者番号 必須あり，ドメイン：番号(4桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ITENS_JIGYOSHA_NO, ETU0151C010CBSMsg.ITENS_JIGYOSHA_NO_ERR, "E1", "E2", "E3", "E4", "1", "C0000124", "1", "", "", "9", "" },
			//移転先事業者ドメイン 必須あり，ドメイン：通信事業者ドメイン（1桁-253桁）（半角英数字9），桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ITENS_JIGYOSHA_DOMAIN, ETU0151C010CBSMsg.ITENS_JIGYOSHA_DOMAIN_ERR, "E1", "E2", "E3", "E4", "1", "C0000459", "1", "", "", "9", "" },
			//移転先事業者担当名 必須あり，ドメイン：氏名(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ITENS_JIGYOSHA_TNT_NM, ETU0151C010CBSMsg.ITENS_JIGYOSHA_TNT_NM_ERR, "E1", "E2", "E3", "E4", "1", "C0000418", "1", "", "", "9", "" },
			//移転先事業者電話番号 必須あり，ドメイン：電話番号(10桁-11桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ITENS_JIGYOSHA_TELNO, ETU0151C010CBSMsg.ITENS_JIGYOSHA_TELNO_ERR, "E1", "E2", "E3", "E4", "1", "C0000083", "1", "", "", "9", "" },
			//記事欄1_移転元事業者向け 必須なし，ドメイン：可変長記入欄(MIX4)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KIJIRAN_1_ITNM_JGSMK, ETU0151C010CBSMsg.KIJIRAN_1_ITNM_JGSMK_ERR, "E1", "E2", "E3", "E4", "0", "M0000035", "3", "1", "100", "9", "" },
			//記事欄2_移転元事業者向け 必須なし，ドメイン：可変長記入欄(MIX4)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KIJIRAN_2_ITNM_JGSMK, ETU0151C010CBSMsg.KIJIRAN_2_ITNM_JGSMK_ERR, "E1", "E2", "E3", "E4", "0", "M0000035", "3", "1", "100", "9", "" },
			//記事欄1_番号取得事業者向け 必須なし，ドメイン：可変長記入欄(MIX4)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KIJIRAN_1_NOSK_JGSMK, ETU0151C010CBSMsg.KIJIRAN_1_NOSK_JGSMK_ERR, "E1", "E2", "E3", "E4", "0", "M0000035", "3", "1", "100", "9", "" },
			//記事欄2_番号取得事業者向け 必須なし，ドメイン：可変長記入欄(MIX4)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KIJIRAN_2_NOSK_JGSMK, ETU0151C010CBSMsg.KIJIRAN_2_NOSK_JGSMK_ERR, "E1", "E2", "E3", "E4", "0", "M0000035", "3", "1", "100", "9", "" },
			//自社内記事欄 必須なし，ドメイン：可変長記入欄(MIX4)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.JI_SHANAI_KIJIRAN, ETU0151C010CBSMsg.JI_SHANAI_KIJIRAN_ERR, "E1", "E2", "E3", "E4", "0", "M0000035", "3", "1", "100", "9", "" },
			//ポートアウト契約者名義 必須なし，ドメイン：氏名(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PORT_OUT_KEISHA_NM, ETU0151C010CBSMsg.PORT_OUT_KEISHA_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000418", "1", "", "", "9", "" },
			//ポートアウト契約者カナ名 必須なし，ドメイン：カナ氏名(全角英数字カナ)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PORT_OUT_KEISHA_KANA, ETU0151C010CBSMsg.PORT_OUT_KEISHA_KANA_ERR, "E1", "E2", "E3", "E4", "0", "C0000399", "1", "", "", "9", "" },
			//設置場所住所変更有無 必須なし，ドメイン：有無，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLACE_ADCHG_UM, ETU0151C010CBSMsg.SETPLACE_ADCHG_UM_ERR, "E1", "E2", "E3", "E4", "0", "C0000024", "1", "", "", "9", "" },
			//設置場所手投入識別_市区町村名 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLC_HTNY_SKBT_CITY_NM, ETU0151C010CBSMsg.SETPLC_HTNY_SKBT_CITY_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//設置場所手投入識別_大字_通称名 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLC_HTNY_SKBT_OAZTSU_NM, ETU0151C010CBSMsg.SETPLC_HTNY_SKBT_OAZTSU_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//設置場所手投入識別_字丁目名 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLC_HTNY_SKBT_AZCHO_NM, ETU0151C010CBSMsg.SETPLC_HTNY_SKBT_AZCHO_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//設置場所郵便番号 必須なし，ドメイン：郵便番号，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLACE_PCD, ETU0151C010CBSMsg.SETPLACE_PCD_ERR, "E1", "E2", "E3", "E4", "0", "C0000013", "1", "", "", "9", "" },
			//設置場所都道府県名 必須なし，ドメイン：都道府県名，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLACE_STATE_NM, ETU0151C010CBSMsg.SETPLACE_STATE_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000015", "1", "", "", "9", "" },
			//設置場所市区町村名 必須なし，ドメイン：市区町村名，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLACE_CITY_NM, ETU0151C010CBSMsg.SETPLACE_CITY_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000016", "1", "", "", "9", "" },
			//設置場所大字通称名 必須なし，ドメイン：大字通称名，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLACE_OAZTSU_NM, ETU0151C010CBSMsg.SETPLACE_OAZTSU_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000017", "1", "", "", "9", "" },
			//設置場所字丁目名 必須なし，ドメイン：字丁目名，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLACE_AZCHO_NM, ETU0151C010CBSMsg.SETPLACE_AZCHO_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000018", "1", "", "", "9", "" },
			//設置場所番地号 必須なし，ドメイン：番地号(都道府県名〜番地号)(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLACE_BNCHIGO, ETU0151C010CBSMsg.SETPLACE_BNCHIGO_ERR, "E1", "E2", "E3", "E4", "0", "C0000414", "1", "", "", "9", "" },
			//設置場所住所補記・建物名 必須なし，ドメイン：補記・建物名(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SETPLACE_ADRTTM, ETU0151C010CBSMsg.SETPLACE_ADRTTM_ERR, "E1", "E2", "E3", "E4", "0", "C0000420", "1", "", "", "9", "" },
			//お客様連絡先 必須なし，ドメイン：電話番号(10桁-11桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CUST_RRKS, ETU0151C010CBSMsg.CUST_RRKS_ERR, "E1", "E2", "E3", "E4", "0", "C0000083", "1", "", "", "9", "" },
			//工事希望年月日 必須あり，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KOJI_KIBO_YMD, ETU0151C010CBSMsg.KOJI_KIBO_YMD_ERR, "E1", "E2", "E3", "E4", "1", "C0000001", "1", "", "", "9", "" },
			//工事実施方法 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KOJI_JSSI_WAY, ETU0151C010CBSMsg.KOJI_JSSI_WAY_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//想定切替時間帯 必須なし，ドメイン：コード(2桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SOTEI_SWITCH_TIMEZ, ETU0151C010CBSMsg.SOTEI_SWITCH_TIMEZ_ERR, "E1", "E2", "E3", "E4", "0", "C0000071", "1", "", "", "9", "" },
			//工事時間帯区分 必須なし，ドメイン：区分(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KOJI_TIMEZ_DIV, ETU0151C010CBSMsg.KOJI_TIMEZ_DIV_ERR, "E1", "E2", "E3", "E4", "0", "C0000161", "1", "", "", "9", "" },
			//移転元_代表事業者名 必須なし，ドメイン：氏名(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ITENM_DAIHYO_JIGYOSHA_NM, ETU0151C010CBSMsg.ITENM_DAIHYO_JIGYOSHA_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000418", "1", "", "", "9", "" },
			//移転元_代表事業者番号 必須なし，ドメイン：番号(4桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ITENM_DAIHYO_JIGYOSHA_NO, ETU0151C010CBSMsg.ITENM_DAIHYO_JIGYOSHA_NO_ERR, "E1", "E2", "E3", "E4", "0", "C0000124", "1", "", "", "9", "" },
			//記載変更申込回数 必須なし，ドメイン：数値(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KISAI_CHGE_MSKM_CNT, ETU0151C010CBSMsg.KISAI_CHGE_MSKM_CNT_ERR, "E1", "E2", "E3", "E4", "0", "C0000080", "1", "", "", "9", "" },
			//記載変更申込日 必須なし，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KISAI_CHGE_MSKM_DAY, ETU0151C010CBSMsg.KISAI_CHGE_MSKM_DAY_ERR, "E1", "E2", "E3", "E4", "0", "C0000001", "1", "", "", "9", "" },
			//記載変更申込理由 必須なし，ドメイン：可変長記入欄(MIX3)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KISAI_CHGE_MSKM_RSN, ETU0151C010CBSMsg.KISAI_CHGE_MSKM_RSN_ERR, "E1", "E2", "E3", "E4", "0", "M0000028", "3", "1", "100", "9", "" },
			//旧統合オーダID 必須なし，ドメイン：ID(14桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.OLD_TOGO_ORDER_ID, ETU0151C010CBSMsg.OLD_TOGO_ORDER_ID_ERR, "E1", "E2", "E3", "E4", "0", "C0000185", "1", "", "", "9", "" },
			//申込超過日数 必須なし，ドメイン：数値(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.MSKM_CHOK_NISU, ETU0151C010CBSMsg.MSKM_CHOK_NISU_ERR, "E1", "E2", "E3", "E4", "0", "C0000080", "1", "", "", "9", "" },
			//キャンセル日時 必須なし，ドメイン：年月日時分秒(yyyyMMddHHmmss)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CANCEL_DATE, ETU0151C010CBSMsg.CANCEL_DATE_ERR, "E1", "E2", "E3", "E4", "0", "C0000107", "1", "", "", "9", "" },
			//キャンセル識別 必須あり，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CANCEL_SKBT, ETU0151C010CBSMsg.CANCEL_SKBT_ERR, "E1", "E2", "E3", "E4", "1", "C0000070", "1", "", "", "9", "" },
			//キャンセル応対日 必須なし，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CANCEL_OTAI_DAY, ETU0151C010CBSMsg.CANCEL_OTAI_DAY_ERR, "E1", "E2", "E3", "E4", "0", "C0000001", "1", "", "", "9", "" },
			//キャンセル投入担当名 必須なし，ドメイン：氏名(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CANCEL_TONYU_TNT_NM, ETU0151C010CBSMsg.CANCEL_TONYU_TNT_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000418", "1", "", "", "9", "" },
			//キャンセル投入担当電話番号 必須なし，ドメイン：電話番号(10桁-11桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CANCEL_TONYU_TNT_TELNO, ETU0151C010CBSMsg.CANCEL_TONYU_TNT_TELNO_ERR, "E1", "E2", "E3", "E4", "0", "C0000083", "1", "", "", "9", "" },
			//ポートアウトキャンセル理由 必須なし，ドメイン：可変長記入欄(MIX3)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PORT_OUT_CNRE, ETU0151C010CBSMsg.PORT_OUT_CNRE_ERR, "E1", "E2", "E3", "E4", "0", "M0000028", "3", "1", "100", "9", "" },
			//取消日時 必須なし，ドメイン：年月日時分秒(yyyyMMddHHmmss)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CL_DATE, ETU0151C010CBSMsg.CL_DATE_ERR, "E1", "E2", "E3", "E4", "0", "C0000107", "1", "", "", "9", "" },
			//取消識別 必須あり，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CL_SKBT, ETU0151C010CBSMsg.CL_SKBT_ERR, "E1", "E2", "E3", "E4", "1", "C0000070", "1", "", "", "9", "" },
			//受付方法識別 必須あり，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.UWY_SKBT, ETU0151C010CBSMsg.UWY_SKBT_ERR, "E1", "E2", "E3", "E4", "1", "C0000070", "1", "", "", "9", "" },
			//サーバー到着日時 必須あり，ドメイン：年月日時分秒(yyyyMMddHHmmss)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SERVER_ARIV_DATE, ETU0151C010CBSMsg.SERVER_ARIV_DATE_ERR, "E1", "E2", "E3", "E4", "1", "C0000107", "1", "", "", "9", "" },
			//番ポオーダ番号 必須あり，ドメイン：番号(16桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.BMP_ORDER_NO, ETU0151C010CBSMsg.BMP_ORDER_NO_ERR, "E1", "E2", "E3", "E4", "1", "C0000202", "1", "", "", "9", "" },
			//関連オーダ数 必須あり，ドメイン：数値(2桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KANREN_ORDER_CNT, ETU0151C010CBSMsg.KANREN_ORDER_CNT_ERR, "E1", "E2", "E3", "E4", "1", "C0000068", "1", "", "", "9", "" },
			//番ポ対象回線数_番号取得毎 必須あり，ドメイン：数値(4桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.BMP_TG_KISN_CNT_NOSK_GT, ETU0151C010CBSMsg.BMP_TG_KISN_CNT_NOSK_GT_ERR, "E1", "E2", "E3", "E4", "1", "C0000081", "1", "", "", "9", "" },
			//注文種類 必須あり，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.CHUMN_KIND, ETU0151C010CBSMsg.CHUMN_KIND_ERR, "E1", "E2", "E3", "E4", "1", "C0000070", "1", "", "", "9", "" },
			//オーダステータス 必須あり，ドメイン：コード(2桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ORDER_STAT, ETU0151C010CBSMsg.ORDER_STAT_ERR, "E1", "E2", "E3", "E4", "1", "C0000071", "1", "", "", "9", "" },
			//番号取得_代表事業者名 必須あり，ドメイン：氏名(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.NOSK_DAIHYO_JGS_NM, ETU0151C010CBSMsg.NOSK_DAIHYO_JGS_NM_ERR, "E1", "E2", "E3", "E4", "1", "C0000418", "1", "", "", "9", "" },
			//番号取得_代表事業者番号 必須あり，ドメイン：番号(4桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.NOSK_DAIHYO_JGS_NO, ETU0151C010CBSMsg.NOSK_DAIHYO_JGS_NO_ERR, "E1", "E2", "E3", "E4", "1", "C0000124", "1", "", "", "9", "" },
			//工事日再調整依頼日時 必須なし，ドメイン：年月日時分秒(yyyyMMddHHmmss)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KJ_DAY_RE_ADJ_REQ_DATE, ETU0151C010CBSMsg.KJ_DAY_RE_ADJ_REQ_DATE_ERR, "E1", "E2", "E3", "E4", "0", "C0000107", "1", "", "", "9", "" },
			//工事日再調整依頼担当名 必須なし，ドメイン：氏名(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KJ_DAY_RE_ADJ_REQ_TNT_NM, ETU0151C010CBSMsg.KJ_DAY_RE_ADJ_REQ_TNT_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000418", "1", "", "", "9", "" },
			//工事日再調整依頼担当電話番号 必須なし，ドメイン：電話番号(10桁-11桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KJ_DAY_RE_ADJ_REQ_TNT_TLN, ETU0151C010CBSMsg.KJ_DAY_RE_ADJ_REQ_TNT_TLN_ERR, "E1", "E2", "E3", "E4", "0", "C0000083", "1", "", "", "9", "" },
			//工事日再調整依頼記事欄 必須なし，ドメイン：可変長記入欄(MIX4)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KJ_DAY_RE_ADJ_REQ_KIJIRAN, ETU0151C010CBSMsg.KJ_DAY_RE_ADJ_REQ_KIJIRAN_ERR, "E1", "E2", "E3", "E4", "0", "M0000035", "3", "1", "100", "9", "" },
			//電話番号 必須あり，ドメイン：電話番号(10桁-11桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.TELNO, ETU0151C010CBSMsg.TELNO_ERR, "E1", "E2", "E3", "E4", "1", "C0000083", "1", "", "", "9", "" },
			//識別番号 必須あり，ドメイン：番号(8桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SKBT_NO, ETU0151C010CBSMsg.SKBT_NO_ERR, "E1", "E2", "E3", "E4", "1", "C0000088", "1", "", "", "9", "" },
			//内部識別番号 必須あり，ドメイン：番号(8桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.NAIBU_SKBT_NO, ETU0151C010CBSMsg.NAIBU_SKBT_NO_ERR, "E1", "E2", "E3", "E4", "1", "C0000088", "1", "", "", "9", "" },
			//ポートアウト変更前識別番号 必須なし，ドメイン：番号(8桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PORT_OUT_CHBF_SKBT_NO, ETU0151C010CBSMsg.PORT_OUT_CHBF_SKBT_NO_ERR, "E1", "E2", "E3", "E4", "0", "C0000088", "1", "", "", "9", "" },
			//PSTN加入権 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_KANYKN, ETU0151C010CBSMsg.PSTN_KANYKN_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//PSTNドライカッパ利用有無 必須なし，ドメイン：有無，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_DRYCOPPER_USE_UM, ETU0151C010CBSMsg.PSTN_DRYCOPPER_USE_UM_ERR, "E1", "E2", "E3", "E4", "0", "C0000024", "1", "", "", "9", "" },
			//PSTNドライカッパ回線ID 必須なし，ドメイン：ID(16桁)（半角英数字7），桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_DRYCOPPER_KISN_ID, ETU0151C010CBSMsg.PSTN_DRYCOPPER_KISN_ID_ERR, "E1", "E2", "E3", "E4", "0", "C0000460", "1", "", "", "9", "" },
			//PSTNドライカッパ申込事業者番号 必須なし，ドメイン：番号(4桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_DRYCOPPER_MSKMJIG_NO, ETU0151C010CBSMsg.PSTN_DRYCOPPER_MSKMJIG_NO_ERR, "E1", "E2", "E3", "E4", "0", "C0000124", "1", "", "", "9", "" },
			//PSTNドライカッパ申込識別番号 必須なし，ドメイン：番号(8桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_DRYCOPPER_MKM_SKBT_NO, ETU0151C010CBSMsg.PSTN_DRYCOPPER_MKM_SKBT_NO_ERR, "E1", "E2", "E3", "E4", "0", "C0000088", "1", "", "", "9", "" },
			//移転先事業者使用コード 必須なし，ドメイン：コード(24桁)(半角英数字7)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ITNS_JGS_USE_CD, ETU0151C010CBSMsg.ITNS_JGS_USE_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000372", "1", "", "", "9", "" },
			//PSTN休止票送付先 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_PAUSE_HYO_SHS, ETU0151C010CBSMsg.PSTN_PAUSE_HYO_SHS_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//PSTN休止票送付先その他住所 必須なし，ドメイン：可変長記入欄(MIX3)，桁：可変長:最小:1、最大:114，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_PAUSE_HYO_SHS_OTR_AD, ETU0151C010CBSMsg.PSTN_PAUSE_HYO_SHS_OTR_AD_ERR, "E1", "E2", "E3", "E4", "0", "M0000028", "3", "1", "114", "9", "" },
			//PSTN移転先事業者確認ID 必須なし，ドメイン：ID(1桁-20桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_ITENS_JIGYOSHA_CFM_ID, ETU0151C010CBSMsg.PSTN_ITENS_JIGYOSHA_CFM_ID_ERR, "E1", "E2", "E3", "E4", "0", "C0000233", "1", "", "", "9", "" },
			//PSTN移転先工事タイプ_所内 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_ITENS_KOJI_TYPE_SNAI, ETU0151C010CBSMsg.PSTN_ITENS_KOJI_TYPE_SNAI_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//PSTN移転先工事タイプ_所外 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PSTN_ITENS_KOJI_TYPE_SGAI, ETU0151C010CBSMsg.PSTN_ITENS_KOJI_TYPE_SGAI_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//記事欄_移転先事業者向け 必須なし，ドメイン：可変長記入欄(MIX3)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KIJIRAN_ITENS_JGSMK, ETU0151C010CBSMsg.KIJIRAN_ITENS_JGSMK_ERR, "E1", "E2", "E3", "E4", "0", "M0000028", "3", "1", "100", "9", "" },
			//オーダ可否判定提供可否 必須なし，ドメイン：可否，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ODKH_JUDGE_TK_KH, ETU0151C010CBSMsg.ODKH_JUDGE_TK_KH_ERR, "E1", "E2", "E3", "E4", "0", "C0000025", "1", "", "", "9", "" },
			//オーダ可否判定提供不可理由 必須なし，ドメイン：コード(1桁-10桁)(半角英数字1)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ODKH_JUDGE_TK_FAIL_RSN, ETU0151C010CBSMsg.ODKH_JUDGE_TK_FAIL_RSN_ERR, "E1", "E2", "E3", "E4", "0", "C0000428", "1", "", "", "9", "" },
			//オーダ可否判定提供不可理由_その他理由 必須なし，ドメイン：可変長記入欄(MIX3)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.ODKH_JDGTK_FRSN_OTR_RSN, ETU0151C010CBSMsg.ODKH_JDGTK_FRSN_OTR_RSN_ERR, "E1", "E2", "E3", "E4", "0", "M0000028", "3", "1", "100", "9", "" },
			//受付担当ID 必須なし，ドメイン：ユーザーID，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.UK_TNT_ID, ETU0151C010CBSMsg.UK_TNT_ID_ERR, "E1", "E2", "E3", "E4", "0", "C0000197", "1", "", "", "9", "" },
			//受付担当電話番号 必須なし，ドメイン：電話番号(10桁-11桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.UK_TNT_TELNO, ETU0151C010CBSMsg.UK_TNT_TELNO_ERR, "E1", "E2", "E3", "E4", "0", "C0000083", "1", "", "", "9", "" },
			//工事担当名 必須なし，ドメイン：氏名(特殊な文字)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KOJI_TNT_NM, ETU0151C010CBSMsg.KOJI_TNT_NM_ERR, "E1", "E2", "E3", "E4", "0", "C0000418", "1", "", "", "9", "" },
			//工事担当電話番号 必須なし，ドメイン：電話番号(10桁-11桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.KOJI_TNT_TELNO, ETU0151C010CBSMsg.KOJI_TNT_TELNO_ERR, "E1", "E2", "E3", "E4", "0", "C0000083", "1", "", "", "9", "" },
			//提供可否 必須なし，ドメイン：可否，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.TK_KH, ETU0151C010CBSMsg.TK_KH_ERR, "E1", "E2", "E3", "E4", "0", "C0000025", "1", "", "", "9", "" },
			//提供不可理由 必須なし，ドメイン：コード(1桁-10桁)(半角英数字1)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.TK_FAIL_RSN, ETU0151C010CBSMsg.TK_FAIL_RSN_ERR, "E1", "E2", "E3", "E4", "0", "C0000428", "1", "", "", "9", "" },
			//提供不可理由_その他理由 必須なし，ドメイン：可変長記入欄(MIX3)，桁：可変長:最小:1、最大:100，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.TK_FAIL_RSN_OTR_RSN, ETU0151C010CBSMsg.TK_FAIL_RSN_OTR_RSN_ERR, "E1", "E2", "E3", "E4", "0", "M0000028", "3", "1", "100", "9", "" },
			//法人個人コード 必須なし，ドメイン：コード(1桁)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.HOJIN_KOJIN_CD, ETU0151C010CBSMsg.HOJIN_KOJIN_CD_ERR, "E1", "E2", "E3", "E4", "0", "C0000070", "1", "", "", "9", "" },
			//ポートアウト受付取込年月日 必須あり，ドメイン：年月日(yyyyMMdd)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.PORT_OUT_UK_TRKM_YMD, ETU0151C010CBSMsg.PORT_OUT_UK_TRKM_YMD_ERR, "E1", "E2", "E3", "E4", "1", "C0000001", "1", "", "", "9", "" },
			//切替SOD発行年月日時分秒 必須なし，ドメイン：年月日時分秒(yyyyMMddHHmmssSSS)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.SWITCH_SOD_HAKKO_DTM, ETU0151C010CBSMsg.SWITCH_SOD_HAKKO_DTM_ERR, "E1", "E2", "E3", "E4", "0", "C0000004", "1", "", "", "9", "" },
			//更新年月日時分秒(更新前) 必須あり，ドメイン：年月日時分秒(yyyyMMddHHmmssSSS)，桁：ドメインに従う，リファレンス：ドメインに従う
			{ETU0151C010CBSMsg.UPD_DTM_BF, ETU0151C010CBSMsg.UPD_DTM_BF_ERR, "E1", "E2", "E3", "E4", "1", "C0000004", "1", "", "", "9", "" }
		};
		final String[][] strArMsg = createTMCKArgs(tmckArgs);

		JSYejbLog.println(JSYejbLog.DEBUG,this.getClass(),"Call");
		
// ANK-4494-00-00 ADD START
		if (!(inCBSMsg.isNull(ETU0151C010CBSMsg.ITNS_JGS_USE_CD)))
		{
			// 移転先事業者使用コードが24文字未満だったら、右側空白で24文字にパディングする
			JTUModelCommon.spaceNormalization(inCBSMsg, ETU0151C010CBSMsg.ITNS_JGS_USE_CD, ITNS_JGS_USE_CD_NUM);
		}
// ANK-4494-00-00 ADD END

		//チェックを行う
		ComPatternsCheck.check(inContext, inCBSMsg, strArMsg, ETU0151C010CBSMsg.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]);
	
	}

}
