Clarity: Multiple BPM processes do not lock all attributes as expected

Document ID : KB000048350
Last Modified Date : 14/02/2018
Show Technical Document Details


If you add 10 Approver fields and 10 Approval Status fields (with a default value) to a Sub-Object of the project object (Approver 1 - Approver 10 and Approval Status 1 - Approval Status 10), create 1 auto-start [On Create] process that locks all the approval status fields, create another 10 auto-start [On Update] processes that lock the corresponding approver and update and lock the approval status (i.e. Process 1 locks/updates Approver 1 and Approval Status 1, Process 2 locks/updates Approver 2 and Approval Status 2, ...), and then run all of the update processes at once, some of the fields will not be locked when the processes complete. You may also see that some of the Approval Status Fields did not get updated.

Steps to Reproduce:

  1. Add the following fields to the Change Request object (or a custom sub-object of the project object)

    Approver 1, Approver 2, ... , Approver 10: data type = lookup, lookup = Resource Browse
    Approval Date 1, Approval Date 2, ..., Approval 10: data type = lookup, lookup = Request Status, Default = "New"
    Submit for Approval: data type = Boolean

  2. Create a Section on the Layout Edit view called "Approvals"

  3. Add all the attributes you created to the "Approvals" section

  4. Create a process called "Lock Approver Status Fields - Create"

    Object: Change Request (or the sub-object you chose in step 1)
    Start Options: Auto-start, Start Event: Create, Start Condition: None
    Start Step: Add a System Action called "Lock Approval Status Fields", Object: Change Request, Action: Lock Selected Attributes, Choose all 10 of your Approver Status attributes, Under "Then Go To" choose the Finish step.

  5. Validate and Activate your process

  6. Create a Process called "Lock Approver 1". with id la1

  7. Click the Object tab and choose Change Request (or the sub-object you chose in step 1)

  8. Click the Start Options tab. Choose Auto-start with Start Event: Update and Start condition: ( ( ( ( Change Request Submit for Approval = 1 ) and ( Change Request Submit for Approval [Previous Value] != 1 ) ) and ( Change Request Approver 1 != null ) ) and ( Change Request Approval Status 1 = 'New' ) )

  9. Click the steps tab and create a step called Lock Fields, create a System Action called "Lock Approver" with Object: Change Request and Action: Lock Selected Attributes. Under Lock Selected Attributes, choose Approver 1

  10. Create a second step called "Set Approval Status to Proposed". Create a System Action called "Set Status" with Object: Change Request, Action: Set Approval Status 1, Approval Status 1: Proposed. Create a second system action called "Set Submit for Approval to No with Object: Change Request, Action: Set Submit for Approval, Submit for Approval: No

  11. Click on the Start Step tab. Under "Then Go To", choose the "Lock Fields" step

  12. Click on the Steps tab

  13. Click on the "Lock Fields" step. Under "Then Go To" choose the "Set Approval Status to Proposed" step

  14. Click on the "Set Approval Status" to Proposed step. Under "Then Go To" choose the "Finish" step

  15. Validate and Approve your process

  16. Repeat steps 6 - 15 9 more times, creating processes called "Lock Approver 2" - "Lock Approver 10". Don't forget to change anything that refers to Approver 1 or Approval Status 2 to the appropriate number

  17. When all 11 processes are validated and activated, go to Home, Projects and create a new project

  18. Click on the Risks/Issues/Changes tab

  19. Click the down arrow to the right of Risks/Issues/Changes and choose Change Requests

  20. Click the New button, fill out the required fields and click the Save button

    NOTE: All of the Approval Status fields are locked.

  21. Fill out all 10 Approver fields. You can use the same user or different users

  22. Click the "Submit for Approval" box

  23. Click the Save button

  24. Click on the processes tab. Hit the filter button occasionally until for all 10 processes have completed

Expected Result: All Approver fields will be locked and all Approval Status' will be changed to Proposed and locked

Actual Result: One or more Approver fields will be unlocked and one or more Approval Status fields will be still set to New and/or unlocked





Resolved in Clarity 13.1.0 Generic Patch. Reference TEC581256
Resolved in Clarity 13.3.0 Generic Patch. Reference TEC605767

Keywords: CLARITYKB, CLRT-72693, clarity13resolved, clarity134resolved.