AX1632

Design considerations for snapshot form processing

When designing a form to be used with snapshot form processing, keep in mind the following design considerations.

Executing Axiom queries

Axiom queries in the form document are executed according to the normal file processing requirements. If you are performing multipass processing and you want an Axiom query to be executed for each pass, that query must be active and must be enabled for Refresh during document processing. For more information on executing Axiom queries during file processing, see:

These Axiom query rules only apply to the target form being processed. If the target form uses Embedded Form components, the child forms displayed as embedded forms are refreshed as normal and are not considered to be part of the document processing. Any Axiom queries that would be run in the Axiom forms environment when the child form is first loaded will be run for each pass of file processing. For more information, see the Embedded forms section of this topic.

PDF settings in the form

During snapshot form processing, the PDF form settings apply as normal to generate the PDF:

  • The Is PDF property on the Form Control Sheet is set to On for each pass. This means that you can dynamically show or hide certain components in the form during the snapshot form processing.

  • The PDF Size and PDF Orientation settings on the Form Control Sheet are honored when generating the PDF.

For more information, see Configuring an Axiom form for printing to PDF.

Embedded forms

When executing file processing on a form, only the target form is manipulated by the file processing. If the target form contains an Embedded Form component to a display child form, the child form is "unaware" of the file processing and it is rendered and refreshed within the target form as normal. This means:

  • The GetCurrentValue and IsRunningMultipass functions only resolve in the target (parent) form. These functions will not return any values in the child form.

  • The multipass filter is only applied to the target (parent) form. The child form is not automatically filtered for each pass.

  • As noted previously, Axiom queries in the child form are run as normal and do not depend on having Refresh during document processing enabled (since the child form is not aware of the document processing context).

If you want to filter the child form by the same dimension element for each pass, you can use shared variables to pass the value to the child form. For example, imagine that you are multipass processing by Dept.Region, and you want the child form to be filtered by the current region value as well. You can:

  • In the parent form, use the GetCurrentValue function to return the multipass filter for the current pass. For example:

    =GetCurrentValue("Filter")

    When processing for the West region, the multipass filter would be Dept.Region='West'

  • In the parent form, use the SetSharedVariable function to set a variable to the current filter value. For example:

    =SetSharedVariable("FPFilter",GetCurrentValue("Filter"))

    This sets the shared variable FPFilter to the current pass filter.

  • In the child form, use the GetSharedVariable function to return the current filter value. For example:

    =GetSharedVariable("FPFilter")

    This will return the value of FPFilter filter as set in the parent form for the current pass.

  • In the child form, set up Axiom queries to be filtered as needed based on the value of the FPFilter variable.

This is just an example of how to pass information about the current multipass value to the child form. The GetCurrentValue function has several options that you can use to return different values in the parent form and then use SetSharedVariable to pass those values to the child form.

Additionally, keep in mind that snapshot form processing does not provide support for sequentially processing multiple child forms within a parent form. If the target parent form uses a Menu component to change which child form displays in the Embedded Form component, only the initially visible child form will be included during snapshot form processing.