How To Customize Directed Web Access
- About Directed Web Access
- Implementing Directed Web Access
- Standard Components for Directed Web Access
- Modifying the Standard Rules
Directed Web Access (DWA) allows anyone with web and email access to process an assignment, even if they do not have a Process Commander operator ID. Assignments made to these outside parties are called external assignments.
To create an external assignment, the system forms and sends an email message to the external party. The message includes a link to a special DWA URL which includes a one-use authentication token for Process Commander. When the email recipient clicks the link, an internet browser session starts, sends the URL to Process Commander, and logs on. This session allows the external user to supply the needed information
For external users, responding to an external assignment involves completing a single web form. To complete the assignment, the external user supplies the information, approval, or judgments needed for the work object to progress further. After the user submits her assignment to Process Commander, the requestor's session ends and the URL cannot be used to submit any additional information.
Implementing DWA involves taking the following steps:
- Verify that your system has the prerequisites for DWA
- Create an Operator ID for the External User
- Configure the URL for your Process Commander System
- Create a Correspondence Rule
- Call a DWA Flow
For complete instructions on implementing DWA, see How to Implement Directed Web Access
After you have implemented DWA on your system, you can modify the standard DWA components to suit your needs.
The following diagram displays the components that Process Commander references in a DWA implementation. If a component appears in a gray box, Process Commander ships with one or more special versions of that component for DWA implementations. If the component appears in a white box, you create the component yourself.
Figure 2. Configuration Diagram for Directed Web Access
The following table lists DWA versions of the components that you are most likely to modify for your system. All rules are in the Pega-ProCom RuleSet.
|Rule Type||Rule Name||Description|
|Class||Assign-External||Class for external assignments.|
|Correspondence||Work-.ExternalEmail||Basic DWA email that creates the DWA URL link and calls the WorkDetail.Mail correspondence fragment.|
|Correnspondence Fragment||WorkDetail.Mail||Displays the work item's status, item type, and description, as well as who entered the work item and a summary of the task that the external user must complete.|
|Harness||Work-.PerformExternal||Displays the assignment form for the external user; calls the Work-ActionExternal section.|
|Work-.ConfirmExternal||Displays a confirmation form for the external user; calls the Work-ConfirmExternal section.|
|Work-.ActionExternal||Generates HTML for the flow action that acts upon the external work object.|
|Work-.ConfirmExternal||Generates HTML that confirms that the flow action was completed.|
Creates an instance of the Assign-External class, updates the Work-.EngageExternalQuick flow, updates the work object's status, and creates and sends correspondence to the external user.
For more information, see Understanding the EngageExternalQuick Flow.
|Work-ActionEngageExternal||Calls the EngageExternalQuick flow.|
|Service Level||Work-.External||If the external party fails to complete the assignment within the 10 days allowed by this rule, the system adds a note to the history of the work object.|
|Flow Action||Work-.EngageExternal||Calls the ActionEngageExternal activity, which calls the Engage.ExternalQuick flow.|
|Flow||Work-.EngageExternalQuick||See Understanding the EngageExternalQuick Flow for complete information.|
|Work-.EngageExternal||See Understanding the EngageExternalForInformation Flow for complete information.|
Two standard flows deliver Directed Web Access capability:
- The Work-.EngageExternalQuick flow. For synchronous processing, call this flow using the standard flow-action Work-EngageExternal.
- The Work-.EngageExternalForInformation flow. An internal user can start using the New Flow anchor on the standard harness forms. For asynchronous processing, call this flow using a spin-off shape.
These two flow rules cause Process Commander to associate a standard Service Level rule named External with the external assignment. If the external party fails to complete the assignment within the 10 days allowed by this rule, the system adds a note to the history of the work object.
Both flows include a second (internal) assignment that allows an internal user to review the information supplied by an external user. If the external assignment was not completed at all or not completed satisfactorily, the internal user can restart the flow, causing a second external assignment to go out.
- Party role for the recipient.
- Subject memo text for the email message.
- Text for the message body (optional).
- Template name — the second key part —of a correspondence template (Rule-Obj-Corr class) for the body of the message. The system uses the literal value email is the third key part of the correspondence rule.
The EngageExternalQuick flow starts (Figure 3). In its first few tasks, the flow creates an external assignment and assigns it to the work party you identified. The flow associates the standard Service Level rule named External with this assignment.
If the external assignment remains incomplete beyond the goal of five days, Process Commander automatically sends a follow-up reminder email message (Figure 4).
The assignment task calls the standard activity named Work-.External activity, which accepts eight input parameters (Figure 5).
Each parameter affects operation of the activity:
- The OperatorModel parameter identifies an Operator ID data instance that defines the capabilities of an external user. (External users do not learn this Operator ID.) If you copy and tailor this flow, you can use another Operator ID for this parameter, choosing one that starts with the prefix External.
- The DaysToExpiration parameter determines a calendar date after which the URL provided is no longer valid. If this date is reached and the external assignment is not completed, the URL expires and cannot be used. Choose a number of days less than the Deadline number of days in the service level rule.
- The optional Instructions parameter can contain a short text value to be recorded in the assignment instance. (This text does not appear in the correspondence.)
- The Party, Subject, Message, and CorrName parameters define the contents of the email message and its recipient.
- The optional ConfirmationNote parameter can contain brief text to appear in the Thank You note.
If the external user completes the assignment, processing continues in the second part of the EngageExternalQuick flow (Figure 6).
If the external assignment remains uncompleted after the deadline interval of 10 days, the flow follows the Missed Deadline connector action. Process Commander marks the external assignment as complete, but also adds an attachment to the history of the work object indicating that the external user did not respond.
The task labeled ReviewResponse creates an ordinary internal assignment, which the system routes to the worklist of the internal user who originally requested the external assignment. This internal assignment allows that internal user to review the information provided by the external user and assess its completeness, value, or validity.
If satisfied with the external input, an internal user can complete the assignment, which ends this flow. If not satisfied, an internal user can create a second external assignment, sent to the same external user, with the same or different instructions.
The EngageExternalForInformation flow (Figure 7) is very similar to the EngageExternalQuick flow. This flow allows the user to select a correspondence rule to send to the external user, then creates and sends the external assignment as in the EngageExternalQuick flow:
After you implemented Directed Web Access in your application, you can copy the standard DWA rules and tailor the copies to meet specific application needs. For example, you can change the conditions under which Directed Web Access is used, the text and appearance of the email message, the text and appearance of the Web form, the privileges of the external user, time intervals used in the service level rule, and so on.
The following sections describe some of the modifications that you can make to the standard DWA implementation.
Copy a standard flow, keeping the same name and parameters, into your application RuleSet. Modify your copy by deleting any tasks you want to exclude or changing the parameters that you pass to the work object.
Using DWA to gather additional properties is a multi-step process:
- Extend the Assign-External class with a concrete subclass that contains the properties that you want to gather.
- Revise the Work-PerformExternal harness, adding a section with new fields to capture these properties as additional user input.
As you modify the harness and section rules, avoid using advanced HTML features. This ensures cross-browser compatibility.
Override the External service level rule by creating a copy in your own RuleSet.
You can modify this copy to change the goal and deadline intervals, or to determine how the system acts when the external assignment is not complete by the goal or deadline interval.
In some settings, the participation of an outside party is always required by your business process (rather than at the discretion of an internal user). For example, actions involving amounts over a dollar limit of $10,000 may require a vice president's approval. Aquiring the VP's approval is not sufficient. Rather, the system should capture the date, time, and wording of the approval and store it in the object's history.
To address this situation, include the Work-External activity (or a tailored copy of it) directly as a task in your own flow.
Your application may interact with external parties who are inside or outside the organization. If these parties need different levels of access, create multiple operator IDs (each named with the literal prefix External), each with a different access level.
When the external user clicks the DWA link in her email, a Process Commander form loads in her web browser. By default, the Work-PerformExternal harness creates the submission form, where the user submits her information, and the Work-ConfirmExternal creates the confirmation form, which appears after the user has submitted her information to Process Commander.
As with other HTML harness rules, you can tailor the appearance, language, and other details of these rules to suit your needs. If you modify the harness rules, note the following important security considerations:
- Include only one Submit button or equivalent link on the HTML form. External users should not have the ability to display the work object or the workbasket containing the work object.