4 7 6 PJF Considerations

Visual LANSA

4.7.6 PJF Considerations

Following are some important considerations for using PJFs:

  • Although the predetermined join field processing is coded within the OAM,  the related files are only accessed when one of the predetermined join fields is specifically used. This make PJFs very efficient, i.e. they do not impact file access times when they are not used.
  • If the file to be accessed by the access route is defined as an IBM i high speed table, the source information for the predetermined join fields will be retrieved from the high speed table, thereby improving performance and reducing I/Os.
  • When defining predetermined join fields, careful thought should be given to  their use.  They are very efficient for looking up code files for descriptions when used with a KEEP LAST value or for accessing a high speed table. If they are used excessively, each file accessed will affect the number of files used in the OAM and DBOPTIMISED functions. (For more details, refer to Using *DBOPTIMIZE / *DBOPTIMIZE_Batch in the LANSA for i User Guide.)
  • If the function has been DBOPTIMISED the predetermined join field processing will have been included in the OAM logic which is embedded in the function.
  • PJFs could greatly increase the number of I/Os performed by the OAM where there are 1:m relationships. For example, each time a single record is read from the Department file, it must access all related records in the Section file if the Section Count field is required.
  • Predetermined join fields will appear in the list of fields in the file, but they are maintained using the access routes.
    As a guide, do not access more than 10 to 15 files for Predetermined Join Fields.

Ý 4.7 Predetermined Join Field Development