Search

Trouble shooting Conditional Capture

Conditional Capture refers to the feature in XpressDox which hides fields in the data capture interview if the conditions for rendering that field into the merged document are not met.

Take the following snippet of a template as an example:

«ChooseFromRdbList(Married,Y,N)»
«If(Married='Y')»
Spouse’s Name: «SpouseFirstNames» «SpouseSurname»
«End()»

When this template is run, the interview will include the radio button list with the Y button checked (because the first value in a ChooseFromRdbList is always the default value).  Because the value of Married is ‘Y’, the If command evaluates to true and so there will be fields for the capture of SpouseFirstNames and SpouseSurname on the interview.

As soon as the user running the template clicks the N button in the radio button list, then the SpouseFirstNames and SpouseSurname fields will disappear from the dialog.  This is Conditional Capture.

Some Typical Scenarios

Sometimes this feature can appear to be working incorrectly.  This can be for a number of reasons, typically:

  • Setting a value in a Choose… command but testing against another data element:  e.g. in the above example, if the If command were «If(married = 'Y')» then the result will always be false (because the data element being tested is married, with a lower case “m”).  This is because Married and married are two different data elements, because data element names are case sensitive. So in this case the data element married will never be equal to ‘Y’.
  • Similar to the above, but testing against the incorrect value:  e.g. if the If command above were to read «If(Married = 'Yes')» or «If(Married = 'y')» or «If(Married = Y)».  Notice that in the last case, the test is performed against the values of the data element Married and the data element Y.  This is because the Y is not in quotes and so is regarded as the name of a data element, not a string literal with the value ‘Y’.
  • Sometimes a data element can be subject to more than one condition, in which case the data element might always appear on the interview.

Show Hidden Fields

When conditional capture causes some fields to be hidden in the interview, then a checkbox labelled Show Hidden Fields will appear at the bottom of the interview screen.  When this is checked, XpressDox will display the hidden fields, but in a disabled, read-only state.

If you click on a disabled field, then the condition which governs that field will be shown in the Help area.

Often just inspecting that condition will be sufficient to detect any errors or misperceptions.

<Ctrl-Alt>

When the keyboard focus is on a non-hidden field, then if you press the Ctrl and Alt keys simultaneously, XpressDox will display the data element name (in case it is different to the caption) as well as the condition applying to that field.