クラス ReadTableTag

  • すべての実装されたインタフェース:
    java.io.Serializable, BodyTag, IterationTag, JspTag, Tag, TryCatchFinally
    直系の既知のサブクラス:
    DirectTableInsertTag

    public class ReadTableTag
    extends CommonTagSupport
    指定のファイルを DBTableModelオブジェクトに読み取るファイル入力タグです。 データ(DBTableModel)と、コントローラ(ReadTableタグ)を与えて、外部からコントロールすることで、 各種形式で データ(DBTableModel)を表示させることが できます。 ReadTableタグ に対して、コマンドを与えることにより、内部のコントローラの実装に対応した 形式でデータを作成します。 すべての読取の初期クラス名を リソースファイルの TABLE_READER_DEFAULT_CLASS で指定可能です。 その場合、AutoReader を指定すると、Excel と Text(テキスト) を以下の順番で試します。 Excel,Calc,Text(UnicodeLittle),Text(Windows-31J),Text(UTF-8),Text(EUC-JP),POI UTF-8 のTEXTとWindows-31JのTEXTは、ヘッダー部での区別ができないため、正確なTextの自動読取できません。 ※ 6.2.5.0 (2015/06/05) 仕様変更 ・AutoReader で、encode を指定すると、Text(encode) を先に試します。 ・Textで、encode を指定しない場合は、システム変数の FILE_ENCODE を使用します。 入力件数を"DB.COUNT" キーでリクエストにセットしています。
    関連項目:
    直列化された形式
    機能分類
    ファイル入力
    形式サンプル:
    ●形式: <og:readTable command = "NEW" fileURL = "{@USER.ID}" 読取元ディレクトリ名 filename = "{@filename}" 読取元ファイル名 encode = "UnicodeLittle" 読取元ファイルエンコード名 maxRowCount = "10000" 読取最大件数(初期値:0:[無制限]) /> ●body:なし ●Tag定義: <og:readTable readerClass 【TAG】実際に読み出すクラス名の略称(TableReader_**** の ****)をセットします (初期値:TABLE_READER_DEFAULT_CLASS[=]) command 【TAG】コマンド (NEW,RENEW)をセットします(初期値:NEW) fileURL 【TAG】読取元ディレクトリ名を指定します(初期値:FILE_URL) filename 【TAG】ファイルを読み出すときのファイル名をセットします (初期値:FILE_FILENAME[=file.xls]) encode 【TAG】ファイルを読み出すときのファイルエンコーディング名をセットします(初期値:FILE_ENCODE) skipRowCount 【TAG】(通常は使いません)データの読み飛ばし件数を設定します maxRowCount 【TAG】読取時の最大取り込み件数をセットします (初期値:0:[無制限]) errRowCount 【TAG】読取時の最大エラー件数をセットします (初期値:)(0:[無制限]) separator 【TAG】可変長ファイルを読み出すときの項目区切り文字をセットします columns 【TAG】読取元ファイルのカラム列を、外部(タグ)よりCSV形式で指定します omitNames 【TAG】読取対象外のカラム列を、外部(タグ)よりCSV形式で指定します modifyType 【TAG】ファイル取り込み時の モディファイタイプ(A(追加),C(更新),D(削除))を指定します displayMsg 【TAG】query の結果を画面上に表示するメッセージIDを指定します(初期値:VIEW_DISPLAY_MSG[=])) overflowMsg 【TAG】読取データが最大検索数をオーバーした場合に表示するメッセージリソースIDを指定します (初期値:MSG0007[検索結果が、制限行数を超えましたので、残りはカットされました]) notfoundMsg 【TAG】検索結果がゼロ件の場合に表示するメッセージリソースIDを指定します(初期値:MSG0077[対象データはありませんでした]) ※ sheetName 【TAG】EXCELファイルを読み込むときのシート名を設定します(初期値:指定なし) ※ sheetNos 【TAG】EXCELファイルを読み込むときのシート番号を複数設定できます(初期値:0) ※ sheetConstKeys 【TAG】EXCELファイルを読み込むときの固定値となるカラム名(CSV形式) ※ sheetConstAdrs 【TAG】EXCELファイルを読み込むときの固定値となるアドレス(行-列,行-列,・・・) nullBreakClm 【TAG】カラム列に NULL が現れた時点で読取を中止します(複数Sheetの場合は、次のSheetを読みます)。 nullSkipClm 【TAG】カラム列に NULL が現れたレコードは読み飛ばします。 useNumber 【TAG】行番号情報を、使用している/していない[true/false]を指定します(初期値:true) useRenderer 【TAG】読取処理でKEY:VAL形式のコードリソースから、KEYを取り出す処理を行うかどうかを指定します(初期値:USE_TABLE_READER_RENDERER[=false]) adjustColumns 【TAG】読取元ファイルのデータ変換を行うカラム列をカンマ指定します("*" で全カラム) checkColumns 【TAG】読取元ファイルの整合性チェックを行うカラム列をカンマ指定します("*" で全カラム) nullCheck 【TAG】NULL チェックすべきカラム列をCSV形式(CSV形式)で指定します matchKeys 【TAG】レコードの読取条件指定時のカラム列をCSV形式で指定します 6.4.6.0 (2016/05/27) matchVals 【TAG】レコードの読取条件指定時のカラム列に対応する正規表現データをCSV形式で指定します 6.4.6.0 (2016/05/27) language 【TAG】タグ内部で使用する言語コード[ja/en/zh/…]を指定します stopZero 【TAG】読込件数が0件のとき処理を続行するかどうか[true/false]を指定します(初期値:false[続行する]) mainTrans 【TAG】(通常は使いません)タグで処理される処理がメインとなるトランザクション処理かどうかを指定します(初期値:false) tableId 【TAG】(通常は使いません)sessionから所得する DBTableModelオブジェクトの ID scope 【TAG】キャッシュする場合のスコープ[request/page/session/application]を指定します(初期値:session) useSLabel 【TAG】7.0.7.0 (2019/12/13) エラーメッセージにSLABELを利用するかどうか[true/false]を指定します(初期値:false) caseKey 【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null) 5.7.7.2 (2014/06/20) caseVal 【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null) 5.7.7.2 (2014/06/20) caseNN 【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:判定しない) 5.7.7.2 (2014/06/20) caseNull 【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:判定しない) 5.7.7.2 (2014/06/20) caseIf 【TAG】指定の値が、true/TRUE文字列の場合は、このタグは使用されます(初期値:判定しない) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) /> ●使用例 <og:readTable command = "NEW" readerClass = "Text" テキストファイルの読取 modifyType = "{@modifyType}" 読取時のモディファイタイプ(A,C等) fileURL = "{@USER.ID}" 読取元ディレクトリ名 filename = "{@filename}" 読取元ファイル名 encode = "Shift_JIS" 読取元ファイルエンコード名 maxRowCount = "10000" 読取最大件数(0:[無制限]) columns = "OYA,KO,HJO,SU,DYSTR,DYEND" #NAME に対応するカラム列 useNumber = "false" 行番号の存在しないデータを読取ます。 adjustColumns = "OYA,KO,HJO,SU" データ変換するカラム列("*" で全カラム) checkColumns = "OYA,KO,HJO,SU" 整合性チェックするカラム列("*" で全カラム) nullCheck = "OYA,KO,SU" NULLチェックを実行します("*" で全カラム) stopZero = "true" 取得0件の場合に以降の処理を停止します skipRowCount = "4" データの読み飛ばし件数(読み込み開始は、この数字+1行目から) />
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • フィールドの詳細

      • CMD_NEW

        public static final java.lang.String CMD_NEW
        command 引数に渡す事の出来る コマンド 新規作成 "NEW"
        関連項目:
        定数フィールド値
      • CMD_RENEW

        public static final java.lang.String CMD_RENEW
        command 引数に渡す事の出来る コマンド 再検索 "RENEW"
        関連項目:
        定数フィールド値
      • separator

        protected java.lang.String separator
      • encode

        protected java.lang.String encode
      • readerClass

        protected java.lang.String readerClass
      • maxRowCount

        protected int maxRowCount
      • displayMsg

        protected java.lang.String displayMsg
      • executeCount

        protected int executeCount
      • sheetName

        protected java.lang.String sheetName
      • sheetNos

        protected java.lang.String sheetNos
      • sheetConstKeys

        protected java.lang.String sheetConstKeys
      • sheetConstAdrs

        protected java.lang.String sheetConstAdrs
      • nullBreakClm

        protected java.lang.String nullBreakClm
      • nullSkipClm

        protected java.lang.String nullSkipClm
      • columns

        protected java.lang.String columns
      • useNumber

        protected boolean useNumber
      • stopZero

        protected boolean stopZero
      • skipRowCount

        protected int skipRowCount
      • sqlError

        protected boolean sqlError
      • useSLabel

        protected boolean useSLabel
    • コンストラクタの詳細

      • ReadTableTag

        public ReadTableTag()
        デフォルトコンストラクター
        変更履歴:
        6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
    • メソッドの詳細

      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 Tag
        オーバーライド:
        doEndTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
        変更履歴:
        3.0.1.4 (2003/03/17) displayMsg が 0Byteの場合は、件数も表示しないように変更。, 3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。, 3.5.4.1 (2003/12/01) 引数の BufferedReader を、InputStream に変更。, 3.5.4.3 (2004/01/05) 引数の InputStream を、 BufferedReader に戻す。, 3.5.6.5 (2004/08/09) 暫定的に、DBTableModelを先行削除します。, 3.6.0.0 (2004/09/24) DBTableModel の先行削除は、scope="session" の場合のみ。, 3.6.0.2 (2004/10/04) 取り込み時チェック用に、checkColumns,adjustColumns 属性追加, 3.6.0.8 (2004/11/19) DBTableModel をセーブする時に、トランザクションチェックを行います。, 3.8.5.3 (2006/08/07) readerClassが "Excel"でエラーが発生したとき、もう一度Defaultで再読取を行います。, 4.0.0.0 (2007/10/12) checkTableColumn 前に、modifyType 設定を行います。, 4.0.0.0 (2007/10/18) メッセージリソース統合( getResource().getMessage ⇒ getResource().getLabel ), 4.3.1.1 (2008/10/08) columnsが指定されている場合は、AutoReader禁止, 4.3.7.0 (2009/06/01) stopZero機能,DB.COUNTリクエストキーへ読込件数セットを追加, 5.1.6.0 (2010/05/01) DBLastSqlの処理は、DBTableModelが新規作成された処理でのみ行う。, 5.1.8.0 (2010/07/01) AutoReaderのCalc対応, 5.1.9.0 (2010/08/01) AutoReaderでのExceptionの判定をThrowableに変更, 5.7.1.2 (2013/12/20) tempMsg.toString() ⇒ errMsg 変更, 5.7.7.2 (2014/06/20) caseKey,caseVal,caseNN,caseNull 属性を追加, 6.0.2.5 (2014/10/31) debug=true 時のエラー情報を増やします。, 6.2.0.0 (2015/02/27) TableReader クラスの呼び出し元メソッドの共通化(EXCEL,TEXT), 6.2.0.0 (2015/02/27) EXCEL出力のparamLevel初期値変更 3:標準推奨 → 4:個人設定可, 6.2.2.0 (2015/03/27) ColumnAction インナークラスでパラメータを整理する。, 6.2.3.0 (2015/05/01) 複数処理を考慮して、例外処理は発行しない。, 6.2.3.0 (2015/05/01) columnsが指定されていても、AutoReader を使えるようにします。, 6.2.4.2 (2015/05/29) エラーを画面に出します。, 6.2.5.0 (2015/06/05) AutoReaderの仕様変更。, 6.3.6.1 (2015/08/28) DirectTableInsertTag でSQLException発生時のみ throwする。, 6.4.2.0 (2016/01/29) StringUtil#ogStackTrace(Throwable) を、ThrowUtil#ogStackTrace(String,Throwable) に置き換え。, 6.4.3.4 (2016/03/11) String配列 から、Setに置き換えます。, 6.4.5.1 (2016/04/28) CSV 指定時は、readerClass="Text" , separator="," に、再設定します。, 6.5.0.1 (2016/10/21) Throwable ではなく、OgCharacterException をキャッチして、処理を継続します。, 7.0.4.0 (2019/05/31) encode指定時の処理順序変更, 7.0.5.0 (2019/09/09) OgCharacterExceptionでは、取りこぼしがあるため、OgRuntimeException も継続処理するように変更。
      • afterEnd

        protected int afterEnd()
        #doEndTag() の後続処理を記述します。 これは、サブクラスで、DBTableModel以外の処理を行う場合に、 処理内容を分けるために用意します。
        戻り値:
        後続処理の指示
        変更履歴:
        6.2.2.0 (2015/03/27) #afterEnd() メソッド 新規作成。, 6.2.4.2 (2015/05/29) executeCount の設定がおかしい。ReadTableTagでは、設定されていなかった。, 6.2.5.0 (2015/06/05) エラー処理は、継承先でも行うので、メソッド化します。, 7.0.7.0 (2019/12/13) useSLabel 属性を追加。
      • release2

        protected void release2()
        タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
        オーバーライド:
        release2 クラス内 CommonTagSupport
        変更履歴:
        2.0.0.4 (2002/09/27) カスタムタグの release() メソッドを、追加, 3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。, 3.1.3.0 (2003/04/10) FILE_ENCODE から、エンコード情報を取得する。, 3.1.4.0 (2003/04/18) command 属性に、初期値(NEW)を設定する。, 3.5.4.2 (2003/12/15) EXCELのシート名を指定できるように変更。, 3.5.4.5 (2004/01/23) 外部よりカラム列(CSV形式)を指定できるようにする。, 3.6.0.2 (2004/10/04) checkColumns,adjustColumns,allColumnCheck 属性追加, 3.7.0.5 (2005/04/11) useNumber 属性を追加します。, 3.8.0.2 (2005/06/30) nullCheck 属性追加, 3.8.5.3 (2006/08/07) readerClass 属性の初期値をシステムリソースより取得します。, 4.3.7.0 (2009/06/01) stopZero属性追加, 5.1.6.0 (2010/05/01) DBLastSqlの処理は、DBTableModelが新規作成された処理でのみ行う。, 5.1.6.0 (2010/05/01) データの読み飛ばし設定 skipRowCount 属性追加, 5.2.1.0 (2010/10/01) 読取処理でコードリソースのラベル変換を行うかどうか useRenderer 属性追加, 5.5.7.2 (2012/10/09) 複数シートを指定できるようにシート番号を指定できるように、sheetNos属性追加, 5.5.8.2 (2012/11/09) 固定値となるカラム名、アドレスの指定のための、sheetConstKeys、sheetConstAdrs属性追加, 5.5.8.2 (2012/11/09) カラム列に NULL が現れた時点で読取を中止する、nullBreakClm属性追加, 6.1.0.0 (2014/12/26) omitNames 属性を追加, 6.2.0.0 (2015/02/27) オーバーフロー時のメッセージを表示, 6.2.0.0 (2015/02/27) EXCEL出力のparamLevel初期値変更 3:標準推奨 → 4:個人設定可, 6.2.2.0 (2015/03/27) ColumnAction インナークラスでパラメータを整理する。, 6.2.3.0 (2015/05/01) 行読み飛ばし nullSkipClm追加, 6.2.5.0 (2015/06/05) ファイルエンコードの初期化を遅らせます。, 7.0.7.0 (2019/12/13) useSLabel 属性を追加。
      • create

        protected void create​(java.io.File file)
        TableReader の実オブジェクトを生成して,BufferedReader に書き込みます。
        パラメータ:
        file - 出力するFileオブジェクト
        変更履歴:
        3.5.4.1 (2003/12/01) 引数の BufferedReader を、InputStream に変更。, 3.5.4.2 (2003/12/15) TableReader のサブクラス名変更。, 3.5.4.2 (2003/12/15) EXCELのシート名を指定できるように変更。, 3.5.4.3 (2004/01/05) 引数の InputStream を、 BufferedReader に戻す。, 3.5.4.5 (2004/01/23) TableReader に、encode を渡すように変更。, 3.5.6.0 (2004/06/18) 各種プラグイン関連付け設定を、システムパラメータ に記述します。, 3.7.0.5 (2005/04/11) useNumber 属性を追加します。, 4.0.0.0 (2005/01/31) キーの指定を、TableReader. から、TableReader_ に変更します。, 4.0.0.0 (2005/01/31) lang ⇒ ResourceManager へ変更, 5.1.6.0 (2010/05/01) データの読み飛ばし設定 skipRowCount 属性追加, 5.2.1.0 (2010/10/01) 読取処理でコードリソースのラベル変換を行うかどうか設定 useRenderer 属性追加, 5.5.7.2 (2012/10/09) 複数シートを指定できるようにシート番号を指定できるように、sheetNos属性追加, 5.5.8.2 (2012/11/09) 固定値となるカラム名、アドレスの指定のための、sheetConstKeys、sheetConstAdrs属性追加, 5.5.8.2 (2012/11/09) カラム列に NULL が現れた時点で読取を中止する、nullBreakClm属性追加, 6.0.4.0 (2014/11/28) NullPointerException が発生するので、事前にチェックします。, 6.2.0.0 (2015/02/27) TableReader クラスの呼び出し元メソッドの共通化(EXCEL,TEXT), 6.2.2.0 (2015/03/27) ColumnAction インナークラスでパラメータを整理する。, 6.2.2.0 (2015/03/27) ColumnActionListener 対応。, 6.2.3.0 (2015/05/01) 行読み飛ばし nullSkipClm追加, 6.4.1.2 (2016/01/22) setColumnActionListener は、内部処理が走るため、他の設定が終わってから呼び出す。, 6.4.3.3 (2016/03/04) HybsSystem.newInstance(String,String) への置き換え。
      • setTableId

        public void setTableId​(java.lang.String id)
        【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します (初期値:HybsSystem#TBL_MDL_KEY[=])。
        パラメータ:
        id - テーブルID (sessionに登録する時のID)
        説明:
        検索結果より、DBTableModelオブジェクトを作成します。これを、下流のviewタグ等に 渡す場合に、通常は、session を利用します。その場合の登録キーです。 query タグを同時に実行して、結果を求める場合、同一メモリに配置される為、 この tableId 属性を利用して、メモリ空間を分けます。 (初期値:HybsSystem#TBL_MDL_KEY[=])。
      • setSeparator

        public void setSeparator​(java.lang.String separator)
        【TAG】可変長ファイルを作成するときの項目区切り文字をセットします。
        パラメータ:
        separator - 項目区切り文字
        説明:
        可変長ファイルを作成するときの項目区切り文字をセットします。
      • setFileURL

        public void setFileURL​(java.lang.String url)
        【TAG】読取元ディレクトリ名を指定します (初期値:FILE_URL[=])。
        パラメータ:
        url - 読取元ディレクトリ名
        関連項目:
        SystemData.FILE_URL
        説明:
        この属性で指定されるディレクトリより、ファイルを読取ます。 指定方法は、通常の fileURL 属性と同様に、先頭が、'/' (UNIX) または、2文字目が、 ":" (Windows)の場合は、指定のURLそのままのディレクトリに、そうでない場合は、 fileURL = "{@USER.ID}" と指定すると、FILE_URL 属性で指定のフォルダの下に、 さらに、各個人ID別のフォルダを作成して、そこを操作します。 (初期値:システム定数のFILE_URL[=])。
        変更履歴:
        4.0.0.0 (2005/01/31) StringUtil.urlAppend メソッドの利用, 4.0.0.0 (2007/11/20) 指定されたディレクトリ名の最後が"\"or"/"で終わっていない場合に、"/"を付加する。, 6.4.2.1 (2016/02/05) URLの最後に、"/" を追加する処理を廃止。
      • setFilename

        public void setFilename​(java.lang.String filename)
        【TAG】ファイルを作成するときのファイル名をセットします (初期値:FILE_FILENAME[=])。
        パラメータ:
        filename - ファイル名
        関連項目:
        SystemData.USE_SQL_INJECTION_CHECK
        説明:
        ファイルを作成するときのファイル名をセットします。 (初期値:システム定数のFILE_FILENAME[=])。
      • setEncode

        public void setEncode​(java.lang.String enc)
        【TAG】ファイルを作成するときのファイルエンコーディング名をセットします (初期値:FILE_ENCODE[=])。
        パラメータ:
        enc - ファイルエンコーディング名
        関連項目:
        IANA Charset Registry, SystemData.FILE_ENCODE
        説明:
        readerClass="AutoReader" の場合、ここで設定した encode が優先されます。 readerClass="Text" の場合、encode が指定されていない場合は、初期値 の FILE_ENCODE が使用されます Shift_JIS,MS932,Windows-31J,UTF-8,ISO-8859-1,UnicodeLittle (初期値:システム定数のFILE_ENCODE[=])。
        変更履歴:
        2.2.0.0 (2002/12/17) 中国語(国際化)対応 エンコードの取得方法変更, 3.1.3.0 (2003/04/10) FILE_ENCODE から、エンコード情報を取得する。
      • setReaderClass

        public void setReaderClass​(java.lang.String readerCls)
        【TAG】実際に読み出すクラス名の略称(TableReader_**** の ****)をセットします (初期値:TABLE_READER_DEFAULT_CLASS[=])。
        パラメータ:
        readerCls - クラス名(の略称)
        関連項目:
        TableReaderのサブクラス
        説明:
        実際に読み出すクラス名(の略称)をセットします。 これは、org.opengion.hayabusa.io 以下の TableReader_**** クラスの **** を 与えます。これらは、TableReader インターフェースを継承したサブクラスです。 属性クラス定義の TableReader を参照願います。
        変更履歴:
        3.1.3.0 (2003/04/10) FILE_ENCODE から、エンコード情報を取得する。 "AutoReader" は特別な名前で、Excel と Text(テキスト) を以下の順番で試します。 Excel,Calc,Text(UnicodeLittle),Text(Windows-31J),Text(Windows-31J),Text(UTF-8),Text(EUC-JP) Excel については、拡張子を自動判定して、(xlsx か xls) 適切な処理を行います。 従来からの 拡張子のみ、xls のテキストファイルは、#NAME を見つけることができないため、エラーになり、 次のText読み取りにゆだねられます。 UTF-8 のTEXTとWindows-31JのTEXTは、ヘッダー部での区別ができないため、java.nio.file.Files と Pathを 使用した読み取り方式に変更しています。 "AutoReader" に設定した場合は、上記の様に、encode を順番に確かめるため、encode属性の指定は無視されます。 (初期値:TABLE_READER_DEFAULT_CLASS[=])。, 6.2.1.0 (2015/03/13) Default廃止に伴い、Defaultが指定された場合は、Textに置き換える。
      • setMaxRowCount

        public void setMaxRowCount​(java.lang.String count)
        【TAG】読取時の最大取り込み件数をセットします(初期値:0:無制限)。
        パラメータ:
        count - 最大件数
        説明:
        DBTableModelのデータとして登録する最大件数をこの値に設定します。 サーバーのメモリ資源と応答時間の確保の為です。 0 をセットすると、無制限になります。 (初期値:0:無制限)
        変更履歴:
        5.5.8.5 (2012/11/27) 0を無制限として処理します。, 6.2.2.0 (2015/03/27) 初期値を、無制限に変更
      • setErrRowCount

        public void setErrRowCount​(java.lang.String count)
        【TAG】読取時の最大エラー件数をセットします (初期値:)。
        パラメータ:
        count - 最大件数
        説明:
        DBTableModelのデータチェックを行う場合、エラーの最大件数をこの値に設定します。 エラー最大件数がこの値を超えると、処理を打ち切ります。 0 をセットすると、無制限になります。 (初期値:)。
        変更履歴:
        6.2.2.0 (2015/03/27) 読取時の最大エラー件数(errRowCount) を新規追加
      • setCommand

        public void setCommand​(java.lang.String cmd)
        【TAG】コマンド (NEW,RENEW)をセットします(初期値:NEW)。
        パラメータ:
        cmd - コマンド (public static final 宣言されている文字列)
        関連項目:
        コマンド定数
        説明:
        コマンドは,HTMLから(get/post)指定されますので,CMD_xxx で設定される フィールド定数値のいづれかを、指定できます。 何も設定されない、または、null の場合は、"NEW" が初期値にセットされます。
      • setDisplayMsg

        public void setDisplayMsg​(java.lang.String id)
        【TAG】query の結果を画面上に表示するメッセージIDを指定します (初期値:VIEW_DISPLAY_MSG[=])。
        パラメータ:
        id - 処理結果表示メッセージID
        説明:
        ここでは、検索結果の件数や登録された件数をまず出力し、 その次に、ここで指定したメッセージをリソースから取得して 表示します。 件数を表示させる場合は、displayMsg = "MSG0033"[ 件検索しました] をセットしてください。 表示させたくない場合は, displayMsg = "" をセットしてください。 (初期値:システム定数のVIEW_DISPLAY_MSG[=])。
        変更履歴:
        6.2.0.0 (2015/02/27) リクエスト変数を使用できるように修正。
      • setOverflowMsg

        public void setOverflowMsg​(java.lang.String id)
        【TAG】読取データが最大検索数をオーバーした場合に表示するメッセージリソースIDを指定します (初期値:MSG0007[検索結果が、制限行数を超えましたので、残りはカットされました])。
        パラメータ:
        id - 検索数オーバー時メッセージID
        説明:
        読取結果が、maxRowCount で設定された値より多い場合、何らかのデータは読取されず 切り捨てられたことになります。 ここでは、displayMsg を表示した後、必要に応じて、このメッセージを表示します。 表示させたくない場合は, overflowMsg = "" をセットしてください。 初期値は、MSG0007[検索結果が、制限行数を超えましたので、残りはカットされました]です。
        変更履歴:
        6.2.0.0 (2015/02/27) オーバーフロー時のメッセージを表示
      • setNotfoundMsg

        public void setNotfoundMsg​(java.lang.String id)
        【TAG】検索結果がゼロ件の場合に表示するメッセージリソースIDを指定します(初期値:MSG0077[対象データはありませんでした])。
        パラメータ:
        id - ゼロ件時表示メッセージID
        説明:
        ここでは、検索結果がゼロ件の場合のみ、特別なメッセージを表示させます。 従来は、displayMsg と兼用で、『0 件検索しました』という表示でしたが、 displayMsg の初期表示は、OFF になりましたので、ゼロ件の場合のみ別に表示させます。 表示させたくない場合は, notfoundMsg = "" をセットしてください。 初期値は、MSG0077[対象データはありませんでした]です。
      • setModifyType

        public void setModifyType​(java.lang.String type)
        【TAG】ファイル取り込み時の 更新タイプ [A:追加/C:更新/D:削除]を指定します。
        パラメータ:
        type - 更新タイプ [A:追加/C:更新/D:削除]
        説明:
        ファイル読み込み時に、そのデータをA(追加)、C(更新)、D(削除)の 更新タイプをつけた状態にします。 その状態で、そのまま、update する事が可能になります。
      • setSheetName

        public void setSheetName​(java.lang.String sheet)
        【TAG】EXCELファイルを読み込むときのシート名を設定します(初期値:指定なし)。
        パラメータ:
        sheet - EXCELファイルのシート名
        関連項目:
        setSheetNos( String )
        説明:
        EXCELファイルを読み込む時に、シート名を指定します。これにより、複数の形式の 異なるデータを順次読み込むことや、シートを指定して読み取ることが可能になります。 sheetNos と sheetName が同時に指定された場合は、sheetNos が優先されます。エラーにはならないのでご注意ください。 初期値は、指定なしです。
        変更履歴:
        3.5.4.2 (2003/12/15) 新規追加
      • setSheetNos

        public void setSheetNos​(java.lang.String sheet)
        【TAG】EXCELファイルを読み込むときのシート番号を指定します(初期値:0)。
        パラメータ:
        sheet - EXCELファイルのシート番号(0から始まる)
        関連項目:
        setSheetName( String )
        説明:
        EXCEL読み込み時に複数シートをマージして取り込みます。 シート番号は、0 から始まる数字で表します。 ヘッダーは、最初のシートのカラム位置に合わせます。(ヘッダータイトルの自動認識はありません。) よって、指定するシートは、すべて同一レイアウトでないと取り込み時にカラムのずれが発生します。 シート番号の指定は、CSV形式で、複数指定できます。また、N-M の様にハイフンで繋げることで、 N 番から、M 番のシート範囲を一括指定可能です。また、"*" による、全シート指定が可能です。 これらの組み合わせも可能です。( 0,1,3,5-8,10-* ) ただし、"*" に関しては例外的に、一文字だけで、すべてのシートを表すか、N-* を最後に指定するかの どちらかです。途中には、"*" は、現れません。 シート番号は、重複(1,1,2,2)、逆転(3,2,1) での指定が可能です。これは、その指定順で、読み込まれます。 sheetNos と sheetName が同時に指定された場合は、sheetNos が優先されます。エラーにはならないのでご注意ください。 初期値は、0(第一シート) です。
        変更履歴:
        5.5.7.2 (2012/10/09) 新規追加
      • setSheetConstKeys

        public void setSheetConstKeys​(java.lang.String constKeys)
        【TAG】EXCELファイルを読み込むときのシート単位の固定値を設定するためのカラム名を指定します。
        パラメータ:
        constKeys - 固定値となるカラム名 (CSV形式)
        関連項目:
        setSheetConstAdrs( String )
        説明:
        カラム名は、CSV形式で指定します。 これにより、シートの一か所に書かれている情報を、DBTableModel のカラムに固定値として 設定することができます。 例として、DB定義書で、テーブル名をシートの全レコードに設定したい場合などに使います。 このメソッドは、isExcel() == true の場合のみ利用されます。
        変更履歴:
        5.5.8.2 (2012/11/09) 新規追加
      • setSheetConstAdrs

        public void setSheetConstAdrs​(java.lang.String constAdrs)
        【TAG】EXCELファイルを読み込むときのシート単位の固定値を設定するためのカラム名に対応するアドレスを指定します。
        パラメータ:
        constAdrs - 固定値となるアドレス (行-列,行-列,・・・)
        関連項目:
        setSheetConstKeys( String )
        説明:
        アドレスは、EXCEL上の行-列をCSV形式で指定します。 行列は、EXCELオブジェクトに準拠するため、0から始まる整数です。 0-0 ⇒ A1 , 1-0 ⇒ A2 , 0-1 ⇒ B1 になります。 これにより、シートの一か所に書かれている情報を、DBTableModel のカラムに固定値として 設定することができます。 例として、DB定義書で、テーブル名をシートの全レコードに設定したい場合などに使います。 このメソッドは、isExcel() == true の場合のみ利用されます。 5.7.6.3 (2014/05/23) より、 ①EXCEL表記に準拠した、A1,A2,B1 の記述も処理できるように対応します。 なお、A1,A2,B1 の記述は、必ず、英字1文字+数字 にしてください。(A~Zまで) ②処理中のEXCELシート名をカラムに割り当てるために、"SHEET" という記号に対応します。 例えば、sheetConstKeys="CLM,LANG,NAME" とし、sheetConstAdrs="0-0,A2,SHEET" とすると、 NAMEカラムには、シート名を読み込むことができます。 これは、内部処理の簡素化のためです。 ちなみに、EXCELのセルに、シート名を表示させる場合の関数は、下記の様になります。 =RIGHT(CELL("filename",$A$1),LEN(CELL("filename",$A$1))-FIND("]",CELL("filename",$A$1)))
        変更履歴:
        5.5.8.2 (2012/11/09) 新規追加
      • setNullBreakClm

        public void setNullBreakClm​(java.lang.String clm)
        【TAG】ここに指定されたカラム列に NULL が現れた時点で読取を中止します。
        パラメータ:
        clm - カラム列
        説明:
        これは、指定のカラムは必須という事を条件に、そのレコードだけを読み取る処理を行います。 複数Sheetの場合は、次のSheetを読みます。 現時点では、Excel の場合のみ有効です。
        変更履歴:
        5.5.8.2 (2012/11/09) 新規追加
      • setNullSkipClm

        public void setNullSkipClm​(java.lang.String clm)
        【TAG】ここに指定されたカラム列に NULL が現れたレコードは読み飛ばします。
        パラメータ:
        clm - カラム列
        説明:
        例えば、更新対象カラムで、null の場合は、何もしない、などのケースで使用できます。 複数カラムの場合は、AND条件やOR条件などが、考えられるため、 カラムを一つにまとめて、指定してください。
        変更履歴:
        6.2.3.0 (2015/05/01) 行読み飛ばし nullSkipClm追加
      • setColumns

        public void setColumns​(java.lang.String clms)
        【TAG】読取元ファイルのカラム列を、外部(タグ)より指定します。
        パラメータ:
        clms - 読取元ファイルのカラム列 (CSV形式)
        説明:
        読取元ファイルのカラム列を、外部(タグ)より指定します。 ファイルに記述された #NAME より優先して使用されます。 これは、元ファイルのカラムを順番に指定のカラム名に割り当てる機能で ファイルの特定のカラム列を抜き出して取り込む機能ではありません。
        変更履歴:
        3.5.4.5 (2004/01/23) 新規作成
      • setOmitNames

        public void setOmitNames​(java.lang.String clms)
        【TAG】読取対象外のカラム列を、外部(タグ)よりCSV形式で指定します。
        パラメータ:
        clms - 読取対象外のカラム列 (CSV形式)
        説明:
        指定するカラム名に対して、読取処理を行いません。 ここで指定するカラム名は、ファイルの #NAME または、columns で 指定するカラム名に対して、含まれている必要はありません。 その場合は、ここでの指定は無視されます。
        変更履歴:
        6.1.0.0 (2014/12/26) omitNames 属性を追加, 6.2.2.0 (2015/03/27) ColumnAction インナークラスでパラメータを整理する。
      • addOmitNames

        protected void addOmitNames​(java.lang.String omit)
        読取対象外のカラム列を、追加指定します。 内部的な処理で、DirectTableInsertTag で、WRITABLE,ROWID などの データベースに存在しないカラムを、omit するための機能です。 属性定義してもよいのですが、統一的な処理方法が決まらないので、 取りあえず、暫定的に、サブクラスからのみ、して可能にしておきます。 このメソッドは、setOmitNames( String ) が呼び出された後でしか 有効に機能しません。
        パラメータ:
        omit - 読取対象外の追加カラム列 (CSV形式)
        変更履歴:
        6.2.4.0 (2015/05/15) 無条件でOMITする名称を指定します。
      • setCheckColumns

        public void setCheckColumns​(java.lang.String clms)
        【TAG】読取元ファイルの整合性チェックを行うカラム列をカンマ指定します。
        パラメータ:
        clms - 整合性チェックを行うカラム列 (CSV形式)
        説明:
        カラムオブジェクトのDBType属性に対応したチェックを行います。 指定のカラム名をCSV形式(CSV)で複数指定できます。 全てのカラムのチェックを行う場合は、"*" を指定して下さい。 分解方法は、通常のパラメータ取得後に、CSV分解します。
        変更履歴:
        3.6.0.2 (2004/10/04) 新規追加 取り込み時チェック用, 3.8.8.5 (2007/03/09) 通常のパラメータ取得後に、CSV分解に戻します。, 6.2.2.0 (2015/03/27) ColumnAction インナークラスでパラメータを整理する。
      • setAdjustColumns

        public void setAdjustColumns​(java.lang.String clms)
        【TAG】読取元ファイルのデータ変換を行うカラム列をカンマ指定します。
        パラメータ:
        clms - データ変換を行うカラム列 (CSV形式)
        説明:
        カラムオブジェクトのDBType属性に対応したデータ変換を行います。 指定のカラム名をCSV形式(CSV)で複数指定できます。 全てのカラムをデータ変換する場合は、"*" を指定して下さい。 分解方法は、通常のパラメータ取得後に、CSV分解します。
        変更履歴:
        3.6.0.2 (2004/10/04) 新規追加 取り込み時データ変換, 3.8.8.5 (2007/03/09) 通常のパラメータ取得後に、CSV分解に戻します。, 6.2.2.0 (2015/03/27) ColumnAction インナークラスでパラメータを整理する。
      • setNullCheck

        public void setNullCheck​(java.lang.String clms)
        【TAG】NULL チェックすべきカラム列をCSV形式(CSV形式)で指定します。
        パラメータ:
        clms - カラム列(CSV形式)
        説明:
        nullCheck="AAA,BBB,CCC,DDD" 分解方法は、通常のパラメータ取得後に、CSV分解します。
        変更履歴:
        3.8.0.2 (2005/06/30) 新規追加, 3.8.8.5 (2007/03/09) 通常のパラメータ取得後に、CSV分解に戻します。, 6.2.2.0 (2015/03/27) ColumnAction インナークラスでパラメータを整理する。
      • setUseNumber

        public void setUseNumber​(java.lang.String useNo)
        【TAG】行番号情報を、使用している/していない[true/false]を指定します(初期値:true)。
        パラメータ:
        useNo - 行番号情報 [true:使用する/false:使用しない]
        説明:
        通常のフォーマットでは、各行の先頭に行番号が出力されています。 読取時に、#NAME 属性を使用する場合は、この行番号を無視しています。 #NAME 属性を使用せず、columns 属性でカラム名を指定する場合(他システムの 出力ファイルを読み取るケース等)では、行番号も存在しないケースがあり、 その様な場合に、useNumber="false" を指定すれば、データの最初から読取始めます。 この場合、出力データのカラムの並び順が変更された場合、columns 属性も 指定しなおす必要がありますので、できるだけ、#NAME 属性を使用するように してください。 なお、EXCEL 入力には、この設定は適用されません。(暫定対応) 初期値は、true(使用する) です。
        変更履歴:
        3.7.0.5 (2005/04/11) 新規追加
      • setStopZero

        public void setStopZero​(java.lang.String cmd)
        【TAG】読込件数が0件のとき処理を続行するかどうか[true/false]を指定します(初期値:false[続行する])。
        パラメータ:
        cmd - 0件時停止可否 [true:処理を中止する/false:続行する]
        説明:
        初期値は、false(続行する)です。
        変更履歴:
        4.3.7.0 (2009/06/01) 新規追加
      • setMainTrans

        public void setMainTrans​(java.lang.String flag)
        【TAG】(通常は使いません)タグで処理される処理がメインとなるトランザクション処理かどうかを指定します(初期値:true)。
        パラメータ:
        flag - メイントランザクションかどうか [true:メイン/false:その他]
        説明:
        この値は、ファイルダウンロード処理に影響します。この値がtrueに指定された時にcommitされたDBTableModelが ファイルダウンロードの対象の表になります。 このパラメーターは、通常、各タグにより実装され、ユーザーが指定する必要はありません。 但し、1つのJSP内でDBTableModelが複数生成される場合に、前に処理したDBTableModelについてファイルダウンロードをさせたい 場合は、後ろでDBTableModelを生成するタグで、明示的にこの値をfalseに指定することで、ファイルダウンロード処理の対象から 除外することができます。
        変更履歴:
        5.1.6.0 (2010/05/01) 新規作成
      • setSkipRowCount

        public void setSkipRowCount​(java.lang.String count)
        【TAG】(通常は使いません)データの読み飛ばし件数を設定します。
        パラメータ:
        count - 読み始めの初期値
        説明:
        TAB区切りテキストやEXCEL等のデータの読み始めの初期値を指定します。 ファイルの先頭行が、0行としてカウントしますので、設定値は、読み飛ばす 件数になります。(1と指定すると、1件読み飛ばし、2行目から読み込みます。) 読み飛ばしは、コメント行などは、無視しますので、実際の行数分読み飛ばします。 #NAME属性や、columns 属性は、有効です。
        変更履歴:
        5.1.6.0 (2010/05/01) 新規作成
      • setUseRenderer

        public void setUseRenderer​(java.lang.String flag)
        【TAG】読取処理でKEY:VAL形式のコードリソースから、KEYを取り出す処理を行うかどうかを指定します (初期値:USE_TABLE_READER_RENDERER[=])。
        パラメータ:
        flag - ラベル逆変換を行うかどうか [true:行う/false:行わない]
        関連項目:
        SystemData.USE_TABLE_READER_RENDERER
        説明:
        TableWriter_Renderer 系のクラスで出力した場合は、コードリソースがラベルで出力されます。 そのファイルを読み取ると、当然、エラーになります。 ここでは、コードリソースのカラムに対して、ラベルからコードを求める逆変換を行うことで、 Renderer 系で出力したファイルを取り込むことができるようにします。 ここでは、TableWriter 系と同様に、TableReader_Renderer 系のクラスを作るのではなく、 属性値のフラグで、制御します。 将来的には、TableWriter 系も廃止して、同様のフラグで制御するように変更する予定です。 (初期値:システム定数のUSE_TABLE_READER_RENDERER[=])。
        変更履歴:
        5.2.1.0 (2010/10/01) 新規作成, 6.2.2.0 (2015/03/27) ColumnAction インナークラスでパラメータを整理する。
      • setMatchKeys

        public void setMatchKeys​(java.lang.String keys)
        【TAG】matchKeysをCSV形式で指定します。
        パラメータ:
        keys - カラム列(CSV形式文字)
        関連項目:
        setMatchVals( String )
        説明:
        ファイルから特定の行のみを読み取るためのmatchKeysを指定します。 matchKeysで指定したカラムに対して、matchValsの正規表現でチェックします。 何も指定しない場合は、読取対象になります。 matchVals と個数を合わせてください。
        変更履歴:
        6.4.6.0 (2016/05/27) 新規追加
      • setMatchVals

        public void setMatchVals​(java.lang.String vals)
        【TAG】matchValsをCSV形式で指定します。
        パラメータ:
        vals - カラム列に対する正規表現(CSV形式文字)
        関連項目:
        setMatchKeys( String )
        説明:
        ファイルから特定の行のみを読み取るためのmatchValsを指定します。 matchKeysで指定したカラムに対して、matchValsの正規表現でチェックします。 この機能はTableReader_Defaultのみ有効です。 何も指定しない場合は、読取対象になります。 matchKeys と個数を合わせてください。
        変更履歴:
        6.4.6.0 (2016/05/27) 新規追加
      • setUseSLabel

        public void setUseSLabel​(java.lang.String prm)
        【TAG】エラーメッセージにSLABELを利用するかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        prm - SLABEL利用 [true:利用する/false:利用しない]
        説明:
        通常のエラーメッセージは、ラベル(長)が使われますが、これをラベル(短)を使いたい場合に、true にセットします。 ここでのラベル(短)は、タグ修飾なしの、ラベル(短)です。 標準はfalse:利用しない=ラベル(長)です。 true/false以外を指定した場合はfalse扱いとします。 ラベルリソースの概要説明があれば表示しますが、useSLabel="true" 時は、概要説明を表示しません。
        変更履歴:
        7.0.7.0 (2019/12/13) 新規追加
      • toString

        public java.lang.String toString()
        このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
        オーバーライド:
        toString クラス内 CommonTagSupport
        戻り値:
        このクラスの文字列表現
        このメソッドは、nullを返しません