org.opengion.plugin.view
クラス ViewForm_HTMLCrossTable
java.lang.Object
org.opengion.hayabusa.html.AbstractViewForm
org.opengion.plugin.view.ViewForm_HTMLTable
org.opengion.plugin.view.ViewForm_HTMLCrossTable
- すべての実装されたインタフェース:
- ViewForm
public class ViewForm_HTMLCrossTable
- extends ViewForm_HTMLTable
クロス集計テーブル作成クラスです。
select dept.dname,emp.deptno,substrb(job,1,2) as X,job,mgr,sum(sal),count(*)
from emp,dept
where emp.deptno = dept.deptno
group by dept.dname,emp.deptno,cube(job,mgr)
order by emp.deptno,job,mgr;
HEAD1 :ヘッダー。前段と同じデータは表示させない。
HEAD2 :キーブレイクさせるカラム。また、前段と同じデータは表示させない。
HEAD3 :キーブレイクさせないカラム。また、前段と同じデータでも表示させる。
ROW :行データのヘッダーになるカラム
COL :列データのヘッダーになるカラム。下記のSUM1,SUM2の両方のヘッダーになる。
SUM1 :列データの値になるカラム。
SUM2 :列データの値になるカラム。
SUMカラムの数、キーブレイクのカラム名、グループ化するカラム名を
指定することで、これらのクロス集計結果の表示方法を指定します。
breakColumn = "DEPTNO" キーブレイクのカラム名
noGroupColumns = "X" グループ化するカラム名
sumNumber = "2" SUMカラムの数
cubeXColumn = "JOB" CUBE計算の1つ目(X)カラムを指定
cubeYColumn = "MGR" CUBE計算の2つ目(Y)カラムを指定
cubeSortType = "NUMBER" CUBE Y の列ヘッダーのソート方法を指定
gokeiSortDir = "false" 合計カラムのソート方向を指定(初期値:ソートしない)
shokeiLabel = "SHOKEI" 列小計のカラムに表示するラベルID
gokeiLabel = "GOKEI" 列合計のカラムに表示するラベルID
useHeaderColumn= "false" ヘッダーカラムにレンデラー、エディターを適用するかを指定
useClassAdd = "false" 各列情報のclass属性に、カラム名などを付与するかどうかを指定
useHeaderResource = "false" ヘッダー表示にラベルリソースを利用するか
各カラムの属性(HEAD,SUM等)を認識する方法
HEAD1 HEAD2 HEAD3 ROW COL SUM1 SUM2 という並びを認識する方法は、
多数の前提条件を利用して、出来るだけ少ないパラメータで自動認識
させています。
若干理解しにくいかもしれませんが、慣れてください。
前提条件:
ROW,COL は、必ず1個ずつ存在する。
HEAD群、ROW,COL,SUM群 という並びになっている。
SUM群の数は、パラメータで指定する。
計算方法:
HEAD数=カラム数(7)-SUM数(2)-1(ROW,COL分) = 4 個 (0 ~ 3)
ROWアドレス=cubeXColumn 設定 (3) ※ アドレスは0から始まる為
COLアドレス=cubeYColumn 設定 (4)
SUMアドレス=HEAD数+1 ~ カラム数(7)-1 (5 ~ 6)
- 変更履歴:
3.5.4.0 (2003/11/25) 新規作成 |
- 機能分類
- 画面表示
- バージョン
- 4.0
- 作成者
- Kazuhiko Hasegawa
- 導入されたバージョン:
- JDK5.0,
クラス org.opengion.hayabusa.html.AbstractViewForm から継承されたメソッド |
create, create, getAllCheckControl, getBackLinkCount, getBgColorCycleClass, getBgColorCycleClass, getBoolParam, getColumnCount, getColumnDbType, getColumnDisplayCount, getColumnName, getColumnNo, getColumnSize, getCountForm, getDBColumn, getDBTableModel, getEditorValue, getGamenId, getHeaderSkipCount, getHiddenRowValue, getId, getIntParam, getLastNo, getName, getNumberData, getNumberHeader, getOptionTypeAttributes, getPageSize, getParam, getParam, getRendererValue, getRendererValue, getResourceManager, getRowCount, getScrollBarEndDiv, getScrollBarStartDiv, getSelectedType, getSortedColumnLabel, getStartNo, getTableClass, getValue, getValueLabel, getViewArrayList, getViewClms, getViewFormType, isChecked, isClmBulkSet, isColumnDisplay, isColumnWritable, isFirstChecked, isMarked, isMustAnyColumn, isMustColumn, isNoTransition, isNumberDisplay, isSkip, isSkipNoEdit, isUseCheckControl, isWritable, makeTableSorterQuery, markerSet, setBackLinkCount, setBgColorClsClm, setBgColorCycle, setColumnBulkSet, setColumnDisplay, setColumnGroup, setColumnWritable, setColumnWritable, setDBColumn, setEditMarker, setFormatterList, setGamenId, setGroupClass, setHeaderSkipCount, setHeight, setId, setName, setNoGroup, setNoMessage, setNoTransition, setNoWritable, setNumberType, setOptionTypeAttributes, setPageSize, setParam, setResourceManager, setScrollRowNo, setSelectedType, setSkip, setSkipNoEdit, setStartNo, setTableClass, setTableSorterKeys, setUseCheckControl, setUseScrollBar, setUseTableSorter, setViewArrayList, setViewLink, setViewMarker, setWidth, setWritableControl |
クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ViewForm_HTMLCrossTable
public ViewForm_HTMLCrossTable()
init
public void init(DBTableModel table)
- 初期化します。
ここでは、内部で使用されているキャッシュをクリアし、
新しいモデル(DBTableModel)と言語(lang) を元に内部データを再構築します。
ただし、設定情報は、以前の状態がそのままキープされています。
- 定義:
- インタフェース
ViewForm
内の init
- オーバーライド:
- クラス
AbstractViewForm
内の init
- パラメータ:
table
- DBTableModelオブジェクト- 変更履歴:
3.5.4.8 (2004/02/23) paramInit メソッドで、初期化を行います。 |
3.5.6.1 (2004/06/25) lang 言語コード 属性を削除します。 |
clear
public void clear()
- 内容をクリア(初期化)します。
- 定義:
- インタフェース
ViewForm
内の clear
- オーバーライド:
- クラス
ViewForm_HTMLTable
内の clear
- 変更履歴:
3.5.6.3 (2004/07/12) cubeSortType , gokeiSortDir 属性を追加します。 |
3.7.0.4 (2005/03/18) noDisplayKeys 属性を追加します。 |
3.7.1.1 (2005/05/31) shokeiLabel,gokeiLabel の初期値変更 |
5.2.2.0 (2010/11/01) columnDisplayKeys、clsAdd、useClassAdd 属性を追加します |
5.5.5.0 (2012/07/20) useHeaderResource追加 |
create
public String create(int startNo,
int pageSize)
- DBTableModel から HTML文字列を作成して返します。
startNo(表示開始位置)から、pageSize(表示件数)までのView文字列を作成します。
表示残りデータが pageSize 以下の場合は,残りのデータをすべて出力します。
- 定義:
- インタフェース
ViewForm
内の create
- オーバーライド:
- クラス
ViewForm_HTMLTable
内の create
- パラメータ:
startNo
- 表示開始位置pageSize
- 表示件数
- 戻り値:
- DBTableModelから作成された HTML文字列
- 変更履歴:
3.5.5.0 (2004/03/12) No 欄そのものの作成判断ロジックを追加 |
3.5.6.1 (2004/06/25) lang 言語コード 属性を削除します。 |
3.5.6.4 (2004/07/16) ヘッダーとボディー部をJavaScriptで分離 |
3.7.0.4 (2005/03/18) setNoDisplay メソッドを追加 |
4.3.1.0 (2008/09/08) 編集行のみを表示する属性(isSkipNoEdit)追加 |
5.0.0.3 (2009/09/22) 合計列をcubeの先頭に出せるようにする |
5.1.0.0 (2009/11/04) ↑で合計列が複数カラム存在する場合に正しく表示されないバグを修正 |
5.2.2.0 (2010/11/01) setColumnDisplay メソッドを追加 |
makeCheckbox
protected String makeCheckbox(String ckboxTD,
int row,
int blc)
- 選択用のチェックボックスと行番号と変更タイプ(A,C,D)を表示します。
- オーバーライド:
- クラス
ViewForm_HTMLTable
内の makeCheckbox
- パラメータ:
ckboxTD
- チェックボックスのタグ(マルチカラム時のrowspan対応)row
- 行番号blc
- バックラインカウント(先頭へ戻るリンク間隔)
- 戻り値:
- tdタグで囲まれたチェックボックスのHTML文字列
getHeadLine
protected String getHeadLine()
- ヘッダー繰り返し部を、getTableHead()メソッドから分離。
- オーバーライド:
- クラス
ViewForm_HTMLTable
内の getHeadLine
- 戻り値:
- テーブルのタグ文字列
- 変更履歴:
3.5.4.5 (2004/01/23) 実装をgetHeadLine( String thTag )に移動 |
3.5.5.0 (2004/03/12) No 欄そのものの作成判断ロジックを追加 |
5.0.0.3 (2009/09/17) 合計行を出力する位置をfirstClmGokeiで変える |
5.2.2.0 (2010/11/01) 集計部の ColumnDisplay/NoDisplay 対応 |
5.5.5.0 (2012/07/28) useHeaderResource利用時のヘッダのラベル/コードリソース対応 |
5.7.4.2 (2014/03/20) ヘッダーのリソース適用見直し |
5.7.4.3 (2014/03/28) useHeaderResource 単独でリソース適用します。 |
setNoDisplay
public void setNoDisplay(String columnName)
- 表示不可カラム名を、カンマ区切りで与えます。
例:"OYA,KO,HJO,SU,DYSET,DYUPD"
null を与えた場合は,なにもしません。
注意:このクラスでは、DBTableModel を作り直すタイミングが、
create メソッド実行時です。(パラメータの初期化が必要な為)
よって、このメソッドは、初期が終了後に、再セットします。
- 定義:
- インタフェース
ViewForm
内の setNoDisplay
- オーバーライド:
- クラス
AbstractViewForm
内の setNoDisplay
- パラメータ:
columnName
- カラム名- 変更履歴:
3.7.0.4 (2005/03/18) 新規作成 |
setColumnDisplay
public void setColumnDisplay(String columnName)
- 表示可能カラム名を、カンマ区切りで与えます。
例:"OYA,KO,HJO,SU,DYSET,DYUPD"
setColumnDisplay( int column,boolean rw ) の簡易版です。
null を与えた場合は,なにもしません。
また、全カラムについて、有効にする場合は、columnName="*" を設定します。
- 定義:
- インタフェース
ViewForm
内の setColumnDisplay
- オーバーライド:
- クラス
AbstractViewForm
内の setColumnDisplay
- パラメータ:
columnName
- カラム名- 変更履歴:
5.2.2.0 (2010/11/01) 新規追加 |
isEditable
public boolean isEditable()
- 表示項目の編集(並び替え)が可能かどうかを返します
- 定義:
- インタフェース
ViewForm
内の isEditable
- オーバーライド:
- クラス
AbstractViewForm
内の isEditable
- 戻り値:
- 表示項目の編集(並び替え)が可能かどうか(false:不可能)
- 変更履歴:
5.1.6.0 (2010/05/01) 新規追加 |
Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.