Skip to main content
November 6, 2023

Child workflow unlocked whilst Parent is locked

  • November 6, 2023
  • 2 replies
  • 1 view

Hello,

We noticed that Workflow on entity can be unlocked and relocked even if the parent workflow (period) is locked. We need to have a direct dependency between the parent and child workflows for the lock of the period.

2 replies

November 7, 2023

That doesn't sound correct. You might have some misbehaving event handlers, or seeing some bug. Can you post some screenshots to clarify what you're seeing ?

November 8, 2023

Hi,

Thank you for the answer!

I added some pictures.

November 8, 2023


MichleA_CMA_0-1699441680321.png


MichleA_CMA_1-1699441689984.png


MichleA_CMA_2-1699441696718.png

 

November 8, 2023

Ah, I see. Yeah, the relationship between parent workflow profiles is not relevant to locking, only the relationship between base child profiles (Import, Forms, etc) and their direct parent. This is because the philosophy of the product is that data is entered strictly in base input profiles, so their locking status is the only one that really matters. Overview profiles are effectively independent.

You can see it demonstrated in the image below.


JackLacava_0-1699450631635.png

The children of QuebecLoad are locked; if I then locked QuebecLoad, I wouldn't be able to individually unlock Forms or Import Montreal TB, because their relationship is enforced for locking purposes. The relationship between QuebecLoad and GlobalSRVReview, on the other hand, is not considered, so both can be freely locked or unlocked regardless of each other's status.

If you need to enforce locking logic between parent profiles, you will have to add an Event Handler that checks whether locking or unlocking operations are allowed on the given profile. You will need a bit of coding for that. An alternative is to restructure your profiles with the above logic in mind, and/or using Named Dependants.

November 10, 2023

Hello,

What do you mean by "named dependants" ? 

Do you have a sample of code that I could used ?

 

Regards,

 

Michèle