/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：CH0041ETMsg
*	ソースファイル名：CH0041ETMsg.java
*	作成者			：EK909584
*	日付			：2012年03月08日
*＜機能概要＞
*	請求債権関連スキーマクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00
*
********************************************************************************/

package eo.ejb.cbm.entity;

import java.util.HashMap;
import java.util.MissingResourceException;
import com.fujitsu.futurity.model.base.CAANSchemaInfo;

public class CH0041ETMsg extends CAANSchemaInfo {

    /**
     * DBテーブル名
     */
    private static final String TABLE_NAME = "CH_T_SEIKY_SKN_KNRN";

    /**
     * DBカラム名対応表
     */
    private static final HashMap DBCOLUMN_MAP;

    /**
     * 内部スキーマ項目の配列
     */
    private static final Object[][] CONTENTS = {
        {"templateID", "String", null, null},  // サービスIF_ID
        {"eventID", "String", null, null},  // イベントＩＤ
        {"identifyCD", "String", null, null},  // 識別コード
        {"status", "int", null, null},  // ステータス
        {"operatorID", "String", null, null},  // オペレータ_ID
        {"operateDate", "String", null, null},  // 運用日付
        {"operateDatetime", "String", null, null},  // 運用日時
        {"ac_group_cd", "String", null, null},  // 権限制御用項目
        {"func_code", "String", null, null},  // 機能コード
        {"SEIKY_NO", "String", "SEIKY_NO", PRIMARYKEY},  // 請求番号
        {"SAIKEN_NO", "String", "SAIKEN_NO", PRIMARYKEY},  // 債権番号
        {"SEIKY_KKSHI_FLG", "String", "SEIKY_KKSHI_FLG", null},  // 請求繰越フラグ
        {"KKSHI_CNT", "String", "KKSHI_CNT", null},  // 繰越回数
        {"ADD_DTM", "String", "ADD_DTM", null},  // 登録年月日時分秒
        {"ADD_OPEACNT", "String", "ADD_OPEACNT", null},  // 登録オペレータアカウント
        {"UPD_DTM", "String", "UPD_DTM", null},  // 更新年月日時分秒
        {"UPD_OPEACNT", "String", "UPD_OPEACNT", null},  // 更新オペレータアカウント
        {"DEL_DTM", "String", "DEL_DTM", null},  // 削除年月日時分秒
        {"DEL_OPEACNT", "String", "DEL_OPEACNT", null},  // 削除オペレータアカウント
        {"MK_FLG", "String", "MK_FLG", null},  // 無効フラグ
        {"ADD_UNYO_YMD", "String", "ADD_UNYO_YMD", null},  // 登録運用年月日
        {"ADD_TRN_ID", "String", "ADD_TRN_ID", null},  // 登録処理ID
        {"UPD_UNYO_YMD", "String", "UPD_UNYO_YMD", null},  // 更新運用年月日
        {"UPD_TRN_ID", "String", "UPD_TRN_ID", null},  // 更新処理ID
        {"DEL_UNYO_YMD", "String", "DEL_UNYO_YMD", null},  // 削除運用年月日
        {"DEL_TRN_ID", "String", "DEL_TRN_ID", null},  // 削除処理ID
        {"SEIKY_NO_err", "String", null, null},  // 請求番号エラー
        {"SAIKEN_NO_err", "String", null, null},  // 債権番号エラー
        {"SEIKY_KKSHI_FLG_err", "String", null, null},  // 請求繰越フラグエラー
        {"KKSHI_CNT_err", "String", null, null},  // 繰越回数エラー
        {"ADD_DTM_err", "String", null, null},  // 登録年月日時分秒エラー
        {"ADD_OPEACNT_err", "String", null, null},  // 登録オペレータアカウントエラー
        {"UPD_DTM_err", "String", null, null},  // 更新年月日時分秒エラー
        {"UPD_OPEACNT_err", "String", null, null},  // 更新オペレータアカウントエラー
        {"DEL_DTM_err", "String", null, null},  // 削除年月日時分秒エラー
        {"DEL_OPEACNT_err", "String", null, null},  // 削除オペレータアカウントエラー
        {"MK_FLG_err", "String", null, null},  // 無効フラグエラー
        {"ADD_UNYO_YMD_err", "String", null, null},  // 登録運用年月日エラー
        {"ADD_TRN_ID_err", "String", null, null},  // 登録処理IDエラー
        {"UPD_UNYO_YMD_err", "String", null, null},  // 更新運用年月日エラー
        {"UPD_TRN_ID_err", "String", null, null},  // 更新処理IDエラー
        {"DEL_UNYO_YMD_err", "String", null, null},  // 削除運用年月日エラー
        {"DEL_TRN_ID_err", "String", null, null}  // 削除処理IDエラー
    };

    /**
     * サービスIF_ID
     */
    public static final String TEMPLATEID;

    /**
     * イベントＩＤ
     */
    public static final String EVENTID;

    /**
     * 識別コード
     */
    public static final String IDENTIFYCD;

    /**
     * ステータス
     */
    public static final String STATUS;

    /**
     * オペレータ_ID
     */
    public static final String OPERATORID;

    /**
     * 運用日付
     */
    public static final String OPERATEDATE;

    /**
     * 運用日時
     */
    public static final String OPERATEDATETIME;

    /**
     * 権限制御用項目
     */
    public static final String AC_GROUP_CD;

    /**
     * 機能コード
     */
    public static final String FUNC_CODE;

    /**
     * 請求番号
     */
    public static final String SEIKY_NO;

    /**
     * 債権番号
     */
    public static final String SAIKEN_NO;

    /**
     * 請求繰越フラグ
     */
    public static final String SEIKY_KKSHI_FLG;

    /**
     * 繰越回数
     */
    public static final String KKSHI_CNT;

    /**
     * 登録年月日時分秒
     */
    public static final String ADD_DTM;

    /**
     * 登録オペレータアカウント
     */
    public static final String ADD_OPEACNT;

    /**
     * 更新年月日時分秒
     */
    public static final String UPD_DTM;

    /**
     * 更新オペレータアカウント
     */
    public static final String UPD_OPEACNT;

    /**
     * 削除年月日時分秒
     */
    public static final String DEL_DTM;

    /**
     * 削除オペレータアカウント
     */
    public static final String DEL_OPEACNT;

    /**
     * 無効フラグ
     */
    public static final String MK_FLG;

    /**
     * 登録運用年月日
     */
    public static final String ADD_UNYO_YMD;

    /**
     * 登録処理ID
     */
    public static final String ADD_TRN_ID;

    /**
     * 更新運用年月日
     */
    public static final String UPD_UNYO_YMD;

    /**
     * 更新処理ID
     */
    public static final String UPD_TRN_ID;

    /**
     * 削除運用年月日
     */
    public static final String DEL_UNYO_YMD;

    /**
     * 削除処理ID
     */
    public static final String DEL_TRN_ID;

    /**
     * 請求番号エラー
     */
    public static final String SEIKY_NO_ERR;

    /**
     * 債権番号エラー
     */
    public static final String SAIKEN_NO_ERR;

    /**
     * 請求繰越フラグエラー
     */
    public static final String SEIKY_KKSHI_FLG_ERR;

    /**
     * 繰越回数エラー
     */
    public static final String KKSHI_CNT_ERR;

    /**
     * 登録年月日時分秒エラー
     */
    public static final String ADD_DTM_ERR;

    /**
     * 登録オペレータアカウントエラー
     */
    public static final String ADD_OPEACNT_ERR;

    /**
     * 更新年月日時分秒エラー
     */
    public static final String UPD_DTM_ERR;

    /**
     * 更新オペレータアカウントエラー
     */
    public static final String UPD_OPEACNT_ERR;

    /**
     * 削除年月日時分秒エラー
     */
    public static final String DEL_DTM_ERR;

    /**
     * 削除オペレータアカウントエラー
     */
    public static final String DEL_OPEACNT_ERR;

    /**
     * 無効フラグエラー
     */
    public static final String MK_FLG_ERR;

    /**
     * 登録運用年月日エラー
     */
    public static final String ADD_UNYO_YMD_ERR;

    /**
     * 登録処理IDエラー
     */
    public static final String ADD_TRN_ID_ERR;

    /**
     * 更新運用年月日エラー
     */
    public static final String UPD_UNYO_YMD_ERR;

    /**
     * 更新処理IDエラー
     */
    public static final String UPD_TRN_ID_ERR;

    /**
     * 削除運用年月日エラー
     */
    public static final String DEL_UNYO_YMD_ERR;

    /**
     * 削除処理IDエラー
     */
    public static final String DEL_TRN_ID_ERR;

    /**
     * 静的初期化子です。
     * 項目名定数の値を設定します。
     * DBカラム名対応表を作成します。
     */
    static {
        TEMPLATEID = "templateID";
        EVENTID = "eventID";
        IDENTIFYCD = "identifyCD";
        STATUS = "status";
        OPERATORID = "operatorID";
        OPERATEDATE = "operateDate";
        OPERATEDATETIME = "operateDatetime";
        AC_GROUP_CD = "ac_group_cd";
        FUNC_CODE = "func_code";
        SEIKY_NO = "SEIKY_NO";
        SAIKEN_NO = "SAIKEN_NO";
        SEIKY_KKSHI_FLG = "SEIKY_KKSHI_FLG";
        KKSHI_CNT = "KKSHI_CNT";
        ADD_DTM = "ADD_DTM";
        ADD_OPEACNT = "ADD_OPEACNT";
        UPD_DTM = "UPD_DTM";
        UPD_OPEACNT = "UPD_OPEACNT";
        DEL_DTM = "DEL_DTM";
        DEL_OPEACNT = "DEL_OPEACNT";
        MK_FLG = "MK_FLG";
        ADD_UNYO_YMD = "ADD_UNYO_YMD";
        ADD_TRN_ID = "ADD_TRN_ID";
        UPD_UNYO_YMD = "UPD_UNYO_YMD";
        UPD_TRN_ID = "UPD_TRN_ID";
        DEL_UNYO_YMD = "DEL_UNYO_YMD";
        DEL_TRN_ID = "DEL_TRN_ID";
        SEIKY_NO_ERR = "SEIKY_NO_err";
        SAIKEN_NO_ERR = "SAIKEN_NO_err";
        SEIKY_KKSHI_FLG_ERR = "SEIKY_KKSHI_FLG_err";
        KKSHI_CNT_ERR = "KKSHI_CNT_err";
        ADD_DTM_ERR = "ADD_DTM_err";
        ADD_OPEACNT_ERR = "ADD_OPEACNT_err";
        UPD_DTM_ERR = "UPD_DTM_err";
        UPD_OPEACNT_ERR = "UPD_OPEACNT_err";
        DEL_DTM_ERR = "DEL_DTM_err";
        DEL_OPEACNT_ERR = "DEL_OPEACNT_err";
        MK_FLG_ERR = "MK_FLG_err";
        ADD_UNYO_YMD_ERR = "ADD_UNYO_YMD_err";
        ADD_TRN_ID_ERR = "ADD_TRN_ID_err";
        UPD_UNYO_YMD_ERR = "UPD_UNYO_YMD_err";
        UPD_TRN_ID_ERR = "UPD_TRN_ID_err";
        DEL_UNYO_YMD_ERR = "DEL_UNYO_YMD_err";
        DEL_TRN_ID_ERR = "DEL_TRN_ID_err";

        HashMap tmpMap = new HashMap();
        for (int i = 0; i < CONTENTS.length; i++) {
            if (CONTENTS[i][2] != null) {
                tmpMap.put(CONTENTS[i][0], CONTENTS[i][2]);
            }
        }
        DBCOLUMN_MAP = tmpMap;
    }

    /**
     * 項目の配列を取得します。
     * @return 項目の配列
     */
    public Object[][] getContents() {
        return CONTENTS;
    }

    /**
     * 項目の配列を取得します。
     * @return 項目の配列
     */
    public static Object[][] getSchemaContents() {
        return CONTENTS;
    }

    /**
     * DBテーブル名を取得します。
     * @return DBテーブル名
     */
    public static String getTableName() {
        return TABLE_NAME;
    }

    /**
     * 内部スキーマの項目名からDBカラム名を取得します。
     * @param msgName 内部スキーマ項目名
     * @return DBカラム名
     */
    public static String getDBColumnName(String msgName) {
        String clm = (String)DBCOLUMN_MAP.get(msgName);
        if (clm == null) {
            throw new MissingResourceException
                ("スキーマに該当項目のDBカラム名がありません", "CH0041ETMsg", msgName);
        }
        return clm;
    }

}
