Class: cCJGridCachedDataSource

Module location: cDbCJGridDataSource.pkg line 11 (view source)

Class Hierarchy:

cObjectcCJGridDataSourcecCJGridCachedDataSource

Direct Known Subclasses:

cDbCJGridDataSource,

Class Definition

Properties

BooleanpbAtEnd
has cache discovered last record
BooleanpbAtTop
has cache discovered first record
BooleanpbDDReadMode
if true we never actually find the record in the dd - just read
BooleanpbLoadAll
if true, load all data with first page event
BooleanpbReverseOrdering
is data source reversed?
BooleanpbStaticData
determines if datasource is static - once loaded it does not change
IntegerpiGridOrdering
Ordering from Grid. See Ordering for actual order which may differ
IntegerpiMaxCacheRange
internal - used to keep track of the largest range the grid has requested.
IntegerpiMaxCacheSizeAllowed
max size of cache, 0 - unlimited
IntegerpiMinPageSize
minimum number of records to page whenever a page is performed
IntegerpiRowCount
Normalized Rows in cache
IntegerpiRowOffset
Unnormalized off set to rows (if not zero)
HandleServer
The DD server

Functions and Procedures

IntegerAdjustRowForOffset(Integer iRow)
BooleanAllDataIsLoaded()
Inherited from cCJGridDataSource
Construct_Object()
Inherited from cCJGridDataSource
tDataSourceRowCreateDataSourceRow()
Inherited from cCJGridDataSource
IntegerCurrentMaxCache()
return the maximum cache size needed for this grid. This is tied to the logic in PageInRows and how it caches records. It uses the current maximum range passed in.
BooleanDataIsStatic()
Inherited from cCJGridDataSource
Establish_Find_Mode(Integer eFindMode)
IntegerFindExternalDataInCache()
IntegerFindMode(Integer eFindMode)
This handles translation of find modes to make reverse ordering work. Pass the mode and return the mode, translated if reverse ordering is needed
IntegerFindRowIdInCache(RowID rId)
InitializeDataSource(tDataSourceRow[] DataSource)
Inherited from cCJGridDataSource
This loads all data passed and assumes that this is all of the data.
IntegerNormalizeDataSource(Integer iTopRow)
Inherited from cCJGridDataSource
Adjust RowCount and RowOffset to best fit the cache data.
OnPageData(Boolean bFindUp Integer iRowsToAdd tDataSourceRow[] ByRef DataSource Boolean ByRef bAtTop Boolean ByRef bAtEnd)
if iRowstoAdd is minus, add to top, else add to bottom
OnPageInMatchingRow(RowID riId tDataSourceRow[] ByRef DataSource)
RowIDOnReadFirstRecord()
RowIDOnReadLastRecord()
OnSetTag(tDataSourceRow ByRef DataSourceRow)
IntegerOrdering()
ordering is calculated. If the server has a value, we use that. If not, use the grid's ordering
PageInFirstRow()
Inherited from cCJGridDataSource
PageInLastRow()
Inherited from cCJGridDataSource
IntegerPageInMatchingRow(RowID riId)
Inherited from cCJGridDataSource
PageInRows(Integer ByRef iFirstRow Integer ByRef iLastRow)
Inherited from cCJGridDataSource
currently I adjust first and last row but I don't do anything with the information First row is the current top row (first displayable row) Last row is at-least the last displayable. Last - first gives us the range
Read_Next_Record()
BooleanReadRecordInBuffer()
Reset()
Inherited from cCJGridDataSource
IntegerRowCount()
Inherited from cCJGridDataSource
IntegerRowOffset()

References (1):

ModuleContaining SymbolLine
cDbCJGridDataSource.pkgcDbCJGridDataSource735