void ddlFindCb(
CONTROL *ctl,
char *OptnStr,
char *ArgList,
char *DataArray[],
int DataArrayItemCount,
FindRtn FindCB,
WtCastPtr UserWord);
typedef int (STDCALL *FindRtn)(
/* value 1 - continue FIND iteration; 0 - stop FIND iteration */
WtCastPtr UserWord,
long *FindRecArray, /* array of 1-rel record numbers */
int FindRecCount, /* number of records found */
int DataArrayIndex);
Permitted values in OptnStr: NA
| Where: |
<TableName> is the name of the target table. <RD-name> is the name of an RD that describes each item in DataArray[] <key-name-N> is the name of the keyed field that is being queried |
| char *DataArray[] is an array containing DataArrayItemCount pointers; although the pointers are of data type char*, each pointer is a pointer to a record image of arbitrary format. |
| ddlFindCb() is an optimized version of ddlFind(). In many respects, it is similar to ddlMatch(). In particular, ddlFindCb() performs an EQ query on each item of a vector, then returns the result via a callback; This methodology allows the user to implement his own MATCH-like function in an optimized fashion. |
|
Current restrictions as of TB API 8.0.160: The one-key scenario is operable for index types: . Non-RealTime - All modes . Realtime - All modes . Returns only the first record of each find Is not operable for ATTACHed tables |
| ddlFindCb() Example |
Copyright © 2019 , WhamTech, Inc. All rights reserved. This
document is provided for information purposes only and the contents hereof are
subject to change without notice. Names may be
trademarks of their respective owners.