Noticed a field call pxCoveredCount in the work table. This holds the number of covered work objects within this cover.
My Parent/cover case has this count as 1. So the child case is surely created.
But still cant find the child cases in my work table. (I am validating this by writing a report definition to pick all the pyIDs from my work table. I can see that the results contain only my parent cases and not the child cases.)
Below are the sequence of actions that I am doing. Request some urgent help please !!!
1) I have hosted a REST service in pega.
2) I call this service with the Advance REST client (for simulation).
3) When the request from the external system comes, the service runs and in turn the service activity of the service runs.
4) From that service activity I start a new flow to create a cover object. I use StartFlow activity. (For Eg: I am calling the 'syStartCase' flow of my case type VB)
5) The 'syStartCase' flow is started and the first flow shape (after the start shape off course) is a 'CreateCase' shape. I have specified my case type(VB) in the 'CreateCase' shape. In the process drop down I have given the flow 'CreateCoverCase' as the start process flow. ( I have given this 'CreateCoverCase' flow as well as the default 'pyStartCase' as starter flows in the pydefault of this case VB)
6) By now the cover case is already created. Then the flow 'CreateCoverCase' is launched. Here the first step is a utility, and I use 'ReassignToWorkBasket' to transfer my VB case to a default WB (routing not working).
7) The second shape after this utility is a spin off sub flow - 'CreateFADCase'
6) Then the 'CreateFADCase' is launched and I create a child case here in this flow.
No errors on the tracer !!!
I can see the Work objects/cases being created both VB and FAD cases. But the work table has only VB cases and doesn't have FAD child cases.
A save was happening to the Work table only when I would call a custom activity in the flow (after both parent and child cases were created) and force a commit with 'Commit with error handling'.
I resolved this issue by replacing Obj-Save instead of Commit with error handling. Now both parent and child case are getting saved now. Although I get a Locking error, the work objects are getting saved to the work table.