OnPreFind - DataDictionary

The messages OnPreFind and OnPostFind are sent before a find and after a find, respectively

Type: Event

Parameters: Integer eMessage

ParameterDescription
eMessageThe Find operation type. Legal values are:

ConstantMeaning
DDFindRequestFindRequest_Find
DDFindFindByRowRecFindByRow,Find_By_Recnum
DDFindRequestAssignRequest_Assign
DDFindClearClear (not Clear_All)


Syntax
Procedure OnPreFind Integer eMessage

Description

The messages OnPreFind and OnPostFind are sent before a find and after a find, respectively.


The significance of these messages:

1. All Find operations (Request_Find, FindByRowId, Find_By_Recnum, Request_Assign and Clear) are sent to a single place.

2. These are called before or after the actual Find, so the Data Dictionaries are not busy, which means you can send other DD messages within these (no reentrancy issues).

3. These are sent to the DD that owns the finding table. It is possible to send these messages to child objects asking for a parent find. In such a case, these events are sent to the owner (the parent) and not the DD that happened to get the message. You are sure that that DD getting the message is the DD for that table.