Structure of Crosstabs

The main class of the Java-client Crosstab Bean is the Crosstab class, which is defined in the oracle.dss.crosstab package. The Crosstab class extends the oracle.dss.gridView.GridView class, as does the Table class. The GridView class extends oracle.dss.dataView.Dataview. The Dataview class implements the DataviewCommon interface.

The main class of the HTML-client Crosstab Bean is the ThinCrosstab class, which is defined in the oracle.dss.thin.beans.crosstab package. The ThinCrosstab class extends oracle.dss.thin.beans.gridView.ThinGridView class, as does the ThinTable class. The ThinGridView class extends oracle.dss.thin.beans.dataView.ThinDataview. The ThinDataView class implements the ThinDataViewCommon interface. The ThinDataViewCommon interface extends the DataviewCommon interface.

Both the Java-client crosstab and the thin crosstab have PagingControl components, which allow users to view different logical pages of data. The paging controls are implemented differently for the Java-client crosstab and the thin crosstab, but in both cases, you call getPagingControl to get the paging control.

The following diagram illustrates these relationships.

Class structure for GridViews; described in text

Header and Databody components

Both the thin crosstab and the Java-client crosstab have header components that describe the data in the crosstab and that allow users to manipulate the data. The column header component class is ColPivotHeader, and the row header component is the RowPivotHeader. Both classes extend CrosstabPivotHeader. All three of these classes are defined in oracle.dss.crosstab. In both the Crosstab class and the ThinCrosstab class, you call getColumnHeader to retrieve the column header, and you call getRowHeader to retrieve the row header for the crosstab. Both getColumnHeader and getRowHeader return a GridViewHeader. The CrosstabPivotHeader implements the GridViewHeader interface, so you can call any GridViewHeader method to set properties of the headers in a thin crosstab or in a Java-client crosstab.

The following diagram illustrates the relationships between these classes and the GridViewHeader interface.

Class structure crosstab headers; described in text

As with the headers, both the Java-client crosstab and the HTML-client crosstab have a databody component. The CrosstabDatabody class, which is defined in the oracle.dss.crosstab package, is the databody class for both the Crosstab and the ThinCrosstab. You call getDatabody to retrieve the databody. The getDatabody method returns a GridViewDatabody, which the CrosstabDatabody implements. You can call methods of the GridViewDatabody to change the appearance of the databody.

The following diagram illustrates that the CrosstabDatabody class implements the GridViewDatabody interface.

Crosstab databody class structure; described in text