Skip to content

Test & Verify the Process

Key Lesson: In this step, you learn how to test the complete Purchase Request Process and verify its task assignments, task screens, route behavior, data flow, and completion path.

Run the complete Purchase Request Process from submission through completion and verify each stage of the workflow.

Attention

During testing, use a newly started Process instance so the task configuration you are validating reflects the latest saved Process definition.

Note

Tasks and execution state belong to a specific running Process instance. After changing task configuration, start a new Process instance and test the newly created tasks. See Process instances, tokens, and User Tasks.

  1. Run the Purchasing app.
  2. Open Purchase Request → Create New.
  3. Enter a Cost Center and add at least one completed item.
  4. Click Submit Request.
Expected result:

The Submit Request action starts PurchaseRequestProcessing and navigates to the Home screen, where the Task list is displayed.

If this does not happen:
  • If the Create Purchase Request screen does not close, review how to Start the Process from PurchaseRequestCreate.

  • If an Access Denied based on Access control error appears, confirm that PurchaseRequestProcessing is selected under Covered business objects and that the start access control is configured for that Process. If access is still denied, see Access Control Errors.

  • If the screen closes and the Home screen opens but Approve PR is not displayed in the Task list, confirm that the Approve PR User Task is assigned to the Approver swimlane and that the Process routes to Approve PR.

  1. On the Home page, locate Approve PR under My Team Tasks. If the task list is not displayed, select Task list in the sidebar.
  2. Open the Approve PR task.
  3. Click Assign Task To Myself.
  4. Review the submitted purchase request and confirm that:
    • the request details and line items are displayed;
    • the request fields are read-only;
    • the Approver comment, Approve, and Reject controls are available.
Expected result:
  • The Approve PR task opens the PurchaseRequestApprove screen. After assigning the task to yourself, the submitted Purchase Request details are displayed.

  • The Purchase Request fields are read-only.

  • The Approver comment is editable, and the Approve and Reject buttons are enabled.

If this does not happen:
  • If the task is not available, confirm that the Approve PR User Task is assigned to the Approver swimlane.

  • If the wrong screen opens, confirm that the Approve PR User Task uses Purchasing.PurchaseRequestApprove as configured in Approve PR User Task.

  • If the purchase request fields are editable or the Remove button is active, review how to embed the Include screen and confirm that the request details are configured as read-only while the Approver comment, Approve, and Reject controls remain enabled.

  • If the configuration is correct but the Purchase Request is still editable or the Add Item and Remove controls are still displayed, confirm that Enable everything is not selected in the Dev Tools floating panel.

  1. In Approver comment, enter a distinctive test comment that you can identify in the next task.
  2. Click Reject.
  3. Return to Home and locate the task created by the Process.
Expected result:

The Approve PR task completes, and the reject route moves the same Process instance to a Revise PR task.

If this does not happen:

If the Process does not reach Revise PR, confirm:

  1. Open the Revise PR task.
  2. If Assign Task to Myself appears, select it before continuing.
  3. Confirm that the task opens the PurchaseRequestUpdate screen.
  4. Confirm that the rejection comment entered by the Approver appears in the read-only Approver comment field.
Expected result:

The Approver comment field displays the comment entered when the request was rejected.

If this does not happen:

If the comment does not appear, confirm that the Approve PR output handling updates the current Purchase Request comment and that the Approver comment field on PurchaseRequestUpdate is bound to screen.request.comment.

  1. Change one or more purchase request values so that you can identify the revised request.
  2. Click Resubmit.
  3. Return to Home and locate the next Approve PR task.
Expected result:

Resubmit completes the existing Revise PR task, and the resubmit route returns the same Process instance to Approve PR. It does not start another PurchaseRequestProcessing instance.

If this does not happen:

If the Process does not return to Approve PR, confirm that the Resubmit action on PurchaseRequestUpdate uses await output.submit(screen.request), the Revise PR output handler returns resubmit, and the outgoing route is named resubmit. See Update Request Task Screen and the Process Routes reference.

  1. Open the new Approve PR task.
  2. If Assign Task to Myself appears, select it before continuing.
  3. Confirm that the revised purchase request values appear on the PurchaseRequestApprove screen.
  4. Optionally enter an approval comment, then click Approve.
  5. Return to Home and locate the task created by the Process.
Expected result:

The Approve PR task completes, and the approve route moves the same Process instance to Request Quotation from Vendors.

If this does not happen:

If the revised values do not appear, confirm that Revise PR submits screen.request and that the Approve PR task receives the current Purchase Request.

If the Process does not reach Request Quotation from Vendors, confirm that the Approve action submits isApproved: true, the Approve PR output handler returns approve, and the outgoing route is named approve.

  1. Open the Request Quotation from Vendors task.
  2. If Assign Task to Myself appears, select it before continuing.
  3. Confirm that the task opens the PurchaseQuotationCreate screen and displays the approved purchase request as read-only.
  4. Click Add RFQ, enter a vendor name, and confirm that the value remains visible.
  5. Click Submit RFQs.
Expected result:

The Request Quotation from Vendors task completes, and the sendRequest route moves the Process to the End Event.

If this does not happen:

If the task does not submit, confirm that the Submit RFQs action on PurchaseQuotationCreate uses await output.submit(screen.request) as configured in Request Quotations Task Screen.

If the task submits but the Process does not reach the End Event, confirm that the Request Quotation from Vendors output handler returns sendRequest and that its outgoing route is named sendRequest. For exact matching rules, see the Process Routes reference.

8. Confirm the Purchase Request Process is ready

Section titled “8. Confirm the Purchase Request Process is ready”

Use this checklist to confirm that every part of the Process has been tested successfully.