Details
-
Fix
-
Status: Released (View Workflow)
-
Minor
-
Resolution: Fixed
-
2.7.0
-
None
Description
Current Situation
When changing the type of a workflow variable the specified default values always will converted to empty.
Values in schedules are converted several wrong way.
Current Value in Schedule |
String | Number | Boolean | Final | Map | List |
---|---|---|---|---|---|---|
String | x | 0 | false | Still visible | Wrong map items | Empty list |
Number | aNumber | x | 1->true other-> false |
Still visible | Empty map | Empty list |
Boolean | aBoolean | true --> 1 false --> false |
x | Still visible | ||
Final | empty | empty | empty | x | Empty map | Empty list |
Map | [object Object] | [object Object] | [object Object] | Still visible | x | Empty list |
List | [object Object] | [object Object] | [object Object] | Still visible | Empty map | x |
Current Default Value |
String | Number | Boolean | Final | Map | List |
String | x | empty | empty | empty | empty | empty |
Number | empty | x | empty | empty | empty | Empty list |
Boolean | empty | empty | x | empty | empty | empty |
Final | empty | empty | empty | x | empty | empty |
Map | empty | empty | empty | empty | x | empty |
List | empty | empty | empty | empty | empty | x |
Entries in List Variables
Current Value in Schedule |
String | Number | Boolean |
---|---|---|---|
String | x | 0 | false |
Number | unchanged | x | false |
Boolean | unchanged | 0 | x |
Current Default Value |
String | Number | Boolean |
String | x | unchanged | empty |
Number | unchanged | x | empty |
Boolean | unchanged | unchanged | x |
Desired Behavior
Changing the type of a workflow variable should convert existing values as follows
The behavior for the default value and the value in the schedule should be the same.
It should be tried to convert the current value to a value with the new type, e.g. number:1 can be converted to boolean: true.
Desired Value in Schedule |
String | Number | Boolean | Final | Map | List |
---|---|---|---|---|---|---|
String | x | If aString is a number the value of aString |
1 –> true 0 –> false true –> true false –> false yes –> true no –> false on –> true off –> false |
remove | Empty map | Empty list |
Number | aNumber | x | 1-> true other-> false |
remove | Empty map | Empty list |
Boolean | true –> true false –> false |
true –> 1 false –> 0 |
x | remove | ||
Final | empty | empty | empty | x | Empty map | Empty list |
Map | empty | empty | empty | remove | x | List with the same entries |
List | empty | empty | empty | remove | Map with the same entries | x |
Desired Default Value |
String | Number | Boolean | Final | Map | List |
String | x | If aString is a number the value of aString |
1 –> true 0 –> false true –> true false –> false yes –> true no –> false on –> true off –> false |
empty | Empty map | Empty list |
Number | aNumber | x | 1 –> true 0 –> false |
empty | Empty map | Empty list |
Boolean | true –> true false –> false |
true –> 1 false –> 0 |
x | empty | Empty map | Empty list |
Final | empty | empty | empty | x | Empty map | Empty list |
Map | empty | empty | empty | empty | x | List with the same entries |
List | empty | empty | empty | empty | Map with the same entries | x |
Entries in List Variables
Current Value in Schedule |
String | Number | Boolean |
---|---|---|---|
String | x | If aString is a number the value of aString |
1 –> true 0 –> false true –> true false –> false yes –> true no –> false on –> true off –> false |
Number | unchanged | x | false |
Boolean | unchanged | 0 | x |
Current Default Value |
String | Number | Boolean |
String | x | If aString is a number the value of aString |
1 –> true 0 –> false true –> true false –> false yes –> true no –> false on –> true off –> false |
Number | aNumber | x | 1 –> true 0 –> false |
Boolean | true –> true false –> false |
true -> 1 false -> 0 |
x |