Establish PCF Range


This event point can be used to constrain the number of records that pass through a query. It is executed once, immediately after the Start of Query Execution event point. You can set range limitations either on the primary key or on alternate keys of the process control file, depending on the access path you choose. You can constrain the full key or a partial key. If this event point contains no statements, APPX will construct a range based upon the child constraints specified in the query’s parent process. If no child constraints are specified in the parent, APPX uses the designer and end user selection criteria to establish the PCF range.

If this event point contains statements, even just comments, APPX assumes the designer wants control over the constraints and does not attempt to create its own constraints or use any child constraints specified in the parent. For example, if code exists in the event point to constrain records but this code is bypassed or disabled, no records will be selected.

If statements are entered in this event point, at minimum the range should be set by BEG AT and END AT statements, which should be followed by a BEG READ statement, then a GOSUB --- PROCESS QUERY RECORD statement that passes the record to the query, then an END READ statement. The predefined subroutine PROCESS QUERY RECORD calls the Pre-User Selection event point, evaluates the designer and end user selection criteria, and then calls the Post User Selection event point.

You may assign multiple constraints in this event point, and gather data from multiple files to establish your constraints. If the constraints overlap and produce a duplicate record situation, APPX will sense that and retain only one copy of the duplicate.