Implementing Siebel eBusiness Applications on DB2 UDB for z/OS and OS/390 > Maintenance Considerations for zSeries > About Cursor Close >
About Cursor Operation in Unrestricted and Restricted Modes
Cursor operation can be in either unrestricted or restricted mode.
When cursor configuration parameters
PreFetchSize are not specified or are set to a value of -1, the Siebel application opens a cursor on the user's behalf and retrieves blocks of records until the query result set is exhausted or until the user cancels the display of remaining records. When a user remains on a list applet with multiple screens of data, for example Contact List Applet, the application continues to hold the cursor.
The impact on database and network resources when a query returns a large result set can be significant.
During normal operation (restricted mode), with cursor configuration parameters set appropriately, the Siebel application retrieves up to the
MaxCursorSize number of rows from the DB2 database.
For example, if
MaxCursorSize were specified as 128, the Siebel application would retrieve up to 128 rows from the database for a single operation or query. The Siebel application would then close the cursor, releasing the thread for other users to access. The user can then scroll through the retrieved rows, because the rows are cached on the Siebel Server within the Application Object Manager.
If a user tries to scroll to records beyond the value of
MaxCursorSize (128 in the example), the cursor close alert appears:
There were more rows than could be returned. Please refine your query to bring back fewer rows.
For example, let us say that the user navigates to the My Opportunities view, which is sorted by the Name column. Seventy-five rows qualify for this query. The initial query returns 128 rows; the 128th row says
Siebel Systems. When the user tries to scroll to the 129th opportunity, the cursor close alert appears. The user would then have to choose Edit > Query > Refine Query, type
'>Siebel Systems' in the Name field, and then execute the query to retrieve additional records.