org.opengion.hayabusa.taglib

## クラス ReportTableTag2

- java.lang.Object
- - javax.servlet.jsp.tagext.TagSupport
  - - javax.servlet.jsp.tagext.BodyTagSupport
    - - org.opengion.hayabusa.taglib.CommonTagSupport
      - - org.opengion.hayabusa.taglib.ReportTableTag2

- すべての実装されたインタフェース:
    Serializable, BodyTag, IterationTag, JspTag, Tag, TryCatchFinally

      public class ReportTableTag2
      extends CommonTagSupport

  検索結果の DBTableModelオブジェクトをレポート形式に変換するタグです。 データ(DBTableModel)と、コントローラ(DBTableReport クラス)を与えて、 外部からコントロールすることで、各種形式で データ(DBTableModel)を表示させることが 可能です。 このタグを使用するには、OpenOffice.orgのモジュールがインストールされてている必要があります。 また、出力するために帳票システム関連のデータ設定やマスタ設定は一切必要ありません。
  関連項目:
    直列化された形式
  形式サンプル:

         ●形式：<og:report fileURL="[･･･]" listId="[･･･]" ･･･ />
         ●body：なし

         ●Tag定義：
           <og:report2
               fileURL            【TAG】雛型のHTMLファイルの保存してある ディレクトリを指定します
               listId           ○【TAG】帳票IDを指定します(必須)。
               outFileURL         【TAG】出力HTMLファイルの保存してあるディレクトリを指定します
               outFilename      ○【TAG】ファイルを作成するときの出力ファイル名をセットします(必須)。
               headerKeys         【TAG】固定部の{@KEY} の KEY 部分をCSV形式で複数指定します
               headerVals         【TAG】固定部のKEY に対応する値をCSV形式で複数指定します
               footerKeys         【TAG】繰り返し部の終了後に表示する key 部分をCSV形式で複数指定します
               footerVals         【TAG】固定部のKEY に対応する値をCSV形式で複数指定します
               pageEndCut         【TAG】ボディー部(繰り返し部)がなくなったときに、それ以降を表示するかどうか[true/false]を指定します(初期値:true)
               useLocalResource   【TAG】各システムのリソース(ローカルリソース)を使用するか[true/false]を指定します(初期値:true)
               useSheetName       【TAG】PAGEBREAKカラムの値を、シート名として使うかどうか[true/false]を指定します(初期値:false)
               fgrun              【TAG】出力方法を指定します(初期値:P(PDF出力))
               printerName        【TAG】プリンター名を指定します
               language           【TAG】タグ内部で使用する言語コード[ja/en/zh/…]を指定します
               scope              【TAG】キャッシュする場合のスコープ[request/page/session/applicaton]を指定します(初期値:session)
               tableId            【TAG】(通常使いません)sessionから所得する DBTableModelオブジェクトの ID
               debug              【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
           />

         ●使用例

  機能分類
    その他出力
  バージョン
    4.0
  作成者
    Hiroki Nakamura
  導入されたバージョン:
    JDK5.0,

- - ### フィールドの概要

    - ### クラスから継承されたフィールド javax.servlet.jsp.tagext.BodyTagSupport

      `bodyContent`

    - ### クラスから継承されたフィールド javax.servlet.jsp.tagext.TagSupport

      `id, pageContext`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.BodyTag

      `EVAL_BODY_BUFFERED, EVAL_BODY_TAG`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.IterationTag

      `EVAL_BODY_AGAIN`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.Tag

      `EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

  - ### コンストラクタの概要

    コンストラクタ
    コンストラクタと説明
    `ReportTableTag2()`

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `int` | `doEndTag()` Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
    `protected String` | `getTagName()` タグの名称を、返します。
    `protected void` | `release2()` タグリブオブジェクトをリリースします。
    `void` | `setFgrun(String flg)` 【TAG】出力方法を指定します(初期値:P(PDF出力))。
    `void` | `setFileURL(String url)` 【TAG】雛型のHTMLファイルの保存してある ディレクトリを指定します。
    `void` | `setFooterKeys(String ftKeys)` 【TAG】繰り返し部の終了後に表示する key 部分をCSV形式で複数指定します。
    `void` | `setFooterVals(String ftVals)` 【TAG】固定部のKEY に対応する値をCSV形式で複数指定します。
    `void` | `setHeaderKeys(String hKeys)` 【TAG】固定部の{@KEY} の KEY 部分をCSV形式で複数指定します。
    `void` | `setHeaderVals(String hVals)` 【TAG】固定部のKEY に対応する値をCSV形式で複数指定します。
    `void` | `setListId(String listId)` 【TAG】帳票IDを指定します。
    `void` | `setOutFilename(String filename)` 【TAG】ファイルを作成するときの出力ファイル名をセットします。
    `void` | `setOutFileURL(String url)` 【TAG】出力HTMLファイルの保存してあるディレクトリを指定します。
    `void` | `setPageEndCut(String peCut)` 【TAG】ボディー部(繰り返し部)がなくなったときに、それ以降を表示するかどうか[true/false]を指定します(初期値:true)。
    `void` | `setPrinterName(String ptnm)` 【TAG】プリンター名を指定します。
    `void` | `setTableId(String id)` 【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します (初期値:HybsSystem#TBL_MDL_KEY[=h_tblmdl])。
    `void` | `setUseLocalResource(String fgl)` 【TAG】各システムのリソース(ローカルリソース)を使用するか[true/false]を指定します(初期値:true)。
    `void` | `setUseSheetName(String useSName)` 【TAG】PAGEBREAKカラムの値を、シート名として使うかどうかをセットします(初期値:false)。
    `String` | `toString()` このオブジェクトの文字列表現を返します。

    - ### クラスから継承されたメソッド org.opengion.hayabusa.taglib.CommonTagSupport

      `add, add, addEventColumn, addEventColumn, check, check, commitTableObject, debugPrint, doAfterBody, doCatch, doFinally, doStartTag, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLASTAttri, getLongLabel, getMsglbl, getNVLAttri, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getUser, getUserEditInfo, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setCaseKey, setCaseNN, setCaseNull, setCaseVal, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setNoTransitionRequest, setObject, setObject, setParameterNames, setParameterRows, setRequestAttribute, setRequestCacheData, setScope, setSessionAttribute, setUserInfo, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useTag, useXssCheck`

    - ### クラスから継承されたメソッド javax.servlet.jsp.tagext.BodyTagSupport

      `doInitBody, getBodyContent, getPreviousOut, release, setBodyContent`

    - ### クラスから継承されたメソッド javax.servlet.jsp.tagext.TagSupport

      `findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue`

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### インタフェースから継承されたメソッド javax.servlet.jsp.tagext.Tag

      `getParent, setPageContext, setParent`

- - ### コンストラクタの詳細

    - #### ReportTableTag2

          public ReportTableTag2()

  - ### メソッドの詳細

    - #### doEndTag

          public int doEndTag()

      Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
      定義:
        `doEndTag` インタフェース内 `Tag`
      オーバーライド:
        `doEndTag` クラス内 `CommonTagSupport`
      戻り値:
        後続処理の指示

    - #### release2

          protected void release2()

      タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
      オーバーライド:
        `release2` クラス内 `CommonTagSupport`
      変更履歴:

        5.7.6.2 (2014/05/16) PAGEBREAKカラムの値を、シート名として使うかどうか。

    - #### setFileURL

          public void setFileURL(String url)

      【TAG】雛型のHTMLファイルの保存してある ディレクトリを指定します。
      パラメータ:
        `url` - 雛型のHTMLファイルのディレクトリ
      説明:

             この属性で指定されるディレクトリのファイルを読み取ります。
             指定方法は、通常の fileURL 属性と同様に、先頭が、'/' (UNIX) または、２文字目が、
             ":" (Windows)の場合は、指定のURLそのままのディレクトリに、そうでない場合は、
             システムパラメータ の FILE_URL 属性で指定のフォルダの下に、作成されます。
             fileURL = "{@USER.ID}" と指定すると、FILE_URL 属性で指定のフォルダの下に、
             さらに、各個人ID別のフォルダを作成して、そこを操作します。

    - #### setListId

          public void setListId(String listId)

      【TAG】帳票IDを指定します。
      パラメータ:
        `listId` - 帳票ID
      説明:

             帳票IDを指定します。

    - #### setOutFileURL

          public void setOutFileURL(String url)

      【TAG】出力HTMLファイルの保存してあるディレクトリを指定します。
      パラメータ:
        `url` - 出力HTMLファイルのディレクトリ
      説明:

             この属性で指定されるディレクトリにファイルを出力します。
             指定方法は、通常の fileURL 属性と同様に、先頭が、'/' (UNIX) または、２文字目が、
             ":" (Windows)の場合は、指定のURLそのままのディレクトリに、そうでない場合は、
             システムパラメータ の FILE_URL 属性で指定のフォルダの下に、作成されます。
             fileURL = "{@USER.ID}" と指定すると、FILE_URL 属性で指定のフォルダの下に、
             さらに、各個人ID別のフォルダを作成して、そこに出力します。

    - #### setOutFilename

          public void setOutFilename(String filename)

      【TAG】ファイルを作成するときの出力ファイル名をセットします。
      パラメータ:
        `filename` - 出力ファイル名
      説明:

             ファイルを作成するときの出力ファイル名をセットします。
             紙に印字する場合などファイルに出力しない場合は不要です。

    - #### setHeaderKeys

          public void setHeaderKeys(String hKeys)

      【TAG】固定部の{@KEY} の KEY 部分をCSV形式で複数指定します。
      パラメータ:
        `hKeys` - 固定部の key
      説明:

             カンマで複数指定できます。
             分解方法は、CSV変数を先に分解してから、getRequestParameter で値を取得します。
             こうしないとデータ自身にカンマを持っている場合に分解をミスる為です。

    - #### setHeaderVals

          public void setHeaderVals(String hVals)

      【TAG】固定部のKEY に対応する値をCSV形式で複数指定します。
      パラメータ:
        `hVals` - 固定部の値
      説明:

             カンマで複数指定で、リクエスト情報でも設定できます。
             分解方法は、CSV変数を先に分解してから、getRequestParameter で値を取得します。
             こうしないとデータ自身にカンマを持っている場合に分解をミスる為です。

    - #### setFooterKeys

          public void setFooterKeys(String ftKeys)

      【TAG】繰り返し部の終了後に表示する key 部分をCSV形式で複数指定します。
      パラメータ:
        `ftKeys` - 繰り返し部の終了後に表示する key
      説明:

             カンマで複数指定できます。
             分解方法は、CSV変数を先に分解してから、getRequestParameter で値を取得します。
             こうしないとデータ自身にカンマを持っている場合に分解をミスる為です。

    - #### setFooterVals

          public void setFooterVals(String ftVals)

      【TAG】固定部のKEY に対応する値をCSV形式で複数指定します。
      パラメータ:
        `ftVals` - 繰り返し部の終了後に表示する値
      説明:

             カンマで複数指定で、リクエスト情報でも設定できます。
             分解方法は、CSV変数を先に分解してから、getRequestParameter で値を取得します。
             こうしないとデータ自身にカンマを持っている場合に分解をミスる為です。

    - #### setPageEndCut

          public void setPageEndCut(String peCut)

      【TAG】ボディー部(繰り返し部)がなくなったときに、それ以降を表示するかどうか[true/false]を指定します(初期値:true)。
      パラメータ:
        `peCut` - 繰り返し部の終了後に継続処理するかどうか (true:処理しない/false:処理する)
      説明:

             true では、それ以降を出力しません。
             初期値は "true" (なくなった時点で、出力しない。)です。

    - #### setUseLocalResource

          public void setUseLocalResource(String fgl)

      【TAG】各システムのリソース(ローカルリソース)を使用するか[true/false]を指定します(初期値:true)。
      パラメータ:
        `fgl` - ローカルリソースを使用するか(true:処理しない/false:処理する)
      説明:

             true の場合、各システムに登録されたリソース情報を使用して帳票データが変換されます。
             false の場合は、帳票デーモンが起動しているシステム(通常は'GE')のリソースが適用されます。
             初期値は "true" (ローカルリソースを使用する)です。

    - #### setUseSheetName

          public void setUseSheetName(String useSName)

      【TAG】PAGEBREAKカラムの値を、シート名として使うかどうかをセットします(初期値:false)。
      パラメータ:
        `useSName` - PAGEBREAKカラムのシート名使用可否[true:使用/false:使用しない]
      説明:

             PAGEBREAK で、シートチェンジを行う場合、シート名も指定したい場合があります。
             その場合、この、useSheetName="true" とすることで、PAGEBREAKカラムの値を、シート名として
             使用します。
             useSheetName="false" の場合は、"Page"+ページ番号+"_Row"+現在行番号 がシート名になります。

             PAGEBREAK は、FIRSTシート雛形にも適用されます。
             ちなみに、FIRSTシート雛形は、特殊で、useSheetName="false" の場合でも、
             FIRST_**** などと記述した場合は、**** 文字列をシート名に使用します。
             FIRST だけの場合は、従来と同じシート名になります。
             初期値は、互換性を考慮し、false:シート名として使用しない です。

      変更履歴:

        5.7.6.2 (2014/05/16) 新規追加

    - #### setFgrun

          public void setFgrun(String flg)

      【TAG】出力方法を指定します(初期値:P(PDF出力))。
      パラメータ:
        `flg` - 出力方法
      説明:

             出力方法のコードは、FGRUNのコードリソースと同じものが指定できます。
             初期値は "P" (PDF出力)です。

    - #### setPrinterName

          public void setPrinterName(String ptnm)

      【TAG】プリンター名を指定します。
      パラメータ:
        `ptnm` - プリンター名
      説明:

             プリンター名を指定します。このプリンター名は帳票サーバー上でのプリンタ名です。
             ファイル出力等、紙に印刷しない場合は不要です。

    - #### setTableId

          public void setTableId(String id)

      【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します (初期値:HybsSystem#TBL_MDL_KEY[=h_tblmdl])。
      パラメータ:
        `id` - sessionに登録する時の ID
      説明:

             検索結果より、DBTableModelオブジェクトを作成します。これを、下流のviewタグ等に
             渡す場合に、通常は、session を利用します。その場合の登録キーです。
             query タグを同時に実行して、結果を求める場合、同一メモリに配置される為、
             この tableId 属性を利用して、メモリ空間を分けます。
            		(初期値:HybsSystem#TBL_MDL_KEY[={@og.value org.opengion.hayabusa.common.HybsSystem#TBL_MDL_KEY}])。

    - #### getTagName

          protected String getTagName()

      タグの名称を、返します。 自分自身のクラス名より、自動的に取り出せないため、このメソッドをオーバーライドします。
      オーバーライド:
        `getTagName` クラス内 `CommonTagSupport`
      戻り値:
        タグの名称
      関連項目:
        `CommonTagSupport.getDocumentLink()`
      変更履歴:

        4.0.0.0 (2005/01/31) 新規追加

    - #### toString

          public String toString()

      このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
      オーバーライド:
        `toString` クラス内 `CommonTagSupport`
      戻り値:
        このクラスの文字列表現

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.