Value of float variable in PE workflow is changed
When assigning a value e.g. "0.1", to a float variable in a workflow definition in IBM FileNet Process Engine (PE), a value of "0.09999999" is returned in the running process. As a result, the process is unable to evaluate the variable.
The workflow is unable to process the value of the float variable.
The problem stems from an imprecision in "float", a data type which has been present in the PE server since IBM FileNet eProcess. This is working as designed, however there are 2 workarounds which are outlined below.
P8 PE, all versions, all platforms.
Resolving the problem
Implement one of the following two workarounds :
- Revise the application to provide a display mask which displays the expected quantity to the end user.
- Modify the workflow, so that the variable initialized at launch is a string field. Use the value to populate the float field as a post-processing step. See attachment for code sample.
More support for:
FileNet P8 Platform
Software version: 3.5, 4.0, 4.5
Operating system(s): AIX, HP-UX, Linux, Solaris, Windows
Software edition: All Editions
Reference #: 1439178
Modified date: 26 January 2017