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:
- 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
- Create a Section on the Layout Edit view called "Approvals"
- Add all the attributes you created to the "Approvals" section
- 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.
- Validate and Activate your process
- Create a Process called "Lock Approver 1". with id la1
- Click the Object tab and choose Change Request (or the sub-object you chose in step 1)
- 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' ) )
- 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
- 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
- Click on the Start Step tab. Under "Then Go To", choose the "Lock Fields" step
- Click on the Steps tab
- Click on the "Lock Fields" step. Under "Then Go To" choose the "Set Approval Status to Proposed" step
- Click on the "Set Approval Status" to Proposed step. Under "Then Go To" choose the "Finish" step
- Validate and Approve your process
- 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
- When all 11 processes are validated and activated, go to Home, Projects and create a new project
- Click on the Risks/Issues/Changes tab
- Click the down arrow to the right of Risks/Issues/Changes and choose Change Requests
- Click the New button, fill out the required fields and click the Save button
NOTE: All of the Approval Status fields are locked.
- Fill out all 10 Approver fields. You can use the same user or different users
- Click the "Submit for Approval" box
- Click the Save button
- 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.