Purpose:
This is the class that is used to represent a result set cursor for OD.
Methods:
BOOL isValid();
Returns true if cursor is valid. The cursor is valid if it is pointing to a data object or if it is positioned at the beginning, end or in between.
BOOL isOpen();
BOOL isBegin();
Return true if cursor is positioned at the beginning, i.e. positioned before the first data object in the result.
BOOL isEnd();
Return true if cursor is positioned at the end, i.e. positioned after the last data object in the result.
BOOL isInBetween();
Return true if cursor is positioned in between data objects in the result set. In other words, the cursor is not at the beginning or at the end, and the current data object has not been fetched.
long getPosition();
setPosition(long repositionType, VARIANT value);
Sets the cursor to the specific position. The valid reposition types are:
setToNext();
Sets the cursor to point to the position of the next data object.
LPDISPATCH fetchObject();
Fetches the element of the result set at the current position and returns it as a DXDDOOD. The returned LPDISPATCH pointer contains a DXDDOOD object.
LPDISPATCH fetchNext();
Fetches the next element of the result set and returns it as a DXDDOOD. The returned LPDISPATCH pointer contains a DXDDOOD object.
BOOL fetchNextN(long how_many, LPDISPATCH collection);
Fetch next N elements of the result set and insert them into the given collection. Returns true if there is at least one data object returned. The input parameter LPDISPATCH pointer contains a DXSequentialCollectionOD object.
VARIANT fetchObjectByName(LPCTSTR dataItemName);
VARIANT fetchNextByName(LPCTSTR dataItemName);
Fetches the value of the the next data object by data item name.
BOOL fetchNextNByName(LPCTSTR dataItemName, long how_many, VARIANT* array, long arraySize);
Fetch values of the the next n data objects by data item name and insert them into the given array. The size of array and how_many input parameter determine how many values are put into the array. Returns true if there is at least one value returned.
LPDISPATCH findObject(long position, LPCTSTR predicate);
Find the data object which satisfies the given predicate, move the cursor to that position, fetch and return the data object. The returned LPDISPATCH pointer contains a DXDDOOD object.
The format of the predicate string is AttrName RelOp Value where RelOp are relational operators such as = or ==, <=, >=, <, >,
open();
close();
destroy();
Destroy the result set cursor. This method allows for cleanup.
BSTR datastoreName();
BSTR datastoreType();
long cardinality();
Returns the number of results.
(c) Copyright International Business Machines Corporation 1996, 2002. IBM Corp. All rights reserved.