This should save someone pain and suffering.
Using Forms 10.2, we have a forms process that calls a workflow rule to do a database insert.
Then we use the Set Business Process task in the workflow to indicate to the forms process whether the insert worked or not.
But, it would not give us a return result of any type.
Silence. Nada. Zip, Zilch. Squat.
After lots of trial and error we finally figured this out:
If you want to use a field to capture a return value, you actually have to populate it with something - anything - BEFORE you call the workflow process. It is as if the field needs to be turned on.
Once the variable has a value, it can be changed, but not before