Skip to content

Findreq Field Property

Obsolete

Refer to the Field_Options property in the DataDictionary class.

Purpose

To keep the cursor in an item for a field until a successful find has been performed on the item value (a record is in the buffer), thus preventing the introduction of new values to the field.

Syntax

set field_options field file.field to dd_findreq

or

entry_item file.field {findreq [... , option]}

What It Does

When findreq is applied to a field in a DataDictionary object or on an entry_item command line, it prevents the cursor from going to the next item until a successful find places an active record in the record buffer. An unsuccessful find causes Error 90 (Please enter a valid record ID).

entry_item trucks.id {findreq}

In this example, the cursor is prevented from leaving the item attached to Fieldid in Filetrucks until a find on the item value has placed a record into the trucks file buffer. The find would have to be by the Main Index of Fieldid.

Applying dd_findreq to a field in a DataDictionary object causes this same behavior in every item connected to file.field in any DEO that is using the DataDictionary object.

set field_options field trucks.id to dd_findreq

Data entry to the field can be enabled in selected DEOs (or under selected conditions in the same DEO) by use of the item_option ... findreq message.

item_option item 4 findreq false

This example illustrates the suspension of the findreq field property for the fifth item of a DEO.

Findreq has no effect if an active record is already in the buffer for file (previously found from another item).

Notes

  • An autofind option on the same line with a findreq will attempt the required find automatically when a user attempts to move the cursor out of the window. If the automatic find is successful, the cursor will proceed. If it is not, Error 90 (Please enter a valid record ID) is declared.

  • A findreq with an autofind_ge is unnecessary. Autofind_ge always finds a record in a non-empty database file.

  • If a find is not possible or convenient from an item with findreq, users may use the Previous accelerator key to move the cursor to a previous window whose field is indexed, find through that item, and proceed through the item with the findreq on it.

  • If a find is not possible or convenient from an item with findreq, users may use the Cancel accelerator key to clear all windows, put the cursor in the first item, and "start over" again.