0% found this document useful (0 votes)
68 views282 pages

Pega 8.8 Senior Architect Guide

Uploaded by

vamsi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
68 views282 pages

Pega 8.8 Senior Architect Guide

Uploaded by

vamsi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 282

© 2023 PegasystemsClassroom ExperienceTraining Materials | 1

© 2023 Pegasystems Inc., Cambridge, MA All rights reserved.


Trademarks
For Pegasystems Inc. trademarks and registered trademarks, all rights reserved. All other trademarks or
service marks are property of their respective holders.

For information about the third-party software that is delivered with the product, refer to the third-party
license file on your installation media that is specific to your release.

Notices
This publication describes and/or represents products and services of Pegasystems Inc. It may contain trade
secrets and proprietary information that are protected by various federal, state, and international laws, and
distributed under licenses restricting their use, copying, modification, distribution, or transmittal in any form
without prior written authorization of Pegasystems Inc.

This publication is current as of the date of publication only. Changes to the publication may be made from
time to time at the discretion of Pegasystems Inc. This publication remains the property of Pegasystems Inc.
and must be returned to it upon request. This publication does not imply any commitment to offer or deliver
the products or services described herein.

This publication may include references to Pegasystems Inc. product features that have not been licensed by
you or your company. If you have questions about whether a particular capability is included in your
installation, please consult your Pegasystems Inc. services consultant.

Although Pegasystems Inc. strives for accuracy in its publications, any publication may contain inaccuracies or
typographical errors, as well as technical inaccuracies. Pegasystems Inc. shall not be liable for technical or
editorial errors or omissions contained herein. Pegasystems Inc. may make improvements and/or changes to
the publication at any time without notice.

Any references in this publication to non-Pegasystems websites are provided for convenience only and do not
serve as an endorsement of these websites. The materials at these websites are not part of the material for
Pegasystems products and use of those websites is at your own risk.

Information concerning non-Pegasystems products was obtained from the suppliers of those products, their
publications, or other publicly available sources. Address questions about non-Pegasystems products to the
suppliers of those products.

This publication may contain examples used in daily business operations that include the names of people,
companies, products, and other third-party publications. Such examples are fictitious and any similarity to the
names or other data used by an actual business enterprise or individual is coincidental.

This document is the property of:

Pegasystems Inc.
One Rogers Street Cambridge, MA 02142-1209 USA
Phone: 617-374-9600
Fax: (617) 374-9620 www.pega.com

DOCUMENT: Senior Systems Architecture Exercise Guide


SOFTWARE VERSION: 8.8 GA
UPDATED: May 3, 2023

© 2023 Pegasystems Classroom Experience Training Materials | 2


Application Development

NOTE: When logging into Pega (within the ReadyTech Axis training environment) please
ignore statements about the availability of a new version 8.8.2. Chrome users may also
ignore prompts to update to a newer version of Chrome.

© 2023 PegasystemsClassroom ExperienceTraining Materials | 3


Skimming a ruleset
Scenario
Your manager wants to preserve the initial starting version of the AppVersioning application
before developers begin configuring application functionality. To ensure the initial versions of
the application Rulesets are preserved unchanged, your manager requests that you create new
application Rulesets for this development cycle.
Use the following credentials to log in to the exercise system:
Role Username Password
Senior System Architect ssa@appversioning rules

Your Assignment
Your assignment consists of the following tasks:

Lock and Roll


Task 1: Create new application ruleset version
Opening the existing application ruleset stack and locking existing version and rolling out new
ruleset versions.

Task 2: Update the access group design time configuration setting


Updating all the access groups which are configured with the default destination ruleset with
the new version.

Task 3: Confirm your work


Refreshing the ruleset stack to view the updated rulesets with new version for the current
application AppVersioning.

Skimming
Task 1: Opening rulesets for skimming process (Minor Skim)
Open the rulesets for minor skim.

Task 2: Confirm your work


Verify the minor skim results.

Task 3: Opening rulesets for skimming process (Major Skim)


Open the rulesets for major skim.

Task 4: Confirm your work


Verify the major skim results.

© 2023 PegasystemsClassroom ExperienceTraining Materials | 4


Detailed Steps for Lock and Roll
Task 1: Create new application ruleset version
1. Log into Dev Studio using the username ssa@appversioning and the password rules.
2. In header of Dev Studio, click Configure > Application > Structure > RuleSet Stack to
open the RuleSet stack tab of the Application Structure landing page.

3. Verify that there are no checked-out rules for the RuleSets; check in any rules before
proceeding.
4. Click Lock & Roll to open the Lock & Roll window to increment the application and the
application RuleSets versions.

5. In the Lock & Roll window, select all application RuleSets to be locked.
6. For each selected Ruleset, in the Password field, enter password to lock the RuleSet.
7. Select Roll for all application RuleSets.

© 2023 PegasystemsClassroom ExperienceTraining Materials | 5


8. For each selected RuleSet, in the Roll to Version field, enter 01-01-02.
9. Update the Description to the new version.
10. Select Update my Application to include the new RuleSet Versions.

NOTE: If the application record references only the major and minor version of a RuleSet, then
the system automatically uses the new patch version. If the application explicitly references the
patch version of the RuleSet, then the developer must update the application record or create a
new application version.

11. Click Run to lock the current RuleSet versions and update your current application rule to
reflect the new RuleSet versions.

12. Minimize the Lock & Roll window and Refresh the Application:Structure. The rulesets are
updated.

© 2023 PegasystemsClassroom ExperienceTraining Materials | 6


Task 2: Update the access group design time configuration setting
1. In the Records Explorer, click Security > Access Group to access the list of all system access
groups.
2. Filter the list by Access Group Name to include only AppVersioning access groups.

3. Open the AppVersioning:Administrators access group.


4. Click the Advanced tab.
5. In the Design time configuration section, in the Version field, enter 01-01-02.

6. Click Save.
7. Repeat steps 3-6 to the following access groups:
• AppVersioning:Authors
• AppVersioning:Managers

© 2023 PegasystemsClassroom ExperienceTraining Materials | 7


• AppVersioning:Users

Task 3: Confirm your work


1. Close the Lock & Roll window to return to the RuleSet Stack tab.
2. On the top banner, click Refresh to update the updated RuleSets displayed for the current
AppVersioning:01.01.01 application.
(The number of rules for the RuleSets has increased by 1.)

Detailed Steps for Skimming


Task 1: Opening rulesets for skimming process (Minor Skim)
1. From header of Dev Studio, click Configure > System > Refactor > RuleSets. Click on Skim
a RuleSet.

2. There are two options:


a) Major Version Ruleset Skim b) Minor Version Ruleset Skim
3. Select Minor version RuleSet Skim. Then, in the To New Version, enter 01-02-01.

© 2023 PegasystemsClassroom ExperienceTraining Materials | 8


4. Click on Skim. The following should appear:

5. In Dev Studio, click Configure > Application > Tools > Validation.
6. Click on Run Validation.

Task 2: Verify your work


1. In Dev Studio, open the Application Definition.

© 2023 PegasystemsClassroom ExperienceTraining Materials | 9


2. In the Application rulesets section, open AppVersioning ruleset to view the updated ruleset
versions.

3. Notice Appversion 01-01-02 has no rules since it was not a skim while version 01-02-01 has
all 11 rules copied into it since that version was created using skim.

Task 3: Opening rulesets for skimming process (Major Skim)


1. From header of Dev Studio, click Configure > System > Refactor > RuleSets.

© 2023 Pegasystems ClassroomExperience Training Materials | 10


2. Click on Skim a RuleSet.
3. There are two options:
a) Major Version Ruleset Skim b) Minor Version Ruleset Skim
4. Select Major Version Ruleset Skim. Then, in the To New Version, enter 02.

5. Click Skim.

6. In Dev Studio, click Configure > Application > Tools > Validation.
7. Click Reset Validation and then on Run Validation.

Task 4: Verify your work


1. In Dev Studio, open application rulesets stack from application definition and open
AppVersioning ruleset to view the updated ruleset versions.

© 2023 Pegasystems ClassroomExperience Training Materials | 11


2. Verify that the new version 02-01-01 is listed. If it is not listed then use Actions > Refresh to
refresh the window.

4. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 12


Configuring application rulesets
Scenario
You want to investigate and familiarize yourself with the ruleset structure and stack of the
application. You will create a new ruleset with application validation, create a rule in the ruleset,
and change the validation to ruleset validation.
Use the following credentials to log in to the exercise system:
Role Username Password
System Architect SSA@Rulesets pega

Your Assignment
Your assignment consists of the following tasks:
Task 1: Log in and enable branch development
Task 2: Investigate the configuration of the rulesets composing your current application
Open the ruleset stack from the Application rule, from the Profile, and the Ruleset stack to see
the difference.

Have a look at the ruleset validation in action in the current application.

Task 3: Create a new rulesets


Double-check the impact of application validation on the rulesets that are associated with your
application.

Task 4: Change the ruleset validation to ruleset validation and investigate the results
Change the new ruleset validation to ruleset validation and save the application. Check the
prerequisites of a ruleset.

Task 5: Verify your work


Attempt to create rules in different classes.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Log in and enable branch development
1. Log in using the credentials SSA@Rulesets and pega.
2. Toggle branch development and select the Rulesets branch.

© 2023 Pegasystems ClassroomExperience Training Materials | 13


3. Move the slider to turn on Branch development and ensure the Branch name is Rulesets
and click Submit.

4. Switch to Dev Studio.

Task 2: Ruleset stack investigation


Application profile
1. Open the Application rule from Application: Rulesets > Definition.

2. The current application has one branch and one ruleset.

NOTE: Take a moment to remember the order of the rulesets in each application.

3. Open the HRApps application from the Crosshair icon.

© 2023 Pegasystems ClassroomExperience Training Materials | 14


4. Five rulesets store the rules associated with the HRApps application.

5. Open the HRFW application (framework).

6. Four rulesets store the rules associated with the HRFW application.

© 2023 Pegasystems ClassroomExperience Training Materials | 15


7. You can keep diving into Theme-Cosmos application and then the Pega Rules application.
Pega Rules is comprised of more than fifty rulesets.
8. Close the tabs.
Application profile
1. Click on the avatar representing your user and then Profile.

2. You should recognize the rulesets from the multiple application layers.

© 2023 Pegasystems ClassroomExperience Training Materials | 16


3. Close the Profile.
Ruleset stack
1. Open the ruleset stack. Configure > Application > Structure > Ruleset Stack.

2. The application and ruleset stack should be familiar.

© 2023 Pegasystems ClassroomExperience Training Materials | 17


3. Select the RuleSet Prerequisites tab.
4. Expand a couple of rulesets:
a. HRApps – Application-Based Validation rulesets have no prerequisites.
b. TGB – Ruleset-Based Validation ruleset have prerequisites. TGB has TGBInt and
CreditCheck as prerequisites.
5. Find and open the HRApps application rule definition.

TIP: To find the HRApps application definition rule, enter HRApps in the search box in the
header bar. From the results displayed, select Application HRApps 01.01.01 as shown below.

© 2023 Pegasystems ClassroomExperience Training Materials | 18


6. In the Application rulesets section of the HRApps application definition, click the Trash bin
icon to delete the CreditCheck ruleset from the list and click Save. Study the error message
that appears.

7. Open the TGB ruleset and check the Validation mode.

NOTE: It is set to Ruleset Validation.

8. Close the HRApps application without saving changes.

© 2023 Pegasystems ClassroomExperience Training Materials | 19


9. Investigate all the other tabs of the Application Structure landing page.
10. Close Application Structure landing page.

Task 3: Create rulesets and view how ruleset availability effects the
creation of new rules:
1. Open the Application rulesets by selecting Application: Rulesets > Defintion.
2. Click + Add ruleset twice to add two new rulesets:
a. ParentRS:01-01-01
b. ChildRS:01-01-01

3. Click on the Crosshair icon for both new rulesets referenced. Click Create and Open and
then save them.
4. Note that the default Validation Mode for the new rulesets is Application Validation.
5. Once the new rulesets are saved, return to the Rulesets application (Application: Rulesets)
definition record and click Save.
6. Navigate to the App Explorer, right-click on the Onboarding class and select Create > Data
Model > Property. A new Create Property form appears.
a. Label: leave blank (We are just viewing the Create Property form.)
b. Development branch: Make sure [No branch] is selected. You are not using a
development branch.
c. Select the Rulesets layer.
d. Apply to: TGB-HRApps-Work-Onboarding
e. Add to ruleset: Ensure you can select both ParentRS and ChildRS.

© 2023 Pegasystems ClassroomExperience Training Materials | 20


f. Click Cancel and then OK.

Task 4: Change the validation mode for rulesets


1. Open the Rulesets application and change the Validation mode of Ruleset: ParentRS to
Ruleset Validation and reference ChildRS:01-01-01.

2. Change the Validation mode of Ruleset: ChildRS to Ruleset Validation.


3. Save both the ruleset versions and the Ruleset application. Close all rule tabs.

NOTE: To sum up, ParentRS has only one required ruleset which is ChildRS. ChildRS has one
required ruleset which is Pega-ProcessCommander.

Task 5: Verify your work - Attempt to create rules in different classes


1. Right-click on the Onboarding class and select Create > Data Model > Property.
a. Label: ChildProperty
b. Branch development: Make sure [No branch] is selected. You are not using a
development branch.
c. Select the Rulesets layer.
d. Apply to: TGB-HRApps-Work-Onboarding

© 2023 Pegasystems ClassroomExperience Training Materials | 21


e. Notice that no rulesets are available. Why are ParentRS and ChildRS no longer available?
f. Now change the Apply to class to Work- . The ParentRS and ChildRS should now be
available for selection in the Add to ruleset class. Why are the rulesets available for
Applies to: Work- class but not TGB-HRApps-Work-Onboarding?
g. Select the ChildRS Ruleset.
h. Click Create and Open and Save the rule.

2. Create another property.


a. Label: MainProperty
b. Development branch: Rulesets (Make sure you are using the development branch.)
c. Select the Rulesets layer.
d. Apply to: Work-
e. Add to rulesets: Rulesets

© 2023 Pegasystems ClassroomExperience Training Materials | 22


f. Click Create and open and Save the rule.
3. Right-click on the Onboarding class and select Create > Data Model > Data Transform.
a. Label: ParentDT
b. Development branch: Make sure [No branch] is selected. You are not using a
development branch.
c. Select the Rulesets layer.
d. Apply to: TGB-HRApps-Work-Onboarding. No ruleset should be available.
e. Now change the Apply to class to Work-Cover-. Note the rulesets now available, why?
f. Create the rule in the ParentRS ruleset by clicking on Create and Open.
g. Add a second row to the rule form by clicking on the + icon as shown below.

4. In the Target field, use the SmartPrompt feature to find class appropriate property rules:
a. Place your cursor in the Target field and use your keyboard down-arrow key to view a
list of available properties.

© 2023 Pegasystems ClassroomExperience Training Materials | 23


b. Scroll all the way down and select More… to view more properties higher in the class
hierarchy.
c. Select .ChildProperty in the Target field of row 1 and .MainProperty property in the
Target field of row 2. Relation should be equal to and enter “test” in the Source fields
for both rows. The data transform should look like the following image:

d. Save the rule.

NOTE: Take a moment to digest the red error message on the screen. The .MainProperty
does not exist in the prerequisites for the data transform rule that you are modifying at
design time.

5. Close all tabs without saving the data transform rule.


6. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 24


Merging a development branch
Scenario
The Organization has tasked your team with adding a drop-down selection for the
candidate to enter where they heard about the position.
Use the following credentials to log in to the exercise system:
Role Username Password
Senior Architect Admin@TeamAppDev rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login to begin setting up the team application development
Login as a senior architect to administer team application development.

Task 2: Create a team application and add branch(es)


Create a new team application and branches for “development teams” to work merge
collaborative solutions.

Task 3: Create an Access Group for the team application


Create appropriate Access Group for development team members.

Task 4: Create new rule record in the branch


Add property rule record to a branch.

Task 5: Merge the branched configuration into the main application


Merge branch configuration into the main application.

Task 6: Verify the merged changes are in the main application


Test the newly modified configuration in the main application.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login to administer team application development
1. Log into Dev Studio using the username Admin@TeamAppDev and the password of
rules.

© 2023 Pegasystems ClassroomExperience Training Materials | 25


NOTE: If you see the dialogue box “One journey at a time” click Close. We do not need to
enable this feature for this lab.

Task 2: Create a team application and add branch(es)


1. From the studio header, Application menu, open the TeamAppDev application definition
by selecting Application: TeamAppDev > Definition.

2. Perform a “Save as” of the Application definition by clicking the chevron on the
right of the Save button and select Save as.

TIP: “Save as” creates a new rule record by copying the original rule record values like a
template, essentially “cloning” the rule record. Changing the name/identifier of the clone
and then altering rule content is a fast way to create a new rule instance from the original.

3. For the Label and Identifier of new application record enter TeamAppDevAboutUs.

TIP: Typically, application naming conventions should be meaningful and descriptive of


their purpose. Example: If developing a base application named “Lending”, a team
application might be built for the user interface specialist architects named
“LendingDevUI”.

© 2023 Pegasystems ClassroomExperience Training Materials | 26


4. Click Create and open. When the record is created, two errors will be displayed
immediately. This will be corrected in the next few steps.

5. Scroll down to the Application URL alias area and click the Change URL alias button.

6. Change the end of the URL to TeamAppDevAboutUs and Submit

7. Scroll back up to the Built on applications area and in row 1, delete HRApps from the
Name field and replace it by entering/selecting TeamAppDev.
8. Navigate to the Development branches area of the application record form and use
the trash bin icon to delete the existing branch.
9. Scroll down to the Application rulesets area. In row 1, open the referenced
TeamAppDevRS:01-01 ruleset by clicking the Open icon to the right of the ruleset
name:

© 2023 Pegasystems ClassroomExperience Training Materials | 27


10. The TeamAppDevRS ruleset record form appears. Click the Unlock and Save button.
11. A pop-up form appears. Enter password rules and click the Submit button.
12. DO NOT click ‘Save’ or ‘Lock and Save’ this ruleset record yet.
13. Navigate back to the TeamAppDevAboutUs application definition record.

14. Click + Add Branch.

15. Enter TeamAppDevAbout in the Branch name field to create a new branch and
Submit.

16. Save the TeamAppDevAboutUs application rule record. The record saves successfully
but contains a guardrail warning. Ignore the warning message for now. It can be
reviewed/edited later.
17. Navigate back to the TeamAppDevRS ruleset record.
18. Click Lock and Save.
19. Enter rules in both Password and Confirm Password fields and Submit.

Task 3: Create an access group for the team application


1. Open your current access group record by following these steps:
a. Click the Profile menu. The Profile menu is accessed by clicking the current
operator avatar (circular icon) at bottom of the explorer panel.

© 2023 Pegasystems ClassroomExperience Training Materials | 28


b. Select the Access group option.

2. Make a copy of the Access group (Save As).


3. Update the Short description to Cosmos authors. For the new Access Group Name
enter TeamAppDevAbout:Authors.

4. Click Create and open.


5. Change the Application Name to TeamAppDevAboutUs.

6. Save.
7. Click the operator avatar icon to open the Profile menu and select Operator.

© 2023 Pegasystems ClassroomExperience Training Materials | 29


8. Select Operator from the menu.
9. In the Application Access section, click É to add an access group.
10. Enter TeamAppDevAbout:Authors.
11. Save.
12. Ensure all your work is saved and Close all open rule records in the Dev Studio.

TIP: You can close all saved records at once using the Currently open dropdown menu in
the tab bar and selecting Close all. Any remaining tabs contain unsaved records that can
be saved individually.

13. Log off.

NOTE: It is necessary to log out as your access group has changed. When you log in next with
the same credentials, your new level of access will be available.

Task 4: Create new rule records in the branch


1. Log in again as Admin@TeamAppDev with password rules.
2. Create and run a new Candidate case. (Create > New > Candidate).
3. Notice there is no dropdown field for the candidate to enter where they heard about the
position.

© 2023 Pegasystems ClassroomExperience Training Materials | 30


4. Close the case instance.
5. From the Application menu, select Switch Application > TeamAppDevAboutUs.

6. From the title bar click the Toggle branch development button.

7. Move the slider to turn branch development on.

8. The following appears. From the Branch dropdown ensure that TeamAppDevAbout is
selected and click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 31


9. Open the Candidate case type from the Case Explorer
10. Select the Collect Personal Details step of the Submission stage.
11. In the right context menu click Configure view.
12. Click + Add field.
13. Enter the phrase How did you hear about us? for the Field name.
14. Select Picklist for the Type.
15. Click É Add choice and enter Online Posting.
16. Add 2 more choices, Internal Posting and Newspaper.

© 2023 Pegasystems ClassroomExperience Training Materials | 32


17. Submit the Add field form.
18. Submit the Collect Personal Details Configure view form.
19. Click Save to save the case type.

Task 5: Merge the branched configuration into the main application


1. Open the application record for TeamAppDevAboutUs (click Application from the
header and select Definition from the menu)
2. To display a list of the Branch Content to be merged, Click the branch name
TeamAppDevAbout.

3. From the Actions menu select Merge.

© 2023 Pegasystems ClassroomExperience Training Materials | 33


4. Click Proceed to merge the branch content.

5. The Merge Branches form appears. In the Lock target after merge field, enter rules .

6. Click Merge. A confirmation will appear, ‘All Rulesets successfully merged!’

7. Close the Merge Branches confirmation.

© 2023 Pegasystems ClassroomExperience Training Materials | 34


Task 6: Verify the merged changes are in the main application
1. From the application menu click Switch Application and select TeamAppDev.
2. Create a new Candidate case.
3. Scroll to the bottom of the view to display the field we added from our branch in the
team application.

4. Log off.

Note: The field we added is at the bottom of our view because we added it using a wizard
and did not go into the section and move it. We could have moved the field and it would be
displayed in that manner when we viewed the case in the main application

© 2023 Pegasystems ClassroomExperience Training Materials | 35


Circumstancing rules on a single variable
Scenario
TGB sends an email to a candidate to extend an offer of employment. TGB company policy
gives the candidate 72 hours to respond to the offer. However, Canadian regulations
require that a company allow five business days for a resident of Canada to respond to an
offer.
Customize a version of the offer letter email to send to Canadian candidates to inform the
candidate about the response time frame of five business days.
Create a circumstanced version of the OfferLetter correspondence rule.
For a circumstancing condition, test whether the value of the Country Code property
(.Candidate.pyCountryCode) is CAN.

NOTE: The five-day Canadian regulation is included for exercise purposes only.

Use the following credentials to log in to the exercise system:


Role Username Password
Senior System Architect SSA@Circumstance rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Create a circumstanced version of the Offer Letter correspondence rule


Save a circumstanced version of the Offer Letter correspondence rule.

Task 3: Define the behavior for the circumstance


Update the text of the email for the circumstanced Offer Letter correspondence rule.

Task 4: Confirm your work


Verify the circumstanced Offer Letter correspondence rule is executed correctly.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

© 2023 Pegasystems ClassroomExperience Training Materials | 36


Detailed Steps
Task 1: Login and enable branch development
1. Log into Dev Studio using the username SSA@Circumstance and the password of
rules.
2. From the title bar click the Toggle branch development button.

3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown ensure that CircumstanceBR is
selected and click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 37


Task 2: Create a circumstanced version of the Offer Letter
correspondence rule
1. Switch to Dev Studio, open the Candidate case type.
2. Select the Send Offer Letter step.
3. Click on the crosshair icon to open the Offer Letter correspondence template. In the
pop-up, select the OfferLetter rule.

4. Click Save as > Specialize by circumstance.


5. Configure the circumstancing rule as seen in the following image.

6. Create and open the Correspondence: Offer letter rule form to edit the text.

Task 3: Define the behavior for the circumstance


1. Update the text of the email to read as follows:
Dear <<.Candidate.pyFullName>> ,
We are pleased to offer you the position <<.Position.JobTitle>>, reporting
to <<.Position.Manager>>, at a starting salary of <<.OfferedSalary>>.
Please inform us of your intention to either accept or reject this offer within five
business days.

© 2023 Pegasystems ClassroomExperience Training Materials | 38


We are excited to have you join our organization and look forward to working with
you. If you have any further queries, please do not hesitate to contact us.
Regards,
<<.Position.Recruiter>>
2. Save your changes then Check-in the circumstanced rule.

Task 4: Confirm your work


1. Create a new Candidate case.
2. On the Collect Personal Details form, in the 3-letter country code field, enter CAN.
3. Complete the remaining required fields on the form and click Submit.

4. Advance the case to the Screening stage.


5. In the Stakeholders section of the case, confirm that the candidate is listed as a
stakeholder to ensure the email can be routed to the candidate.

© 2023 Pegasystems ClassroomExperience Training Materials | 39


6. Advance the case to the Offer stage, past the Manager Approval step.

TIP: You may need to refresh the case to display the email attachment.

7. Open the attached email and verify that the content matches the circumstanced version
of the rule. Ensure that the attached email mentions that the candidate has five
business days to accept or reject the offer.

© 2023 Pegasystems ClassroomExperience Training Materials | 40


8. Close the Candidate case.

Note: The Offer Letter was circumstanced using the Country code property set to CAN. When
running the case, the country code was entered as CAN. Hence the circumstanced version of
the Offer letter is displayed to the user.
If the case is created with a different Country code the original Offer letter will be displayed.

9. Log Off.

© 2023 Pegasystems ClassroomExperience Training Materials | 41


Circumstancing rules on multiple variables
Scenario
As a part of the onboarding process, TGB sends an email that provides the employment
start date to each new employee and contractor. This email also reminds the employee or
contractor to bring specific paperwork on their first day at TGB. Business partners in the
Human Resources (HR) department want to customize the emails by country and employee
status to direct the employee to bring the appropriate paperwork on their first day.
Circumstance the Welcome email on two properties: .pyCountryCode and .Contractor. You
need to create three circumstanced versions of the Welcome email as outlined in the
following table.
Contractor Country Code Documents
true USA 1099
false USA W-4
false GBR P45

NOTE: You can also customize the circumstancing conditions for your own countries using the
relevant tax documents.

• Create a circumstance template using the country code and contractor properties
• Create a circumstance definition for each of the scenarios
• Circumstance the Welcome email for each set of conditions and reference the
appropriate tax document in each circumstanced version
Use the following credentials to log in to the exercise system:
Role Username Password
Senior System Architect SSA@Circumstance rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Create a circumstance template


Create a circumstance template using the Employee’s Contractor and Country Code fields.

Task 3: Create circumstance definitions


Create circumstance definitions for US Employee, US Contractor, and GB Employee.

© 2023 Pegasystems ClassroomExperience Training Materials | 42


Task 4: Circumstance an email
Create email correspondence rules using the circumstance template and definitions.

Task 5: Confirm your work


Verify the circumstanced rules are executed correctly.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log into App Studio using the username SSA@Circumstance and the password of
rules.
2. From the title bar click the Toggle branch development button.

3. Move the slider to turn branch development on. Ensure in Branch that
CircumstanceBR is selected and click Submit.

Task 2: Create a circumstance template


1. Switch to Dev Studio. From the Application Explorer, right-click the Onboarding case
type and select Create > Technical > Circumstance Template.
2. Create the circumstance template with the following information.

Property Value

Label ContractorStatusAndCountry

© 2023 Pegasystems ClassroomExperience Training Materials | 43


Apply to TGB-HRApps-Work-Onboarding

3. Configure the circumstancing template as follows.

Property Label

.Employee.Contractor Contractor

.Employee.pyCountryCode Country by Code

4. Save your changes to the circumstance template.

Task 3: Create circumstance definitions


1. From the Application Explorer, right-click the Onboarding case type and
select Create > Technical > Circumstance Definition.
2. Create the circumstance definition with the following information.

Property Value

Label USContractor

Template Name ContractorStatusAndCountry

Apply to TGB-HRApps-Work-Onboarding

3. Set the Contractor value to true and the Country by Code to USA.

4. Save your changes to the circumstance definition.


5. Create a second circumstance definition with the following information.

© 2023 Pegasystems ClassroomExperience Training Materials | 44


Property Value

Label USEmployee

Template Name ContractorStatusAndCountry

Apply to TGB-HRApps-Work-Onboarding

Definition Contractor = false


Country code = "USA"

6. Create a third circumstance definition with the following information.

Property Value

Label GBEmployee

Template Name ContractorStatusAndCountry

Apply to TGB-HRApps-Work-Onboarding

Definition Contractor = false


Country code = "GBR"

Task 4: Circumstance an email


1. Open the Onboarding case type.
2. Select the Send Welcome Packet step to identify the correspondence used to send the
Welcome email.
3. Click the crosshair icon to open the WelcomeEmail correspondence template.

4. In the pop-up, select the WelcomeEmail rule from TGB-HRApps-Work-Onboarding


class.

© 2023 Pegasystems ClassroomExperience Training Materials | 45


5. Click Save as > Specialize by circumstance to create a circumstanced version of the
record.
6. In the Template field, enter ContractorStatusAndCountry.
7. In the Definition field, enter or select USEmployee.

8. Create and open the Correspondence rule form to edit the welcome email text.
9. Add W-4 to the list of documents in the correspondence text.

10. Save your changes and check in the correspondence rule.


11. Repeat steps 5-10 to specialize the WelcomeEmail correspondence template twice -
one for the USContractor and another GBEmployee circumstance definitions.
In each, modify the correspondence template text using the following information
for each circumstance:

© 2023 Pegasystems ClassroomExperience Training Materials | 46


Circumstance Contractor form

USContractor Specify that the employee should bring a 1099 form.

GBEmployee Specify that the employee should bring a P45 form.

Task 5: Confirm your work


1. Create a new Onboarding case.
2. In the Collect Employee Info step, complete the required fields, select Contractor, and
enter USA for the country code.
3. Complete the Identify Home Office and Select Orientation Plan steps.

NOTE: You can specify any values to complete the steps. The input does not impact this
exercise.

4. Open the attached email and verify that the content matches the circumstanced version
of the rule.

NOTE: You may need to refresh the case to display the email attachment.

5. Open the attached email and verify that the content matches the circumstanced version
of the rule.

© 2023 Pegasystems ClassroomExperience Training Materials | 47


6. Create additional cases to test the employee/USA and employee/GBR conditions and verify
that the email content varies based on the Country code and Employee status.
7. LogOff.

© 2023 Pegasystems ClassroomExperience Training Materials | 48


Configuring rule resolution
Scenario
Human Resources (HR) business partners create benefits enrollment and employee evaluation
cases on behalf of TGB employees. To ensure that each case is created for the appropriate
employee, HR business partners have asked that the employee information header area for
each case type match the header used for Onboarding cases. Currently the Employee
Information is presented differently for each case type.

© 2023 Pegasystems ClassroomExperience Training Materials | 49


Save a copy of the EmployeeInformation section from the Onboarding case type into the class
group (TGB-HRApps-Work) and add it to the RuleResolution:01-01-02 ruleset
Withdraw the EmployeeInformation section in the Benefits Enrollment, Employee Evaluation,
and Onboarding case types.
Use the following credentials to log in to the exercise system:
Role Username Password
Senior System Architect Admin@RuleResolution pega

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login
Login.

Task 2: Create a copy of the Onboarding EmployeeInformation section to the TGB-HRApps-Work class
group
Copy the EmployeeInformation section record to the new context

Task 3: Change a rules availability to Withdrawn


Withdraw the EmployeeInformation section record in the Onboarding, Employee Evaluation,
and Benefits Enrollment case types

Task 4: Verify your work


Confirm your work

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Log in
1. Log into App Studio using the username Admin@RuleResolution and the password of
rules.

Note: This lab will not use branching. You will use an existing unlocked ruleset
RuleResolutionRS:01-01-02 instead.

Task 2: Create a copy of the Onboarding EmployeeInformation section to


the TGB-HRApps-Work class group
1. Switch to Dev Studio.

© 2023 Pegasystems ClassroomExperience Training Materials | 50


2. Using the App Explorer, find and open the Onboarding EmployeeInformation section.

3. Note the class this EmployeeInformation section applies to in the title header. The
EmployeeInformation section rule contains an embedded section labeled Information as
seen in the following image.

© 2023 Pegasystems ClassroomExperience Training Materials | 51


4. Click Save as to create a copy of the EmployeeInformation section and Apply to TGB-
HRApps-Work class and into the RuleResolutionRS:01-01-02 ruleset. Be sure the
Development branch field contains [No branch].

5. Click Create and open. Save and check-in the rule.

Task 3: Change rule availability to Withdrawn


1. Navigate back to the tab that has the EmployeeInformation section from the Onboarding
class. Click Save as to create a new version in RuleResolutionRS:01-01-02

TIP: Because RuleResolutionRS:01-01-01 is in a locked ruleset, we cannot modify the


availability of the rule. We need to save a copy of it to an unlocked ruleset to Withdraw it.

2. Click Create and open.

© 2023 Pegasystems ClassroomExperience Training Materials | 52


3. Click on where it states Available to change the status to Withdrawn. Click OK to update
the availability of the section.

Note: Withdrawing the new version prevents Pega Platform™ from using the version of the
rule in the locked ruleset, so Pega Platform uses the version in the TGB-HRApps-Work class
instead.

TIP: If the section fails to load after you open it, click Actions > Refresh to refresh that section.

4. Save and Check in.

© 2023 Pegasystems ClassroomExperience Training Materials | 53


5. Repeat steps 1-4 for the EmployeeInformation section and update the Applies to class to
Employee Evaluation and Benefits Enrollment.

6. To confirm availability of all the rules click Actions > View Siblings
a. In the Siblings display window, set Applies To as TGB-HRApps-Work.
b. Click on Get Related Rules to review all rules that exist with the same name in the
class hierarchy, ruleset, version, and the availability status.

© 2023 Pegasystems ClassroomExperience Training Materials | 54


Task 4: Verify your work
1. Create a new Employee Evaluation case.

2. Use Live UI to select the EmployeeInformation section.

3. Click the crosshairs icon to open the Section rule. Note it is referencing the section in TGB-
HRApps-Work.

© 2023 Pegasystems ClassroomExperience Training Materials | 55


Note: Rule resolution discards the rules that are in a Withdrawn status. In this case, the
“EmployeeInformation” section in the TGB-HRApps-Work class is available and is selected
during rule resolution.

4. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 56


Migrating an application
Scenario
The application needs to be packaged to be moved to the testing environment.
Use the following credentials to log in to the exercise system:
Role Username Password
Admin SSA@ParallelProcessing rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Login.

Task 2: Running the Packaging Wizard


Run the Packaging Wizard.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log in using the credentials SSA@ParallelProcessing and rules.
2. Switch to Dev Studio.

3. Click the Toggle branch development button from the title bar. The following appears:

© 2023 Pegasystems ClassroomExperience Training Materials | 57


4. Move the slider to turn branch development on. From the Branch dropdown ensure
that ParallelProcess is selected and click Submit.

Task 2: Running the Packaging Wizard


5. Select Configure > Application > Distribution > Package.

© 2023 Pegasystems ClassroomExperience Training Materials | 58


6. For the Application step of the wizard, select the RuleSet name
ParallelProcessing_Branch_ParallelProcessing and RuleSet version 01-01-01. This is
where the product rule will be created.

7. Click Next.
8. On the Application stack step, leave the default as your selection. These are the
Applications this Application is built on. Click Next.
9. For the Application dependencies step, no items should be selected. This would show
any dependencies the Application would require to run such as hot fixes. Click Next.
10. For the Organizational elements step, leave the default selection. The Organizational
Structure including organization, division and business unit to be imported into the new
environment. Click Next.
11. For the Access Groups step, leave the default selection. The Authorization access
groups for your Application/Applications are selected. Click Next.

© 2023 Pegasystems ClassroomExperience Training Materials | 59


12. On the Operators step, keep the default selection of Operator IDs. Click Next.
13. For the Work queues step, keep the default selection of Work queues. Click Next.
14. On the Work Groups step, keep the default selection of work groups (application
teams). Click Next.
15. For the Data Tables step, keep the default selection. Click Next.
16. On the Code Archives step, nothing will be selected. Click Next.
17. On the Database storage step, keep the default selection. The information shows the
mapping of application classes to tables in the database. Click Next.
18. On the Integration resources step, a list of integration resources will be visible but
nothing is selected. Keep the default of nothing selected. Click Finish.
19. The following is displayed:

The four buttons represent:


• Preview: Previewing the information being captured.
• Modify: Opens the Rule-Admin-Product rule allowing the user to modify the
selections as needed.
• Export: Creates the package or archive that can be moved to other Pega
Applications.
• Migrate: Opens the migration wizard to move the Archive to different Pega
Systems.
20. Select Export. Enter the name: TestAppMigration. Click OK.

© 2023 Pegasystems ClassroomExperience Training Materials | 60


21. The following error will be displayed as the Ruleset we are trying to package is unlocked.

22. Close the window and return to the last packaging Wizard.

© 2023 Pegasystems ClassroomExperience Training Materials | 61


23. Click Modify to open the Product rule.
24. Check out the rule.
25. Scroll to the bottom of the rule form and select Allow unlocked rulesets versions?

26. Save the changes and check in the rule.


27. Click Create Product File at the bottom of the rule form and enter AppMigrationTest
in the input box.

28. Click OK and after a short while the archive will be created.

© 2023 Pegasystems ClassroomExperience Training Materials | 62


29. Click the Archive created link to download the archive so that it can be imported into
another Pega System.
30. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 63


Case Management

© 2023 Pegasystems ClassroomExperience Training Materials | 64


Overriding Case Urgency
Scenario
Onboarding cases have an initial urgency of 10. However, certain contractors need an
expedited onboarding process because they are hired to work on short-term projects or
projects with a tight deadline or because of unforeseen circumstances. To provide the option
to prioritize certain onboarding cases, add a local action that references the UrgencyUpdate
flow action to the Select Seating Location assignment.
Use the following credentials to log in to the exercise system:
Role Username Password
System Architect Eric@ExtendSLA rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Create a local action to update case urgency


Add a local action to an assignment to allow for urgency updates

Task 3: Verify Work

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log into Dev Studio using the username Eric@ExtendSLA and the password of rules.

NOTE: If you see the dialogue box “One journey at a time,” click Close. We do not need to
enable this feature for this lab.

2. From the title bar, click the Toggle branch development button.

© 2023 Pegasystems ClassroomExperience Training Materials | 65


3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown, ensure that ExtendSLAUS is selected
and click Submit.

Task 2: Add a local action to update case urgency


1. In Dev Studio, select the Onboarding case type from the Case types explorer.
2. In the Onboarding case type workflow, open the Facilities Setup process model to access
the flow canvas.
3. In the upper right of the flow canvas, click Open process.

4. Click the Check out to branch button to open the Check Out to Branch selection window.

5. Ensure ExtendSLAUS is selected in the Branch dropdown control and click the Check out
to branch button to start editing the process

© 2023 Pegasystems ClassroomExperience Training Materials | 66


6. Right-click the Select Seating Location assignment shape on the edit flow canvas, and then
select View Properties to edit the assignment properties.
7. In the Assignment properties dialog box, scroll down to the Advanced section and expand
Local Actions.
8. In the Local Action field, enter or select UrgencyUpdate from the list of available actions.

TIP: Use SmartPrompt (with your cursor in the field, tap the down-arrow key on the keyboard
to see the list of flow actions). Double-click More… to view all inherited actions.

9. Click Submit to close the Assignment properties dialog box.


10. Click Save to save the process.
11. Check In the changes with the comment, Added UrgencyUpdate local action.
12. Close the FacilitiesSetup Flow rule record.
13. Click Save.
14. Select ß Stages & steps to return to the Onboarding case type workflow.

© 2023 Pegasystems ClassroomExperience Training Materials | 67


Task 3: Verify your work
1. Save and run the Onboarding case type, enter values in required fields, and advance until
you arrive at the Equipment Selection stage.
a. Select the Actions menu > Refresh
b. The Select Seating Location step appears.
c. Click Go next to Select Seating Location.
2. Open the Clipboard viewer tool.
3. Select pyWorkPage and confirm the pxUrgencyWork field value is 10.

4. Return to the Select Seating Location view.


5. In the Actions menu, click Assign the employee to a seat > Update case urgency.
6. In the Urgency adjustment field, enter 20.
7. Click Submit to increase the case urgency by 20.
8. Return to the Clipboard tool and click Refresh at the top of the right pane.
9. Select pyWorkPage and confirm the pxUrgencyWork field value is now 30.

© 2023 Pegasystems ClassroomExperience Training Materials | 68


10. Close the Clipboard viewer window.
11. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 69


Configuring parallel processing
Scenario
You want to activate the enrollment of the candidate for every selected course. You will run
in parallel the selection of Hardware & Software facilities and randomly run an audit
process that has no impact on the Onboarding case.
Use the following credentials to log in to the exercise system:

Role Username Password


System Architect SSA@ParallelProcessing rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Log in and enable branch development

Task 2: Implement a Split for Each shape to activate the enrollment for each course
Add a property to the course data type and create the flow and UI to allow HR to enroll the
candidate.

Task 3: Implement a Split Join to parallelize the execution of 2 processes


Make the execution of the Hardware and Software assets selection to run in parallel.

Task 4: Implement a Spin Off flow to audit the Onboarding


Execute a spinoff flow based on a random function.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Log in and enable branch development
Log in using the credentials SSA@ParallelProcessing and rules.
1. Switch to Dev Studio.
2. Toggle branch development and select the ParallelProcess branch and click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 70


Task 2: Implement a Split for Each shape to activate the enrollment
for each course
1. Add a property named Activated of type Boolean to the class TGB-HRApps-Data-
Course.
a. Create -> Data Model -> Property.
b. On the property form enter the label as Activated.
c. Set the context to the HRApps layer.

d. Set the Apply to class to TGB-HRApps-Data-Course.


e. Click the View additional configuration options link to expand options

f. Set Data type to True/False.

© 2023 Pegasystems ClassroomExperience Training Materials | 71


g. Click Create and close to finish creating the property.

2. Open the Onboarding case type.


3. Open the Pre-arrival Setup flow and check it out.
a. Select the Pre-arrival Setup process and click on Open process.

b. Click on Checkout to Branch.

4. Add a Split for Each shape between the Select Orientation Plan assignment and the
Send Welcome Packet utility.

© 2023 Pegasystems ClassroomExperience Training Materials | 72


CAUTION: Do not delete the connector coming out of this shape, because it references a data
transform.

5. Configure the shape as follows:

6. Click on the Crosshair icon next to ActivateEnrollment to create the flow.

NOTE: Make sure you create all the following rules in the branch ParallelProcess and in
the ruleset HRApps and the apply to class being TGB-HRApps-Data-Course:
- Flow
- Flow Action
- Section

© 2023 Pegasystems ClassroomExperience Training Materials | 73


7. Configure the connector after the assignment shape.
a. Right-click on the connector to the right of the assignment shape to open the
Connector properties window. Click the Crosshair icon to create and open the
Flow Action rule.

8. Ensure the rule is in ParallelProcess for Development branch and HRApps Ruleset as
shown below. Click Create and open.

© 2023 Pegasystems ClassroomExperience Training Materials | 74


9. In the Flow Action, enter the Section name as ActivateEnrollment and click on the
Crosshair icon to create and open the section.

10. Ensure the rule is in ParallelProcess for Development branch and HRApps Ruleset as
shown below. Click on Create and Open.

11. Create the section as follows:


a. Change the Template to a 2 column template.
b. Add two Text Input fields in the column A. Click on the Pencil icon of each of these
fields to open the cell properties.
c. The first field should be associated with the .ID, and the second field should be
associated with the property .Description.
d. In column B, add a Text Input field, a Number field (Decimal) and a Checkbox (under
Pickers category). Open the cell properties for each of these fields and change the
property associated with these fields to .Department, .Hours and .Activated
properties as shown below.

© 2023 Pegasystems ClassroomExperience Training Materials | 75


12. Save all of the rules you have update or created.
a. The section, flow action, and the two flows you have updated/created.

Verify
1. Run an Onboarding case.
2. Select any number of courses that you wish.

NOTE: You are presented with an Activate Enrollment screen because no routing has
been configured.

3. After choosing your courses and submitting, on the left, click Actions > Refresh.

4. The To do list should contain as many Activate Enrollment tasks as courses you
selected.

© 2023 Pegasystems ClassroomExperience Training Materials | 76


5. Complete the assignments in any order, it does not matter if you activate or not for our
test purposes.
6. You are presented with the Select Hardware screen after completing the task on the To
do list.

7. Close all the tabs.

Task 3: Implement a Split Join to parallelize the execution of 2


processes
1. Open the Onboarding case type.
2. Open the IT Setup flow rule and Check out.
a. Note the flow has a Select Hardware assignment followed by a Select Software
assignment. This enforces that the first assignment must be completed before the
second assignment is created and assigned. The business has stated that the order
they are completed in is unimportant and that the current flow is delaying selecting
software unnecessarily. We will redesign the flow to use the Split Join shape to
remedy this.

© 2023 Pegasystems ClassroomExperience Training Materials | 77


NOTE: The flow is in the framework, so the ruleset and apply to class are different
compared to the previous exercise.

3. Create two new flows.

NOTE: Make sure you create all the flow rules in the branch ParallelProcess and in the
ruleset HRFW and the apply to class is set to PegaHR-FW-HRFW-Work-Onboarding.
Flow actions and Data Transforms already exist.

a. SelectHardware that contains the Select Hardware assignment and calls the data
transform.

NOTE: The two new Flow rules should be created with the branch, class and ruleset as
shown below:

© 2023 Pegasystems ClassroomExperience Training Materials | 78


b. SelectSoftware does the same thing for software instead of hardware.

4. Return to the IT Setup flow and add Split Join shape to replace the two assignments.

NOTE: Add the Split Join shape. Remove the Select Hardware and Select Software
assignments.

a. Double-click to open the Split Join shape to open the properties window. Enter the
Split Join name as Select Hardware & Software.
b. Click on the > icon to expand the flow rule subprocess section as shown below:

© 2023 Pegasystems ClassroomExperience Training Materials | 79


c. Enter the Name as Hardware, select/enter the flow rule as SelectHardware and
the Case/Supporting Type as Onboarding as shown below:

5. Repeat step 4b and 4c but replace Hardware with Software to reference the Software
flow as shown below and click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 80


6. Save the rule. The new IT Setup flow should look like the following:

Verify
1. Run an Onboarding case.
2. Do not select any courses. This will allow you to skip each selected course's activation
process.
3. You are presented with a Select Software screen.
4. On the left, click Actions > Refresh.

5. The To do list should contain the following:

© 2023 Pegasystems ClassroomExperience Training Materials | 81


6. Close all the tabs.

Task 4: Implement a Spin Off flow to audit the Onboarding


1. Open the Onboarding case type.
2. Create a new AuditOnboardingProcess flow in the implementation layer.
1. Click on App Explorer. Right-click on the Onboarding class and create the Flow
rule.

3. Click Create and open and then Save to save it as is. The flow will be completed outside
the scope of this exercise.

© 2023 Pegasystems ClassroomExperience Training Materials | 82


4. Check out the BenefitsEnrollment_Flow flow into your branch.

5. Add a Decision shape Random Audit? after the create case shape. Configure the shape
property Type with a Boolean Expression.
1. Enter the Boolean expression: @random(1,10)>0
2. The previous expression gives you 100% chances to do an audit so you can play
with the odds and change the value of the test.

6. Add a Subprocess called Audit Onboarding Process to the flow and reference
AuditOnboardingProcess. Check the box for Spinoff flow in the properties of the
subprocess shape.

© 2023 Pegasystems ClassroomExperience Training Materials | 83


7. Your BenefitsEnrollment_Flow should look something like this when configured:

Verify
1. Run an Onboarding case.
2. Do not select any courses. This will allow you to skip each selected course's activation
process.
3. You are presented with a Select Software screen.

NOTE: You may need to perform an Actions > Refresh to see the SelectHardware and
SelectSoftware options in the Actions menu.

© 2023 Pegasystems ClassroomExperience Training Materials | 84


4. Change the stage by selecting Actions > Select Software: Nyota Uh.. > Change Stage.

5. Make sure Next stage is selected in the drop-down and Benefits Enrollment is listed
as the next stage. Click Submit.

6. When presented with the step Review Verification Document, refresh using Actions >
Refresh.
7. The To do list should contain the following:

8. Close all tabs.


9. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 85


Configuring case locking
Scenario
At TGB, candidates applying for an open position are interviewed by three to six existing
employees. Each interviewer can independently rate a candidate in parallel processes. The
Human Resources (HR) department determined that multiple interviewers and all HR personnel
need to access and potentially update the candidate case at any time. Human Resources (HR)
requests that the application prompts the user to reload or close the case without saving if
changes have already been committed by another user. You want to:
1. Run a case with default locking (Allow one user) and check the result from a user portal.
2. Run the same case with optimistic locking (Allow multiple users) and check the result
from a user portal.
Use the following credentials to log in to the exercise system:

Role Username Password


System Architect SSA@CaseLocking rules
Manager Manager@CaseLocking rules

NOTE: In the Pega learning evironment, two browsers have been provided: Chrome and
Firefox. Choose one browser to be logged in as the System Architect and use the other
browser when logged in as the Manager.

Your Assignment
Your assignment consists of the following tasks:
Task 1: Log in and enable branch development
Task 2: Run a case that routes an assignment to a queue
Route an assignment to a queue that multiple users can access. Run the case with default
locking settings.
Task 3: Log in as Manager in a different browser
Find the case created by the system architect
Task 4: Modify the locking settings
Open the case using one operator and try to open the same case using another operator.
Change the default locking setting to optimistic and check the difference from the operator
portals.

© 2023 Pegasystems ClassroomExperience Training Materials | 86


Task 5: Verify the locking strategy

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Log in and enable branch development
1. Choose a browser and log in using the credentials SSA@CaseLocking and rules.
2. In App Studio, toggle branch development and select the CaseLocking branch.

3. Click Submit.

Task 2: Run a case that routes an assignment to a queue


1. From the Case types explorer open the Benefits Enrollment case type workflow.
2. Select the Identify Dependents step.
3. Change Route to dropdown to Work queue and select Default team for TGB queue.

© 2023 Pegasystems ClassroomExperience Training Materials | 87


4. Click the Save and run button to create a Benefits Enrollment case. A New Benefits
Enrollment form appears.

The New Benefits Enrollment form may take a moment to appear if this is the first time running
the Benefits Enrollment case due to rules resolution assemly.

5. Enter your first and last name. Choose Manager@CaseLocking in the Manager field. Enter
any Department of your choice and then choose any Marital Status. Submit the case.
6. Note the Case ID. In the screenshot below, the case ID is B-1. (Your case ID might be
different. You will need this case ID later.)

7. STOP! DO NOT click Go.

Task 3: Log in as Manager in a different browser

NOTE: For the remaining steps you will be using two different browsers.

1. Using a different browser, log in as Manager@CaseLocking. This user has an empty


worklist but has shared access to the Default team at TGB queue.
2. On the second panel from the left, open your Dashboard.

© 2023 Pegasystems ClassroomExperience Training Materials | 88


3. From the top-right corner, click on the Gear icon to edit the dashboard.

4. Under Widgets section on the right, under Slot 1 click + Add widget(s).

4. Find and select the Team work list and Work queues widgets. Click Add Selected.

© 2023 Pegasystems ClassroomExperience Training Materials | 89


5. Click Publish.

6. The case you created earlier is not in your worklist because it was routed to the work queue
Default team for TGB.
7. Scroll your dashboard down to find the Work queues widget. Select Default team for TGB
to open the queue.

© 2023 Pegasystems ClassroomExperience Training Materials | 90


8. Click B-1. (or the appropriate case id identified earlier).

Important: Click the case id under the ID column. Do not click Go.

9. Click Go.

10. Return to the SSA@CaseLocking browser (i.e. Chrome).

© 2023 Pegasystems ClassroomExperience Training Materials | 91


11. Do not refresh the dashboard for SSA@CaseLocking and open the case by clicking Go.

You receive the message B-1 is currently being modified by Brian Norton and may not
be edited simultaneously.

Task 4: Modify the locking settings


1. Return to Manager@CaseLocking browser. Click Cancel, followed by Save and Close.

© 2023 Pegasystems ClassroomExperience Training Materials | 92


2. Click on the Dashboard icon to open the dashboard.

3. Return to the SSA@CaseLocking browser and try to reopen the case assignment. This
should be successful as Manager@CaseLocking is no longer working on the same case.
4. Click on Cancel followed by Save and Close.
5. Review the case lock settings for the Benefits Enrollment case type. Using the explorer
panel in the navigation frame on the left, click Case types and select the Benefits
Enrollment case type.

6. Click the Settings tab. Select the Locking setting. Notice the Benefits Enrollment case
locking strategy is inherited from the parent case type (Onboarding).

© 2023 Pegasystems ClassroomExperience Training Materials | 93


7. Using the Case types explorer, open the Onboarding case type designer.
8. In the Settings tab, change the locking strategy of the Onboarding case type to Allow
multiple users:

Task 5: Verify the locking strategy


1. Click Save and run to create a new Onboarding case. The Employee form appears.
2. On the Employee form, enter valid values for fields all fields:
a. Start Date: enter a future date
b. First Name: enter any name
c. Last Name: enter any name
d. Email 1: enter any email address
e. Manager: use autocomplete to select any available Operator ID from the list (i.e.
Manager@caselocking)
f. Department: enter any value (i.e. Sales)

© 2023 Pegasystems ClassroomExperience Training Materials | 94


3. Click Submit.
4. The Office field is required. Choose any city from the dropdown selections (i.e. Atlanta) and
click Submit.

5. The Courses selection form appears; no fields are required. Click Submit.
6. The Select Hardware form appears, no fields are required. Click Submit.
7. The Select Software form appears, no fields are required. Click Submit.
8. Change the stage by selecting Actions > Change Stage.

© 2023 Pegasystems ClassroomExperience Training Materials | 95


9. Make sure the Next stage is selected in the dropdown, and Benefits Enrollment is listed
as the next stage. Click Submit.
10. The Review Verification Documents form appears. Click Submit.

11. The Certify Verification Documents form appears. Click Submit.

12. The To do list appears indicating a new Benefits Enrollment case has been created. Note
the Benefits Enrollment case ID (i.e.. Click Go to proceed to the Employee form.

© 2023 Pegasystems ClassroomExperience Training Materials | 96


13. All fields will have default values which have been propagated from the Onboarding case
values you entered earlier. Click Submit.

14. The To do list now indicates the Identify Dependents task needs to be completed. Click
Go:

15. You now should be able to open the same Benefits Enrollment case (i.e. B-2)
simultaneously in both browsers, SSA@CaseLocking and Manager@CaseLocking. From the
Manager@Caselocking search for your recent Benefits Enrollment case ID.

© 2023 Pegasystems ClassroomExperience Training Materials | 97


16. Click Go:

17. Login as Manager@CaseLocking on a different browser. Search for the Benefits Enrollment
Case ID (i.e, B-2)
Manager@CaseLocking

© 2023 Pegasystems ClassroomExperience Training Materials | 98


18. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 99


Configuring flow action pre- and post-
processing
Scenario
Currently, the Candidate case type creates a candidate stakeholder to represent a job
applicant and adds the candidate stakeholder to the case at the beginning of the Screening
stage. Candidates are not stakeholders in the case throughout the Submission stage. As a
result, users cannot contact candidates by email while the case is in the Submission stage.
In a future release of the HRApps application, users can save cases after a candidate
provides personal information at the start of the Submission stage. This feature allows
users to contact by email candidates who have not completed the Submission stage. To
support this change, the vice president of Human Resources has asked you to configure the
application to support emailing candidates whose cases have not completed the
Submission stage.
Reconfigure the Collect Candidate Details process to add a candidate as a stakeholder to
the case when the user submits the Collect Personal Details form. After you complete this
change, the Create Candidate Party process in the Screening stage is no longer needed.
• Update the Collect Personal Details flow action so that it runs
the addWorkObjectParty activity as a post-processing action. Use the following activity
parameter values.
Parameter Value
PartyRole Candidate
PartyClass PegaHR-FW-HRFW-Data-Candidate
PartyModel NewParty
Party Repeatable Checked
• Remove the Create Candidate Party process from the Screening stage.
Use the following credentials to log in to the exercise system:

Role Username Password


System Architect Admin@FlowAction rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

© 2023 Pegasystems ClassroomExperience Training Materials | 100


Task 2: Update the Collect Personal Details Flow Action
Add Post-Processing on the flow action to call the activity addWorkObjectParty.

Task 3: Remove the Create candidate process from the Screening stage of the Candidate case life
cycle
The added Post-Processing is replacing the processing of the flow.

Task 4: Confirm the Post-Processing works


Run the case and verify that the pyWorkParty is created and populated in the Clipboard.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log into AppStudio using the username Admin@FlowAction and the password of rules.
2. From the title bar, click the Toggle branch development button.

3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown, ensure that FlowActionBR is
selected and click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 101


Task 2: Update the Collect Personal Info Details
1. Navigate to Dev Studio by clicking on the in the upper left corner of the screen.

2. In the App Explorer expand the Candidate class > Process > Flow and click
the CollectCandidateDetails process.

© 2023 Pegasystems ClassroomExperience Training Materials | 102


3. Right-click the Collect Personal Details connector and select Open Flow Action to open
the CollectPersonalDetails flow action.

4. Click Check Out to check out to the branch FlowActionBR.

5. On the rule form, click the Action tab.


6. In the Post-Processing section, in the Run activity field, select addWorkObjectParty.
7. Click Refresh Parameters and update the parameter values with the values shown in
the following table.

Parameter Value

PartyRole Candidate

PartyClass PegaHR-FW-HRFW-Data-Candidate

PartyModel NewParty

Party Repeatable Checked

When you are done, the section looks like this.

© 2023 Pegasystems ClassroomExperience Training Materials | 103


8. Save the changes and check in the flow action. When a user submits the Collect
Personal Details form, the system adds the candidate to the case.

Task 3: Remove the Create candidate process from the Screening


stage of the Candidate case life cycle
1. Open the Candidate case type.

2. In the case life cycle, in the Screening stage, click the Create Candidate Party process.
3. Click the Delete icon to delete the process.

© 2023 Pegasystems ClassroomExperience Training Materials | 104


4. In the header of the case life cycle, click Save. The Create Candidate Party process is
now from the life cycle of the Candidate case type.

NOTE: When you remove a rule from use in a case type, remember to determine whether the
rule is used elsewhere in your application. If the rule is unused, consider removing the rule
from the application. If the rule exists in a previous ruleset version, we must withdraw the rule
to remove it from the application.

Task 4: Confirm your work


1. Create a Candidate case.
2. Fill in the required values for the first view.

3. Click Submit.
4. Open the clipboard tool and check pyWorkParty embedded in pyWorkPage.

© 2023 Pegasystems ClassroomExperience Training Materials | 105


5. pyWorkParty is populated.

NOTE: The Create Candidate Party process was removed from the case type. However,
since the Candidate “Party role” was added using the addWorkObjectParty as a post-
processing activity, the Candidate details are available after the user enters their Personal
details and click submit.

6. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 106


Updating assignment routing
Scenario
The Human Resources (HR) department wants the ability to add a new hire to the company
payroll. The PegaHR application includes a case type to perform this work. A business
architect has determined that the business process is sufficient for TGB's needs at this time.
However, the process uses a work queue that does not match the organizational structure
at TGB. The Human Resources (HR) department has asked that you create a new work
queue and work group to match the organizational structure at TGB.
Override the default work queue (PayrollReviewWB) used in the Complete enrollment
process of the Payroll Setup case type in the PegaHR application.
To do this:
1. Create a new work group for processing Payroll Setup cases
2. Create a new work queue for routing assignments to review Payroll Setup cases
3. Create a copy of the Complete enrollment process in the TGB-HRApps-Work-
PayrollSetup class. In the new process copy, route the Review
Selections assignment to the new TGBPayrollWB work queue.
Use the following credentials to log in to the exercise system:
Role Username Password
System Architect Oscar@OrgRecords rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Create the work group and work queue records


Create a work group and work queue for routing

Task 3: Update the assignment to route to the new work queue


Update assignment routing using the newly created queue

Task 4: Confirm your work

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

© 2023 Pegasystems ClassroomExperience Training Materials | 107


Detailed Steps
Task 1: Login and enable branch development
1. Log into Dev Studio using the username Oscar@OrgRecords and the password of rules.
2. From the title bar click the Toggle branch development button.

3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown ensure that OrgRecordsUS is
selected and click Submit.

Task 2: Create the work group and work queue records


1. In Dev Studio, create a work group with the following details:

TIP: To create a new work group, select Create > Organization > Work Group, enter values
for short description and name fields followed by clicking the Create and open button.

© 2023 Pegasystems ClassroomExperience Training Materials | 108


Field Value

Work group short description TGB Payroll

Work group name Payroll@TGB

Settings - Manager Manager@TGB

Settings - Default work queue default@TGB

Authorized managers - Manager ID Leave blank

2. Save and close the tab.


3. Create a payroll work queue with the following details:

Field Value

Work queue short description TGB Payroll work queue

Work queue TGBPayrollWQ

General - Type Standard

Organization - Name TGB

Organization - Division Finance

Organization - Unit Accounting

Organization - Work group Payroll@TGB

Contacts Leave blank

Roles Leave blank

TIP: To create a new work queue, select Create > Organization > Work queue.

© 2023 Pegasystems ClassroomExperience Training Materials | 109


4. Save and Close.

Task 3: Update the assignment to route to the new work queue


1. In Dev Studio, open the Payroll Setup case type to display the case life cycle.
2. Select the Review selections step.
3. Configure the contextual menu as shown in the following image.

4. Save your changes.

© 2023 Pegasystems ClassroomExperience Training Materials | 110


Task 4: Confirm your work
1. From the header bar select Launch portal > User portal to launch the User portal.

2. From the left panel select + Create > Payroll Setup to create a new case instance.

3. Complete all the steps in the Payroll Setup case.

4. Once completed select Actions > History.


5. Review the case history to verify the case was assigned to the TGBPayrollWQ (work
queue).

© 2023 Pegasystems ClassroomExperience Training Materials | 111


5. Log Off.

© 2023 Pegasystems ClassroomExperience Training Materials | 112


Data and Integration

© 2023 Pegasystems ClassroomExperience Training Materials | 113


Validating data against a pattern
Scenario
In the Candidate case, TGB provides a view designed to capture the Aadhar ID for
applicants from India as part of the candidate's personal information. As a senior
developer, you will configure an Edit Validate rule to validate entries in the Aadhar ID field
meet the correct pattern.
The valid Aadhar number must satisfy the following conditions:
a. It should have 12 digits, numbers only.
b. It should not start with 0 and 1.
c. It should not contain any alphabet and special characters.
d. It should have white space after every 4 digits.
Use the following credentials to log in to the exercise system:
Role Username Password
Architect author@editvalidate rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Configure the Edit Validate rule


Create Edit Validate rule.

Task 3: Apply the Edit Validate rule to Property


Apply the Edit Validate rule on the advance tab of the property rule.

Task 4: Confirm your work


Confirm the validation.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

© 2023 Pegasystems ClassroomExperience Training Materials | 114


Detailed Steps
Task 1: Login and enable branch development
1. Log into App Studio using the username author@editvalidate and the password of
rules.

NOTE: If you see the dialogue box “One journey at a time” click Close. We do not need
to enable this feature for this lab.

2. From the title, bar click the Toggle branch development button.

3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown ensure that EditValidate is
selected and click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 115


Task 2: Configure the Edit Validate rule
1. Switch to Dev Studio.

NOTE: Creating and editing Edit Validate rules are configured via Dev Studio.

2. Click Create > Data Modal > Edit Validate to create an Edit Validate rule.

3. In the Label field, enter ValidateAadharID.

© 2023 Pegasystems ClassroomExperience Training Materials | 116


4. Click Create and open to accept the remaining default settings and display the
EditValidate rule form.

5. Copy and paste the below Java code on the Java source of the rule form and Save.

Note: There is a text file available from student folder on efilecabinet that you may download
to the lab environment desktop called Edit Validate.txt

// Regex to check valid Aadhar number.

© 2023 Pegasystems ClassroomExperience Training Materials | 117


String regex= "^[2-9]{1}[0-9]{3}\\s[0-9]{4}\\s[0-9]{4}$";
// Compile the ReGex
java.util.regex.Pattern p = java.util.regex.Pattern.compile(regex);
// If the string is empty
// return false
theProperty.addMessage("The correct format is #### #### ####. Only numbers and cannot start
with 0 or 1"); if(theValue==null || theValue.trim().equals("")) return false;
// Pattern class contains matcher() method
// to find matching between given string
// and regular expression.
java.util.regex.Matcher m = p.matcher(theValue);
// Return if the string
// matched the ReGex
return m.matches();

Task 3: Apply the Edit Validate rule


1. Open the Aadhar_Id Property in the PegaHR-FW-HRFW-Data-Candidate class.

© 2023 Pegasystems ClassroomExperience Training Materials | 118


Or use search.

2. Select Checkout to branch.

3. On the advanced tab of the property rule form Select or type ValidateAdaharId under
Use validate.

© 2023 Pegasystems ClassroomExperience Training Materials | 119


4. Save the property rule.

Task 4: Confirm your work


1. Create a Candidate case.
2. On the first form, fill in all required fields *
3. On the Aadhar Id field enter values that violate the edit validate conditions.
4. Click Submit.

NOTE: The valid Aadhar number must satisfy the following conditions:
It should have 12 digits.
It should not start with 0 and 1.
It should not contain any alphabet and special characters.
It should have white space after every 4 digits.

© 2023 Pegasystems ClassroomExperience Training Materials | 120


5. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 121


Sourcing a page property with a keyed data
page
Scenario
You want to change the course selection to allow the selection of only one using the keyed data
page and checking the difference in the clipboard and DB access from the tracers.
Use the following credentials to log in to the exercise system:
Role Username Password
System Architect SSA@KeyedDataPage rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Log in and enable branch development
Task 2: Add the Course data type
Task 3: Modify the course selection in the Onboarding case type
Change the assignment to select only one course from a list sourced from a Data Page
configured to use non-keyed access.
Task 4: Run a case check clipboard and tracer
Run a case and switch between the courses and check the clipboard and the various DB access
using the tracer.
Task 5: Change the data page to keyed access
Modify the configuration of the data page.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Log in and enable branch development
1. Log in using the credentials SSA@KeyedDataPage and rules.
2. Toggle branch development and select the KeyedDataPage branch.

© 2023 Pegasystems ClassroomExperience Training Materials | 122


Task 2: Add the Course data type
1. Switch to Dev Studio.
2. Open the Data types explorer. Click on the chevron on the top right of the explorer and
select Show or hide existing data types.

3. Click on the 1 application link on the top left of the modal dialog.

4. Select HRApps and HR Framework so you can see data types of 3 applications. Click Apply.

© 2023 Pegasystems ClassroomExperience Training Materials | 123


5. From the list of applications displayed, select Course and click OK.

Task 3: Modify the course selection


1. From the Case types Explorer, open the Onboarding case type. Click on the Views tab and
click the Select Orientation Plan view.
2. Delete the property Courses.

© 2023 Pegasystems ClassroomExperience Training Materials | 124


3. Add a Field name named Course with Type as Data reference pointing to the Course Data
object type as follows:

4. Expand Advanced, select Course as the Data page.


5. Expand Parameters set ID as Field in target and ID.

© 2023 Pegasystems ClassroomExperience Training Materials | 125


6. Click Submit.
7. Configure the search by clicking on the gear icon for the new property and set up as
follows:
• Select record using – Search box
• Search in the following fields: ID (required) and Title
• Delete the Hours and Description search fields
• Click Submit twice.

© 2023 Pegasystems ClassroomExperience Training Materials | 126


Task 4: Run a case check clipboard and tracer
1. Run an Onboarding case. Fill in the form and advance the case to the Select Orientation
Plan step.

© 2023 Pegasystems ClassroomExperience Training Materials | 127


2. Select one course and check the clipboard by navigating to the Data Pages > Thread >
D_Course page.

3. Select another course and check the clipboard. The clipboard does not automatically
update so you will need to right click on the Thread node and select Refresh Page to force
a refresh. The new course overwrites the old course on the D_Course data page.

NOTE: You could change the datapage settings to not limit to a single data page and allow to
have one cached page per parameter.

4. Open the Tracer, select Settings and check the box for DB Query setting.

© 2023 Pegasystems ClassroomExperience Training Materials | 128


5. Select another course and check the Tracer.

6. Two blue lines show a call to the database to retrieve the course that is selected.
7. Select another course, and another call is made to the database.
8. Close the tracer window.

Task 5: Change the data page to keyed access


1. Open the property Course.

© 2023 Pegasystems ClassroomExperience Training Materials | 129


2. Open the Data Page D_Course that is referenced.

3. Click Actions > Create.

© 2023 Pegasystems ClassroomExperience Training Materials | 130


4. Enter the Label as Course Keyed. Click Create and Open.
5. Configure the data page as follows:

6. Save the rule.


7. Go back to the course property, where you will update it to use the new keyed datapage.
8. Click Check out on the course property.

© 2023 Pegasystems ClassroomExperience Training Materials | 131


9. Edit the Data Page value to D_CourseKeyed. The newly created data page will not be part
of the auto-complete because it filters on the structure. The property is Page, and the new
Data Page is List.

10. Select .Course.ID from the Keys .ID field as the key.

11. Save and Check in the course property.


12. Create a new onboarding case. Fill in the form and navigate to the Select Orientation Plan
step.
13. Select a course and have a look at the clipboard. The Course property is referring to the
selected item in the D_CourseKeyed.pxResults page list.

© 2023 Pegasystems ClassroomExperience Training Materials | 132


14. Use the Tracer to ensure no database calls are made when selecting a new course.
15. Close all windows and tabs.
16. LogOff.

© 2023 Pegasystems ClassroomExperience Training Materials | 133


6. Click the Parameters tab and remove the ID parameter.

7. Save the rule.


8. Check in the rule.
9. Go back to the course property and enter D_CourseKeyed to update the reference to
the newly created D_CourseKeyed data page. Click anywhere in the rule form.

© 2023 Pegasystems ClassroomExperience Training Materials | 134


10. Click Check out on the course property.

NOTE: The newly created data page will not be part of the auto-complete because it filters on
the structure. The property is Page, and the new Data Page is List.

11. An error message will be displayed indicating that the ID cannot be blank. Select
.Course.ID from the Keys .ID field as the key.

12. Save and Check in the course property.


13. Create a new onboarding case. Fill in the form and navigate to the Select Orientation
Plan step.
14. Select a course and have a look at the clipboard. The Course property is referring to the
selected item in the D_CourseKeyed.pxResults page list.

© 2023 Pegasystems ClassroomExperience Training Materials | 135


15. Test the Tracer to ensure no database calls are made when selecting a new course.
16. Close all windows and tabs.
17. LogOff.

© 2023 Pegasystems ClassroomExperience Training Materials | 136


Adding an external data source to a
data type
Scenario
Requests for roadside assistance must identify the vehicle so that a service provider can
prepare for the service call. For example, certain vehicles may require a flat-bed tow truck
or a higher octane blend of fuel. To better prepare service providers for a service call,
stakeholders want to ensure that users only enter a valid combination of make, model, and
model year for a vehicle. After evaluating several possible sources for vehicle models,
stakeholders decided to source this information from a US National Highway Traffic Safety
Administration (NHTSA) web service available at https://vpic.nhtsa.dot.gov/api.
Replace the current simulated data source with an integration to source the model
information for passenger cars and trucks using a Representational State Transfer (REST)
service provided by the NHTSA. Populate the D_VehiclemodelsList data page with NHTSA
response data, based on the model year and make entered by the user.

Note: NHTSA data includes information on other types of vehicles, such as buses, that are not
supported by GoGoRoad roadside assistance service. To display only relevant vehicle
models, configure the integration to support two calls to the NHTSA service: one for passenger
cars, and one for trucks.

Use the following credentials to log in to the exercise system:

Role Username Password


System Architect admin@ConnectREST rules

Your Assignment
Your assignment consists of the following tasks:

Task 1: Create a data object with an external data source


Task 2: Map the response from the data source
Task 3: Define the endpoint settings for the integration
Task 4: Aggregate the responses from the data source
Task 5: Configure the source data transform
Task 6: Parameterize the data page to configure both service calls
Task 7: Confirm your work

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

© 2023 Pegasystems ClassroomExperience Training Materials | 137


Detailed Steps
Task 1: Create a data object with an external data source
1. Log into Pega using the username Admin@ConnectREST and the password of rules.
2. In the App Studio navigation pane, click Data.
3. In the upper-right corner of the Data objects and integrations landing page,
click New to open the Data Object wizard and create a data object to access the NHTSA
service.
4. In the Data Object wizard, in the Data object name field, enter NHTSADataModel.

5. Click Next to create and configure the data object connection details.
6. In the System drop-down, select Create new. The wizard updates to display additional
fields to define the new data source.
7. In the Name field, enter NHTSA CarPIC.
8. In the Description field, enter NHTSA Product Information Catalog Car Listing.

9. In the Endpoint URL field, enter


https://vpic.nhtsa.dot.gov/api/vehicles/GetModelsForMakeYear/make/Ford/modelyear/
2015/vehicletype/Truck?format=json to specify the URL for the NHTSA web service.

© 2023 Pegasystems ClassroomExperience Training Materials | 138


10. Expand the Parameters section to display the URL parts for the service URL.
11. Using the following table, add parameters for the make, model year, and vehicle type
parts of the service URL.

URL part Parameter name

Ford make

2015 modelyear

Truck vehicletype

12. Click Initialize call to call the REST service and advance to the third step of the wizard.

© 2023 Pegasystems ClassroomExperience Training Materials | 139


Task 2: Map the response from the data source

Note: The response indicates seven results were returned and displays data for one of the
seven results. The number of results returned varies according to the parameters passed to
the service.

1. In the SearchCriteria row of the data mapping dialogue box, click Add new to map the
SearchCriteria field from the REST response to a field for the data object. The contents
of the row update to display the Map to field and a drop-down listing field types.
2. In the SearchCriteria row, click the Add/Edit map to icon to accept the default
mapping and create a text field named SearchCriteria in the data object.

3. Expand Results. Repeat steps 1 and 2 for the Make_Name, Model_Name,


and VehicleTypeName response fields.

© 2023 Pegasystems ClassroomExperience Training Materials | 140


4. Click Next to complete the data mapping and advance to the fourth step of the wizard.

Task 3: Define the endpoint settings for the integration

Note: The NHTSA does not require user authentication to access the service and receive
response data. Other data providers may require authentication. Verify any authentication
requirements when you configure an integration to a web service.

1. Under Endpoint URL, in the Name field, enter GetCarModels_BaseURL to identify the
connection settings.
2. Under Stage, in the Base URL field, enter https://vpic.nhtsa.dot.gov to complete the
URL used after migrating the application to a staging system.
3. Under Prod, in the Base URL field, enter https://vpic.nhtsa.dot.gov to complete the URL
used after migrating the application to a production system.
4. Under Authentication, in the Name field, enter AuthProfile_NHTSA_CarPIC.

© 2023 Pegasystems ClassroomExperience Training Materials | 141


5. Click Submit to complete the configuration of the data object and REST integration.

© 2023 Pegasystems ClassroomExperience Training Materials | 142


Task 4: Aggregate the responses from the data source
1. Switch to Dev Studio.
2. In the Dev Studio navigation pane, click Data types to list the data objects defined for
the GoGoRoad application.
3. Click Vehicle models to open the data type.
4. Click the Sources tab to view available sources and click List Vehicle models to
open the D_VehiclemodelsList data page, which caches a listing of vehicle models.
5. Click Check out.
6. In the Data Sources section, clear the Simulate data source check box to remove the
simulated data source from the data page.
7. In the Source drop-down, select Aggregate sources to source the data page using two
REST calls.
8. In the Aggregate source name field, enter NHTSA CarPIC to identify the data source
for the data page.
9. In the Source drop-down, select Data transform.
10. Click Add source to add a second source for the data page.

© 2023 Pegasystems ClassroomExperience Training Materials | 143


11. In the second Source drop-down, select Data transform.

Task 5: Configure the source data transform


1. For the first source, in the Data transform name field, enter MapCarModel.
2. Click the Open icon to create the data transform.

3. Change the context to No branch. Click Create and open to accept the default settings
and open the data transform rule form.

4. Click the Parameters tab to define the three parameters required by the NHTSA
service.
a. On the Parameters tab, click the Add icon to add a row to define a parameter.
b. In the empty parameter row, in the Name field, enter make.
c. In the Required drop-down, select Yes.
d. Repeat steps 4a-4c to add two more parameters to the data transform, using the
information in the following table.

© 2023 Pegasystems ClassroomExperience Training Materials | 144


Name Required

modelyear Yes

vehicletype Yes

5. Click the Pages & Classes tab to identify the pages used by the data transform and the
class of each page.
a. On the Pages & Classes tab, in the Page name field, enter Primary.pxResults to
identify the page that contains the output of the data transform.
b. In the Class field, enter or select GoGo-GoGoRoad-Data-VehicleModels to
identify the class of the output page.
c. Click the Add item icon to add a second row to the Pages & Classes tab.
d. In the Page name field, enter D_NHTSADataModel.Results to identify the page
that contains the output of the data transform.
e. In the Class field, enter or select GoGo-GoGoRoad-Data-Customer-
NHTSADataModel-Results to identify the class of the output page.

6. Click the Definition tab to configure the data transform logic.

© 2023 Pegasystems ClassroomExperience Training Materials | 145


a. For step 1, in the Action drop down, select Append and Map to to create a new
results page for each result returned. The data transform adds a child row
labeled 1.1 below step 1.
b. For step 1, in the Target field, enter Primary.pxResults.
c. In the Relation drop-down, select each page in.
d. In the Source field, enter
D_NHTSADataModel[vehicletype:param.vehicletype,modelyear:param.mod
elyear,make:param.make].Results to pass the required parameters to the
data page that calls the NHTSA service and caches the response.
e. For step 1.1, in the Target field, enter or select .Make to set the value of the
Make property on the target page.
f. In the Source field, enter or select .Make_Name to identify the property to copy
to the target.
g. Click the Add a row icon twice to add steps 1.2 and 1.3 to the data transform.
h. Complete the fields of steps 1.2 and 1.3 by using the information in the following
table.

Action Target Source

1.2 Set .Model .Model_Name

1.3 Set .VehicleType .VehicleTypeName

7. Click Save to complete the configuration of the data transform.

Task 6: Parameterize the data page to configure both service calls


1. In Dev Studio, click the D_VehiclemodelsList tab to return to the data page rule form.
2. On the D_VehiclemodelsList data page rule form, click the Parameters tab to add
parameters to the data page.

© 2023 Pegasystems ClassroomExperience Training Materials | 146


3. In the empty row, in the Name field, enter make to define a parameter for the make to
pass to the data transform.
4. In the Required drop-down, select Yes to mark the parameter as required.
5. Click the Add item icon to add a second parameter to the data page.
6. In the second row, in the Name field, enter modelyear to define a parameter for the
model year to pass to the data transform.
7. In the Required drop-down, select Yes to mark the parameter as required.

8. Click the Definition tab to resume configuration of the aggregate sources.


9. Below the Data transform name field, click Parameters to open a dialog box for
setting values to pass to the data transform.
a. In the dialog box, in the Value field for the make parameter,
enter param.make to pass the value of the make parameter passed to the data
page.
b. In the Value field for the modelyear parameter, enter param.modelyear to
pass the value of the model year parameter passed to the data page.
c. In the Value field for the vehicletype parameter, enter Truck to pass a constant
string.
d. Click Submit to close the modal dialog and save the parameter configuration.

© 2023 Pegasystems ClassroomExperience Training Materials | 147


10. For the second aggregate source, in the Data transform name field, enter or
select MapCarModel to call the data transform a second time to populate the data
page.
11. Press the Tab key to exit the field. The Parameters link is displayed below the Data
transform name field.
12. Repeat step 9 for the second aggregated source to add parameter values for
the MapModels data transform by using the information in the following table.

Parameter Value

make param.make

modelyear param.modelyear

vehicletype Truck

13. Set the System name to NHTSACarPic.


14. Click Save to complete the configuration of the data page.
15. Click Check in.

Task 7: Confirm your work


1. In Dev Studio, Create a new Assistance Request case.
2. Advance the case to the Identify vehicle step, completing any required fields.
3. In the footer, click the Live UI icon.

© 2023 Pegasystems ClassroomExperience Training Materials | 148


4. On the Vehicle Information section, click the crosshairs icon.

5. Check out the section.


6. On the Model field, click the Edit this field icon to configure the Model drop-down list
to pass the required parameters to the data page. A configuration pane is displayed on
the right side of the browser window.
a. Change the Type to dropdown.

b. In the List source section, select Type Data Page.


c. In the Data page field, enter or select D_VehiclemodelsList to re-select the
page and update the properties pane to display the required parameters.
d. In the Value field for the make parameter, enter or select .Make.
e. In the Value field for the modelyear parameter, enter or select .ModelYear.
f. In the Property for value field, enter or select .Model.
g. Select Group Items check box
h. Enter .VehicleType for Group by value

© 2023 Pegasystems ClassroomExperience Training Materials | 149


i. Click Submit.
7. Navigate back to the tab with the Assistance Request Case. Refresh the case to see
changes. In the Model year field, enter 2015.
8. In the Make field, enter Ford.
9. Click the Model drop-down to display a list of vehicle models, grouped by vehicle type.

© 2023 Pegasystems ClassroomExperience Training Materials | 150


10. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 151


Creating a SOAP Connector
Scenario
Human Resources (HR) business partners use a legacy application to locate discount services
available to employees near their home location. This application requires a longitude and
latitude value to find the discount services. To help facilitate the use of this legacy application,
HR business partners have asked to extend the HR Apps application functionality to identify the
latitude and longitude for a given ZIP code.
Create a SOAP Integration rule and configure a data page to invoke the SOAP connector.
Use the following credentials to log in to the exercise system:
Role Username Password
Architect ssa@connectors rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Create a SOAP integration rule to connect to a ZIP code lookup service
Task 2: Create an XML parse rule to extract the latitude and longitude values from the SOAP
connecter response
Task 3: Create and configure a data page to invoke the SOAP connector
Task 4: Verify your work

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Create a SOAP Integration rule to connect to a ZIP code look up
service
1. Log in to Dev Studio using the following credentials: ssa@connectors/rules.
2. In Dev Studio, click Configure > Integration > Connectors > Create SOAP Integration to
open the New SOAP Integration form.
3. On the New SOAP Integration form, make sure Upload WSDL from URL is selected as the
Load WSDL option.

© 2023 Pegasystems ClassroomExperience Training Materials | 152


4. In the Upload WSDL from URL field, enter
https://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl.

Note: You can copy the URL and test it in another browser tab to ensure no typographical
errors and the service is available.

5. Click Next to proceed to the Select Operations step.


6. Clear any enabled operations check boxes and select LatLonListZipCode to enable the
operation.

7. Click Next to proceed to the Review step.

© 2023 Pegasystems ClassroomExperience Training Materials | 153


8. In the Name field, enter LatLongLkp to provide the class name and identifier for the
service.
9. In the Parent class field, enter or select TGB-Int.
10. Select Connectors in Choose application layer.
11. In the Add to ruleset section, click Existing to enable the Ruleset name and Version
options.
12. Select the highest available Version of the Connectors Ruleset.

13. Click Create to create all the relevant rules for the new SOAP integration.
14. Leave this tab open.

Task 2: Create an XML parse rule to extract the latitude and longitude
values from the SOAP connecter response
1. Under the Integration Details section of the summary page click the newly created data
source LatLonListZipCode to open the new Connect SOAP rule.
2. Click the Check out button to make the rule editable.

3. On the Request tab under Request parameters, verify the Map from Key field is
configured with the .LatLonListZipCodeZipCodeList property.

© 2023 Pegasystems ClassroomExperience Training Materials | 154


4. On the Response tab, in the Response parameters section, in the Map to list, select XML
Parse Rule.
5. In the Map to Key field, enter ParseLatLongResponseXML to provide a name for the new
Parse XML rule.

6. Click the Crosshair icon next to ParseLatLongResponseXML field to create the Parse XML
record.
7. In the Root Element Name field, enter dwml to identify the XML root element from the
service response.
8. From the Add to ruleset list, make sure Connectors and the highest available version is
selected.
9. Click Create and open to create the Parse XML rule.

© 2023 Pegasystems ClassroomExperience Training Materials | 155


10. On the Mapping tab, select dwml and click Add Element to add a new child element.

11. Double-click the _new_ element to open the User Data dialog for the element.
12. In the Node Name field, enter latLonList.

13. In the Property field, enter or select .LatLonListZipCodeListLatLonOut and click OK.

14. Click Save to save your changes to the Parse XML rule.
15. Return to the LatLonListZipCode Connect SOAP rule tab.
16. On the Response tab, in the Response Parameters section, in the Map to Key field, press
your down arrow key and select ParseLatLongResponseXML dwml as the new value.

© 2023 Pegasystems ClassroomExperience Training Materials | 156


17. Click Save to save the SOAP connector rule.

Task 3: Create and configure a data page to invoke the SOAP connector
1. In Dev Studio, click Create > Data Model > Data Page to launch the Data Page Record
Configuration form.
2. In the Label field, enter LatLongLookup.
3. In the Apply to field, enter or select TGB-Int-LatLongLkp-ndfdXML to create the data page
in the same context as the SOAP connector.
4. In the Add to ruleset list, select Connectors and the highest available ruleset version.
5. Click Create and open to create the data page.

6. On the Definition tab, in the Data sources section, in the Type list, select SOAP.
7. In the Name field, enter or select LatLonListZipCode.
8. In the Request Data Transform field, enter LatLongRequest.
9. Click the Crosshair icon to create a new data transform.

© 2023 Pegasystems ClassroomExperience Training Materials | 157


10. Click Create and open the data transform as the form is prefilled.

11. On the Definition tab, configure Step 1 with the following property values.
Property Name Value
Action Set
Target .LatLonListZipCodeZipCodeList
Relationship equal-to
Source Param.ZipCode

12. Click Save to save your changes to the data transform.


13. Click the New tab to continue configuring the LatLongLookup data page.

© 2023 Pegasystems ClassroomExperience Training Materials | 158


14. In the Data sources section, under the Request Data Transform field, click the
Parameters link.

15. In the Parameters for LatLongRequest dialog box, select Pass current parameter page to
enable the parameters for the Request Data Transform and click Submit.
16. Click the Parameters tab add a new parameter that uses the following information:
Field Value
Name ZipCode
Description Please enter a zip code for which you want to fetch
latitude and longitude
Data type String
Required Yes
In/Out In

17. In the Load Management tab, in the Page options section, select Limit to a single data
page check box.

18. Click Save to save your changes to the data page.

© 2023 Pegasystems ClassroomExperience Training Materials | 159


19. Click Actions > Run to run the data page.

20. In the Run window, in the Value field, enter 02142 for the ZipCode parameter.
21. Click Run.
22. Verify the LatLonListZipCodeListLatLonOut property returns the latitude and longitude
coordinate Value for the zip code 42.3758,-71.1187.

Task 4: Verify your work


1. Create a new section in the class TGB-Int-LatLongLkp-ndfdXML named Location.

© 2023 Pegasystems ClassroomExperience Training Materials | 160


2. In the Location section rule, add .LatLonListZipCodeListLatLonOut as a read-only text
field and change the Label Value to Latitude and Longitude.
a. To add a Text field, click on the + icon on the right-hand side panel, and scroll down
to the Data Display section and select Text.
b. Click the pencil icon of the Text field to open the Cell properties window and add the
property and Label value as shown below.

The Section should look like the image shown below:

3. Save the section rule.


4. From the Case types explorer, click on +Add a case type to create a new case type and
name the case type as Location.
5. Edit the stage name to Location Details.
6. Configure the case life cycle to look like the following image:

© 2023 Pegasystems ClassroomExperience Training Materials | 161


7. Click the Location Information step; click on Configure the view on the right pane to add a
ZipCode field to the Location information step.

8. Click Submit.
9. Click Save to save the new case type.
10. Open the Location Information section from the App Explorer, you may need to refresh
Explorer to see the new class.
11. Click the + icon on the right pane and add a Button item from the Actions section. Click on
the pencil icon of the button to open the properties window. Change the Button text to
Check as shown in the image below.

© 2023 Pegasystems ClassroomExperience Training Materials | 162


12. Click on Actions tab in the Cell properties window and configure the Refresh-This section
in Actions to refresh the section and display the .LatLonListZipCodeListLatLonOut
property value when the button is clicked.
a. In the Add an Event, select Click.
b. In the Add an action part, select Refresh. Click Submit.
The Actions configuration should look like the image shown below:

The section with the button should look like the image below:

13. Embed the Location section inside the Location Information section and configure the
embedded section to Use data page as the Page context to pass the Parameter as Value
.ZipCode.
a. Click the + icon on the right pane and select Embedded section from the list.

© 2023 Pegasystems ClassroomExperience Training Materials | 163


b. In the Section Include Modal window, enter the details as shown below and click
Submit.

14. Click Save.


15. Verify your work by creating an instance of the Case life cycle case type.
16. On the Location Information page, enter a ZipCode and click Check to refresh the section
and display the LatLongListZipCodeListLatLonOut property value.

© 2023 Pegasystems ClassroomExperience Training Materials | 164


17. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 165


Managing Application Settings
Scenario
During development, Human Resources (HR) business partners integrate with a legacy
application to identify the latitude and longitude of a provided postal code. As the
application is migrated from a development environment to a staging environment and
then to a production environment, the endpoint URL requires an update.
Using the Application Settings simplify maintenance of the SOAP connector integration
settings, implement the Application settings for endpoint URL, response timeout, and
authentication profile. As the HRApps application is migrated from development to
production, the integration settings can be updated by configuring Application Settings.

NOTE: The endpoint URL used in this exercise does not change, as the SOAP connector URL
used in this challenge is the same across the development phases.

• Create a Category to manage a group of integration settings.


• Create Application Settings to store endpoint URL, response timeout, and
authentication profile.
Use the following credentials to log in to the exercise system:
Role Username Password
Senior System Architect SSA@AppSettings rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Creating a Category


Create a category for the application setting.

Task 3: Creating Application Settings


Create three application settings.

Task 4: Confirm your work


Verify that the correct setting value is returned when an application setting is requested.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

© 2023 Pegasystems ClassroomExperience Training Materials | 166


Detailed Steps
Task 1: Login and enable branch development
1. Log and switch to Dev Studio using the username SSA@AppSettings and the password
of rules.

NOTE: If you see the dialogue box “One journey at a time”, click Close. We do not need to
enable this feature for this lab.

2. From the title bar click the Toggle branch development button.

3. Move the slider to turn Branch development preferences on.


4. The following appears. From the Branch dropdown ensure that AppSettingsBR is
selected and click Submit.

Task 2: Creating a Category


1. In the header of Dev Studio, click Create > SysAdmin > Category to create a category.
2. In the short description text box, enter SOAP connector for latitude and longitude
identification.
3. In the Category name field, enter SOAP connector.
4. Click Create and open to open the category.
5. Associate the rule with the AppSettingsRS ruleset.

© 2023 Pegasystems ClassroomExperience Training Materials | 167


6. Save the category.

Task 3: Creating Application Settings


1. Click Create > SysAdmin > Application Settings to create an Application Settings
Record Configuration.
2. In the Label field, enter Service endpoint URL.
3. In the Owning Ruleset field, enter PegaHR.
4. In the Add to ruleset field, select AppSettingsRS.

5. Click Create and open to open the Application Settings form.


6. In the Category field, press the down arrow key, and then select SOAP connector from
the list.
7. In the Value fields for 2 - Development, 3 - Quality assurance, 4 - Staging, and 5 -
Production, enter the following:
https://graphical.weather.gov:443/xml/SOAP_server/ndfdXMLserver.php

© 2023 Pegasystems ClassroomExperience Training Materials | 168


NOTE: You can edit the production level values if the specified value changes for different
environments.

8. Save your changes to the Application Settings.


9. Repeat steps 1-8 to create two new Application Settings with the details in the following
table.

Label Value for Production level

Response timeout 120000

Authentication profile <blank>

NOTE: You may use the Save as approach to create the Application Settings. If you choose
this approach, make sure to check in the record.

Task 4: Confirm your work


1. In the header of Dev Studio, locate the search field and enter
D_pxGetApplicationSettingValue. Click the link to open the
D_pxGetApplicationSettingValue data page of Pega-RulesEngine.

2. Click Actions > Run to open the Run window.

© 2023 Pegasystems ClassroomExperience Training Materials | 169


3. In the OwningRuleset field, enter PegaHR.
4. In the Purpose field, enter ServiceEndpointURL.
5. Under the Parameter field, select the Flush all instances of this page before
execution check box to clear old data from the system cache.
6. In the window header, click Run to test the data page.
7. In the Run window, in the Results section, confirm that the pySettingValue in the Value
field is https://graphical.weather.gov:443/xml/SOAP_server/ndfdXMLserver.php.

8. Repeat steps 3-7 to confirm the pySettingValue value by using the details in the
following table.

Purpose pySettingValue

ResponseTimeout 120000

AuthenticationProfile <blank>

9. In App Studio navigation menu, select Settings > Application settings.


10. Verify that the application settings are shown and available for edits.

© 2023 Pegasystems ClassroomExperience Training Materials | 170


11. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 171


Configuring error handling for data pages
Scenario
As part of each candidate case, TGB performs a background check on the applicant. As part of
the background check, a SOAP connector is invoked to retrieve a credit report from a credit
check provider. If something goes wrong when the SOAP connector is invoked, TGB wants to
log errors and display the message Credit Check unavailable: contact your system
administrator to the user.
To accomplish this functionality, configure the CreditCheck connector for
the D_CreditReport data page, detect errors and invoke a reusable error handling data
transform from the response data transform, and verify that all errors are detected and
handled in the error handling data transform.
The following table provides the credentials you need to complete the exercise.
Role Username Password
Senior System Architect SSA@ErrorHandling rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Source the D_CreditReport data page with the CreditCheck connector
Remove the simulation and source the data page with the CreditCheck connector.

Task 3: Create reusable error handling data transform


Create a reusable master error handling data transform using pxErrorHandlingTemplate.

Task 4: Configure the CreditCheckResponse data transform with ErrorHandlingMaster


Configure the CreditCheckResponse data transform to call ErrorHandlingMaster when an error
is encountered.

Task 5: Configure an error message in UI


Configure an error message to be displayed in the UI when an integration error occurs.

Task 6: Confirm your work


Verify that the error message appears in the UI, clipboard, and log file.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

© 2023 Pegasystems ClassroomExperience Training Materials | 172


Detailed Steps
Task 1: Login and enable branch development
1. Log into Dev Studio using the username SSA@ErrorHandling and the password of rules.

NOTE: If you see the dialogue box “One journey at a time”, click Close. We do not need to
enable this feature for this lab.

2. From the title bar click the Toggle branch development button.

3. Move the slider to turn branch development on.


4. The following appears. From the Branch dropdown ensure that ErrorHandlingBR is
selected and click Submit.

Task 2: Source the D_CreditReport data page with the CreditCheck


connector
1. Click on the Data types explorer and then expand Credit Report.

© 2023 Pegasystems ClassroomExperience Training Materials | 173


2. Click on Credit Report to open D_CreditReport.
3. On the Credit Report data page, click the Definition tab to view the data sources.

4. In the Data Sources section, disable data simulation.

5. Under the Request Data Transform field, click Parameters to verify that Pass current
parameter page is selected to ensure that the TIN (Tax identification number) is passed to
the request data transform.

© 2023 Pegasystems ClassroomExperience Training Materials | 174


6. Under the Response Data Transform field, click Parameters to verify that Pass current
parameter page is selected to ensure that the Case ID is passed to the response data
transform.
7. Save the D_CreditReport data page.

NOTE: Ignore the warnings at the top of the rule form.

Task 3: Create reusable error handling data transform


1. Use the search field in Dev Studio header to search for and open the
standard pxErrorHandlingTemplate data transform.
2. Create a copy (click Save as) of the Data Transform: pxErrorHandlingTemplate and use
the Label ErrorHandlingMaster.
3. Click Create and open.

4. On the Parameters tab, click the + icon to add a parameter as pyCaseID for the Name.
5. Mark the pyCaseID parameter as Required.

© 2023 Pegasystems ClassroomExperience Training Materials | 175


6. On the Definition tab, right-click step 2, and then select Enable to get messages using
the pxGetPageMessages function.

7. Right-click step 4, and then select Enable to enable the step to use
the pxClearMessages function to clear the messages before adding your custom error
message on the data page.
8. Right-click step 6 and select Enable to use the pxAddMessageToPage function.
9. In the Source field of step 6, enter
@(Pega-RULES:Default).pxAddMessageToPage(param.getMessage + " for case number "
+ param.pyCaseID).

© 2023 Pegasystems ClassroomExperience Training Materials | 176


10. Right-click step 8 and select Enable to use the pxLogMessage function to write messages in
the log file.
11. In the Source field of step 8, enter
@(Pega-RULES:Default).pxLogMessage(param.getMessage + " for case number " +
param.pyCaseID).

NOTE: You always need to specify a target, even if the function does not return anything or if
you are not interested in the response.

12. Save the ErrorHandlingMaster data transform.

Task 4: Configure the CreditCheckResponse data transform with


ErrorHandlingMaster
1. Go back to the open tab for the D_CreditReport data page and open
the CreditCheckResponse in Response Data Transform by selecting the crosshair icon
next to its name.

2. Right-click step 2 and select Enable to ensure that the pxDataPageHasErrors when rule is
invoked to check for errors.

© 2023 Pegasystems ClassroomExperience Training Materials | 177


3. Configure the CreditCheckResponse data transform to apply the
ErrorHandlingMaster data transform if an error occurs by replacing the value in step 2.2
with ErrorHandlingMaster as shown below.
4. Click the Gear icon to specify the input parameters for the ErrorHandlingMaster data
transform.

5. In the pyCaseID input Parameter field, enter param.CaseID and click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 178


6. Save the CreditCheckResponse data transform.

Task 5: Configure an error message in UI


1. In the Application Explorer, under the Candidate case type, expand User Interface >
Section and then click on BackgroundCheck to open the BackgroundCheck section rule.
2. Click Section - Details to open the Details section rule.

3. On the Template configuration menu, click Add (+) > Data Display > Label to append a
label to the dynamic layout.

© 2023 Pegasystems ClassroomExperience Training Materials | 179


4. In the dynamic layout, click the new label field to configure the cell properties for the new
label.
5. Use the following information to complete the General form.

Property Value

Value Credit Check unavailable: contact your system administrator

Visibility Condition (when rule)

Condition for visibilty hasMessages

© 2023 Pegasystems ClassroomExperience Training Materials | 180


6. Click the Presentation tab, and in the Label format field, select Error Message.

7. Click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 181


8. Save the Details section rule.

Task 6: Confirm your work


1. In Dev Studio, on the Configure menu, click Integration > Connectors > Connector
Definitions & Simulations to open the Integration: Connectors landing page.

2. Click Disable Simulations to disable any running simulations.


3. Create a new Candidate case.
4. Complete the Submission stage.

NOTE: You can specify any values to complete the steps. They do not impact this exercise.

5. Click Go to open the Conduct phone screen view.


6. In the Conduct phone screen view, click Submit to advance the case to the Approval
assignment.
7. Click Go to open the Approval view.
8. In the Approval view, click Approve to advance the case to Background check assignment.
9. Click Go to open the Background Check view.

NOTE: The SOAP connector in this exercise is configured to always generate an error.

10. The Credit Check unavailable: contact your system administrator message indicates
that the system executed the error handling data transform.

© 2023 Pegasystems ClassroomExperience Training Materials | 182


11. Open the Clipboard and navigate to the D_CreditReport data page.

NOTE: The error message displayed includes the Case ID.

12. In Dev Studio, on the Configure menu, click System > Operations > Logs to open the logs
of the system.
13. Click Log files to open the Log Files window.
14. Click the PEGA log file to open the PegaRULES.log file.

© 2023 Pegasystems ClassroomExperience Training Materials | 183


15. Scroll (horizontally) through the log file to the end to see more details on the error
message.

TIP: You can search the log file with Case ID displayed in step 11.

16. Close the log file.


17. Log off the system.

© 2023 Pegasystems ClassroomExperience Training Materials | 184


Accessing a Pega application using the
Pega API
Scenario
The IT department is adding the ability for users to work on an internal portal. They
submitted a requirement to display open positions within TGB to portal users. You have
been assigned to test the API calls to the HRApps application.
Use the Pega API landing page to query the data page D_PositionList to return a list of all
open positions.
Use the following credentials to log in to the exercise system:

Role Username Password

Architect Admin@APIPega rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login
Login.
Task 2: Access a Pega application using the Pega API
Use the Pega API to connect with the application.

Detailed Steps
Task 1: Login and access the Pega API resources
1. Log into AppStudio using the username admin@apipega and the password of rules.

After logging in selecting the Pega API link will open Pega Platform with https://. This
removes the requirement to change the URL during Task 1 starting at step 5. After Task 1
step 3 move on to Task 2

2. Switch to DevStudio. From the title bar click the Resource Menu button.

3. Select Pega API from the menu.

© 2023 Pegasystems ClassroomExperience Training Materials | 185


4. A new tab will open in the browser.

5. In the new browser tab change the URL with the following:
a. Add https:// before localhost
b. Change the port number from 9080 to 8443.

6. A page stating the connection is not private will display.


7. Click Advanced.

© 2023 Pegasystems ClassroomExperience Training Materials | 186


8. Click Proceed to localhost(unsafe).

9. The Pega API resource page will load with a list of services that can be connected to.

© 2023 Pegasystems ClassroomExperience Training Materials | 187


Task 2: Access a Pega application using the Pega API
1. In the Application category, in the data section, click /data/{ID} to query a data page.

2. In the Value field, enter D_PositionList to display a list of all open positions.

© 2023 Pegasystems ClassroomExperience Training Materials | 188


3. Scroll down and click Try it out! to retrieve the data from the data page.
4. When prompted for credentials, enter the username admin@apipega and
password rules.
5. Observe the resulting JSON response in the Response Body section of the landing page.
Below "pxResults", three positions are displayed as available.

6. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 189


Reporting

© 2023 Pegasystems ClassroomExperience Training Materials | 190


Create a report that combine data from
multiple classes
Scenario
The business partners in the Human Resources (HR) department have requested two
reports.
The first report must track the progress of candidate cases generated in the HRApps
application. This report must return a list of open cases and display the status, urgency,
assigned workbasket, and current task for each case.
The second report must comply with government regulations that require employees to
enroll in a health insurance plan. For each onboarding case, this report must return the last
name of the associated employee, the ID of the benefits enrollment child case, the current
status of benefits enrollment child case, and the medical insurance plan that the employee
selects.
Use the following credentials to log in to the exercise system:
Role Username Password
Senior System Architect Admin@CreateReports rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Create a report that joins classes referencing an association rule


Create a report that joins classes referencing an association rule.

Task 3: Create a report that uses a class join in the report definition
Create a report that uses a class join in the report definition.

Task 4: Confirm your work


Confirm your work.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

© 2023 Pegasystems ClassroomExperience Training Materials | 191


Detailed Steps
Task 1: Login and enable branch development
1. Log in using the username admin@CreateReports and the password of rules and
navigate to Dev Studio.
2. From the title bar, click the Toggle branch development button.

3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown, ensure that CreateReportsBR is
selected and click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 192


Task 2: Create a report that joins classes referencing an association
rule
1. Switch to Dev Studio. In the App Explorer, right-click the Candidate case type and select
Create > Reports > Report Definition.
2. In the Label field, type Candidates by workbasket in the field. Click Create and Open.
3. Under the Edit columns section, in the Column source and Column name fields, enter
the following values:

TIP: Click +Add column for additional rows.

Column source Column name


.pyID Case ID
.pyStatusWork Work Status
pxWorkbasketAssignments.pxAssignedOperatorID Workbasket ID
pxWorkbasketAssignments.pxUrgencyAssign Urgency of Assignment
pxWorkbasketAssignments.pxTaskLabel Task Label

NOTE: You are using the pxWorkbasketAssignments prefix to identify the properties in the
Assign-Workbasket class you want to use in the report. Selecting one of the three properties
with the pxWorkbasketAssignments prefix adds an association rule to the report.

4. After you enter the values, verify the columns look like the following image.

5. Click Save to save your report definition.

Task 3: Create a report that uses a class join in the report definition
1. In the App explorer, right-click the Onboarding case type and select Create > Reports >
Report Definition.

© 2023 Pegasystems ClassroomExperience Training Materials | 193


2. In the Label field, type Employee medical selection in the field, then click Create and
Open.
3. Click the Data Access tab.
4. In the Class joins section, click Add class join to add a row.
5. In the Prefix field, enter BE to create a prefix for benefits enrollment cases; use this
prefix to reference properties in the Benefits Enrollment class.
6. In the Class name field, enter TGB-HRApps-Work-BenefitsEnrollment. This is the class
to which you want to join the report class.
7. Keep the default value in the Type field- Only include matching rows.
8. At the end of the row, click Edit conditions to display the Enter filter conditions dialog
box.
9. In the Column field, enter BE.pxCoverInsKey.
10. In the Relationship field, leave the default value is equal.
11. In the Value field, enter .pzInsKey.

12. Click Submit to save your filter condition and close the dialog.
13. Click the Query tab.
14. In the Edit columns section, enter the following Column source and Column
name values. Use the BE prefix to find properties in the TGB-HRApps-Work-
BenefitsEnrollment class you want to use in the report.

Column source Column name


.pyID Onboarding Case ID
.Employee.pyLastName Last Name
BE.pyStatusWork Benefits Enrollment Work Status
BE.pyID Benefits Case ID
BE.MedicalPlan.Name Plan name

15. After you enter the values, verify the columns look like the following image:

© 2023 Pegasystems ClassroomExperience Training Materials | 194


16. The Employee Medical Selection report references the Case ID (pyID) of two case types
(Onboarding & Benefits Enrollment) but uses the same label of Case ID. A best practice
with a report is to eliminate duplicate headers.
17. Click Save to save your report definition.

Task 4: Confirm your work


1. To verify your configuration of the report that joins classes referencing an association
rule, in the Candidate case type, click the open tab for the Candidates by
workBasket report definition.
2. In the header of the rule form, click Actions > Run to generate the report.
3. Verify that the report lists the cases, case work status, the workbaskets with which the
cases are associated, the current assignments, and assignment urgency. Click the x to
close the report.

NOTE: If you don’t see any results when clicking on Actions > Run, close the report. Go to the
Create menu and create two or three Candidate cases; then return to the Report Definition
and click on Actions > Run to view the results.

4. To verify your configuration of the report that uses a class join, in the Onboarding case
type, click the open tab for the Employee medical selection report definition.
5. In the header of the rule form, click Actions > Run to generate the report.
6. Verify that the report includes the case ID and the last name of the employee associated
with the Onboarding case type and lists the case work status of the employee's benefits
enrollment case, the case ID, and the selected medical plan name of the joined Benefits
Enrollment case type. Click X to close the report.

NOTE: If you don’t see any results when clicking on Actions > Run, close the report. Go to the
Create menu and create two or three Onboarding cases and associated Benefits Enrollment
cases; then return to the Report Definition and click on Actions > Run to view the results.

© 2023 Pegasystems ClassroomExperience Training Materials | 195


7. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 196


Access Control

© 2023 Pegasystems ClassroomExperience Training Materials | 197


Securing an application using role-based
access control
Scenario
In the Employee Evaluation case, TGB provides an optional, case-wide action to update an
employee’s goals. The Human Resources (HR) department requires that some HR business
partners can run the UpdateGoals action at any time.
Create privilege, role and access group and then add update UpdateGoals flow action.
Use the following credentials to log in to the exercise system:
Role Username Password
Senior System Architect rbac@tgb rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and Create Access Group, Operator and Role
Create and configure the privilege and roles

Task 2: Add a privilege to the UpdateGoals flow action


Task 3: Confirm your work

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and Create Access Group, Operator and Role
1. Log in username rbac@tgb and the password of rules.
2. From the header select DEV STUDIO to switch to Dev Studio.

3. From the operator menu open the Access group.

© 2023 Pegasystems ClassroomExperience Training Materials | 198


4. Click on Save as and enter the Short description and Access Group Name as shown
below. Click Create and Open.

5. Under Available portals select the radio button for Developer to make dev studio the
portal.

6. In the Available roles section, click on the + icon and add a new role RBAC:HR.

© 2023 Pegasystems ClassroomExperience Training Materials | 199


7. Click on the Target icon to create the role.

8. Click on Create and open.

9. Save the Access Role Name.

© 2023 Pegasystems ClassroomExperience Training Materials | 200


10. Check out the rule and click on the + to add a new row.

11. Select PegaHR-FW-HRFW-Work-EmployeeEvaluation under the Class.

12. Enter 5 for all the Access Controls.

© 2023 Pegasystems ClassroomExperience Training Materials | 201


13. Scroll down to add Privileges. Click on the + icon to add a privilege.

14. Under the Name enter UpdateGoals and 5 for the Level.

15. Click on the Target icon next to Name field to create the privilege.

© 2023 Pegasystems ClassroomExperience Training Materials | 202


16. Click on Create and open.

17. Save the Privilege rule.

18. Return to the previous tab and save the access Role Object.

© 2023 Pegasystems ClassroomExperience Training Materials | 203


19. Verify the changes on the Access Role Name.

20. Return to Access Group: RBAC:HR and save the rule.


21. From the Operator menu, click on Operator option to open the Operator ID record.

22. In the Application Access section add the RBAC:HR in the Access Group.

© 2023 Pegasystems ClassroomExperience Training Materials | 204


23. Save the changes.

Task 2: Add a privilege to the UpdateGoals flow action


1. Search for UpdateGoals flow action in the PegaHR-FW-HRFW-Work-
EmployeeEvaluation class.

2. Click Save as in the Flow Action Record Configuration to save the rule in the Add to
RuleSet as RBAC and 01-01-01 as shown below and click Create and Open.

3. On the Security tab in the Privilege name field, enter UpdateGoals.

© 2023 Pegasystems ClassroomExperience Training Materials | 205


5. Save the changes and ensure that the rule is checked in.

Task 3: Confirm your Work.


1. Create a new Employee Evaluation case.
2. Click Actions and verify that the Update Goals action is unavailable on the menu.

3. From the Application menu, switch to the RBAC(RBAC HR) application.

4. Create a new Employee Evaluation case.


5. Click Actions and verify that the Update goals action is available on the menu.

© 2023 Pegasystems ClassroomExperience Training Materials | 206


NOTE: Privilege was granted to the RBAC:HR access group to the UpdateGoals flow action.
Hence the Update Goals action is available when we switch to the RBAC:HR application.

6. Log out.

© 2023 Pegasystems ClassroomExperience Training Materials | 207


Securing an application using attribute-
based access control
Scenario
The Human Resources (HR) department is required to prevent unauthorized access to sensitive
personal information. To satisfy this requirement, the HR department must mask the TIN from
all users unless they are the user who originally created the candidate data or a member of the
HR or Recruiting unit. In addition, the field must be editable on the first step of the case life
cycle so that users can enter their TIN on the form. To accomplish this, we will configure the
following:
Create an access control policy condition for the Candidate case type. Configure the condition
to perform the following tests.
• Create an Access When record to test if the user is a member of either the Recruiting or
HR org units. Then apply the Access When record to the access control policy condition.
• Create a policy condition to test whether the property pxCreateOperator is null or a the
same as the current operator.
• Update the Collect Candidate Details process to set a value of the
property pxCreateOperator once the user completes the Collect Personal Information
assignment
Create an access control policy for the Candidate case type. Configure the policy to mask all
numbers of the TIN property if the access control policy is not met.
Use the following credentials to log in to the exercise system:
Role Username Password
Architect ssa@abac rules
User user@abac rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

© 2023 Pegasystems ClassroomExperience Training Materials | 208


Task 2: Create the access control policy condition record
Task 3: Create the Access When rule
Task 4: Complete the Access Control Policy Condition rule
Task 5: Create the access control policy record.
Task 6: Update the creatin flow to update the Candidate data objects Create Operator property
Task 7: Verify your Work.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log into Dev Studio using the username ssa@abac and the password of rules.
2. From the title bar click the Toggle branch development button.

3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown ensure that ABAC_US is selected and
click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 209


Task 2: Create the Access Control Policy Condition record
1. From the Create menu, select Security > Access Control Policy Condition to open the
Create Access Control Policy Condition form.

2. On the Create Access Control Policy Condition form, in the Label field, enter HR or
Recruiting. In the Apply to field, enter PegaHR-FW-HRFW-Data-Candidate. This is to create
a policy condition rule in the same class as the property. Click Create and open to open the
Access Control Policy Condition record.
3. In the Conditional Logic section, click + Add conditional logic to create a test condition.
4. In the WHEN field, enter WhenHROrRecruiting and click the Crosshair icon to open a
Create Access When form.

© 2023 Pegasystems ClassroomExperience Training Materials | 210


Task 3: Create the Access When rule
1. On the Create Access When form, click Create and open to create the Access When
record.
2. On the Pages & Classes tab set the Page name to: OperatorID.
Set the Class as Data-Admin-Operator-ID.

NOTE: By setting the Page name you will be able to use the down arrow in the following steps
to activate the selection of the values.

3. Enter the below conditions on the Advanced tab.


a. OperatorID.pyOrgUnit = “HR”
b. OperatorID.pyOrgUnit = “Recruiting”
c. Set the condition Logic string to A OR B.

© 2023 Pegasystems ClassroomExperience Training Materials | 211


4. Click Save to complete the configuration of the Access When record.

Task 4: Complete the Access Control Policy Condition rule


1. Return to the tab that has the HROrRecruiting access control policy condition record (tab is
still labelled “New”).
2. On the Pages & Classes tab set the Page name as OperatorID and the Class as Data-
Admin-Operator-ID.

3. Switch back to the Definition tab of the rule.


4. In the Policy Conditions section, in the Column source field, enter or select
.pxCreateOperator. From the Relationship dropdown list, select Is null.
5. Click + Add Condition, in the Column source field, enter .pxCreateOperator. From the
Relationship dropdown list, select Is equal and in the Value field type
OperatorID.pyUserIdentifier.
6. In the Conditional Logic section, under OTHERWISE, in the Permit access if field, enter A
or B to apply the condition if the Access When record returns a result of false.

© 2023 Pegasystems ClassroomExperience Training Materials | 212


7. Click Save to complete the configuration of the access control policy condition.

Task 5: Create the access control policy record.


1. From the Create menu, select Security > Access Control Policy to open the Create Access
Control Policy form.

2. On the Create Access Control Policy form, in the Label field, enter Restrict TIN.
• From the Action dropdown list, select PropertyRead to apply the policy condition
when reading a property value.
• In the Apply to field, enter PegaHR-FW-HRFW-Data-Candidate to create the policy
in the same class as the Tax Identification Number property, .pyTIN.
• Click Create and open to open the Access Control Policy record.
3. On the Access Control Policy record, in the Permit access if field, enter or select
HROrRecruiting to apply the HR or Recruiting access control policy condition.
4. Add a property restriction that applies when full access is not granted by the Access
control policy condition rule

© 2023 Pegasystems ClassroomExperience Training Materials | 213


a. Click + Add Property.
b. In the Property field, enter or select .pyTIN to apply the policy to the TIN field.
c. From the Restriction Method dropdown list, select Mask all but last ‘N’ to apply a mask to
all but the last four digits of the TIN.

5. Click the Gear icon to open the Masking and Formatting Options dialog.

6. In the Masking and Formatting Options dialog, confirm that the following options are set:
a. Masking character: *

© 2023 Pegasystems ClassroomExperience Training Materials | 214


7. Number of unmasked characters: 4

8. Click Submit to close the Masking and Formatting Options dialog and return to the access
control policy record.
9. Click Save to complete the configuration of the access control policy.

Task 6: Verify your Work.


1. In Dev Studio, from the App Explorer, click Candidate > Process > Flow >
CollectCandidateDetails to open the Collect Candidate Details process
2. Check out the flow rule to the branch
3. In the Collect Candidate Details flow, double-click the Collect Personal Details connector to
open the Connector properties dialog.
4. In the Set Properties section, in the Name field, enter or select
.Candidate.pxCreateOperator to set the value of the pxCreateOperator property on
the Candidate page.
5. In the Value field, enter or select .pxCreateOperator to copy the value of
the pxCreateOperator property from pyWorkPage.
6. Click Submit to return to the Collect Candidate Details process.
7. Save your changes.

Task 7: Verify your Work.


1. Create a New Candidate case. On the Candidate form, in the Taxpayer Identification
Number (TIN) field, enter 11-1234567 (The actual numbers are used are not important,
but it must match the pattern).

© 2023 Pegasystems ClassroomExperience Training Materials | 215


2. Click Submit through each of the creation screens.
3. Click Go to open the Conduct phone screen assignment.

4. Confirm that the Taxpayer Identification Number (TIN) field displays.

IMPORTANT: Make a note of the Case ID as you will need it in the following steps.

© 2023 Pegasystems ClassroomExperience Training Materials | 216


5. Log off and Login as user@abac using the password rules.
6. Open the case we just created.

TIP: If you click on the App explorer and a class, the object search will bring back a list of
instances. If you click on an instance, it will open in a new tab.

7. Open the Conduct phone screen assignment


8. Confirm that the Taxpayer Identification Number (TIN) field displays *4567

Note: user@abac is not part of the HR or Recruiting units and was not the creator of the
Candidate data and therefore can not see the full TIN

© 2023 Pegasystems ClassroomExperience Training Materials | 217


9. Create a new Candidate case by repeating steps 1 through 5. Observe that you can see the
full TIN because the current user is the create operator for the candidate.
10. Log off and Login as ssa@abac using the password rules.
11. Open the case that you last created in the previous steps. Observe that you can see the
full TIN, this is because the ssa@abac user is a member of the HR Unit.
12. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 218


Organizing and managing access to case
attachments
Scenario
Applicants for an open position at TGB must submit a resume as part of the application
process. To ensure the security of resumes attached to a candidate case, resumes must only
be accessible by recruiters and HR members.
Use the following credentials to log in to the exercise system:

Role Username Password


Senior System Architect ssa@attachments rules
User user@attachments rules
Recruiter recruiter@attachments rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.
Task 2: Create a Privilege for User and Recruiter
Creating security privilege rule for different operators namely user and recruiter.
Task 3: Apply the privilege to the access role
Applying the newly created security privilege rule to the access role of User and Recruiter.
Task 4: Create Resume attachment category
Creating attachment category and providing the required privileges to the operators of User
and Recruiter.
Task 5: Add attachment button to the user interface
Adding a button in the user interface to allow the users to attach the document at run time.
Task 6: Verify your work
Verify your work.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log into Dev Studio using the username ssa@attachments and the password of rules.

© 2023 Pegasystems ClassroomExperience Training Materials | 219


NOTE: If you see the dialogue box “One journey at a time”, click Close. We do not need to
enable this feature for this lab.

2. From the title bar click the Toggle branch development button.

3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown, ensure that AttachmentsBR is
selected and click Submit.

Task 2: Create a Privilege for User and Recruiter


1. In the header of Dev Studio, click Create > Security > Privilege to create the privilege.
2. In the Label field, enter User. In the Context section, in the Apply to field, select TGB-
HRApps-Work-Candidate and make sure the ruleset is selected as AttachmentsRS as
shown in the below screenshot and click Create and open. Save the record.

© 2023 Pegasystems ClassroomExperience Training Materials | 220


3. Repeat steps 1-2 to create another privilege named Recruiter.

Task 3: Apply the privilege to the access role


1. In the Records explorer pane of Dev Studio, click to expand Records > Security > Access
Role Name to open the Instances of Access Role Name.
2. Click on HRApps:UsersManaged to open the existing user access role.

© 2023 Pegasystems ClassroomExperience Training Materials | 221


3. Click on Check out to branch of the access role name.

4. Again, click on the Check out to branch.

5. On the Role tab, click the Add a row icon to add a new access role.
5. In the Add access Role Object window, in the Class field enter or select TGB-HRApps-Work-
Candidate.

© 2023 Pegasystems ClassroomExperience Training Materials | 222


6. In the Access Controls section, enter 5 in all access controls fields.

NOTE: Entering 5 in all fields provides full access to the user access role.

7. In the Privileges section, add a new row by clicking on + icon and in the Name field enter
or select the User privilege, and in the Level field enter 5.

8. Click Save to save and dismiss the Add access Role Object window.
9. Save and Check in the Access Role with the Check-in comments.

© 2023 Pegasystems ClassroomExperience Training Materials | 223


10. Repeat steps 1-9 to add Recruiter privilege to the HRApps:RecruitersManaged access
role with the access control details as shown in the following image.
11. In the Privileges section add Recruiter with Level entered as 5 as shown below. Save and
check in.

Task 4: Create Resume attachment category


1. In the App Explorer, right-click Candidate and select Create > Process > Attachment
Category.

© 2023 Pegasystems ClassroomExperience Training Materials | 224


2. In the Label field, enter Resume.
3. Click Create and open.
4. On the Security tab, in the Access control list by privilege section, add
the User and Recruiter privileges.
5. In the User privilege row, select the Create, Edit, View, Delete own and Delete any check
boxes.
6. In the Recruiter privilege row, select the View check box.

7. On the Availability tab, clear all check boxes except the File check box.

8. Click Save to save the attachment category.

Task 5: Add attachment button to the user interface


1. In the header of Dev Studio, click Create > New > Candidate to create a new case. The
following screen appears.

© 2023 Pegasystems ClassroomExperience Training Materials | 225


2. In the Developer Tool Bar, click on the Live UI and on the right panel, select the Section-
CollectPersonalDetails and then click the Open in Dev Studio icon.

3. Now click Check out to branch and click again on Check out to branch.

© 2023 Pegasystems ClassroomExperience Training Materials | 226


4. In the panel, click the Add icon + to select the Action > Attach content.

5. Double-click on the Attach content control to open the cell properties window.
6. In the Cell Properties window, on the General tab, in the Button caption list, select Text.
7. In the Text field, enter Attach Resume.

8. Click Submit to save and dismiss the Cell Properties window.


9. Save and check in with Check-in comments.

© 2023 Pegasystems ClassroomExperience Training Materials | 227


10. Verify that you have No checked out records.

11. Log off and then login again with the username in the next step.

Task 6: Verify your work


1. Log in with username user@attachments and create a candidate case.
2. In the first screen, fill in all the required fields.
3. Click Attach Resume to open the attachment overlay.
4. Select a sample resume file from your desktop by clicking on Select file(s).
5. In the Category field, select Resume.

6. Click Attach to attach the resume to the case.


7. Click Submit and advance the case to Conduct phone screen step of Screening
stage. Remember the candidate case ID for future reference.
8. If necessary, Click Actions > Refresh to display attachments.
9. In the Files & documents section, click the Show More icon and verify
that Download and Delete options are displayed.

© 2023 Pegasystems ClassroomExperience Training Materials | 228


10. Now the case has been routed to the RecruitingWQ work queue in the Conduct phone
screen step.

11. Log off from the user portal.


12. Log in with username recruiter@attachments.
13. Locate the case ID that you have noted in the previous step and click it to open the case.

17. In the Files & documents section, click the More icon and verify that only
the Download option is displayed.

© 2023 Pegasystems ClassroomExperience Training Materials | 229


18. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 230


Pega Platform

© 2023 Pegasystems ClassroomExperience Training Materials | 231


Queuing a task for background processing
Scenario
To reduce errors and complaints with payroll processing, the Human Resources
department allows employees of TGB to enroll in direct deposit. When employees enroll,
their paycheck is automatically deposited into their checking account when the accounting
department processes the company payroll.
To automate payroll processing and avoid both case processing delays and performance
impacts during peak business hours, add a step to the case life cycle to queue the creation
and sending of an email once the user completes a Payroll Setup case.
Use the following credentials to log in to the exercise system:
Role Username Password
Architect ssa@bp rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Create Run in background and confirmation steps


Task 3: Confirm your work

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log into Dev Studio using the username ssa@bp and the password of rules.

NOTE: If you see the dialogue box “One journey at a time” click Close. We do not need
to enable this feature for this lab.

2. From the title bar click the Toggle branch development button.

© 2023 Pegasystems ClassroomExperience Training Materials | 232


3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown, ensure that BP_US is selected and click
Submit.

Task 2: Create Run in background and confirmation steps


1. In Dev Studio, open the Payroll Setup case.
2. Configure the Complete enrollment stage as shown below adding a second process
named Upload to payroll processor with a Run in background step:

© 2023 Pegasystems ClassroomExperience Training Materials | 233


3. Change the name of the Run in background step to Upload payment information.
4. In the contextual properties panel for the Run in Background step, use the information in
the following table to configure a standard queue type to run
the UploadToPaymentProcessor activity.
Field Value
Type of queue Standard
Activity name UploadToPaymentProcessor
Lock using Primary page
Alternate access group
Audit note upload to payment processor and send confirmation
email

5. After the Upload to payment processor step, add a send email step and label it Payroll
information received, to confirm that the payroll information is received.

© 2023 Pegasystems ClassroomExperience Training Materials | 234


6. In the contextual properties panel for the Payroll information received step, use the
following image to configure the correspondence. Enter the text "A confirmation email
about case <<.pyID>> will be sent within 24 hours." For the Message content.

7. Save your changes.

Task 3: Confirm your work


1. Create a New Payroll Setup case.
2. Complete the New Payroll Setup form by using a valid email address.

3. Click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 235


4. Advance the case to the Complete enrollment stage.
5. In the Review selections view, click Submit to complete the case with a Resolved-
Completed status.
6. Click Actions > Refresh and verify the confirmation emails are present on the case.

7. Click Actions > History and locate the audit note you entered for the Run in
Background step to verify the standard queue processor ran.

NOTE: You may need to refresh the case after 1-2 minutes to see the audit note and the email
sent by the activity.

8. From Admin Studio, click the Queue processors tile to view the list of queue
processors.

© 2023 Pegasystems ClassroomExperience Training Materials | 236


9. Verify that the Ready to process column is zero to confirm the case step processed.

NOTE: The Processed in the last hour column may reflect the standard queue item you just
ran; however, the field may also reflect other background processes occurring in the system at
the same time.

10. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 237


Automating actions when a property value
changes
Scenario
The Payroll Department at TGB reports that some employees enter an incorrect bank name
when enrolling in direct deposit. The payroll department requests that the bank name
populate based on the routing number entered, to avoid errors in Payroll setup cases.
Use the following credentials to log in to the exercise system:
Role Username Password
Architect ssa@onchange rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Configure the Bank Information section


Update the Bank information section.

Task 3: Create the declare on change and activity rules


Create declare on change and activity rules.

Task 4: Confirm your work


Confirm Bank name field automatically updates.

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log into Dev Studio using the username ssa@onchange and the password of rules.

NOTE: If you see the dialogue box “One journey at a time” click Close. We do not need
to enable this feature for this lab.

2. From the title bar click the Toggle branch development button.

© 2023 Pegasystems ClassroomExperience Training Materials | 238


3. Move the slider to turn branch development on.
4. The following appears. From the Branch dropdown ensure that OnChange_US is
selected and click Submit.

Task 2: Configure the Bank Information section


1. In Dev Studio, search for and open the section rule BankInformation.

2. Click on Check out to branch.


3. Double-click the Bank name field to open the Cell Properties dialog box.

© 2023 Pegasystems ClassroomExperience Training Materials | 239


4. On the Presentation tab, in the Edit options list, select Read-only (always).

5. In the dialog box, click Submit to apply the changes.


6. Edit the Routing number field to open the Cell Properties dialog box.

© 2023 Pegasystems ClassroomExperience Training Materials | 240


7. Click the Actions tab. On the Actions tab, click Create an action set to add an action
set to the field.
8. Click Add an event > Change to add a change event to the control.
9. Click Add an action > Display: Refresh to add a Refresh-This section action to the
field. This allows the updated bank name to be displayed to the user immediately when
they modify a routing number on the section.

10. Click Submit to apply the changes. The section resembles the following image:

© 2023 Pegasystems ClassroomExperience Training Materials | 241


11. Save the Section rule.

Task 3: Create the declare on change and activity rules.


1. In Dev Studio, open the Records explorer.
2. In the Records explorer, click Decision > Declare OnChange to open the list of current
OnChange triggers in the application.
3. Click Create to create a new Declare OnChange rule.
4. Save the new Declare OnChange rule as UpdateBankName.
5. Ensure that the value of the Apply to field is TGB-HRApps-Work-PayrollSetup and click
Create and Open. then click Create and open

6. In the Properties To Watch field, enter or select .RoutingNumber as the property to


watch for changes.
7. In the When field, enter or select Always to run the specified activity every time the
routing number changes.

© 2023 Pegasystems ClassroomExperience Training Materials | 242


8. In the When True Run section, enter the activity name UpdateBankName.

9. Next to the Activity name, click the Crosshair icon to open the Create Activity form.

10. Click Create and open to save the new activity rule as UpdateBankName.

© 2023 Pegasystems ClassroomExperience Training Materials | 243


11. On the Security tab of the activity rule, change the Activity type to Onchange.

12. Configure the activity as described below. The activity removes the previous
.BankName value before setting the value again in case the user enters an invalid
routing number in the .RoutingNumber field.
Refer to screen shots below to configure the Activity.
Step 1:
Method name: Property-Remove

© 2023 Pegasystems ClassroomExperience Training Materials | 244


Property: .BankName

Step 2: Configure the When condition as shown below :


.RoutingNumber==”021001088”
If true: Continue Whens
If false: Skip Step

Configure the Method in Step 2 as shown below:


Method name: Property-Set
Property Name: .BankName
Property Value: “HSBC Bank USA”

Step 3: Configure the When condition in Step 3 as shown below:


.RoutingNumber==”124003116”
If true: Continue Whens

© 2023 Pegasystems ClassroomExperience Training Materials | 245


If false: Skip Step

Configure the Method in Step 3 as shown below:


Method name: Property-Set
Property Name: .BankName
Property Value: “Ally Bank”

Step 4: Configure the When condition in Step 4 as shown below:


.RoutingNumber==”061000104”
If true: Continue Whens
If false: Skip Step

© 2023 Pegasystems ClassroomExperience Training Materials | 246


Configure the Method in Step 4 as shown below:
Method name: Property-Set
Property Name: .BankName
Property Value: “SunTrust Bank”

The Activity should look like the image shown below:

© 2023 Pegasystems ClassroomExperience Training Materials | 247


13. Save the activity rule and close it.
14. Navigate back to the open tab and Save the Declare OnChange rule UpdateBankName
and close it.

Task 4: Confirm your work.


1. Create a new Payroll Setup case.
2. Advance the case to the Provide Bank Information step.
3. In the Routing Number field, enter 021001088 and verify that the Bank Name field
automatically updates to HSBC Bank USA.

© 2023 Pegasystems ClassroomExperience Training Materials | 248


4. In the Routing Number field, enter 124003116 and verify that the Bank Name field
automatically updates to Ally Bank.

5. In the Routing Number field, enter 061000104 and verify that the Bank Name field
automatically updates to Sun Trust Bank.

6. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 249


Reviewing log files
Scenario
During the employee evaluation process, employees undergo an evaluation period to regularly
assess their performance as new hires. To check the status of the evaluation period in
the employee evaluation case type, there is an IsEvalPeriodEnded When rule that checks if the
entered evaluation date has passed. If the date entered by the user is within the evaluation
period, the case moves to the next process of Assess employee. When the user enters a future
date outside the evaluation period, the Assessment step is skipped, and the case moves to
the Review stage.
While the correct syntax to evaluate the When condition for skipping the Assess employee
process should read Invalid Evaluation End date + .EndDate, a developer has misspelled
the property as .Emddate. At runtime, you notice the process is not returning the expected
values. Review the log to discover this discrepancy.
• Consider a scenario where the developer has created a new property
named Emddate.
• In the existing when condition, IsEvalPeriodEnded, the developer has
misspelled EndDate as Emddate.
• Create an activity that uses the Log-Message method to write a message to the
PegaRULES log file only when the IsEvalPeriodEnded returns true.
• Add this activity in the Run activity field under the Actions tab in
the IdentifyAssessmentPeriod_0 flow action.
• Run the case and view the log file generated to see the message "Invalid Evaluation
criteria End date"+ .Enddate.
Use the following credentials to log in to the exercise system:
Role Username Password
Senior System Architect Rick@ReviewLogError rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Introduce the misspelled property


Create a new End Date property

© 2023 Pegasystems ClassroomExperience Training Materials | 250


Task 3: Create an activity to add a message to the log file
Create activity to log the error message

Task 4: Verify your work

+NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log into Dev Studio using the username Rick@ReviewLogError and the password of
rules.

NOTE: If you see the dialogue box “One journey at a time” click Close. We do not need to
enable this feature for this lab.

2. From the title bar click the Toggle branch development button.

3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown ensure that ReviewLogErrorUS is
selected and click Submit.

© 2023 Pegasystems ClassroomExperience Training Materials | 251


Task 2: Introduce the misspelled property
1. Using the App Explorer, create a Date under Property type named Emd Date in the
EmployeeEvaluation class.

2. In the same class, open the existing When rule named IsEvalPeriodEnded and modify the
End date to EmdDate.

© 2023 Pegasystems ClassroomExperience Training Materials | 252


3. Click Private edit dropdown and select Check out to branch. Select ReviewLogErrorUS
from the Branch dropdown in the pop-up window and click Check out to branch to dismiss
the pop-up.

4. Select the Advanced tab to change the End Date property to .EmdDate.

5. Save and Check in the when rule.

Task 3: Create an activity to add a message to the log file


1. In the EmployeeEvaluation class, create an activity record named WriteToLog.

© 2023 Pegasystems ClassroomExperience Training Materials | 253


TIP: To create an activity record, in the App Explorer, right-click the class name and
select Create > Technical > Activity.

2. In the first step of the activity, click When to add an Enable When condition, and then set
the following field values and then click Submit.
• When - IsEvalPeriodEnded
• if true - Skip Step
• true param – leave blank
• if false - Continue Whens
• false param – leave blank

3. In the Method field, select Log-Message and expand the Method Parameters area by
clicking the› symbol to the left of the Method field.
4. In the Value field, enter the following:
"Invalid Evaluation criteria End date" + .Emddate

TIP: The spacing before and after the + symbol in the message string above is purposeful.

5. In the LoggingLevel Value field, enter InfoForced.

NOTE: By default, the PegaRULES log only records messages with the logging level set
to Error. Setting the level value to InfoForced overrides this limitation without changing the
logging level setting for the server.

© 2023 Pegasystems ClassroomExperience Training Materials | 254


6. Save the activity. You may any ignore guardrail warnings for this test.
7. In the Employee Evaluation class, find and open the IdentifyAssessmentPeriod flow
action rule record.

TIP: Flow action records are located in the Process category in the Application Explorer.

8. Click the down arrow beside Private edit and click Check out to branch
(ReviewLogErrorUS).

9. Click the Action tab of the flow action.


10. In the Post-processing section of the Action tab, in the Run activity field, enter or
select WriteToLog to add your activity to the flow action as a post-processing action.
11. Save and Check in the flow action to commit your configuration change.

Task 4: Verify your work


1. Create a new Employee Evaluation case, complete the Identify Employee form (User ID:
rick@reviewlogerror) and Submit.
2. Proceed to the Identify Assessment Period form and enter a date value for any date prior
to today in the End date field.
3. Verify the case moves to the Review Assessment process of the Next Actions stage.

© 2023 Pegasystems ClassroomExperience Training Materials | 255


4. To troubleshoot and see the issue, login to Dev Studio (if needed), and select Configure >
System > Operations > Logs to open the System: Operations landing page.
5. Under Log utilities, click Log files. The log viewer opens in a new browser window, listing
the log files written by your server.
6. Under Appender File (click to view), click the log file for the PEGA Appender File to open
the log within the window.

NOTE: To download the files to the desktop use the following permissions. Username: admin
Password: admin.

© 2023 Pegasystems ClassroomExperience Training Materials | 256


7. In the log file, locate the most recent entry. Confirm that the entry matches the logging level
and message from the activity you created earlier in the exercise. This log message entry
happens only when the IsEvalPeriodEnded rule returns false:

NOTE: If your log file lists more than one entry, locate the entry with the most recent
timestamp. The error will appear similiar to the one above, but may not be an exact match.

8. Close the window containing the log file.


9. Return to the when rule and confirm that the Property has been misspelled.
10. Return to the IsEvalPeriodEnded when rule and replace the misspelled Emddate with
EndDate property.
11. Complete steps 1-3 and confirm the view contains the valid evaluation dates.
12. Return to the IdentifyAssessmentPeriod_0 flow action and remove the activity reference
from of the Actions tab.
13. Save the flow action to prevent the application from writing your test message to the PEGA
log.
14. Log out.

TIP: To reduce clutter in the Pega log and improve performance, remove activity steps that
write InfoForced level messages and convert them to comments by typing // in the Step Label
field when the message is no longer needed.

© 2023 Pegasystems ClassroomExperience Training Materials | 257


Assessing application performance
Scenario
The Human Resources (HR) department has noticed that the open positions screen of the
candidate case type has been loading the list of positions slowly for some users. Investigate
the performance characteristics of the screen and implement improvements that will
reduce the loading time of the positions.
Use the following credentials to log in to the exercise system:
Role Username Password
Senior System Architect Admin@AppPerformance rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Establish the initial baseline performance with PAL


View the first run performance metrics

Task 3: Enhance runtime performance


Change a data page load to improve performance

Task 4: Confirm your work


View the second run performance metrics

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Login using the username Admin@AppPerformance and the password of rules and
navigate to Dev Studio.

NOTE: If you see the dialogue box “One journey at a time” click Close. We do not need to
enable this feature for this lab.

2. From the title bar click the Toggle branch development button.

© 2023 Pegasystems ClassroomExperience Training Materials | 258


3. Move the slider to turn branch development on.

4. The following appears. From the Branch dropdown ensure that AppPerformanceBR is
selected and click Submit.

Task 2: Establish the initial baseline performance with PAL


1. In Dev Studio, create a new Candidate case (Create menu > New > Candidate).

NOTE: Creating a new case prevents the first load from skewing performance results.

2. In the footer of Dev Studio, on the Developer toolbar, click Performance to start the
Performance Analyzer (PAL).

3. Click the Reset button to set the counts to zero.

© 2023 Pegasystems ClassroomExperience Training Materials | 259


4. Click the Add reading button to add a row of summary performance data.

5. In Dev Studio, create a new Candidate case.


6. In the PAL window, click Add reading to add another row of summary performance
data.
7. Take a screen shot or make a note of the Server Elapsed and Total CPU numbers on
the first DELTA line, as shown in the following image.

NOTE: The Server Elapsed and Total CPU values may vary from the image below.

IMPORTANT: Take a screen capture of the PAL window as a way to document the
performance values.

Task 3: Enhance runtime performance


1. In Dev Studio select the Data Types menu option.
2. Expand the Position data type and open list position data page.
3. Click Check out to branch.

4. Verify the Branch in the dropdown is AppPerformanceBR.


5. Click Check out to branch.

© 2023 Pegasystems ClassroomExperience Training Materials | 260


6. In the Data page definition section, in the Scope list, select Requestor to prevent the
data page from being created for every new Thread instance in the application, saving
on memory space and processing time.

7. On the Load Management tab, in the Refresh strategy section, verify that the Reload
once per interaction check box is not selected.

© 2023 Pegasystems ClassroomExperience Training Materials | 261


8. Save and close the data page rule.
9. Click the Check in button to keep the changes.

Task 4: Confirm your work


1. In the footer of Dev Studio, on the Developer toolbar, click Performance to start the
PAL tool.
2. Click the Reset button to clear prior readings and initialize all counts to zero.
3. Click Add reading to display a DELTA row.
4. Create a new Candidate case.
5. In the PAL window, click Add reading.
6. Document the Server Elapsed and Total CPU values on the first DELTA row.

© 2023 Pegasystems ClassroomExperience Training Materials | 262


7. Compare the values between the original performance test and the new performance
test to identify improvements.
8. Verify that the Server Elapsed and Total CPU times are lower in the new performance
test.
9. Log off.

© 2023 Pegasystems ClassroomExperience Training Materials | 263


Designating a relevant record
Scenario
The organization has requested to include where the candidate learned about the position
and if they are a current employee when inputting the candidate’s information.
Use the following credentials to log in to the exercise system:
Role Username Password
Senior System Architect Admin@RelevantRecs rules

Your Assignment
Your assignment consists of the following tasks:
Task 1: Login and enable branch development
Enable branch development to allow modification of cases.

Task 2: Create properties and mark as relevant records


Create new properties

Task 3: Verify your work


Verify your work

NOTE: Detailed steps to complete your assignment can be found on the pages that follow.

Detailed Steps
Task 1: Login and enable branch development
1. Log using the username Admin@RelevantRecs and the password of rules.
2. Switch to Dev Studio.

NOTE: If you see the dialogue box “One journey at a time” click Close. We do not need to
enable this feature for this lab.

3. From the title bar click the Toggle branch development button.

4. Move the slider to turn branch development on.

© 2023 Pegasystems ClassroomExperience Training Materials | 264


5. The following appears. From the Branch dropdown ensure that RelevantRecsBR is
selected and click Submit.

Task 2: Create properties and mark as relevant records


1. Select App explorer.
2. Expand the Candidate class.
3. Expand Data Model.
4. Right-click on Property and select Create.
5. Enter How did you hear about us? in the Label field.

© 2023 Pegasystems ClassroomExperience Training Materials | 265


6. Click Create and open.
7. Change the UI Control to pxDropdown.
8. Change Table Type to Prompt List.
9. Input these values into the Standard and Prompt values:
a. Online
b. Newspaper
c. Hiring Agency
d. Employee

10. Click Save.


11. From the Actions menu select Mark as relevant record.

© 2023 Pegasystems ClassroomExperience Training Materials | 266


12. Return to the App Explorer and right-click on Property and select Create.
13. Enter Current Employee for the label.
14. Click Create and open.
15. Change the Property type to TrueFalse.

16. Click Save.


17. From the Actions menu select Mark as relevant record.

© 2023 Pegasystems ClassroomExperience Training Materials | 267


Task 3: Verify your work
1. Click the Configure menu and select Application > Inventory > Relevant Records.

2. In the Class name field enter or select TGB-HRApps-Work-Candidate.

© 2023 Pegasystems ClassroomExperience Training Materials | 268


3. Relevant records for this class will now be displayed.
4. In the list of relevant records, the new properties Current Employee and How Did You
Hear About Us? will be displayed in the list of active relevant records.

5. From the Case types explorer, select the Candidate case type.
6. Select the Data model tab.

7. The properties marked as relevant records will be displayed in the list.

© 2023 Pegasystems ClassroomExperience Training Materials | 269


8. Navigate back to the Relevant Records list.
9. Locate the row for the Current Employee property.
10. From the vertical ellipsis (Three Dot icon) at the end of the row, select Mark as
Inactive.

11. Navigate back to the Candidate case type.


12. From the Data model tab click Actions > Refresh.
13. The CurrentEmployee property will no longer be visible to other architects because it is
no longer marked as a relevant record.

© 2023 Pegasystems ClassroomExperience Training Materials | 270


14. Existing properties that are currently not relevant to the application (irrelevant
properties) can be added to the relevant properties list by following these steps:
a. Navigate to Dev Studio.
b. From the Configure menu, select Application > Inventory > Relevant Records.
c. In the Class name field, select the class name which contains the property.
(ex. TGB-HRApps-Work-Candidate).
d. Click the Add records button. An Add relevant records window will appear.
e. Select the rule record type from the Type dropdown menu (ex. Property).
f. Enter or select the record you wish to add in the Record name field
(ex. Current Employee).
g. Submit.
15. Log off.

NOTE: Rules not marked as relevant are not “easily visible” to other architects, however, such
rules are technically reusable if explicitly referenced elsewhere in the solution.

© 2023 Pegasystems ClassroomExperience Training Materials | 271


Web Mashup
and Mobile Apps

© 2023 Pegasystems ClassroomExperience Training Materials | 272


Create a Pega Web Mashup
Scenario
You have built a great case type and would like to expose it to users on an external
website. Create a web mashup channel to allow users to create cases from the website
and configure the site to create and process your cases seamlessly.
For the purposes of these instructions, we will use the scenario of local authority
(U+Gov) that has created an application for its citizens to report issues and request
services, such as, fix damage to a road, repair playground or park equipment, fix
broken traffic signals, or clear debris like fallen trees.
Use the following credentials to log in to the exercise system:
Role Username Password
Administrator [email protected] install
Author author@mytown pega123!

Your Assignment
Your assignment consists of the following tasks:
Task 1: Choose your website
Task 2: Create a new web channel
Task3 : Apply the mashup settings in the website
Task 4: Update a website user’s credentials
Task 5: Verify your work

NOTE: Detailed steps to complete your assignment can be found on the pages that
follow.

Detailed Steps
Task 1: Create a new web channel
1. Log in to Pega as Author@MyTown with password pega123!.
2. Open a new tab in your browser.
3. Examine the external U+ Websites that can host your mashup. There are several
versions of U+, we will be using the U+ Gov site. If you are using Pega Academy

© 2023 Pegasystems ClassroomExperience Training Materials | 273


cloud environment, then select the U+ Gov sight from the bookmarks bar as shown
in the image below.

NOTE: If you are using a selfhosted VM then you will need to use the IP address
of your Pega server VM in the URL: http://pega.server.IP.Address/UPlus/gov Ex:
http://localhost.pegailt.net:9080/UPlus/gov/index.html

4. Return to the Pega App Studio tab.

Task 2: Create a new web channel


1. Display the Channels & Interfaces landing page.
a. In App Studio, click the Channels explorer.
b. In Dev Studio, use the Application menu > Channels and interfaces option.
2. Click the Web Mashup tile to create a new web channel.

3. Complete the interface configuration form as shown below.


Setting Value
Name Citizen Self Service

© 2023 Pegasystems ClassroomExperience Training Materials | 274


Description Citizen can create a Service Request from
the local authority website Request a
service link.
URL Leave the default URL here
Use encryption True
Action Create a new case
Case Type Service Request
Thread name CitizenSelfService
Defer mashup load False
Retain mashup state on browser refresh True
Allow passing dynamic parameters False
Skin ApplicationSkin
Iframe resizing Auto
Initial skeleton pyCreateCaseSkeleton

© 2023 Pegasystems ClassroomExperience Training Materials | 275


4. Save your configuration by clicking the Save button.
5. Click the Generate mashup code button to generate your mashup code. You will
use this for reference in the next section, so keep it handy.

© 2023 Pegasystems ClassroomExperience Training Materials | 276


If your generated mashup code displays the data-pega-url ending with prweb, you will
need to go out to the channels screen. Then select the Citizen Self Service current
channel interface. In the configuration for the channel click Generate mashup code.
Now the data-pega-url should end with MyTown311_****. The * will be numbers.

© 2023 Pegasystems ClassroomExperience Training Materials | 277


NOTE: For traditional code-based websites, managed by a separate or different
team, you would copy the appropriate code for them to paste directly into the
website in an appropriate location, which would require web developer access
and skills, depending upon the site and its associated technology.

© 2023 Pegasystems ClassroomExperience Training Materials | 278


Task 3: Apply the mashup settings in the website
1. Return to the U+ landing page and click the U+Gov tile to select and open it.

NOTE: The U+ sites have been pre-configured with the mashup code that
embeds your case type. They also have content management settings to allow
you to simply configure settings using the information from this channel. This is
typical of modern sites with business-friendly content management style
interfaces. So instead of a hand-off to the web team, you can complete your
configuration quickly and easily.

2. Scroll down and click the Settings link in the site footer.
3. Click the Quick links tab. Complete the form with appropriate values as dictated by
your generated mashup code. Your form should look something like the example
below. In our example, we have named the link Request service. Using the
generated mashup code as a guide configure the action and parameters
accordingly.

© 2023 Pegasystems ClassroomExperience Training Materials | 279


4. Click Save (bottom left side) to save your changes.

Task 4: Update a website user’s credentials


You will also need to update a website user so that their credentials match Pega
allowing them to create a case as an authenticated user.
1. Click the Users tab. Update User 1 (Joe) by adding author@mytown and pega123!
as the Pega userid and Pega password respectively.

© 2023 Pegasystems ClassroomExperience Training Materials | 280


2. Click Save (bottom left side) to save your changes.

Task 5: Verify your work


1. Click the U+Gov site logo top left to return to the site homepage and login as Joe.
The credentials will already be filled in.

2. You should see Request service as the first Quick link, bottom right.

© 2023 Pegasystems ClassroomExperience Training Materials | 281


3. Click the link to invoke your case type in a mashup.

© 2023 Pegasystems ClassroomExperience Training Materials | 282

You might also like