you mean that you have process variables that are set but are not returned from this command? Or you mean that the variables are defined but not set? As this command will return only those variables that are currently set (in other words not null)
thanks for starting new thread for this, makes it much easier to follow.
So from what you are saying if the variable has not been set and thus has a null it value, it will not be returned. If an "approved" variable is created as a Boolean with a value false when defining it in the designer shouldn't that then be "set" and thus show up in the variable list? It doesn't. I looked at the xml and don't see it actually getting a false value being set anywhere:
<itemDefinition id="_approvedItem" structureRef="Boolean" />
<itemDefinition id="_7DF7FB64-0962-4846-8C2A-17B11D06C7E4-approvedItem" structureRef="Boolean" />
<itemDefinition id="_545A22D5-CA8A-49DD-B539-9497C0A6D6ED-approvedItem" structureRef="Boolean" />
<process processType="Private" isExecutable="true" id="test.BasicReview" name="BasicReview" tns:packageName="test" >
<!-- process variables -->
<property id="approved" itemSubjectRef="_approvedItem"/>
There are no other references in the file.
defining variable in process with a type does not mean that the engine will instantiate it with default value of that type when starting process. It needs to be explicitly given to the process either with start parameters or by setting variable via processInstance API or by mapping external service output into process variable.
Thanks for the explanation Maciej,