Is there any way to update the process variable of another process using appian

Certified Lead Developer
Is there any way to update the process variable of another process using appian OOB feature
Below are some options but they have their own limitations.
1. Send and received message node: messaging is not synchronous
2. Set external pv: Cloud approved but not OOB smart service and this does not updates the history of the process
3. IFM manager: - This is not OOB

OriginalPostID-144593

OriginalPostID-144593

  Discussion posts and replies are publicly visible

Parents
  • Hi Ajinkya, I think I have a solution. Since you need both synchronous behavior and you also want to capture the PV in process history, you can do the following: Let us suppose you want to set the variable "pv1" in process1 and also want to capture it in process history. Now, create another dummy pv in that process, let us say it is "dummy_pv1" (it should be of same type as pv1). While creating "dummy_pv1" set it to "hidden" so that it is not captured in process history. Now, from process2, you want to set "pv1" of process1. Use Set-PV smart service, and instead set "dummy_pv1" of process1. In process1, have a rule(trigger) which will execute when "dummy_pv1" is not null. In the trigger flow, add a script task which updates the value of pv1 by copying the value from "dummy_pv1". So, in this way, your "pv1" value will change. In effect, you have changed the value of "pv1" from process2 and also pv1 will be captured in process history. I know this is a "hack", but it will work. You will also need to take care of the activation and deactivation the trigger(rule)
Reply
  • Hi Ajinkya, I think I have a solution. Since you need both synchronous behavior and you also want to capture the PV in process history, you can do the following: Let us suppose you want to set the variable "pv1" in process1 and also want to capture it in process history. Now, create another dummy pv in that process, let us say it is "dummy_pv1" (it should be of same type as pv1). While creating "dummy_pv1" set it to "hidden" so that it is not captured in process history. Now, from process2, you want to set "pv1" of process1. Use Set-PV smart service, and instead set "dummy_pv1" of process1. In process1, have a rule(trigger) which will execute when "dummy_pv1" is not null. In the trigger flow, add a script task which updates the value of pv1 by copying the value from "dummy_pv1". So, in this way, your "pv1" value will change. In effect, you have changed the value of "pv1" from process2 and also pv1 will be captured in process history. I know this is a "hack", but it will work. You will also need to take care of the activation and deactivation the trigger(rule)
Children
No Data