Introduction

When a query is open in the block, the Post-Query trigger fires each time Form Builder fetches a record into a block. The trigger fires once for each record placed on the block’s list of records.

Usage Notes

Use a Post-Query trigger to perform the following tasks:

  • populate control items or items in other blocks
  • calculate statistics about the records retrieved by a query
  • calculate a running total
  • When you use a Post-Query trigger to SELECT non-base table values into control items, Form Builder marks each record as CHANGED, and so fires the When-Validate-Item trigger by default. You can avoid the execution of the When-Validate-Item trigger by explicitly setting the Status property of each record to  QUERY in the Post-Query trigger. To set record status programmatically, use SET_RECORD_PROPERTY.

 

Example 

This example retrieves descriptions for code fields, for display in non-database items in the current block.

DECLARE

CURSOR lookup_payplan

IS

SELECT payplan_desc

FROM payplan

WHERE payplan_id = :employee.payplan_id;

 

CURSOR lookup_area

IS

SELECT area_name

FROM zip_code

WHERE zip = :employee.zip;

BEGIN

/*

Lookup the Payment Plan Description given the Payplan_Id in the Employee Record just fetched. Use Explicit Cursor for highest efficiency.

*/

OPEN lookup_payplan;

 

FETCH lookup_payplan

INTO :employee.payplan_desc_nondb;

CLOSE lookup_payplan;

 

/*

Lookup Area Descript given the Zipcode in the Employee Record just fetched. Use Explicit Cursor for highest efficiency.

*/

OPEN lookup_area;

 

FETCH lookup_area

INTO :employee.area_desc_nondb;

 

CLOSE lookup_area;

END;

Recent Posts

Start typing and press Enter to search