Oracle™ Business Intelligence Beans Java API Reference
Release 10
g (9.0.4)
Part number B12159_01


oracle.dss.util
Interface DataAccess

All Known Subinterfaces:
CubeDataAccess, RelationalDataAccess

public interface DataAccess

Methods that are necessary for a presentation bean to access data from a data provider.


Field Summary
static int FIND_CASE_INSENSITIVE
          Marks the search in the findMember method as case insensitive.
static int FIND_CONTAINS
          Searches for strings that contain the given search string in the findMember method.
static int FIND_ENDS_WITH
          Searches for strings that end with the given search string in the findMember method.
static int FIND_EXACT
          Searches for an exact match in the findMember method.
static int FIND_PRIOR
          Searches backwards through the list from the position down to 0 in the findMember method.
static int FIND_STARTS_WITH
          Searches for strings that start with the given search string in the findMember method.
static int QDR_WITH_PAGE
          Get QDR: Include current page edge information, even if the QDR is not for the page edge itself.
static int QDR_WITHOUT_PAGE
          Get QDR: Do not include current page edge information, if the QDR is not for the page edge itself.

 

Method Summary
 boolean dropChanges()
          Clears the QDR overrides in the writeback collection.
 void endGroupEdit()
          Indicates the end of a group of setValue calls.
 int findMember(int edge, int[] hPos, int memberLayer, java.lang.String s, java.lang.String type, int flags)
          Searches a set of child members for the specified value starting at a specified offset.
 boolean forceFetch(int[] startSlice, int[] endSlice)
          Ensures that a block of data has been fetched locally.
 int getEdgeCount()
          Retrieves the total number of edges that are available in the cursor.
 int[] getEdgeCurrentHPos(int edge)
          Retrieves, for the specified edge, the hierarchical address of the location that is defined by the implementor as the "current" location.
 int getEdgeCurrentSlice(int edge)
          Retrieves the zero-based number of the slice that is defined by the implementor as the current slice.
 int getEdgeExtent(int edge)
          Retrieves the total number of slices that are available on the specified edge.
 int[] getFirstHPos(int edge)
          Retrieves the hPos array that identifies the members at each physical layer of slice 0 on the specified edge.
 int[] getLastHPos(int edge)
          Retrieves the hPos array that identifies the members at each physical layer in the last slice on the specified edge.
 int getLayerCount(int edge)
          Retrieves the total number of layers on the specified edge.
 java.lang.Object getLayerMetadata(int edge, int layer, java.lang.String type)
          Retrieves a piece of metadata for a logical layer that is found at a specified edge and logical layer.
 QDR getLayerQDR(int edge, int layer, int flags)
          Retrieves the QDR object that represents the specified logical layer.
 int getMemberDepth(int edge, int layer, int slice)
          Retrieves the size of a member at the specified layer, slice, and edge.
 int getMemberExtent(int edge, int layer, int slice)
          Retrieves the size of a member, that is, the number of slices that the member spans at a specified edge, layer, and slice location (parallel to the direction of the edge).
 int[] getMemberHPos(int edge, int layer, int slice)
          Retrieves the hierarchical address for an absolute address that is specified as edge, physical layer, and slice.
 int getMemberLogicalLayer(int edge, int layer, int slice)
          Retrieves the logical layer to which the member at the specified edge, physical layer, and slice location belongs.
 java.lang.Object getMemberMetadata(int edge, int[] hPos, int memberLayer, int hIndex, java.lang.String type)
          Retrieves the specified type of metadata for the member at a specified location.
 java.lang.Object getMemberMetadata(int edge, int layer, int slice, java.lang.String type)
          Retrieves the specified type of metadata for a member at the specified location.
 QDR getMemberQDR(int edge, int[] hPos, int memberLayer, int flags)
          Retrieves a QDR object that represents the specified member using hierarchical addressing.
 QDR getMemberQDR(int edge, int layer, int slice, int flags)
          Retrieves a QDR object that represents the data value for the member at the specified edge, layer, and slice.
 int getMemberSiblingCount(int edge, int[] hPos, int memberLayer)
          Retrieves the count of all the sibling members at a specified logical layer based on a series of relative indexes for each logical layer down to the specified logical layer.
 int getMemberStartLayer(int edge, int layer, int slice)
          Retrieves the starting layer at which a member at the specified edge, layer, and slice location begins.
 int getMemberStartSlice(int edge, int layer, int slice)
          Retrieves the absolute number of the first slice that a member spans.
 int[] getNextHPos(int edge, int[] hPos)
          Retrieves the hPos that identifies the next member on the specified edge relative to a specified hPos.
 int[] getPrevHPos(int edge, int[] hPos)
          Retrieves the hPos array that identifies the members at each physical layer of the slice that is immediately previous to the specified hPos on the specified edge.
 java.util.Vector getQDRoverrideCollection()
          Retrieves a read-only copy of the QDR overrides in the writeback collection.
 java.lang.Object getSliceLabel(int edge, int slice, java.lang.String type)
          Retrieves the label (or concatenated metadata) for the specified slice.
 int getSliceMemberCount(int edge, int slice)
          Retrieves the number of unique logical layers (that is, the number of members that run perpendicular to the orientation of the edge) at the specified slice and edge.
 int getSliceOutlineLayer(int edge, int slice)
          Retrieves the starting logical layer of a specified slice in a specified edge, when the crosstab (along with the DataAccess implementor) is set to return data in outline mode.
 QDR getSliceQDR(int edge, int slice, int flags)
          Retrieves a QDR object that represents the data value at the specified slice on the edge (that is, across all relevant logical layers of the slice).
 java.lang.Object getValue(int row, int col, java.lang.String type)
          Retrieves a data value for the specified row and column intersection.
 QDR getValueQDR(int row, int column, int flags)
          Retrieves a QDR object that represents the value at the specified row and column in the data area of the cursor.
 boolean isAutoSubmit()
          Indicates whether automatic submission is set for cell editing.
 boolean isFetched(int[] startSlice, int[] endSlice)
          Indicates whether a block of data has been fetched locally.
 boolean redoEdit()
          Performs a redo of the latest undo action.
 void release()
          Informs the implementor that the caller no longer needs this DataAccess reference.
 void setAutoSubmit(boolean bValue)
          Specifies that the QDR override in the writeback collection for a cell will be submitted automatically as soon as it is entered.
 boolean setValue(java.lang.Object data, int row, int col, java.lang.String type)
          Specifies a data value for the specified row and column intersection.
 void startGroupEdit()
          Indicates the start of a group of setValue calls.
 boolean submitChanges()
          Writes the current group of QDR overrides in the writeback collection to the database and flushes the entries in the writeback collection.
 boolean undoEdit()
          Performs an undo of the latest setValue operation.

 

Field Detail

FIND_EXACT

public static final int FIND_EXACT
Searches for an exact match in the findMember method.

FIND_CONTAINS

public static final int FIND_CONTAINS
Searches for strings that contain the given search string in the findMember method.

FIND_STARTS_WITH

public static final int FIND_STARTS_WITH
Searches for strings that start with the given search string in the findMember method.

FIND_ENDS_WITH

public static final int FIND_ENDS_WITH
Searches for strings that end with the given search string in the findMember method.

FIND_CASE_INSENSITIVE

public static final int FIND_CASE_INSENSITIVE
Marks the search in the findMember method as case insensitive.

FIND_PRIOR

public static final int FIND_PRIOR
Searches backwards through the list from the position down to 0 in the findMember method.

QDR_WITHOUT_PAGE

public static final int QDR_WITHOUT_PAGE
Get QDR: Do not include current page edge information, if the QDR is not for the page edge itself.

QDR_WITH_PAGE

public static final int QDR_WITH_PAGE
Get QDR: Include current page edge information, even if the QDR is not for the page edge itself.
Method Detail

getEdgeExtent

public int getEdgeExtent(int edge)
                  throws EdgeOutOfRangeException
Retrieves the total number of slices that are available on the specified edge.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
Returns:
The total number of slices that are available on the specified edge. This number determines the range of valid slice values for the specified edge in other API calls: the valid range is from zero to this return value minus one.
Throws:
EdgeOutOfRangeException - If the edge parameter is not valid.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getEdgeCount

public int getEdgeCount()
Retrieves the total number of edges that are available in the cursor. This total does not include the edge that is represented by DataDirector.DATA_ELEMENT_EDGE.
Returns:
The total number of edges that are available in the cursor. This number determines the range of valid values for the edge parameter in other API calls: the valid range is from zero to this return value minus one.

getValue

public java.lang.Object getValue(int row,
                                 int col,
                                 java.lang.String type)
                          throws RowOutOfRangeException,
ColumnOutOfRangeException
Retrieves a data value for the specified row and column intersection.
Parameters:
row - The row to retrieve.
col - The column to retrieve.
type - Type of data to retrieve, such as formatted or unformatted. Valid type values are defined in DataMap. Note: This call requires that the appropriate DataMap object is initialized with any types of data that the caller intends to use.
Returns:
The specified type of information for the specified row and column location.
Throws:
RowOutOfRangeException - If row is negative or too large.
ColumnOutOfRangeException - If column is negative or too large.
See Also:
DataMap

setValue

public boolean setValue(java.lang.Object data,
                        int row,
                        int col,
                        java.lang.String type)
                 throws RowOutOfRangeException,
ColumnOutOfRangeException
Specifies a data value for the specified row and column intersection.
Parameters:
data - The data to set into the cursor.
row - The row at which to set the data.
col - The column at which set the data.
map - Type of data to set, such as formatted or unformatted. Valid type values are defined in DataMap.
Returns:
truefalse if not.
Throws:
RowOutOfRangeException - If row is negative or too large.
ColumnOutOfRangeException - If column is negative or too large.
See Also:
DataMap

getSliceLabel

public java.lang.Object getSliceLabel(int edge,
                                      int slice,
                                      java.lang.String type)
                               throws EdgeOutOfRangeException,
SliceOutOfRangeException
Retrieves the label (or concatenated metadata) for the specified slice. The method of concatenation is usually each member label separated by a space or other character, but can be implementation dependent.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
slice - An absolute index (zero-based) along the specified edge that indicates the slice for which concatenated metadata is desired.
type - A constant that specifies the kind of metadata that the caller wants to have returned. Valid type values are defined in the class MetadataMap class. The caller should have initialized the appropriate MetadataMap with any type that is requested in this parameter. Otherwise, this call should return null.
Returns:
The label (or metadata) for the specified slice.
Throws:
EdgeOutOfRangeException - If the edge parameter is not in the valid range.
SliceOutOfRangeException - If the slice parameter is negative or too large.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getEdgeCurrentSlice

public int getEdgeCurrentSlice(int edge)
                        throws EdgeOutOfRangeException
Retrieves the zero-based number of the slice that is defined by the implementor as the current slice. For the row and column edges, the view do not require support for the concept of a current slice. This concept is usually associated with a view paging control on the page edge.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
Returns:
The slice (zero-based) that is defined as the current slice. Often the slice that represents the page that is currently displayed in a Crosstab when this method is called for the page edge. (On the page edge, the value of slice is one less than the actual page number, which is 1-based.)
Throws:
EdgeOutOfRangeException - If the edge parameter is not in the valid range.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getEdgeCurrentHPos

public int[] getEdgeCurrentHPos(int edge)
                         throws EdgeOutOfRangeException
Retrieves, for the specified edge, the hierarchical address of the location that is defined by the implementor as the "current" location. The row and column edges of view do not require support for the concept of a current location. This concept is usually associated with a paging control on the page edge of a view.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
Returns:
The hPos array that represents the current location on the specified edge. When this method is called for the page edge, the hPos that represents the page that is currently displayed in a Crosstab.
Throws:
EdgeOutOfRangeException - If the parameter edge is not valid.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getLayerCount

public int getLayerCount(int edge)
                  throws EdgeOutOfRangeException
Retrieves the total number of layers on the specified edge.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
Returns:
The number of layers on the specified edge. This number determines the range of valid values on the specified edge for the layer parameter in other API calls: the valid range is from zero to this return value minus one.
Throws:
EdgeOutOfRangeException - If the edge parameter is out of range.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getSliceMemberCount

public int getSliceMemberCount(int edge,
                               int slice)
                        throws EdgeOutOfRangeException,
SliceOutOfRangeException
Retrieves the number of unique logical layers (that is, the number of members that run perpendicular to the orientation of the edge) at the specified slice and edge. This method is useful in cases of asymmetry where the members on an edge do not all span the same layers.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
slice - An absolute index (zero-based) that indicates the location of a slice along the specified edge. Each member in the innermost layer has a unique slice. In outer layers, any slice that the outer member spans can be used.
Returns:
The total number of unique logical layers for the specified slice and edge. This return value determines the range of valid values, on the specified edge and slice, for logical layer parameters in other API calls: the valid range is from zero to this return value minus one. The return value for this method will be less than or equal to the number returned by the getLayerCount method for the same edge.
Throws:
EdgeOutOfRangeException - If the edge parameter is not valid.
SliceOutOfRangeException - If the slice parameter is negative or too large.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getSliceOutlineLayer

public int getSliceOutlineLayer(int edge,
                                int slice)
                         throws EdgeOutOfRangeException,
SliceOutOfRangeException
Retrieves the starting logical layer of a specified slice in a specified edge, when the crosstab (along with the DataAccess implementor) is set to return data in outline mode. Because, in outline mode, the getSliceMemberCount method always returns the value 1, the Crosstab uses getSliceOutlineLayer to determine the logical layer.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
slice - An absolute index (zero-based) that indicates the location of a slice along the specified edge. Each member in the innermost layer has a unique slice. In outer layers, any slice that the outer member spans can be used.
Returns:
The logical layer of the specified slice in the specified edge for outline mode only.
Throws:
EdgeOutOfRangeException - If the edge parameter is not valid.
SliceOutOfRangeException - If the slice parameter is not valid for the specified edge.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberDepth

public int getMemberDepth(int edge,
                          int layer,
                          int slice)
                   throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the size of a member at the specified layer, slice, and edge. The size is expressed as the number of logical layers that the member covers. In other words, this method returns the following information depending upon the specified edge:

The sum of all the members' values for this method, within a specified slice, should not exceed the value that getLayerCount returns for the specified edge.

This method is useful only in cases of asymmetry where the members on an edge do not all cover one layer and have a depth of 1. On a symmetric edge, all members have a member depth of 1.

In outline mode, this method should return value from getLayerCount.

Parameters:
edge - A constant that represents the edge in which to look for the layer and slice. The constants end with _EDGE in DataDirector.
layer - The zero-based number of the starting physical layer in which to look for the slice, as returned by getMemberStartLayer.
slice - An absolute index (zero-based) that indicates the location of a slice along the specified edge. Each member in the innermost layer has a unique slice. In outer layers, any slice that the outer member spans can be used.
Returns:
The depth (that is, the number of layers) that the specified member covers.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
See Also:
getLayerCount(int), getMemberStartLayer(int, int, int), DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberStartLayer

public int getMemberStartLayer(int edge,
                               int layer,
                               int slice)
                        throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the starting layer at which a member at the specified edge, layer, and slice location begins. Presentation beans use this method in conjunction with getMemberDepth to retrieve the following information depending on the edge: The sum of the values that are returned for a member by this method, getMemberStartLayer, and getMemberDepth should not exceed the value that is returned by getLayerCount for an edge.

This method is useful only in cases of asymmetry where the members on an edge do not all cover one layer. In a symmetric edge, all members have a member start layer equal to their layer.

Parameters:
edge - A constant that represents the edge in which to look for layer and slice. The constants end with _EDGE in DataDirector.
layer - The zero-based number of the physical layer in which to look for the slice.
slice - An absolute index (zero-based) that indicates the location of a slice along the specified edge. Each member in the innermost layer has a unique slice. In outer layers, any slice that the outer member spans can be used.
Returns:
The starting layer of the member within the specified edge.
Throws:
EdgeOutOfRangeException - If the edge parameter is not valid.
LayerOutOfRangeException - If the layer parameter is not valid for the specified edge.
SliceOutOfRangeException - If the slice parameter is not valid for the specified edge.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberLogicalLayer

public int getMemberLogicalLayer(int edge,
                                 int layer,
                                 int slice)
                          throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the logical layer to which the member at the specified edge, physical layer, and slice location belongs. If a particular member spans more than one physical layer at the specified slice, then passing in any of the spanned physical layer positions for the layer parameter should yield the same logical layer.

The value returned by this method can be used as input to getLayerMetadata and should not exceed the value that is returned by getMemberCount.

Parameters:
edge - A constant that represents the edge in which to look for the layer and slice. The constants end with _EDGE in DataDirector.
layer - The zero-based number of the physical layer of the member.
slice - An absolute index (zero-based) that indicates the location of a slice along the specified edge. Each member in the innermost layer has a unique slice. In outer layers, any slice that the outer member spans can be used.
Returns:
The logical layer of the member within the specified edge.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getLayerMetadata

public java.lang.Object getLayerMetadata(int edge,
                                         int layer,
                                         java.lang.String type)
                                  throws EdgeOutOfRangeException,
LayerOutOfRangeException
Retrieves a piece of metadata for a logical layer that is found at a specified edge and logical layer.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
layer - The zero-based number of the layer for which metadata is requested. Uses a depth computation to identify the location of the layer or layer member; 0 is the outer-most layer on the edge. The value for this parameter can be obtained by calling getMemberLogicalLayer.
type - A constant that specifies the kind of metadata that you want. Valid type values are defined in the LayerMetadataMap.
Returns:
The requested metadata.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
See Also:
LayerMetadataMap, DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberExtent

public int getMemberExtent(int edge,
                           int layer,
                           int slice)
                    throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the size of a member, that is, the number of slices that the member spans at a specified edge, layer, and slice location (parallel to the direction of the edge). Views use this method to determine the width of a member in a column header or the height of a member in a row header when not in outline form.

The sum of all the unique getMemberExtent values for an edge should not exceed the getEdgeExtent value for the same edge.

Parameters:
edge - A constant that represents the edge in which to look for the layer and slice. The constants end with _EDGE in DataDirector.
layer - The zero-based number of the physical layer of the member whose size will be returned. Valid values are zero to total layers at the specified slice.
slice - An absolute index (zero-based) that indicates the location along the edge of the member whose extent will be returned. Each member in the innermost layer has a unique slice. In outer layers, any slice that the outer member spans can be used.
Returns:
The number of slices that the member spans at the specified location.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
See Also:
getMemberStartSlice(int, int, int), DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberStartSlice

public int getMemberStartSlice(int edge,
                               int layer,
                               int slice)
                        throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the absolute number of the first slice that a member spans. Presentation beans use this method to determine where to start painting a member label in a row or column header. Presentation beans pass the same parameter values to this method and to getMemberExtent.
Parameters:
edge - A constant that represents the edge in which to look for the layer and slice. The constants end with _EDGE in DataDirector.
layer - The zero-based number of the physical layer of the member whose first slice will be returned. Valid values are zero to total layers at the specified slice.
slice - An absolute index (zero-based) that indicates the location along the specified edge of the member whose starting slice will be returned. Each member in the innermost layer has a unique slice. In outer layers, any slice that the outer member spans can be used.
Returns:
The absolute index of the first slice that the member spans.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If layer is negative or too large.
SliceOutOfRangeException - If slice is negative or too large.
See Also:
getMemberExtent(int, int, int), DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberMetadata

public java.lang.Object getMemberMetadata(int edge,
                                          int layer,
                                          int slice,
                                          java.lang.String type)
                                   throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the specified type of metadata for a member at the specified location.
Parameters:
edge - A constant that represents the edge in which to look for the member metadata. The constants end with _EDGE in DataDirector.
layer - The zero-based index of the physical layer in which to find the slice. Valid values are zero to total layers at the specified slice.
slice - An absolute index (zero-based) that indicates the location along the edge of a slice that belongs to the member for which metadata is requested. Each member in the innermost layer has a unique slice. In outer layers, any slice that the outer member spans can be used.
type - A constant that specifies the kind of metadata requested. Valid type values (such as METADATA_LONGLABEL or METADATA_VALUE) are defined in MetadataMap. Example: If type is specified as MetadataMap.METADATA_DRILLSTATE, then this method returns one of the drill state constants that are found in DataDirector. Note: The caller should have intialized the appropriate MetadataMap object with any types of metadata that the caller intends to use.
Returns:
The requested metadata.
Throws:
LayerOutOfRangeException - If layer is negative or too large.
SlieOutOfRangeException - If slice is negative or too large.
See Also:
MetadataMap, DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getValueQDR

public QDR getValueQDR(int row,
                       int column,
                       int flags)
                throws RowOutOfRangeException,
ColumnOutOfRangeException
Retrieves a QDR object that represents the value at the specified row and column in the data area of the cursor.
Parameters:
row - The row in the data cursor for which to return the QDR.
column - The column in the data cursor for which to return the QDR.
flags - A constant that identifies whether to include page edge information if the QDR is not for the page edge. Valid constants are listed in the See Also section.
Returns:
QDR object that refers to the data at the specified location.
Throws:
RowOutOfRangeException - If the row parameter is not valid.
ColumnOutOfRangeException - If the column parameter is not valid.
See Also:
QDR_WITH_PAGE, QDR_WITHOUT_PAGE

getSliceQDR

public QDR getSliceQDR(int edge,
                       int slice,
                       int flags)
                throws EdgeOutOfRangeException,
SliceOutOfRangeException
Retrieves a QDR object that represents the data value at the specified slice on the edge (that is, across all relevant logical layers of the slice).
Parameters:
edge - A constant that represents the edge of in which to find the slice. The constants end with _EDGE in DataDirector.
slice - An absolute index (zero-based) that indicates the location of the slice along the specified edge.
flags - A constant that identifies whether to include page edge information if the QDR is not for the page edge. Valid constants are listed in the See Also section.
Returns:
QDR object that refers to the data at the specified location.
Throws:
EdgeOutOfRangeException - If the edge parameter is not valid.
SliceOutOfRangeException - If the slice parameter is not valid.
See Also:
QDR_WITH_PAGE, QDR_WITHOUT_PAGE, DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberQDR

public QDR getMemberQDR(int edge,
                        int layer,
                        int slice,
                        int flags)
                 throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves a QDR object that represents the data value for the member at the specified edge, layer, and slice.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
layer - A zero-based index that represents the physical layer of the member for which the QDR object is requested.
slice - An absolute index (zero-based) that indicates the location, along the specified edge, of a slice that belongs to the member for which the QDR object is requested.
flags - A constant that identifies whether to include page edge information if the QDR is not for the page edge. Valid constants are listed in the See Also section.
Returns:
QDR object that refers to the data at the specified position.
Throws:
EdgeOutOfRangeException - If edge is not valid.
LayerOutOfRangeException - If layer is not valid for the specified edge.
SliceOutOfRangeException - If slice is not valid for the specified edge and layer.
See Also:
QDR_WITH_PAGE, QDR_WITHOUT_PAGE, DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberQDR

public QDR getMemberQDR(int edge,
                        int[] hPos,
                        int memberLayer,
                        int flags)
                 throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves a QDR object that represents the specified member using hierarchical addressing.
Parameters:
edge - A constant that represents the edge in which to find the member. The constants end with _EDGE in DataDirector.
hPos - An array of relative indices that are organized by logical layer. The indices start at layer 0 and extend at least through the layer that is specified in memberLayer.
memberLayer - The zero-based index into the hpos array that indicates the layer in which to find the member.
flags - A constant that identifies whether to include page edge information if the QDR is not for the page edge. Valid constants are listed in the See Also section.
Returns:
QDR object that refers to the data at the specified hpos and memberlayer within the hpos.
Throws:
EdgeOutOfRangeException - If edge is not valid.
LayerOutOfRangeException - If memberLayer is not valid for the specified edge.
SliceOutOfRangeException - If the values in the hpos array are not valid relative indices in the specified hierarchy.
See Also:
QDR_WITH_PAGE, QDR_WITHOUT_PAGE, DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getLayerQDR

public QDR getLayerQDR(int edge,
                       int layer,
                       int flags)
                throws EdgeOutOfRangeException,
LayerOutOfRangeException
Retrieves the QDR object that represents the specified logical layer.
Parameters:
edge - A constant that represents the edge in which to find the logical layer. The constants end with _EDGE in DataDirector.
layer - The zero-based index of the logical layer for which to return the QDR.
flags - A constant that identifies whether to include page edge information if the QDR is not for the page edge. Valid constants are listed in the See Also section.
Returns:
QDR object that refers to the data in the specified layer.
Throws:
EdgeOutOfRangeException - If edge is not valid.
LayerOutOfRangeException - If the logical layer is not valid for the specified edge.
See Also:
QDR_WITH_PAGE, QDR_WITHOUT_PAGE, DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberSiblingCount

public int getMemberSiblingCount(int edge,
                                 int[] hPos,
                                 int memberLayer)
                          throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the count of all the sibling members at a specified logical layer based on a series of relative indexes for each logical layer down to the specified logical layer. This method is useful in populating a page control for a view. For an example, consider the following column header.
June July
Tents Canoes Tents Canoes
NY Boston LA Toronto Winnepeg NY LA NY Boston LA Toronto Winnepeg

A caller can use this method to find the number of Geography values (that is, sibling members) under the members July and Tents. The hPos and memberLayer parameters for this example are as follows:

Note: The value that is returned by this method provides the upper limit to the hIndex that a caller passes in getMemberMetadata.

Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
hPos - An array that contains an index for the member values at each layer up to and including the layer of the sibling members that are to be counted. These indexes are relative to the number of members at each layer. When a member spans more than one layer, any layers beyond the starting layer should have their place held by a -1 index.
memberLayer - The index into the hPos array for which the call should return the sibling member count.
Returns:
The number of sibling members that are found on the specified edge at the location that is specified by hPos and memberLayer. In the example, this method returns 3 (for the siblings NY, Boston, and LA).
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If memberLayer is too large.
SliceOutOfRangeException - If any slice in hPos is too large.
See Also:
getMemberMetadata(int, int, int, java.lang.String), DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberMetadata

public java.lang.Object getMemberMetadata(int edge,
                                          int[] hPos,
                                          int memberLayer,
                                          int hIndex,
                                          java.lang.String type)
                                   throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the specified type of metadata for the member at a specified location. For example, this method is useful for retrieving labels for display in views.

The user of this method makes the following calls:

The call for this method uses the same hPos and memberLayer parameters as found in getMemberSiblingCount to specify the parent tree of members. Each call of this method also uses the hIndex parameter that indicates the specific sibling member for which to return metadata. Valid values for hIndex range from 0 to (getMemberSiblingCount() - 1).
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
hPos - An array of relative indexes, organized by logical layer, for the parent tree of members above the sibling member that is specified by hIndex. The array includes entries for layer 0 through at least the layer that is specified by memberLayer.
memberLayer - The zero-based index into the hPos array for which the call should address the set of sibling members.
hIndex - The zero-based index of a sibling member relative to its siblings. This index specifies the sibling member for which to return the specified metadata.
type - A constant that specifies the kind of metadata to return. Valid type values are defined in MetadataMap.
Returns:
The requested metadata for the member at the specified location.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If memberLayer is too large.
SliceOutOfRangeException - If any slice in hPos is too large, or if the hIndex is too large.
See Also:
MetadataMap, DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getMemberHPos

public int[] getMemberHPos(int edge,
                           int layer,
                           int slice)
                    throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the hierarchical address for an absolute address that is specified as edge, physical layer, and slice. This method constructs an array that can be used in creating the hPos parameter in calls such as getMemberSiblingCount and getMemberMetadata.

As an example, this method can retrieve an array of indexes from a page edge. The array includes an index for each layer in the page edge. Consider pivoting the following column header to a page edge.

June July
Tents Canoes Tents Canoes
NY Boston LA Toronto Winnepeg NY LA NY Boston LA Toronto Winnepeg

If the current page displayed June, Canoes, and Winnepeg, this method would return the array {0,1,1}. June is at index 0 in layer 0. Canoes is at index 1 in layer 1 under June. Winnepeg is at index 1 in layer 2 under Canoes. To find the number of members under Canoes under June, call getMemberSiblingCount with the array {0,1,1} and the memberLayer parameter 2.

Parameters:
edge - A constant that represents the edge in which to look for the slice. The constants end with _EDGE in DataDirector.
layer - The zero-based index of the physical layer of the member whose hierarchical address will be returned.
slice - An absolute index (zero-based) along an edge that indicates the location of the slice whose hierarchical location will be returned. Each member in the innermost layer has a unique slice. In outer layers, any slice that the outer member spans can be used.
Returns:
An array of relative indexes. There is one index for each layer in the edge up to and including the layer argument, with -1 representing non-starting layers when a member happens to span more than one layer.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If memberLayer is too large.
SliceOutOfRangeException - If any slice in hPos is too large
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getFirstHPos

public int[] getFirstHPos(int edge)
                   throws EdgeOutOfRangeException
Retrieves the hPos array that identifies the members at each physical layer of slice 0 on the specified edge. If there is no new member at a particular layer (because the member spans more than one physical layer) then the index value in the hPos array will be -1 for that layer.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
Returns:
An hPos array that fully identifies the first slice on the specified edge.
Throws:
EdgeOutOfRangeException - If edge is too large.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getLastHPos

public int[] getLastHPos(int edge)
                  throws EdgeOutOfRangeException
Retrieves the hPos array that identifies the members at each physical layer in the last slice on the specified edge. If there is no new member at a particular layer (because the member spans more than one physical layer) then the index value in the hPos array will be -1 for that layer.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
Returns:
An hPos array that fully identifies the last slice on the specified edge.
Throws:
EdgeOutOfRangeException - If edge is too large.
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getPrevHPos

public int[] getPrevHPos(int edge,
                         int[] hPos)
                  throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the hPos array that identifies the members at each physical layer of the slice that is immediately previous to the specified hPos on the specified edge. If there is no new member at a particular layer (because the member spans more than one physical layer) then the index value in the hPos array will be -1 for that layer.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
hPos - Identifies the member for which this call should return the previous member on the edge.
Returns:
An hPos array that fully identifies the previous slice on the edge. Returns null if the hPos parameter represents the first slice on the edge.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If hPos is too long.
SliceOutOfRangeException - If any slice in hPos is too large
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

getNextHPos

public int[] getNextHPos(int edge,
                         int[] hPos)
                  throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Retrieves the hPos that identifies the next member on the specified edge relative to a specified hPos. If there is no new member at a particular layer (because the member spans more than one physical layer) then the index value in the hPos array will be -1 for that layer.
Parameters:
edge - A constant that represents the edge of interest. The constants end with _EDGE in DataDirector.
hPos - Identifies the member for which this call should return the next member on the edge.
Returns:
An hPos array that fully identifies the next slice on the specified edge. Returns null if the specified hPos is the last one on the edge.
Throws:
EdgeOutOfRangeException - If edge is too large.
LayerOutOfRangeException - If hPos is too long.
SliceOutOfRangeException - If any slice in hPos is too large
See Also:
DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

findMember

public int findMember(int edge,
                      int[] hPos,
                      int memberLayer,
                      java.lang.String s,
                      java.lang.String type,
                      int flags)
               throws EdgeOutOfRangeException,
LayerOutOfRangeException,
SliceOutOfRangeException
Searches a set of child members for the specified value starting at a specified offset. The child members are addressed as in getMemberChildCount. Returns the relative index in the specified hierarchical location for the member where the search value is found.
Parameters:
edge - A constant that represents the edge along which to search. The constants end with _EDGE in DataDirector.
hPos - The hierarchically specified set of values to search. An array of relative indexes that are organized by logical layer. The indexes start at layer 0 and extend at least through the layer indicated by memberlayer. The relative indexes that are specified for the outermost layers indicate a parent tree of members; the relative index for the innermost layer indicates a zero-based starting position within the set of sibling members at which to start the search.
memberLayer - The zero-based index into the hPos array for indicating the starting position for the search operation.
s - The String to find.
type - A constant that indicates the type of metadata for which to search. Valid type values are defined in MetadataMap.
flags - The type of search using constants, some constants that affect case sensitivity may be ANDed with the actual type of the search. The valid constants begin with FIND_ in this class.
Returns:
The relative index of the member in which the search value was found. Returns -1 if the String is not found.
Throws:
EdgeOutOfRangeException - If edge is invalid.
LayerOutOfRangeException - If memberlayer is invalid for the edge.
SliceOutOfRangeException - If hPos that are not valid relative indexes 0.
See Also:
FIND_EXACT, FIND_CONTAINS, FIND_STARTS_WITH, FIND_ENDS_WITH, FIND_CASE_INSENSITIVE, DataDirector.COLUMN_EDGE, DataDirector.PAGE_EDGE, DataDirector.ROW_EDGE

isFetched

public boolean isFetched(int[] startSlice,
                         int[] endSlice)
                  throws SliceOutOfRangeException
Indicates whether a block of data has been fetched locally. The block of data is specified as matched pairs of start and end slice locations organized in array parameters by edge.

For example, this method can be used for a printing routine that wants to keep the UI running and to be sure that the block of data that it is about to print has already been fetched.

Implementors are not required to support this method.

Parameters:
startSlice - A list of starting slices that define one "side" of the data block, organized by edge. For example, this parameter might refer to the starting column and row. This method ignores array elements above the maximum supported edge.
endSlice - A matching list (as defined by startSlice) of ending slices that define the other "side" of the data block. For example, this parameter might refer to the ending column and row. This method ignores array elements above the maximum supported edge.
Returns:
true if the block of data has been fetched locally or if the call is unsupported; false if the block of data has not been fetched locally.
Throws:
SliceOutOfRangeException - If any of the slices are invalid.

forceFetch

public boolean forceFetch(int[] startSlice,
                          int[] endSlice)
                   throws SliceOutOfRangeException
Ensures that a block of data has been fetched locally. If this call is successful, then the caller can expect that isFetched will return true.

Implementors are not required to support this method.

Parameters:
startSlice - A list of starting slices that define one "side" of the data block, organized by edge. For example, this parameter might refer to the starting column and row. This method ignores array elements above the maximum supported edge.
endSlice - A matching list (as defined by startSlice) of ending slices that define the other "side" of the data block. For example, this parameter might refer to the ending column and row. This method ignores array elements above the maximum supported edge.
Returns:
true If the block of data was successfully fetched or if the method is not supported. false if the block of data was not fetched.
Throws:
SliceOutOfRangeException - If any of the slices are invalid.

release

public void release()
Informs the implementor that the caller no longer needs this DataAccess reference. Provides an opportunity for cleaning up the cursor when a caller is finished with it.

Views should not call this method for normal DataAccess instances, because calling this method makes the DataAccess reference unavailable to other presentation beans that might be using it. This method is useful only in special cases where a caller has wrapped a DataAccess around a private single-layer cursor.

The implementor may or may not implement this method, depending on the underlying cursor.


startGroupEdit

public void startGroupEdit()
Indicates the start of a group of setValue calls. This group of setValue calls will be treated as a unit in terms of undo and redo actions. For this reason, it is important that endGroupEdit is called when the client finishes the group editing.
Returns:
void
See Also:
setValue(java.lang.Object, int, int, java.lang.String), endGroupEdit()

endGroupEdit

public void endGroupEdit()
Indicates the end of a group of setValue calls. This group of setValue calls will be treated as a unit in terms of undo and redo actions.
Returns:
void
See Also:
setValue(java.lang.Object, int, int, java.lang.String), startGroupEdit()

submitChanges

public boolean submitChanges()
Writes the current group of QDR overrides in the writeback collection to the database and flushes the entries in the writeback collection.
Returns:
true if changes are submitted successfully; false if changes are not submitted successfully.

undoEdit

public boolean undoEdit()
Performs an undo of the latest setValue operation.
Returns:
true if the undo was successful; false if the undo was not successful.

redoEdit

public boolean redoEdit()
Performs a redo of the latest undo action.
Returns:
true if the redo was successful; false if the redo was not successful.

dropChanges

public boolean dropChanges()
Clears the QDR overrides in the writeback collection.
Returns:
true if the clear operation was successful; false if the clear operation was not successful.

setAutoSubmit

public void setAutoSubmit(boolean bValue)
Specifies that the QDR override in the writeback collection for a cell will be submitted automatically as soon as it is entered.
Parameters:
bValue - true specifies automatic submission; false specifies no automatic submission.
Returns:
void

isAutoSubmit

public boolean isAutoSubmit()
Indicates whether automatic submission is set for cell editing.
Returns:
true specifies that automatic submission is set for cell editing; false specifies that automatic submission is not set for cell editing.

getQDRoverrideCollection

public java.util.Vector getQDRoverrideCollection()
Retrieves a read-only copy of the QDR overrides in the writeback collection.
Returns:
The read-only copy of the QDR overrides in the writeback collection.

Oracle™ Business Intelligence Beans Java API Reference
Release 10
g (9.0.4)
Part number B12159_01


Copyright © 2003, Oracle. All Rights Reserved.