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.
Rate this page:
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.