Appian Community
Site
Search
Sign In/Register
Site
Search
User
DISCUSS
LEARN
SUCCESS
SUPPORT
Documentation
AppMarket
More
Cancel
I'm looking for ...
State
Not Answered
Replies
9 replies
Subscribers
4 subscribers
Views
2248 views
Users
0 members are here
Share
More
Cancel
Related Discussions
Home
»
Discussions
»
Process
Hello, We have seen occurrences in Appian 7.6 where a chain of nodes
thanosm
over 9 years ago
Hello,
We have seen occurrences in Appian 7.6 where a chain of nodes leads to a Script Task that changes the value of a specific field of a CDT variable in the process model (which is confirmed in the process history of the process instance) and the User Input Task (a SAIL form) that comes immediately after the Script Task uses that new value properly.
However, if the user changes menus in the Tempo interface, without submitting or saving the SAIL form, and then goes back to the same Task and opens the form, then the value of the modified CDT field has its previous value. And we see in the Variables of the Process Details that the CDT field has its previous value where the Process History shows that is has been modified to the new one.
Any ideas how this can be happening?
OriginalPostID-148077
OriginalPostID-148077
Discussion posts and replies are publicly visible
0
Mike Schmitt
Certified Lead Developer
over 9 years ago
I don't quite get what you mean by "the user changes menus in the Tempo interface" - could you clarify a bit?
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
thanosm
over 9 years ago
I mean that user presses either News, Records, Reports, Actions or even Tasks on the Tempo interface. Basically, anything other than submitting and saving the task he has been working on.
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
rajatm
over 9 years ago
if the CDT type process variable value is updated by a script task , then that value should be retained. If that's not the case it is really strange. Please check the inputs / outputs in user input task to see if the value is not overwritten anywhere.
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
Conor Cahill
Certified Lead Developer
over 9 years ago
Correct. The parameters of a tempo (non-SAIL) form are not updated until the form is submitted. Using a SAIL form can help with the live updating of parameters, but you don't see it in the history until the form is submitted.
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
thanosm
over 9 years ago
The strange thing is that when the SAIL form loads for the first time (at the end of the chain) the value of the CDT field is the updated one and the SAIL form shows the extra components it's supposed to based on that value. But, when the user loads that same instance of the SAIL form (without having submitted it) at a later time the CDT field has the old value and therefore the SAIL form doesn't show the extra components it showed the first time.
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
thanosm
over 9 years ago
Even if the SAIL form modifies the value of that CDT field while the user is working it BUT does NOT submit it, the next time the SAIL form is loaded won't that CDT field have the value it had the first time it loaded?
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
sikhivahans
over 9 years ago
@thanosm I would like to ask few simple questions as follows in order to dig deep into the issue:
1. Did the user click 'Save Changes' before moving out of 'Tasks' tab?
2. What type of the variable is your CDT - PV or AC or local?
3. Are you assigning any value to the CDT variable in load() or with() once again?
4. Are you sure that the CDT variable isn't being modified under the 'saveInto' attribute of other SAIL component(s) on the form?
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
thanosm
over 9 years ago
Hello,
To answer your questions:
1. No, the user did not click 'Save Changes
2. What exactly do you mean by this? The CDT is a PV in the process model and is passed into the SAIL form through an AC of the User Input Task and then assigned to a Local variable in the load() function.
3. No, we do not assign any value to the CDT variable
4. The CDT variable is not modified in any 'saveInto' attributes, however various fields of the CDT are modified in 'saveInto' attributes.
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
sikhivahans
over 9 years ago
@thanosm So, could you please answer the following as well?
3. May I know how the assignment to the local variable is being done? That is, could you please let me know the piece of code which does the assignment?
4. Also could you please provide one example of how the field of cdt is being modified i.e. the piece of code which updates the cdt field when you interact with a component?
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel