Pega Doument 1690469041
Pega Doument 1690469041
5. INTEGRATIONS ....................................................................................................................... - 68 -
Division Name: - SBH, SBM India USA JAPAN Chennai, Hyd Bangalore,
3. Class Group
SBI-FW-Bank-Work
Insurance FW APP
Pega Platform → Insurance FW App → LIC FW App → LIC Health Insurance Imp
App
Pega Platform → Insurance FW App → LIC FW App → LIC Vehicle Insurance Imp
App
1.1 Class Group or Work Pool
Note: In General Class is a nothing but Object, it will combine the variables and
methods
Note: In Pega Point of View, Class is nothing but combination different category rules
like "Sections, Flow Actions, Flows, Data Transform, Activities...etc"
Abstract Class:
Concreate Class
CLASS STRUCTURE:
Ex:SBI
2. Division Level Layer:- In a Division Level Layer we will create all the units related
common rules and specific division related rules.
3. Unit Level Layer:- Particular unit related rules we will create under unit level layer
SBI-Hyderabad-Sale-BankAp-Work-Claim Claim ID
SBI-Hyderabad-Sale-BankAp-Work-Insurance Insurance Id
PEGA 8
Dev Studio
Admin Studio
App Studio
Prediction Studio
PEGA 7
Designer Studio
Access Group
Access group will control the Access of the Application to specific Group or Users
(Operators)
In Pega 8.7 V:
BankAp:Authors ---->Developer
BankAp:Users
BankAp:Administrators -->Developer
BankAp:Users
BankAp:Managers
BankAp:Authors
https://www.icicibank.com/
Developers
Customers
Employees
Managers
SrManagers
HRs
Marketing
Directors
CEO
Example:
Ex: HomeLoan
Note: Configure the form is a nothing but add a Properties (Fields or variable
name)
Note: All the CaseTypes are inhirated from "Work-" class. Whatever classes are
inherited from "Work-" class, all the classes "belongs to class group".
Ex:SBI-Hyderabad-Sale-BankAp-Work-HomeLoan
SBI-Hyderabad-Sale-BankAp-Work-Order
2. SAMPLE WEBPAGE
Note:
2. Create a Section and Drag & drop the Properties into the Section
Note: Section is a nothing but "User Interface (UI)", We will arrange the
properties into the section some proper format means how we want to show
UI to the End Users.
3. Create Flow Action and Call the Section into the Flow Action
4. Create a Flow and call the Flow action in a Flow under "Outgoing connector" of
each assignment.
Note: By using SubProcess shape in a flow we can call from one flow to another
flow
2.1 Conditional Layouts and Properties
2. Call the When rule in a Section under Target Property or Target Layout
User Story: UTR Document (Unit Test Results like Positive and Negative Scenarios)
LIVE UI : "LIVE UI" is a one of the Debugging tool, By Using "LIVE UI" we can
identify the "Properties, Section and Flow Actions" at the run time.
Binary File: For Images, Excels, PDF, Video files purpose we will create Binary File
1. Clipboard is a one of the Debugging tool, whatever we are entering the data in a
UI we can see the data in a clipboard under "User Pages" with page name
"pyWorkPage".
2. Clipboard is a temporary memory means it will not save the data into the clipboard
permanently.
Note:
1. If we want to see any work object related data in a clipboard then we should
open the work object then only we can view the data in a clipboard
2. When we are submitting the assignment, Pega itself will commit the data into
"Work" Data base Table.
1. UserPages
Custom Pages (whatever developers are going to define in a activity level based
upon the requirment)
2.DataPages
1.Thread
2.Requestor
3.Node
4. System Pages
Application
OperatorID
AccessGroup
Oraganization
Division
pxRequestor
2.3 Activities
Whenever we want to do the data base operations like Insert, Update, Delete,
Open, Browse or If we want to transfer the data from PEGA Application to External
application or vice versa or If we want to insert the data into Excel, CSV, Txt files and
place the files into Application Server Path or If we want to read the file from
Application Server path and insert or update the data into the data base table or if we
want to track the log messages like success or failure scenarios then we can go for
"Activities"
1. Parameter Variable:
Parameter variable values we can pass from one rule to another rule
2. Local Variable:
Local Variable values we can access within the rules means we can’t pass from one
rule to another rule
→ By using "Local" Keyword we can access the Local Variable values
Ex: State
Local.State
Pages & Classes is a just like references, If we want to access one class rules into
another class then we can specify the page name and class Name. By Using
Referenace Page name we can access the Reference class rules into the current
class.
4. Activity type
Activity type will define "How we can call the activity into some other rules "
Note: If Activity type is "Utility" then we can call the activity in a flow by using
"Utility" shape.
.FirstName: Chandra
.LastName: Sekhar
.Age: 26
.Location: Vizag
2.pyWorkPage
Call: By Using "Call" we can call from one Activity to another activity.After
Completion of the Sub Activity execution it will come to the current activity and
will execute remaining methods after "Call" Method.
Branch: By Using "Branch" we can call from one Activity to another activity.After
Completion of the Sub Activity execution it will end the current activity and sub
activity execution means it will not execute any methods "Branch".
Queue: By Using "Queue" we can call from one Activity to another activity.If we
use the "Queue" method then it will execute current activity and sub activity
parallelly
Note: We cannot see the Parameter Variable values and local variable values in a
Clipboard.
Note: We can see the Parameter Variable values and local variable values in a "Tracer".
If we want pass the parameters from one Activity to another Activity then we need
to check the "Pass Current Parameter Page" check box under "Call or Branch"
methods in an activity. Before "Call or Branch" methods we need to set the
Parameters by using Property-Set methods.
➔ In a Tracer, we need to click on the particular Step method and it will open one
window, there we can see the "Parameter Page name and Unnamed". Now we
need to click on "UnNamed" to see the parameter variable values in a Tracer.
How to see the Local variable values in a Tracer
➔ In a Tracer we need to check the "Local Variable" check box under Settings Tab.
We need to click on that particular step method in a tracer and it will open one
windown, There we can see the "Local variable and View Variable". Now we
need to click on "ViewVariable" to see the Local Variable Values in a Tracer.
How to Call or When to Call the Activity in a Section, Flow Action and Flow
➔ If we want to call the Data Transform or Activity or Some other rules while
changing the text box property value or Clicking the Radiobutton or checking
check box or changing the Dropdown value or Clicking the Buttons in a UI then
we need to goto the section and call the the Data Transform or Activity or Some
other rules in that particular property level.
➔ If we want to call the Data Transform or Activity while loading the screen then
we need to call the activity or data transform in a flow action under "Action" Tab
we have "Pre Processing" option is available,thire we can call the activity or data
tranform.
➔ If we want to call the Data Transform or Activity while Submitting the screen
then we need to call the activity or data transform in a flow action under "Action"
Tab we have "Post Processing" option is available,thire we can call teh activity
or data tranform.
Property-Set-Messages
➔ If we want to set the error messages in a Property level/ Page Level then we can
use the Property-Set-Messages method in a activity
2.4 Data Transform
Whenever we want to set the data to class properties or based upon when
conditions if we want to set the values to class Properties or If we want to copy the data
from One Page Property to another Page Property or One Page Pagelist property to
another pagelist property or One Page Property to another pageList Property or If we
want to sort the PageList property results in the form assending or decending order or
If we want to loop the List PageList Results then we can go for Data Transform.
➢ By Using "ObtainValue" PEGA OOTB Function we can call the Decision table
in a data transform
1. Set
If we want to set the values to class properties then we can select the "Set" Action
Property-Set → If we want to set the values to class properties then we can use
the Property-Set Method in Activity
2. Remove
If we want to remove the Property or Page or pageList Property values from
Clipboard then we can use the "Remove" Action
Property-Remove → if we want to remove the Property value from the
clipboard then we can use the Property-Remove method in a activity
3. UpdatePage
If we want to copy the one Page Property data to another page property data then
we can use the UPdatePage Action.
Page-Copy → if we want to copy the one Page Property data to another page
property data then we can use the Page-Copy method in a activity.
4. Apply-DataTransform
If we want to call one data transform to another data transform then we can use
the "Apply-DataTransform" action
5. Sort
If we want to sort the PageList property results in the form assending or decending
order then we can use the "Sort" Action
Obj-Sort →If we want to sort the PageList property results in the form
assending or decending order then we can use the "Obj-Sort" method in a
activity (Ex:CustomerList 100)
6. Comment
If we want to provide the useage of data transform or step actions then we can
provide the comments for future reference.
7. When, Otherwise When, Otherwise
8. Append to
➔ If we want to copy the data from One Page Pagelist property to another pagelist
property or One Page Property to another pageList Property then we can use
the "Append to" Action
➔ When we use the "Append to", Source and Target pages should be same class.
➔ When we use the "Append to", at a time it will copy the soruce page or pagelist
property values to target pagelist property.
➔ When we use the "Append and Map to", Source and Target pages should not
be a same class means different classes or same class also we can copy the data
from Target pagelist to source page list or Source Page property to target
pagelist property.
➔ When we use the "Append and Map to", it will copy the all source page or
pagelist property values to target pagelist property or Specific Values.
Ex1: CustomerList (CustomerID CustomerName CustomerAge Location)
Ex:CustomerList
If we want to exist from loop then we can use the "Exit For Each" action
If we want to exit the data transform based when conditions or while looping then
we can use the exit data transform
Q): what is the use of "Call superclass data transform" check box in a data
transform?
In Case Same data transform is available under Parent class and child classes then if
we check the "Call superclass data transform" check box in a data transform, first pega
will call parent class data transform and then it will call child class data transform
Note:
@IndexInPageList(true,".pySelected",pyWorkPage.DependentList)
4. pxExecuteAnActivity(Primary, pxAddMessageToProperty)
Note:
➢ All the Data types are inhirated from "Data-" class.Whatever classes are inhirated
from "Data-" class, All the classes by default it will take "does not belongs class
Group"
2. Report Defination: We need to provide the Report defination name and class name
Log-Message:
By Using Log-Message method in a activity we can set the Log Messages like success
or failure scenario’s.
Debug —> Record as DEBUG severity, produces the largest number of
messages; least severe.
1. Dropdown (DynamicSelect)
If we want to display the Values into Dropdown property from data base table
dynamically then we can use the "DropDown" Control.
2. CaseCade-Dynamic Select
Based Upon First Dropdown Property Values, Automatically it will display the values
into second dropdown Property dynamically from data base table. this process we can
call as CaseCade DynamicSelect.
3. AutoComplete
Based upon minimum search characters If we want to display the values into the
Droddown property from data base table dynamically then we can use "AutoComplete".
If we want to set the values to radiobutton properties dynamically from data base table
then we can use the RadioButton control
Sorces:- Report Defination, DataPages, ClipboardPage (PageList or PageGroup
Property)
5. MultiSelect
If we want to select the Multiple values from dropdown property then we can use the
MultiSelect Control .
6. Slidar
Normally whatever we are creating a flow actions, those flow actions we can call as a
Connector Flow Action
Connector Flow Action can be called in a flow under "Outgoing connector" of each
assignment shape.
In a Connector Flow Action, work object will moves from one assignment shape to
another assignment shape.
1--FA1--2---FA2--3--FA3---4
If we want to display the popups when we are clicking the "Buttons or Checkboxes or
Radio buttons" then we can go for Local Flow Actions
Local Flow Action can be called in a flow under Assignment shape and sections under
"Buttons or Checkboxes or Radio buttons".
In a Local Flow Action, Work Object will be in the same assignment means after
completion of the local action work object will not move to next assignment shape.
Note:
a. Flow wide local action can be called in a flow under "Design" tab we have
"Flow-wide local actions" option is available, there we can call the local actions.
b. Assignmnet level flow action can be called in a flow under assignment shape
c. Case Wide Local action can be called in a "pyDefault" Case Type rule under
"Process" tab we have "Case wide actions" option is available,there we can call
the local actions.
d. Stage Wide Local action can be called in a "pyDefault" Case Type rule under
"Stage" tab we have "Optional actions" option is available,there we can call the
local actions.
TICKETS:
1---2----3----4
1---Call the Activity ---2-----3---4 under 4th Assign-shape call the Ticket rule
3.2 Flows-Types
1. Process Flow
a) Normally whatever we are creating a flows, those flows we can call as process
flow. In a Process flow we cannot jump from one screen to another screen or we
cannot go back to the previous screen.
b) By Using Process Flow we cannot achieve the Front & Back Navigation, Tabbed
navigation and Tree Navigation
c) In Process flow We can call the flow action under Outgoing connector of each
assignment.
f) In a Process flow we can call the process flow within the process flow and screen
flow
g) In a Process flow we can see the all-advanced shapes like "Split-Join, Slit-For-
Each, Integrator...etc"
2. Screen Flow
a) Whenever User is going to fill the form,If user want to come back to the previous
screen or jump from one screen to another screen then we can go for Screen flow
b) By using Screen flow we can achieve the Front & Back Navigation,Tabbed
navigation and Tree Navigation
c) In A Screen flow we can call the Flow Action under Assignment shape
e) In a Screen flow, Only one user can work on entire screen flow.
f) In a Screen flow we can call screen flow within the screen flow but we can not
call the process flow in a screen flow.
g) In a screen flow we can see the only one advanced shape like split for Each.
Note:
➢ In a Screen flow Under "Starter" shape we can specify the Whether it is "Perform
screen flow or tabbed screen flow or Tree Navigation Screen flow".
➢ If we check the "Save on last step" check box in a screen flow under starter shape
then it will commit the entire screen flow data while submitting the last
assignment.
3. Sub Flow
Sub flow is a nothing but calling a flow within the flow. By using "SubProcess" shape
we can call from one flow to another flow.
For Reusable purpose we can create sub flows or In a Main flow if we want to reduce
shapes then we will create sub flows.
3.3 Validations
If we want to validate whether user is entering correct data or not then we will create
validation rules.
TYPES OF VALIDATIONS
1. Edit Validation
→ By using Edit Validation rule we can validate single Property.
→ Edit Validation rule can be called in a property level under advanced Tab
→ By Using Edit Validation rule we can achieve the Client Side Validations
Email-Validation:
String A = "^[\\w-_\\.+]*[\\w-_\\.]\\@([\\w]+\\.)+[\\w]+[\\w]$";
boolean B=theValue.matches(A);
if(B= =true)
{
return true;
}
else
{
theProperty.addMessage("Please Enter Valid Email ID");
return false;
}
→ Obj validation rule can be called in a flow action under Validation Tab
→ By Using Obj Validation rule we can achieve the Server Side Validations.
→ Obj Validation rule can also called as Page Validation
3. Edit Input
a) If we want to convert the data from one format to another format then we can go
for Edit Input
c) Edit Input rule rule can be called in a property level under advanced tab.
Ex:toUpperCase,toLowerCase
Based upon Property Conditions if we want to return the values then we can go for
Decision rules.
1. Decision Table
a) If we want to implement "If Elseif Elseif ElseIf...etc" logic then we can go for
Decision Table
b) If First condition is true then it will return the value otherwise it will one by one
condition and then return value.
@DecisionTable.ObtainValue(tools, Primary,"SetTicketPrice")
Ex: If(A<10)
{
Return X
}
elseif(A>10 & A<20)
{
Return Y
}
Elseif(A>20)
{
Return Z }
2. Decision Tree
a) If we want to implement "If if if If...etc or nested If" logic then we can go for
Decision Tree
b) Whether First condition is true or false, it will check the all the conditions and
then return the value.
If(A<10)
{
If(B<15)
{
If(C<20)
{
Return K
}
}
}
3. Map value
a) If we want to check multiple property conditions and return the multiple values
then we can go for Map value
1 1 1
1 1 1
1 1 1
4. When rule
a) When rule will return either "True or False". If Condition is satisfied then it will
return "True" otherwise it will return "False".
b) When rule can be called in a Flow, Flow Action, Data Transform, Activities,
Section...etc.
Q): What is the use of AllowMissingProperties check box in Decision Map Decision
Table method?
If selected, the system attempts to evaluate the rule even when one or more properties
referenced in the rule are not present on the clipboard.
Screen1 ---->Decision--->Screen2
In Decision Tree under Configuration Tab we need to check the "Allow selection of 'call
decision' option" check box.
If we check the "Evaluate all rows" check box in decision table under Results tab then
decision table will behave like decision tree
Q): Is it possible to call the Decision table within the Decision table?
By Using "ObtainValue" Pega ootb function we can call decision table within the
decision table
3.5 Circumstance
Circumstance is a nothing but "Creating new rule based upon base rule". If Property
conditions are satisfied then it will execute the circumstance rule otherwise it will
execute base rule
TYPES OF CIRCUMSTANCES
By Using Routing We can transfer Assignment or Work Object from one user
(Operator) to Another User or Multiple Users(Operators). Routing Can be done in a
flow under Assignment Shape.
TYPES OF ROUTING
1. WorkList(Operator)
By Using WorkList we can transfer the Assignment from one user to another user.
2. WorkQueue(Work Basket)
By Using WorkQueue we can transfer the Assignment from one user to Multiple users.
WorkBasket is a nothing but collection of work Items (Work Objects). Whatever work
items are available under Work Queue, Multiple users can able to access.
Work Group/Team:- Work Group is a nothing but "Group of users working under
Same Department or team"
Ex: VerificationDept WB
LoanApprovalDept WB
CardDispatchedDept WB
SLA will define the "Time and urgency" to complete the particular task or assignment
Whenever Work Object reaches to that particular assignment shape, From that time
onwards it will calculate the Goal Time.
Whenever Work Object reaches to that particular assignment shape, From that time
onwards it will calculate the Dead Line Time.
From Dead line time completion time onwards, it will calculate the Passed Dead Line
time.
• Default Urgency
• Initial Urgency: 20
• Goal Urgency: 15
10+20+15=45
After Completion of the Dead line time, what is the urgency value:
Default+Initial+Goal+DeadLine
10+20+15+25=70
After Completion of the Passed Dead line time, what is the urgency value:
Default+Initial+Goal+DeadLine+Passed DeadlIne
c10+20+15+25+10=80
TYPES OF SLAS
1. Assignment SLA: -Assignment SLA can be called in a flow under Assignment shape
2. Process Level SLA (Flow Level): -Process Level SLA can be called in a flow under
"Process Tab"
3. Stage Level SLA: -Stage Level SLA can be called in a Case type under Stage Level
4. Case Level SLA: -CASE Level SLA can be called in a Case Type under Settings
Tab
2. Click on Agents, Now we can see the list agents. Which agent we want to trace we
need to select that particular agent(Pega Procom Agent Ruleset
,ServiceLevelEvents Agent Name)
3. Click on Tracer
3.8 Advance Shapes (Parallel Processing)
1. Spin Off
If we check the Spint Off check box under SubProcess shape then main flow and sub
flow will execute parallelly.
2. Split Join
By using Split Join advanced shape we can call the multiple subflows in a main flow.
If we use the Split Join advanced shape in a main flow then any of the sub flow
Execution completed or All the Sub flows Execution completed or Some of the Sub
flow execution completed then only it will resume the Main flow.
/\
/ \
1---2 1--2
APF1 APF2
Split For Each will allow to run the "Single Process Flow" multiple times by Looping
the PageList Property.
TV,Laptop,Washing,AC
Declarative Rules can be created based upon the Properties. Wherever we are
referring the properties, automatically it will call declarative rules means declarative
rules no need to call seperately.
1. Declare Expression
Ex: A=B+C
Ex:A=B+C
Total=SubTotal+GST
In a Declare Expression under Change Tracking tab we can specify the Whether it is
forward or backward chaining.
2.Property Missing
2. Declare Constraints
By Using Declare Contraints we can validate the Multiple property values. Declare
Constraints No need to call separately. By using Declare Constraints we can achieve
the Client-Side Validations
3. Declare On Change
Whenever we are changing the Property Values, automatically it will run activity. this
process we can call as Declare On Change
a. Create When rule
b. Create Activity
c. Create Declare On Change and call the Call the When rule and activity
4. Declare Trigger
Whenever we are updating or Deleting or Saving or Commit the Instances of the Classs,
automatically it will run activity. this process we can call as Declare Trigger
5. Declare Index
3.10 Tracer
Tracer is a one of the debugging tools. By using Tracer we can identify the what
are the rules running in the back group while running the application or We can identify
the Exceptions or Errors or Product Live Issues.
Remote Tracing:
2. Goto the Active Requestors Tab and select the Specific Requestor ID
3. Click on Trace
Or
Ruleset & Ruleset Version is a nothing but Collection of Rules. Whatever we are
creating a rule, all the rules will be available under Ruleset & Ruleset Version. By using
Ruleset & Ruleset Version we can achieve the Security and Version Control.
Note: -Same rule is available under multiple Rulesets versions, Pega at the run time
always will call the higher version rule.
Check OUT:- Whenever we want to modify any unlocked Ruleset version related rule
then we need to "Check Out" rule and do the changes.
Check In:- Whatever we did the changes in our Check Out mode,if everythig is working
fine as excepted then we need to "check In" rule.Once we "Check In" rule, every one
can able to see whatever we did the changes.
Discard:- Whatever we did the changes in our "Check Out" or PrivateEdit mode If we
dont want those changes then we can "Discard" Our changes.
SaveAs:-If we want to modify any locked version rule then we need to "SaveAs" to
Open ruleset version.
Delete:- If we want to delete any rule then we can click on "Delete" and provide
Comments.
PrivateEdit:- If we want to modify the Locked version rule then we need to click on
"Privatedit" and do the Changes.
Requirement DocumentV1
Requirement DocumentV1.1
Requirement DocumentV1.2
Release1 → 3months
5 Developers
Major-Minor-Patch
Bank3:01-01-01 50 rules
Bank3Int:01-01-01 15 rules
New Requirment
CustomerDetails:Additional Properties
Bank3:01-01-01,02
CustomerDetails
Rule Availability will define whether we can use the rule or not at the run time.
TYPES OF AVAILABILITIES
Ex: CustomerDetails:01-01-01,01-01-02,03,04,05
Not Available: - If rule availability is "Not Available", That rule is Not available to
particular ruleset and rule version
Final: - If rule availablity is "Final", we can’t override or we can’t change final rules.
Ex: CustomerDetails:01-01-01,01-01-02,03,04,05
HDFCB-India-Sale-Bank3-Work-CreditCard
Ex: CustomerDetails:01-01-01,01-01-02,03,04,05
HDFCB-India-Sale-Bank3-Work-CreditCard
HDFCB-India-Sale-Bank3-Work
HDFCB-India-Sale-Bank3
CustomerDetails:01-01-01
HDFCB-India-Sale
HDFCB-India
HDFCB
Blocked:- If rule availability is "Blocked", That rule is not available to Current ruleset
& rule version, Lower versions of Current Ruleset version and Inheritated (Parent)
classes lower versions also.
Ex: CustomerDetails:01-01-01,01-01-02,03,04,05
HDFCB-India-Sale-Bank3-Work-CreditCard
HDFCB-India-Sale-Bank3-Work
HDFCB-India-Sale-Bank3
CustomerDetails:01-01-01
HDFCB-India-Sale
HDFCB-India
HDFCB
Class Inheritance
Class Inheritance is a nothing Aquering (calling) the rules from Parent class to child
class
1.Pattern Inheritanace
HDFCB-India-Sale-Bank3-Work-CreditCard
HDFCB-India-Sale-Bank3-Work
HDFCB-India-Sale-Bank3
HDFCB-India-Sale
CustomerDetails:Address State
HDFCB-India
HDFCB
2.Direct Inheritance
Work-Cover-
Work-
@baseClass
Explanation
When we are running the Application, PEGA first it will check whether rules are
available or not. If Rules are available in a Pattern Inheritance then it will call from
Pattern Inheritance otherwise it will check with Direct Inheritance. If rules are available
under Direct Inheritance then it will call from Direct Inheritance.
Pattern Inheritance first it will check with Class Group level classes. If rules are
available under Class Group level classes then it will call from Class Group level classes
otherwise it will check with all Parent classes(Inheritated classse). If rules are available
in parent classes then it will call from parent classes otherwise it will check with Direct
Inheritance.
Direct Inheritance first it will check with whether rules are available in a
Framework level class or not. if Rules are available under Framework level class then
it will call from Framework Level class other wise it will check with Pega Provided
predefined classes like "Work-Cover-,Work-,@baseclass".
HDFCB-India-Sale-Bank3-Work-CreditCard
HDFCB-India-Sale-Bank3-Work-CarLoan
HDFCB-India-Sale-Bank3-Work-PersonalLoan
SKIMMING
Skimming means it will copy the rules into Higher rule set version from existing higher
ruleset version. (Or) Copy the highest (major or minor) version of existing rules to a
higher version.
Configure--->System--->Refactor--->Rulesets
TYPES OF SKIMMINGS
1.Major Skimming
While Doing Major Skimming, it will copy "Available, Not Available, Final and
Blocked" rules.
Note: Withdrawn rules will not carry forward while doing Major Skimming.
Bank1:02-01-98
2.Minor Skimming
While Doing Minor Skimming, it will copy "Available, Withdrawn, Final and Blocked"
rules.
Note: Not Available rules will not carry forward while doing Minor Skimming.
Bank1:01-03-67
Rule Authorization
Rule Authorization will define whether User is authorized or access the rules or not at
the run time.
Explanation
1ST WAY
1. Whenever we are running the Application, PEGA will check whether rules are
avaialable in a "Rule Cache" or not.
2. If Rules are available in a Rule Cache then Pega Will check whether rule
availability is blocked or Not. What are the rules blocked it will discard those
rules and process the remaining rules.
3. Now it will check whether user is authorized to use the rules or not at the run
time. Whatever rules are not authorized it will discard those rules and process
remaining best rules at the run time.
2ND WAY
1. If rules are not available in a Rule Cache then pega will find the list of matching
rules while running the application
3. It Will check whether rule availability is Not Available or Not.What are the rules
Not Available it will discard those rules and process the remaining rules.
4. It Will check whether rule availability is WithDrawn or Not.What are the rules
Withdrawn it will discard those rules and process the remaining rules.
5. Now it will check whether rules are following Class Hierarchy(Class
Inheritance),Ruleset Hierarchy and circustance or Not.Whatever rules are not
following Class Hierarchy(Class Inheritance),Ruleset Hierarchy and circustance
it will discard those rules and process the remaining rules.
7. If Rules are available in a Rule Cache then Pega Will check whether rule
availability is blocked or Not.What are the rules blocked it will discard those
rules and process the remaining rules.
8. Now it will check whether user is authorized to use the rules or not at the run
time.Whatever rules are not authorized it will discard those rules and process
remaining best rules at the run time.
It identify the Errors in Application ruleset related rules or Specify ruleset version
related rules.
1.Browser(H): User can access the pega application through Browser, at that time pega
will create "Browser Requestor Type".
2.Application(A): When External Application is going to request the data from Pega
Application at that time pega will create "Application Requestor Type".
3.Batch(B): When Background Processing jobs like Agents, Listeners are running in
pega application, at that time pega will create "Browser Requestor Type".
5.Portlet(P): Portlet web application will generate dynamic contents, when Portlet web
application component connecting with Pega applciation, at that time Pega will create
"Portlet Requestor Type"
1. Access Group will control the "Access of the Application" to particular User or
Group.
2. We can add the Many number Access groups to Specific Operator but only one
Application we can access at a time.
3. While Creating a Access Group we need to provide the below details.
ICICI Application
Developers
MarketingDept
HRDept
FinanceDept
ICICI Application
2.Bank:Users --->Users
1.Bank:Administators -->Developers
2.Bank:Users
3.Bank:Managers
4:Bank:Authors
Access Role:
ICICI Application
CreditCard
InternetBanking
Loan
Insurance
Access Role of Object:
In a Access Role of Object we will provide the class name and access rating (0
to 5) to Control "Create the instances (Work Object) or Open the Instances or
Delete the Instances or Create a rules or Open the rules or Delete rules"
Ex:BOI-Hyderabad-Sale-Bank5-Work-CreditCard
2 --->Dev Env
3 --->SIT env
4 --->UAT Env
5 --->Prod Env
2. In Access Deny we will specify the class name and Access Rating (0 to 5) To
"Delete the Instances or Open the instaces or Create a Instances or Open the rule
or Delete the rule or Create a Rule".
Access Rating:-
Privilege:
Privilege will control the access in a "rule level" like Flows, Flow Action, Activities..etc
➔ Step2: Add the Privilege rule in a access role of Object and Rule level
or
➔ Step2: Create Seperate Access role and Access the Access of Object
Branching
➔ Open the Application rule from Application Menu and click on Add Branch
Ex2: GetCustomerDetails
Developer1Branch
Developer2Branch
4.6 Product File or Package or RAP File
➔ Whatever rules we want to move to other Environments we need "Check In" the
all rules.
➔ Lock the ruleset versions whatever we want to move to Other Environments
Ex: Bank3:01-01-01
Ex: Bank3:01-01-04
Bank3Int:01-01-07
HDFCB:01-01-03
Q): How to Move the non-Ruleset version rules into SIT or UAT or Production Env
in pega
Ans): we need to take the "pzInsKey" value of that particular rules and include in
Product file under "Include Individual Instances"
Q): How to Move the new Data Base Table into Other Environments in Pega
Ex: HDFC-Data-Order
Q) How to include Specific Record (Instance) of Any Data base table or Data Type in
Product file?
We will include the pzInsKey valaue of Specific Record and include into Product file.
we need to take the "pzInsKey" value of that particular rule and include in Product file
under "Include Individual Instances"
Ex:Bank3Prod:01-01-03 SetCustomerDetails DT
Sprint1
Bank3:01-01-04: CustomerDetails 05
Bank3Int:01-01-07
HDFCB:01-01-03
Access Group
WB
WG
DSS
File Listener
Note: We will Prepare the "Release Note Document". While Deploying we will the
follow the "Release Note Document".
1. If any Back up required we need to take the back up of any Data base table
3. Select Product file from your Local System and click on Next → Next → Finish
Post Deployement Tasks:
4. Any Agents or Listeners or Job Schedulers If we want to restart then we will this
activity from Admin Studio
2. We will Send email about Product Deployement details to Product owner and
Business Ppl.
Time: Non Business Working Hours from 9PM EST to 11PM EST
No Business Impact
Sprint3 Changes
2.Correspondence
3.Data Types
4.SLA
D. Whatever rule we want to delegate, Open that rule and click on Actions menu
E. Select Delegate and provide the Access Group Name and Description
Note: In Manager Portal Under "Configuration" Tab we can see the list of Delegated
Rules.
5. INTEGRATIONS
Connect-SOAP
Service-SOAP
Connect-REST
Service-REST
Connect-File
Service-File
Service-Email
Connect-SQL
Connectors
WSDLURL:
Services
a. In a Services, External Application is going to give the request. Based upon
request, Pega Application will send the response to External
Application/Source/System.
b. In a Services, PEGA Application will provide the WSDL URL or File.
5.1 Service-SOAP
Ex: Claim Holder Name, Claim AMount, Claim Reason, Vendor Name
By Using Service Package we can process the request into pega application with
the help of Service method like Service SOAP
In a Service Package rule we need to provide the Process Mode(StateLess or
StateFull), Access Group and Authentication
Note: If we want to clear the response data from clipboard after completion of
the request then we will select the Process Mode to "StateLess".
Ans) Access Group is response to call the rules in a pega Applciation based External
Application Request.
Ans) To Secure our Service Request or Security purpose we will maintain the
Authentication.
Q) Is it possible to use the same service package rule to different service methods?
Ans) Yes we can use the Same Service Package to multiple Service methods like Service
SOAPS
By using Parse XML Rule we can convert the XML request to clipboard format
By Using XML Stream rule we can convert the Clipboard response format to xml
format.
6. Create Service SOAP rule
Service Tab
In a Service Tab we will map the Request & Response Parameters class name ,Page
name and will call the activity to send the resposne to external application
Request Tab
In a Request Tab we need to call the Parse XML rule to convert the XML request
to clipboard format.
Response Tab
In a Response Tab we need to call XML Stream rule to Clipboard response format
to xml format.
Fault Tab
HDFCB-Int-Cliam
RequestPage
ResponsePage
HDFCB-Int-ClaimRequest
Claim ID
HDFCB-Int-ClaimResponse
Assignments
1.We need to insert the Claim Request Details into PEGA Application
2.We need to the Claim Request Details from PEGA Application based Request
Claim ID:244
We need to send the list of Email details when we are getting the Location Name
Request
5.2 Connect - SOAP
http://www.thomas-bayer.com/axis2/services/BLZService?wsdl
Complaint ID
Request Tab: In a Request Tab we will call the XML Stream to convert
Clipboard request to XML format
Response Tab: In a Resposne Tab we will call the Parse XML to convert the
XML resposne to Clipboard Format
Activity:
In a Activity we will call the Connect SOAP rule by using Connect SOAP
method. Before Connect SOAP method we wil map the request parameters by
using Property-set method or Data Transform.After Connect-SOAP method we
will resposne parameters by using Property-set method or Data Transform.
Data Pages:
In a Data Page, as a Source we will Select Connector and call SOAP rule,
Request Data Transform, Resposne Data Transform. In a Request Data
Transform we will map the Request parameters. In a Resposne data transform
we will map response data transform.
5.3 How to handle the Exceptions in Integrations
1. We will validate whether we are sending Correct Request format or not by using
Validations or when conditions.
2. We will set log messages success or failure scenarios.
3. WHile Calling the Connect SOAP or Connect REST rule in a activity then we will
handle the exceptions by using "Jump" Conditions.
4. By using "pyHttpResponseCode, pyStatusValue or pySOAPFaultCode,
pySOAPFailtReason" properties we can show different labels messages in a UI
like success or failure scenarios.
Request XML
Response XML
XML Format
<SampleResponse>
<FirstName>Kiran</FirstName>
<LastName>Kumar</LastName>
<Age>28</Age>
<Address>Hyderabad</Address>
</SampleResponse>
JSON Format
{
"FirstName":"Kiran"
"LastName":"Kumar"
"Age":27
"Address":"Hyderabad"
}
SOAP
REST
• REST will support both JSON and XML format Request & Responses.
• REST will use the less bandwidth to processing Request or Response frm Pega
Application
• REST less secure than SOAP
• JSON format will not support Images or Links as a request or resposne
parameters
Service REST
a. In Service REST, External Application is going to give the request in the form of
JSON format, Pega application will send the response to external system or
application based Upon Request.
Service Tab:
we need to provide the Request & Response Parameters Related class name and
Page Name
Methods Tab
Every method we need to map the request and response parameters and call the
activity to Send the Response to External System.
a. GET
➔ If we want to send the Response from pega Application based upon
External System Request then we can use the "GET" method.
b. POST
➔ If we want to insert the New Record into the pega Application based
upon External System Request then we can use the "Post" method.
c. PUT
➔ If we want to update the Existing Record into the pega Application
based upon External System Request then we can use the "PUT"
method.
d. DELETE
➔ If we want to delete the record from pega application based upon
External System Request then we can use the "Delete" method.
e. PATCH
➔ If we want to update the minimal changes into the Existing Record
into the pega Application based upon External System Request then
we can use the "Patch" method.
5. Create Activity
In a activity we will write a logic to send the response to external application.
Ex: http://localhost:8080/prweb/api/ComplaintPKG/v1/Complaint/{ComplaintID}
5.5 Connect REST
Employee ID
Service Tab:
In a Service tab We will provide the WSDL url under Resource Path
Method Tab
➔ GET: If we want to fetch the data from External System or Application based
pega Application request then we can use the GET method.
➔ POST: If we want to insert the New record into the External system based
pega Application request then we can use the POST method.
➔ PUT: If we want to update the existing record into the External system based
pega Application request then we can use the PUT method.
➔ DELETE: If we want Delete record from External system based pega
Application request then we can use the DELETE method.
➔ Patch: If we want to Update minor changes into the existing record based
pega Application request then we can use the Patch method.
In a Data Page we will call the Connect REST by using Connector as source in
a Data Page and will call request & response data transforms to map request parameters
& response Paremters
Ex: https://dummy.restapiexample.com/api/v1/employees
https://dummy.restapiexample.com/api/v1/employee/1
https://gorest.co.in/public/v2/users
Response:
1.Status
2.Data (PageList)
3.Messages
1. If we want to set the Constant Value (Different in Env to Env (DEV, SIT, UAT,
PREPROD, PROD)) then we can create Dynamic System Settings.
Ex:=DataPageName.PropertyName = D_GetBLZURL.BlzUrl
1. If we want to set the Different Constant value to Env to Env then we will
Application Settings.
If we want to refer class name dynamically in activity method levels dynamically then
we can use Dynamic Class Reference(DCR)
2. Create Data Transform and Set the Values to Value Group Property
Will refer common things (DBs, Email IDs, WSDL URLs, ….) by creating common
referencing table
By Using Data pages, we can fetch the multiple records from data base table or
we can fetch the single record from data base table or we can insert or update the data
into data base table or we can connect with external applications by using connectors.
Q): Data Pages will improve the Performance compared to report definition and
Activities.
A): Whenever requestor requesting same type of data multiple times, first request it will
go the data base and will display the or store the data in a Clipboard. Next Request
instead of going to the Data base it will fetch the data from Clipboard under Data pages
means it will reduce the network round trips between the Pega application and data base.
By using Data Pages we can not delete data from data base table.
1.Connector
2.Data Transform
3.Activity
4.LookUp
5.Report Defionation
6.Aggrigative Sources
In a Data Page we can call multiple Sources and will execute sources based upon when
conditions
If we select the "Aggregative Source" as a source in a Data Page we will call the multiple
sources like data transforms, Report Defiantion, Activity and Connectors.
Q) What is the use of "Simulate data source" check box in a Data Page?
Data pages, If External System is not working due to internal issues then we can
set the Static data by using Data transforms, Activities and report defination.
In a Data Page we have "Post load processing" option is available, there we can
Types of Mode:
1. Read Only: If we don’t want to give the option to edit the data pages related data
in clipboard then we will select the mode to "Read only".
2. Editable: If we want to give the option to edit the data pages related data in
clipboard then we will select the mode to "Editable".
3. Savable: if we want to insert or update the data into data base table then we will
select the mode to "Savable".
Types of Scopes
1. Thread:
➢ Thread Level Data pages is a nothing but Work Object level. Whatever
data is available under Thread Level Data page, it will accessible to only
➢ After Creating a Work Object, it will load the Thread level Data Pages.
2. Requestor:
➢ Requestor Level Data Page is a nothing but Operator level Data Page.
Whatever Data is available under Requestor level Data page we can access
➢ Requestor Level Data page will load at the time of login into the application.
Note: For Requestor or Thread Level Data pages, it will consider the Requestor
D_AgentInfo or D_CSRInfo
3. Node:
Whatever data is available under Node data pages, every requestor can able
to access.
➢ Node Level Data Page will load at the time of Start the Server
➢ Node Level Data pages related data we cannot edit because node level data
pages related data sharable to all requestor whoever login into the that
particular node.it will give Data mismatches if we give the Editable option
Note: Editable Data Pages related data we can see in a clipboard under "User
Pages".
For Node Level Data Pages we need to provide the Access group. Access group
will responsible to call the rules in pega whatever source (Data transform or
activity or connector or Report Defination) called in a Node Level Data Page.
Ex: Customer1---------------->D_PolicyList
Customer2---------------->D_PolicyList
Customer3---------------->D_PolicyList
Q) How to flush or clear the Data pages in pega
1. In a Data page under Load Management tab we have "Clear Data Page" option
is available to flush or remove the Data Page data from Clipboard.
2. By using "pzFlushDataPage" pega ootb activity we can flush or remove the Data
Page data from Clipboard.
3. By using @(Pega-
RULES:DeclarePages):pzDeleteAllInstancesDeclarePages("Data Page Name")
pega ootb function we can flush or remove the Data Page data from Clipboard.
If we want to reload the Data Pages by using some time intervals like days or
hours or minutes or seconds or based upon when conditions then we can specify
the days or hours or minutes or seconds or when conditions in a data page under
load management tab.
1. Reload once Per Interaction: It will reload the data page at the first interaction.
2. Do not reload when: We can call when condition to reload the data page
3. Reload if older than: We can specify the days or hours or minutes or seconds to
1hr 10am
6.1 Types of Data Pages:
1. Page Data Page: By Using Page Data Page we can fetch the single record from
D_GetCustomerInfo[CustomerID:Param.ID]
D_GetCustomerInfo[CustomerID:"111"]
D_GetCustomerInfo[CustomerID:.CustomerID]
D_GetCustomerInfo[CustomerID:.CustomerPage.CustomerID]
D_GetCustomerInfo[CustomerID:111].CustomerName
D_GetCustomerInfo[CustomerID:111].CustomerAge
D_GetCustomerInfo[CustomerID:111].Location
2. List Data Page: By Using List Data Page we can fetch the multiple records from
D_GetCustomerRecords[ID:.CustomerID,Name:.CustomerName,Age:.Age,Loc:.
Location].pxResults
D_GetCustomerRecords[Age:"20",Loc:"Hyderabad"].pxResults
3. Savable Data Page: By Using Savable Data Page we can fetch insert or update the
ii. Create Data Page and Select mode to "Savable", Source to Data Transform
iii. Call the Savable Data Page in a Flow Action under Post Processing or In a
➢ Key Accessed Data Page will fetch the data based upon Keys whatever we are
passing from Property Level.
➢ Key Accessed Data page will not hit the data base every time to fetch the data
➢ Key Accessed Data page will not maintain the instances in a clipboard
➢ Key Accessed Data page will refer in Property level like page or pagelist
properties. we cannot refer in a Section as source or other rules.
→ Step2: Create Page or PageList property and Refer Key Accessed Data Page
➢ Parameterized Data Page will fetch based upon parameters from UI.
➢ Parameterized Data page will hit the data base every time to fetch the data
whatever parameters we are passing.
➢ we can refer Parameterized Data page in a section and other rules also.
yyy
zzz
1.Alias Pattern
3.SnapShot Pattern
4.Reference Pattern
If we want to fetch the multiple records from Data base table or Based upon Filter
conditions if we want to fetch the Results from data base table or if we want to join the
two or more than two tables or if we want to display the data in the form of "charts or
Table format" or If we want to schedule the reports based upon some time intervals then
we can go for Report Defination.
1. List View:
If we want to display the data in the form of Table format then we can go for List
View
2. Summary View:
If we want to display the data in the form of "Charts or Graphical Representation"
then we can go for Summary View
3. Report Definition:
If we want to display the data in the form of Table format or "Charts or Graphical
Representation" then we can go for Report Defination.
Case ID Operator Name Balance Amount Update Date Time
Report Defination
Ex: Screen
SearchCreditCardCase --Link
Search Case Details
Exposing or Optimizing a properties is nothing but "Creating New Column" in the Data
base table.
Note: If we are not Optimizing the Properties then pega it will fetch the data from
"pzPVStream(BLOB) Column".
1st way:
From Dev Studio → Right click on that particular Property → Select Optimize for
Reporting → Click on Next → Click on Next → Finish
2nd way:
Village State
Declare Index:
By Default, Pagelist property related data will be stored into "pzPVStream" blob colum.
To fetch the Page list Property related data from data base table then we will create
seperate "Index" table and declare index rule in pega.
3. Create Data base Mapping rule and provide Class name, Data base name and table
name
4. Create Declare Index rule and Map the PageList Source properties and Index Table
Properties.
5. Create Report Defination and Refer the Declare Index under "Data Access" tab to get
pagelist data from data base table.
7.3 How to Join the two or More than two data base tables in pega
By using Report Definition, we can join the two or more than two data base tables in
Pega
In a Report Definition, we have different options like "Class Joins, Declarative Joins,
Associations and sub reports" to join the two data base tables in Pega.
In a Report Definition under "Data Access" tab we have "class Join" option is available.
There we need to specify the "Prefix name, Class Name, Type of Join and Joined
Conditions".
Work Queue or Work basket related Assignments data will be stored into
"pc_Assign_WorkBaket" Table.
1. Include a Matching Rows(Inner Join): it will fetch the common Records betweens
Data base tables
2. Include All the rows in this class (Left Outer Join): it will fetch all the records from
left data base table and common records betweens Data base tables
3. Include All the rows in joined Class (Right Outer Join): it will fetch all the records
from Right data base table and common records between Data base tables
Associations:
Associations is a nothing but rule.By using "Associations" we can join the two data base
tables in pega.
Note:"pxWorklistAssignments,pxWorkbasketAssignments,pxCreateOperator" pega
ootb Associations rule we used in our projects.
Sub Reports:
Sub Reports is a nothing but "Query within the Query" means calling a report definition
within the report definition.
If we want to filter results in a main report based upon sub report filter condition results
then we can use the "Sub Reports".
Ex: X Table Company
Wipro
Y Table Oraganization
Wipro
Work table
Operator Table
Work Table
Assignments Table
2. Shortcut rule: It contains the Report Definition class, Report Definition and category
name.
Note: Pega will send the Reports from "Default" Email Account.
DrillDown Report:
-->In a Main Report, If we select any one Property as Aggrigative Function like Count,
Max, Min..etc. Under Report Viewer we can call our own Custom Dripdown report
while clicking the any row in a Main Report.
AGGREGATIVE PROPERTIES:
1. ValueList:
Ex: PhoneNumber(1):977334343
PhoneNumber(2):987343535
PhoneNumber(3):845774545
2. ValueGroup
b. ValueGroup will not follow the Order while storing the values.
Ex: EmailiD(Personal):[email protected]
EmailID(Office):[email protected]
EmailID(FB):[email protected]
3. Page
Ex:CustomerPage.CustomerName:Kiran
CustomerPage.CustomerAge:37
CustomerPAge.Location:Hyderabad
4. PageList
Ex: .CustomerList(1).CustomerID:35353
.CustomerList(1).CustomerName:Ramesh
.CustomerList(1).CustomerAge:35
.CustomerList(2).CustomerID:353
.CustomerList(2).CustomerName:Raju
.CustomerList(2).CustomerAge:53
5. PageGroup
.AddressList(Current).AddressLine2:SR Nagar
.AddressList(Current).State:TS
.AddressList(Current).ZipCode:400024
.AddressList(Office).AddressLine1:Main Road
.AddressList(Office).AddressLine2:Kukatpally
.AddressList(Office).State:TS
.AddressList(Office).ZipCode:400023
Types of Indexes:
1.(<APPEND>):it will insert the value into property in a higher index position.
3.(<INSERT>):it will insert the value into the specified index position
St:1 Create a Data base rule and Provide Data base name,JDBC url,User name and
Password
Ex:Oracle 11g
St:2 Create a Data base Table by using "Create Database Script" in a Data base level.
ClaimID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
Ex: JPMC-USA-Sale-Bank1-Work-Claim
St:4 Create Data base Mapping rule and provide the Data base name,Schema name
and Data base table name.
St:5 Create Connect SQL rule and Write a DB Scripts or We can create Data
pages,Report defination or Obj Methods in a activity to fetch the data from External
Data base Table
Open Tab:
If we want to fetch the single record from data base table then we need to write a Query
under Open Tab.
Browse Tab:
-->If we want to fetch the Multiple record from data base table then we need to write a
Query under Browse Tab.
Ex: Select * from {Class: JPMC-Data-Customer}
or
Save Tab
-If we want to insert the records into data base table then we need to write a Query under
Save Tab.
Delete Tab:
If we want to Delete the record from data base table then we need to write a Query
under Delete Tab.
RDB-List:
→ By using RDB List method in a activity,we can fetch the Multiple records from
External data base table.
RDB-Open:
By using RDB Open method in a activity,we can fetch the Single record
from External data base table.
RDB-Save:
By using RDB Save method in a activity,we can insert the records into
the External data base table.
RDB-Delete:
By using RDB Delete method in a activity,we can Delete the record from
External data base table.
Note:
C:\PRPCPersonalEdition\pgsql\pgAdmin 4\bin →
New Requirement
OBJ METHODS:
1) By using Obj Methods we can connect with Internal Data base tables and
External data base tables.
3) If we use the Obj methods,Pega itself will generate the DB(Data base)Scripts at
the run time.
5) When we use the Obj methods, we need Data base mapping rule.
6) If we use the Obj Methods we can not call the Obj Methods.
RDB METHODS:
7) By using RDB Methods we can connect with Internal Data base tables and
External data base tables.
9) If we use the RDB methods,We need to write the DB(Data base)Scripts at the
run time.
11) When we use the RDB methods , Data base mappting is optional because we will
create connect sql rule and write the queries.
12) If we use the RDB Methods then we can write complex DB Queries and call the
Stored Procedures.
8. LOOPING & OBJ- METHODS
PyForEachCount →
1. Property-Set
Primary.CustomerList(<APPEND>).CustomerID
Primary.CustomerList(<LAST>).CustomerName
Primary.CustomerList(<LAST>).CustomerAge
Primary.CustomerList(<LAST>).Location
2. Page-Copy
Primary.CustomerList(<APPEND>)
Note:-By using "pxRetrieveReportData" PEGA OOTB Activity we can call the report
defination in a activity. we need to pass the "pyReportName, pyReportClass,
pyPageName" parameters
Note:-If we want to refer or call the data page in a activity then we need to specify the
Data Page name and class name in a Pages & classes.
1. Obj-Open:
By using Obj-Open method in a activity we can fetch the single record from data
base table by passing primary key value
2. Obj-Open-By-Handle:
ClassName PrimaryKey
3. Obj-Delete:
By using Obj-Delete method in a activity we can Delete the record from data base
table.
4. Obj-Delete-By-Handle:
5. Obj-Save
By using Obj-Save method in a activity we can insert or update the data into the
data base table
6. Obj-Save-Cancel
8. Commit:
By using "Commit" method in a activity we can save (Commit) the data into data
base table permanently.
9. Write-Now:
If we check the "Write-Now" check box under Obj-Save method in a activity then we
can save(Commit) the data into data base table immediately.
10. Obj-Refresh-And-Lock:
Ex: Flow
1---2-Sravan--3----4
Assign-WorkList
Assign-WorkBasket
Requirement:
Q) I’ve particular workobject data I need to update it like some details and statuswork
Pending to open, how do you achieve?
A) I’ll create stand alone activity in that work class by using obj-open-by handle and
by passing pzInsKey value I’ll set and then commit.
We passed the pzInsKey value and will set the values as below
Call UpdateStatus, using this OOTB function it will update the status of work object
Then save/commit it
Requirement 2:
Q) How do you update multiple work objects data like setting data and status work
change?
A) I’ll create a Report definition in my class and fetch the records based on conditions
and filters, I’ll create an activity and call the report using “pxRetrieveReportData” and
loop them one by one set the values and commit.
Q) How do you delete all the records from the table? A) By passing pages and classes
and looping the results and passing pzInsKey to Obj-Del-handle
Then use del- handle and pass the pzInsKey>> run>> Done.
Scenarios:
Q) Table contains list of records fetch those records with conditions and update?
I’ll create a report with conditions/filter conditions and call it in activity (or)
I’ll fetch using obj-browse and fetch the records (or) I’ll create data page and
as a source I’ll call report definition and call the data page in the activity, Inside
the loop I’ll loop each and every record by obj-open-by-handle by passing
pzInsKey Value>> property-set method and update the values/ properties after
that property-set, Save and commit the data, DONE.
Q) Update the work objects assigned to operator update assignment status to pending
to verified?
I’ll create activity in Assign-worklist class and activity also in that activity and
fetch the assignment cases by passing pxAssignedOperatorID==”operator” and
I’ll fetch the cases of the operator and loop inside assignment class open each
and every record and use property-set, objsave and commit, Done.
By using obj-open-by-handle and open the work object by passing the pzInsKey
and use the property-set to set values and obj-save, commit, DONE.
I’ll create stand-alone activity and open each and every record by passing
pzInsKey, property-set, obj-save, Commit, DONE.
Q) List of records?
Based up on conditions I’ll create report and call the report in the activity and
I’ll open each and every record inside the loop and property-set, obj-save,
commit, DONE.
8.1 How to Generate PDF File
9. LISTENERS
Email Listener will listen the email from "INBOX" folder and process the email into
the pega application with the help of Service Email.
To process the Email into the Pega Application we need to create below rules.
1. Create Properties to map the Email Details like To, From, Body of the Email,
Subject, CC..etc
We need to Provide the Process mode, Access group, Authentication and Service
metod (Service Email)
Email Listener will listen the email from "INBOX" folder and process the email
into the pega application with the help of Service Email.
By using Service Email we wil process the Email into the pega application with the
help Service Actcivity.
Service Tab:
➔ In a Service Tab we need to provide the Class Name,Page Name and Activity
name
Request Tab
Response Tab
5. Create Activity
We need to call the "CreateWorkFromMail" Activity Create Case and process the
case in pega application.
File Listener will listen the file from Destination location (Application Server Path) and
process the file into Pega application with the help of Service File.
To process the file into pega application we need to create below rules.
By using Service File we can process the file into pega application with the help of
Parse delimiter rule and activity
By Parse Delimiter rule we can comma seperated CSV Data into Clipboard
5) Create Activity
File Listener will listen the file from Destination location and process the file into
pega application with the help of Servivce File.
Connect File will place the "Txt, CSV, EXcel" file into destination location.
To place the file into Destination location we need to create below rules.
• Create Properties
→Connect File will place the "Txt, CSV, EXcel" file into destination location.
→In Connect File we will specify the Destination path and File Name.
• Create Activity
In a Activity we will call the Connect File rule by using Connect File Method and
write a logic to insert the data into EXcel or txt or CSV files.
9.3 Agents
Agent is a internal backgroup Process, Automatically it will run the activity based
sometime interval like "Seconds, Min, Hours, Daily, Weekly, Monthly, Yearly and
Timezone" bases.
Periodic:-If we want to run the Agent Activity based upon "Seconds" then we
will select "Periodic"
Recurring:- If we want to run the Agent Activity based upon "Daily, Weekly,
Monthly, Yearly and Timezone" then we will select "Recurring"
Startup:- If we want to run the Agent Activity when we are starting the Server
then we will select "Start Up".
TYPES OF AGENTS:
• If we go for Standard Agents, Pega itself will handle Exceptions and locking
Mechanism. For Example If Any one the Work object is failed to process or update
then it will go to the Broken Queue. Pega automatically it will requeue the Broken
Queue Work Objects and process again.
• Standard Agent will follow the "Auto Queue Management (AQM)" means it will
follow "FIFO"
→All the Queued Work items will be stored into "pr_Sys_Queues" Data base
table.
• Advanced Agents will not follow the "Auto Queue Management (AQM)"
Agent Scheduler:
• Agent scheduler will take care to run the agent activity based upon time intervals.
• Agent Scheduler rule no need to create manually. when we created a agent rule,
Pega itself will create the agent scheduler
Note:-Agent Scheduler rule no need to Deploy into other environment’s like SIT
OR UAT or PROD
Note: if we want to reschedule any agent or we want to run the agent activity
Again then we need to update the "Agent Scheduler".
IN PEGA 8V
➔ Select the Agent,Now we can see the List of agents available in our
Application
➔ Which agent we want to trace, we need to select that particular agent and
click on Trace.
IN PEGA 7V
➔ Select the Agent,Now we can see the List of agents available in our
Application
➔ Which agent we want to trace, we need to select that particular agent and
click on "Delay"
System-Message-QueueProcessor-DelayedItem → pr_sys_delayed_queue
System-Message-QueueProcessor-BrokenItem → pr_sys_msg_qp_brokenitems
System-Queue-DefaultEntry → pr_Sys_Queue
System-Queue-ServiceLevel → pr_sys_Queue_sla
9.4 Queue Processor
1. In a Queue Processor, PEGA will use the Kafka Messaging Queue or System to
queue the work objects to Queue Processor.
2. Each Kafka Messaging Queue or System will have 20 partitions means at a time
it will process 20 work objects.
Note:
• SLA Related Queue Work objects will stored into pr_sys_Queue_sla table.
4. We can define the SLA (Time and Urgency) To complete the Particular Stage
2. We can define the SLA(Time and Urgency) To complete the Particular Process
1. We can the New Process from "pyDefault" Case Type rule under Stages Tab
2. Open Case Type from Cases Explorer → Select the Stage → Click on Dotted
symbols → Add Process → New Process
How to Add the Parallel Process to Stage
1. If we want to run the two Processes(Flows) parallelly then we can add the
Parallel process from Case Life cycle.
2. Open Case Type from Cases Explorer → Select the Stage → Click on Dotted
symbols → Add Parallel Process → New Process
2. Open Case Type from Cases Explorer → Select the Stage → Click on Dotted
symbols → Add Alternative Stage.
2. By using "ChangeStage" local action we can jump from one stage to another
stage
3. By using "pxChangeStage" PEGA OOTB activity we can jump from one stage
to another stage
Ex:Leave Request
pyApprovalResult=Approved
How to Add SendEmail Automation shape in a Case Life Cycle
How to Add the Create PDF Automation shape in a Case Life Cycle
By using Case Match rule we can indentify the duplicate cases in pega.In a Case
Match rule we will specify the "Must match conditions and Weighted match
conditions" to find the duplicate cases.
Dish Tv
Raised
Note:-In case Type under "Settings" tab we have "Create temporary case
until r eaches to “Persist shape" check box is available. we need to check
that check box to create temporary cases and include in Persist automation
shape in a flow.
Note:
• when we are in child Case, Child Case data is availble in a clipboard under
User Pages with page name "pyWorkPage" and parent data is available in a
clipboard under pages with page name "pyWorkCover"
Vehical V-11
Health
Fire
Note: Data Propagation is a nothing but copying the data from Parent case to child
case or Child case to Parent Case
1. In a Parent Case type under "Settings" Tab we have "Data Propagation" option
is available, there we can map the parent case and child case properties
When we are child Case, First We will open Parent Case by using Obj-Open-By-Handle
Method activity passing "pxCoverInsKey" and set the Child case data to parent case by
using Property-set method. Now we need to call the activity while submitting the child
case.
• Call the Activity in child case flow action under post processing
1. In a Case life cycle under "Settings" tab we can specify the Whether it is default
locking or Optimistic Locking
2. In a Child Case, Locking strategy is inherited from parent case type
3. If we want to give the access to work on the parent case and child case different
users same time then we need to check the "Allow other users to access parent
case when the child case is opened" check box in a child case under "settings"
tab
4. All the Locking related data will be stored into "pr_Sys_Locks" Table
➔ Default Locking means only one user can work on any particular case at a
time.
➔ Optimistic Locking means multiple users can work on any particular case
same time.
Obj-Open,Obj-Open-By-Handle,Open-Delete-By-Handle,Obj-Refresh-And-
Lock and "acquireWorkObject" pega ootb activity
when are comminting the Work object,pega automatically it will release lock
from "pr_Sys_Locks" Table.We need to check the "Release on Commint" check
box under Obj-Open, Obj-Open-By-Handle, Open-Delete-By-Handle and
ReleaseLock Pega ootb activity
1. If we want to associate any interested work party to our case Life cycle then we
can define the work Party.
2. Work Party rule can be called in a case Life cycle under Settins tab we have
"Participants" option is availble,there we can call the work party roles.
3. By using "addWorkObjectParty" pega ootv activity we can call the Work Party
rule.
Ex:pyWorkPage.pyWorkParty(Owner)
Ex:pyCaseManagementDefault
Ex:Complaint