Workflow 9 Does Not Automatically Update Field Type Definitions In Published Workflows.

September 8, 2014 | KB: 1013530
Workflow Suite 9

Summary

Laserfiche Workflow Server 9 does not automatically update field type definitions in a published workflow if you change the field type later on. For example, see the following scenario:

  • You have a published workflow that contains a Retrieve Field Values activity that retrieves the value of a field named MyField. MyField is a text field that contains a number value.
  • Later on, a Laserfiche administrator uses the Laserfiche Administration console to modify the type of MyField from Text to the Number type.

The published workflow will continue to properly retrieve the field value, but Workflow may not be able to properly use the token value to evaluate conditional checks that check the field value against a number.

Since Workflow does not automatically update the published workflow, any field value tokens that had already been set in activities will still reflect the field value as the original format.

Workaround 1

Remove the existing field from the initial Retrieve Field Values activity as well as any other places where the workflow uses the token. Save or republish the workflow. Next, re-add the desired field back to the Retrieve Field Values activity and reinsert the token where appropriate. Republish the workflow again.

Workaround 2

Save a WFX file of the affected workflow and use a text editor to open the workflow. Look for the appropriate Retrieve Field Value activity to modify the "Type" attribute of the appropriate <Field> element. Using the example scenario above, modify:

<Field Type="String" Index="null">MyField</Field>

to:

<Field Type="Numeric" Index="null">MyField</Field>

Similarly, look for any conditional activities that use the retrieved field token and modify the "MetaType" attribute to reflect the field type change. Using the example scenario above, modify:

<Token Name="MyField" Length="0" MetaType="String, Field">

to:

<Token Name="MyField" Length="0" MetaType="String, Numeric, Field">

Save your changes to the WFX file, reopen the modified WFX file in the Workflow Designer, and republish the workflow.