Class DacPagedDataStore() Foundation

Class function of the DacPagedDataStore class.

Description

Objects of the DacPagedDataStore class are used for accessing data in tabular form, stored either in a database or in a two-dimensional array. Instead of accessing data record-wise, or row by row, a DacPagedDataStore object optimizes data access speed by means of a paged cache. This reduces disk I/O considerably since file access is only required if data not held in the cache is requested from the object.

DacPagedDataStore objects serve as data source for the XbpQuickBrowse()class (refer to this class for a usage example). If a database is cached, a DacPagedDataStore object registers itself in the corresponding workarea. This way, the object receives notifications from the database engine and reloads the cache automatically when the order of the records is changed with SET INDEX TO or SET ORDER TO, for example. When a DacPagedDataStore object serves as data source of an XbpQuickBrowse object, the browser object is notified whenever the cache is automatically reloaded so that the screen display is automatically updated.

Class methods
:new()
Creates an instance of the DacPagedDataStore class.
Methods for cache manipulation
:getRelativePageSize()
Determines the size of a cache page relative to the entire data source.
:getRowData()
Retrieves data of a specific row of the cache.
:getRowInfo()
Retrieves information about the columns of a cache page.
:refresh()
Reloads data from the data source into the cache.
:setAbsolutePageSize()
Retrieves or dimensions the page size of the cache.
:setPages()
Retrieves or defines the number of pages of the cache.
Methods for cache navigation
:getPos()
Determines the position of a cache page relative to the data source.
:getRowCount()
Number of rows in a page containing data from the data source.
:goFirst()
Loads the records of the first page into the cache.
:goLast()
Loads the records of the last page into the cache.
:goNext()
Loads the records of the next page into the cache.
:goPos()
Moves the record pointer of the data source to a relative position.
:goPrev()
Loads the records of the previous page into the cache.
:isFirst()
Determines if the first page of the data source is loaded into the cache.
:isLast()
Determines if the last page of the data source is loaded into the cache.
:scrollDown()
Moves the record pointer down and fills the cache.
:scrollTo()
Fills the cache beginning with a specified record.
:scrollUp()
Moves the record pointer up and fills the cache.
Feedback

If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.