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)headerLine, NUMBER_DISPLAYBUFFER_LARGE, BUFFER_MIDDLE, CRDEFAULT_CLM_WRITABLE, DEFAULT_SKIP| コンストラクタと説明 |
|---|
ViewForm_HTMLCrossTable()
デフォルトコンストラクター
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
void |
clear()
内容をクリア(初期化)します。
|
java.lang.String |
create(int startNo,
int pageSize)
DBTableModel から HTML文字列を作成して返します。
|
protected java.lang.String |
getHeadLine()
ヘッダー繰り返し部を、getTableHead()メソッドから分離。
|
void |
init(DBTableModel table)
初期化します。
|
boolean |
isEditable()
表示項目の編集(並び替え)が可能かどうかを返します。
|
protected java.lang.String |
makeCheckbox(java.lang.String ckboxTD,
int row,
int blc)
選択用のチェックボックスと行番号と変更タイプ(A,C,D)を表示します。
|
void |
setColumnDisplay(java.lang.String columnName)
表示可能カラム名を、CSV形式で与えます。
|
void |
setNoDisplay(java.lang.String columnName)
表示不可カラム名を、CSV形式で与えます。
|
canUseFormat, getColumnLabel, getHeader, getHeadLine, getTableFoot, getTableHead, getTableTag, makeCheckbox, makeNthChild, setPopupReturnKeyscreate, create, getAllCheckControl, getBackLinkCount, getBgColorCycleClass, getBgColorCycleClass, getBoolParam, getClassName, getColumnCount, getColumnDbType, getColumnDisplayCount, getColumnName, getColumnNo, getColumnSize, getCountForm, getDBColumn, getDBTableModel, getEditorValue, getGamenId, getHeaderSkipCount, getHeight, getHiddenRowValue, getId, getIntParam, getLastNo, getName, getNumberData, getNumberHeader, getOptionTypeAttributes, getPageSize, getParam, getParam, getRendererValue, getRendererValue, getResourceManager, getRowCount, getScrollBarEndDiv, getScrollBarStartDiv, getSelectedType, getSortedColumnLabel, getStartNo, getTableClass, getTypeCaseValue, getValue, getValueLabel, getViewArrayList, getViewClass, getViewClms, getViewClms, getViewFormType, getWidth, isChecked, isClmBulkSet, isColumnDisplay, isColumnWritable, isFirstChecked, isMarked, isMustAnyColumn, isMustColumn, isNoTransition, isNumberDisplay, isSkip, isSkipNoEdit, isUseCheckControl, isWritable, makeTableSorterQuery, markerSet, setBackLinkCount, setBgColorClsClm, setBgColorCycle, setBooleanArray, setColumnBulkSet, setColumnDisplay, setColumnGroup, setColumnWritable, setColumnWritable, setDBColumn, setEditMarker, setFormatNoDisplay, setFormatterList, setGamenId, setGroupClass, setGroupDir, setHeaderSkipCount, setHeight, setId, setName, setNoGroup, setNoMessage, setNoTransition, setNoWritable, setNumberType, setOptionTypeAttributes, setPageSize, setParam, setResourceManager, setScrollRowNo, setSelectedType, setSkip, setSkipNoEdit, setStartNo, setTableClass, setTableSorterKeys, setUseCheckControl, setUseScrollBar, setUseTableSorter, setViewArrayList, setViewClass, setViewLink, setViewMarker, setWidth, setWritableControlpublic ViewForm_HTMLCrossTable()
public void init(DBTableModel table)
init インタフェース内 ViewForminit クラス内 AbstractViewFormtable - DBTableModelオブジェクトpublic void clear()
clear インタフェース内 ViewFormclear クラス内 ViewForm_HTMLTablepublic java.lang.String create(int startNo,
int pageSize)
create インタフェース内 ViewFormcreate クラス内 ViewForm_HTMLTablestartNo - 表示開始位置pageSize - 表示件数protected java.lang.String makeCheckbox(java.lang.String ckboxTD,
int row,
int blc)
makeCheckbox クラス内 ViewForm_HTMLTableckboxTD - チェックボックスのタグ(マルチカラム時のrowspan対応)row - 行番号blc - バックラインカウント(先頭へ戻るリンク間隔)protected java.lang.String getHeadLine()
getHeadLine クラス内 ViewForm_HTMLTablepublic void setNoDisplay(java.lang.String columnName)
setNoDisplay インタフェース内 ViewFormsetNoDisplay クラス内 AbstractViewFormcolumnName - カラム名public void setColumnDisplay(java.lang.String columnName)
setColumnDisplay インタフェース内 ViewFormsetColumnDisplay クラス内 AbstractViewFormcolumnName - カラム名public boolean isEditable()
isEditable インタフェース内 ViewFormisEditable クラス内 AbstractViewFormWebアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.