Discussion
HCL
GB
Last activity: 17 Mar 2015 13:31 EDT
Data Propagation
Hi,
Is there any way to propagate data between two case at the same level which are inside a cover. For e,g. we have the below class structure
ABC-FW-AppFW-Work-Work1
ABC-FW-AppFW-Work-Work2
ABC-FW-AppFW-Work-Work3
Here Work 2 and Work 3 are covered objects of Work1. Is there any way to propagate data between Work2 and Work3.
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Pegasystems Inc.
US
OOTB there is no way to define Data Propagation between sibling cases using the Case Designer.
Data Propagation is from Cover to child and takes place at the time the child case is spawned.
Are you thinking of the situation when a subcase is launched based on sibling case dependency, for example when a sibling case reaches a particular work status only then is a different subcase type created?
The propagation is still from parent to child.
In theory a child case could update the parent case prior to reaching the status that "triggers" the sibling case to be launched,
Granted this a roundabout way of communicating the data between siblings, but is doable.
Pegasystems Inc.
US
Did this answer your question?
HCL
GB
Hi,
I understood your solution but i have just reiterated that below to make myself clear so that we both are on same page.
If I take the above stated class structure, before Work 2 reaches say "Resolved-Completed" status I should update the data to be propagated to sibling in the cover case Work1. And then in the case designer I should have made that data propagation of those elements from Work1 to Work 3. In this case when case Work3 is spawned off the data is present in Work1 and will be carried over to Work3.
Please let me know if I understood correctly.
Pegasystems Inc.
US
The only other way is to have Work3 (we prefer "Case" :-) directly open Work2 to "pull" data from it.
Work3 would have to look at its cover's (pyWorkCover) "covered keys" to determine the pzInsKey for Work2 then do a read-only Obj-Open-By-Handle.
Ideally the Work2 "triggering status" for when Work3 launches would be some "Resolved-:" status, meaning Work2 has ended its flow and no longer has an Assignment but that is not necessary.
To do the Obj-Open-By-Handle call you would need to override the Work-.NewDetaults Activity.
In summary, you can either do a Work2 -> Work1 -> Work3 data "push", or a Work2 -> Work3 "pull".
HCL
GB
Thanks Lee
I personally prefer Work2 -> Work1 -> Work3 as there is just one Data Transform that I have to code to copy Data from Work2 -> Work1 and the rest can be configured in Case Designers Data Propagation area.
Pegasystems Inc.
US
When you write data from Work2 to Work1 you have to ensure that pyWorkCover is locked, for example using Obj-Refresh-And-Lock, plus after updating pyWorkCover you need to call Obj-Save.
Ideally you would not need to do this and can merely use a Data Transform as you suggested.
Pegasystems Inc.
US
When you write data from Work2 to Work1 you have to ensure that pyWorkCover is locked, for example using Obj-Refresh-And-Lock, plus after updating pyWorkCover you need to call Obj-Save.
Ideally you would not need to do this and can merely use a Data Transform as you suggested.
Pegasystems Inc.
US
FYI - unless you override DetermineLockString, pyWorkCover would be locked by default..
HCL
GB
Yes..thats a very valid point...thanks for bringing that locking insight