Everything Else
A Short Tutorial for the macOS Form Query

Form Query windows look different simply because they now have a macOS interface. The rounded rectangles now have a 3D button effect.

The significant visual change is when you click one of the buttons to open the Form Query Term dialog to set the parameters. Instead of a dialog containing many radio buttons, text fields, secondary radio buttons, etc. the new dialog provides an expanding window, showing just the options that are currently available. Additional options appear as they are needed.

In the tutorial below, you can click each image to see it at full-size.

The Form Query Term Dialog
Step One

The dialog starts out with only a single popup control (the Search Operator) and expands as more information is required. The window expands and contracts to keep it from containing large areas of empty space.

Step Two

If an operator is selected in the popup that requires text input, the window expands and the Search Value field appears to the right of the Search Operator popup menu. Enter the value to be searched for here.

The data entered is validated as you type. If the entry is not valid for the type of data required, the status line (between the search term and the buttons) indicates the nature of the problem. In the example to the right, the date is not yet fully typed, so it is not a legal search value for a date field.

Step Three

If the Search Operator selected in the first step also makes sense as part of a Compound Search Term, the window expands and a second popup appears to the right of the first text field. This second popup can be ignored if the query is already completed to your satisfaction, or a secondary restriction can be chosen.

Step Four

When a secondary search operator is chosen, the window expands again and a second field appears to the right, ready for the final input. Type the secondary search value here and the compound search term is completed.

Whenever the search term is incomplete, a prompt in the status line lets you know. In this example the second field is still empty (the secondary search date has not yet been entered) and the status line provides an appropriate message.

Step Five

When the search term is complete and valid, the OK button is enabled. Clicking that button closes the Form Query Term dialog and applies the search term to the Form Query window.

Because of Classic compatiblity, the search term as seen in the Form Query window may not be in the same order as the term you specified. In our example, although we specified:
Date In is greater than or equal to 1/1/2008 and less than or equal to 12/31/2008
the Form Query window shows this search term as:
1/1/2008 is less that or equal to Date In is less than or equal to 12/31/2008
Applying basic logic, you can see that the completed search term is the same in both cases, but it can be disconcerting to see your term rearranged like this. It is equally disconcerting to reopen the Query Term Specifier dialog and find that the term is now displayed as:
Date In is less than or equal to 12/31/2008 and greater than or equal to 1/1/2008
Again, the completed logic is the same even though the order is different. These discrepancies are caused by the need to store the query in a format that is compatible with Classic Helix. This issue can be addressed when Classic Helix is no longer supported.

Additional Notes
Classic Compatibility Note

Form Queries created using the macOS version of Helix may not appear as expected when opened in a Classic Helix. Helix uses updated logic in creating the queries, and although they should function correctly in Classic Helix, there may be visual anomalies. Clicking the "No Restrictions" button in a query dialog removes the macOS query specification so a new, Classic-visible one can be defined.

Bug Fixes

The error checking for keyword comparisons in the Classic was buggy. For example: error checking was enforced if you were using the Keyword Equals operator but not if you were using Keyword Starts With.

The net effect of these bugs is that in Classic Helix it was possible to create ‘nonsense’ queries that could not match any records. These situations should no longer be seen.

Demo Movie

Here is a short movie showing how the new Form Query works.

See this and other video tutorials on the QSA ToolWorks YouTube tutorial channel.