Você está na página 1de 162

Section 1 – Common Terms

>> Delivering Value

5
BPM

A business process is a set of coordinated tasks and


>> Delivering Value
activities, conducted by both people and equipment
that will lead to accomplishing a specific
organizational goal

What is BPM

BPM (Business Process Management) -


Automation of business processes, in whole or in
BPM stands for… part, where documents, information, or tasks are
Business Process Management passed from one participant to another for action,
according to a set of rules.

A business process is a logically related set of


workflows, work steps, and tasks that provide a
product or service to customers. BPM is a mix of
process management/workflow with application
integration technology.

6
BRE

Business rules represent policies, procedures


>> Delivering Value
and constraints regarding how an enterprise
conducts its business

What is BRE Organizations have policies in order to


satisfy the business objectives, satisfy
customers, make good use of resources, and
conform to laws or general business
conventions
BRE stands for Business rules become requirements, that
is, they may be implemented in a software
Business Rules Engine system. BREs can be used alone or in
conjunction with other technologies, like
Business Process Management (BPM)

E.g., BR177 Gold-level customers are eligible


for free shipping when order quantity > 10
A business rules engine is a software system
that executes one or more business rules in a
runtime production environment

7
PRPC

>> Delivering Value


PRPC is a business process management
system that combines a PegaRULES™
enterprise rules engine with tools for
developing, executing, and evolving
enterprise-wide business applications.
What is PRPC

Most BPM solutions provide workflow


capabilities – receiving, routing and
reporting on work across the organization.
PRPC stands for Process Commander accomplishes these
tasks automatically and goes beyond
PEGA RULES Process Commander traditional workflow management to
complete work, eliminating most manual
processing

Process Commander offers dozens of built-in


business processes to manage work between
humans and systems, as well as extensive
process monitoring and reporting tools to
provide dynamic Business Activity
Management.

8
Knowing
>> Delivering
BPM, Value
BRE & PRPC,
Now let us see how does
the PRPC system
architecture look like…

9
PRPC System Architecture

• When installed
>> Delivering Value PegaRULES
Process
Commander
creates the
PegaRULES
database in the
database of choice
and is installed as
a servlet in the
application/web
server.
• The Application
server/PegaRUL
ES engine
communicates
with the
PegaRULES
database/RDBM
S through JDBC.
• The RDBMS and
application server
need not be on
the same machine

10
Application Server

What is Application Server


>> Delivering Value

Application Server is software that is dedicated to the serving (running) of other applications

• Facilities
• Programming Productivity
• Provides dedicated standard API’s
• Response to Demand
• Provides Scalability, load-balancing,
reconfiguration, deployment
• Integration with existing systems
• Provides standard services
• SOAP
• Message Queue
• DB Access
• Security

11
JAVA

What is JAVA
>> Delivering Value

Java is an object-oriented programming language developed by Sun Microsystems

• JAVA is compiled to byte code which is


run by a Java Virtual Machine
• JAVA Virtual Machines (JVM) are
available for many different platforms
• JAVA code can be run on any platform
that provides a suitable JVM

12
JAVA EE

What is JAVA EE
>> Delivering Value

JAVA EE stands for JAVA Enterprise Edition


It is a platform for…
Developing and Running distributed multi-tier architecture Java applications

• Formerly known as Java 2


Platform, Enterprise Edition
(J2EE)
• The Java EE platform is defined
by a specification
• Platform vendors must agree to
certain conformance
requirements in order to declare
their products as Java EE
compliant

13
Multi-tired Architecture

What is Multi-tired Architecture


>> Delivering Value

It is a client-server architecture in which


an application is executed by more than one distinct software agent

• The J2EE standard facilitates


a multi-tired architecture
• Often referred to as n-tier
architecture

14
EJB

What is EJB
>> Delivering Value
EJB stands for Enterprise JAVA Bean.
It is a server-side component that encapsulates the business logic of an application

EJB’s are deployed in an EJB container within the application server

15
JAVA Servelets

What is Java Servelets


>> Delivering Value
JAVA Servelets are Java Programming Language classes
that dynamically process requests and construct responses

• Servelets are deployed in a web container


within the application server
• Servelets typically generate HTML

16
JAVA Server Pages

What are>>
JavaDelivering
Server Pages Value

JAVA Server Pages are text based documents.

• May contain HTML tags


• Contain Java specific tags
• May contain Java code pieces
• A JSP compiler is used to generate a
Servlet from the JSP page
• Typically, produces HTML

17
JAVA Database Connectivity

What is Java Database Connectivity


>> Delivering Value
It is an application programming interface (API) specification for database connectivity

Encodes Database request statements in


structured query language

18
Section 2 – PRPC Features and Benefits

>> Delivering Value

19
PRPC Features & Benefits

>> Delivering Value


& Intuitive rule forms ease development and business
user change
& Richer applications with forward and backward
chaining
& Easy to test and deploy
& Advanced technology for saole and performance
& Build rules applications graphically – Microsoft
Visio provides a graphical front end to the rule
base, enabling users to connect and link a variety of
built in rules to create powerful rule based
applications

20
PRPC Rule Types

Declarative rules:
Compute values or Decision tree rules:
>> Delivering Value
enforce constraints
as other properties Streamline
change interfacing to
execute “If then”
types of logic

Process rules:
Manage the PRPC provides a variety of
receiving, rule types to help
assignment, organizations get started Integration rules;
routing, and quickly and maximize
performance Streamline
tracking or work interfacing
between systems
and applications

Transformation
rules:
Automate data
mapping and
parsing between
disparate systems

21
Common enterprise rulebase
Distributed rule execution

>> Delivering Value

& Powerful inheritance and hierarchical algorithms apply the right


business rule at the right time
& Distributed nodes can share a common rule base and behaves as a
single system
& Runs on multiple industry standard operating systems, including
windows, Solaris, z/OS, AIX and Linux; utilizes leading application
servers, including IBM websphere, BEA weblogic, and Apache
Tomcat
& Process and business rules reside in a common rulebase running on
Oracle, Microsoft SQL, and/or IBM DB2 relational databases
& Optimized to run at Java speed
& Open Java and XML structure

22
Deployment styles for Enterprise scalability
This can be accessed
directly from HTML,
Java Server pages, and

>> Delivering Value


portlets

User interface
integration User-
interface
integration

This can be included with other


Provides direct application- systems in your enterprise via web
Service Oriented
programming interfaces for Embedded in a services, IBM MQSeries, Java
Architecture
Java applications, including JAVA Messaging Services, Enterprise
(SOA)
the JSR-94 rules-engine API Application Java Beans, COM objects, and
and a PegaRULES-specific other popular protocols
API

BATCH
Processing

This can process flat-


text files in offline
mode to address batch
requirements

23
Organizational and Class Hierarchy, Rules
Resolutions

This chapter has five sections.


>> Delivering Value
1. The first section describes the Organizational
Hierarchy.
2. The second section introduces the Operator ID,
Access Group, Work Group.
3. The third section introduces the Rules, Rulesets and
Ruleset Versions.
4. The fourth section introduces the Class Hierarchy
Concepts and terms.
5. The fifth section is about Smart BPM concepts.

3
Section 1 – Organizational Hierarchy

Organization
At the top level,
>> Delivering Value
this identifies the
Division
company entity.
At the second level, this
identifies the highest-level
entities of the company. For
example, you might use the
structure of your company's
Unit senior management team as a
At the next level, this identifies the starting place for
division-level entities.
most specific level at which
organization information is recorded
(for example , a cost center).

Process Commander supports a three-level organizational hierarchy consisting of organizations


at the top level, divisions at a second level, and organization units as a third level. Each user
(Operator ID instance) is associated with an organization, division, and unit.

4
Basic Organizational Hierarchy Structure

Process Commander applications group organizational data hierarchically, using nested levels of
organization, division, and unit. The following structure shows a sample organizational hierarchy
>> Delivering Value
with one organization, three divisions, and four units.

Example: The above Hierarchy shows an extended organizational hierarchy. The North America and Asia divisions each have
Marketing and Sales units; each Marketing unit, in turn, has Marketing Communications and Product Management work groups.
All work group managers are afforded additional privileges by belonging to the Managers access group.

5
Section 2 – Operator ID, Access Group & Work Group

What is Operator ID
>> Delivering Value

& An Operator ID defines a user's name, password, access group, organizational setting,
calendar, and other values.
& The operator ID references an access group that contains the RuleSet versions, roles, portal
layouts, and applications available to users.
& The operator ID defines what a user is capable of doing, not what the user is allowed to do.
Three instances are created automatically when Process Commander is installed:
& PegaRULES Administrator — Default administrator created at installation
& Batch Processing — Default batch requestor created at installation
& External User — Default user for external applications
& An Operator ID data instance is sometimes called a profile. To view your Operator ID
instance, click the link containing your name in the Developer portal navigation panel.
& Operator ID instances are normally stored in the PegaRULES database as rows of the
pr_operators table.

6
Work Groups & Access Groups

When users log in with an operator ID, their organizational affiliations grant them appropriate
>> Delivering Value
RuleSet access. The ID also identifies two additional affiliations: work group and access group.

& Work Groups


Users and the work they do are tied to work
groups, which fall below units in an extended
organizational hierarchy. Users working on a
common set of items generally belong to a single
work group.
& Access Groups
Users' application permissions, portal layout,
and accessible work are controlled by access
groups. Access groups may span multiple work
groups, and typically mirror Proces Commander
job functions.

7
Access Groups
& Access groups make a set of RuleSet
What do Access Groups do versions available to set of users.
Multiple users are associated with one
>> Delivering Value
access group.
Access roles & Access group represents a person’s job
and function and allowed actions in a
privileges
Process Commander environment.
Portal & It controls the applications, work portal
layout
tabs, and groups of work (or work pools)
you can access
& Access groups are assigned to users
through their operator ID records, the
division and organization to which they
RuleSet list belong, and through requestor
Access
Groups definitions.
determine Available
work pools & Process Commander Applications use a
the user’s
combination of operator ID, access
group, and access role to control what
each user can see and do within the
system.
Work object & When users log in with an operator ID,
types that can their access group determines their
be entered
application portal layout and the
RuleSets they can access.
8
Standard Access Groups

>> Delivering Value


You are likely to use the PegaRULES: Administrators access group during the initial setup of your
Process Commander system and in the early development stages of the applications you are building.
Process Commander provides the following standard access groups:

1. PegaRULES:Administrators
2. PegaRULES:Agents
3. PegaRULES:PortalUsers
4. PegaRULES:ProcessArchitects
5. PegaRULES:SystemArchitects
6. PegaRULES:Unauthenticated
7. PegaRULES:WorkManagers
8. PegaRULES:WorkUsers

9
Section 3 – Rules, RuleSets and RuleSet Versions

What are Rules and Rulesets


>> Delivering Value
& A Rule is a named business & Ruleset stores a set of rules and related
object that defines behavior of processes of a specific application.
part of an application.
& Ruleset provides versioning and
& PEGA is a Rule Engine, security to an application.
everything is a Rule in PEGA.
All Rules are stored in distinct & There are two parts in a Ruleset
business rule database (Rule a) Ruleset Name
base). b) Ruleset Version
For example, a when
condition rule is a rule that & Each RuleSet defines a major subset
defines a test that returns of rules in the PegaRULES database,
true or false. because every instance of every rule
type references or "belongs to" a
RuleSet.

10
RuleSet Name

>> Delivering Value


RuleSet Name

Grouping Moving
Access Control Interrelated Managing the
Rules Rules Applications

Moving applications - sets of rules - from one Process


Commander system to another.

11
A RuleSet Version

What is Ruleset Version


>> Delivering Value
& A RuleSet version is an instance of the Rule-RuleSet-Version rule type.
The version number in the form NN-NN-NN, defines six digits in three
groups that characterize the evolution and development of a rule
instance, and of the application it belongs with. The three segments are
known as the major version minor version, and patch version.

& RuleSet Versions have a three-part numeric key:

For Example: 01-02-03


Where: 01 is the major version number
02 is the minor version number
03 is the patch, revision, or change number.

12
Understanding Rule Resolution

What is Rule Resolution


>> Delivering Value

& Rule resolution is Process Commander's search and lookup algorithm that uses inheritance to
search through parent classes in a defined sequence for a rule .
& It is the process by which Process Commander decides which rule to execute.
For example:
if a property rule named CreditLimit is needed at runtime in the context of a class named Delta-
CustomerCard, the system may search for a property rule with this name in several classes:
& Delta-CustomerCard
& Delta
& Work-Object
& Work
& @baseclass (the topmost class)
The search ends when a rule is found. Settings in the class rule (Rule-obj-class rule type)
define how two mechanisms directed inheritance and pattern inheritance are employed during
this search.
& Rule resolution applies to most, but not all, classes derived from the Rule- base class.
& No inheritance or rule resolution applies to external classes, even if the class name contains a dash
character.
& It uses a combination of the rule type, purpose, Ruleset name/version, class structure, and security
model to determine the rule.

13
Rule Resolution as input values

>> uses
Rule resolution Delivering Value
as input values:

& The name of the rule needed


& A starting location in the class hierarchy, often
determined by context
& RuleSet list
& The current date and time, which may cause time-
qualified rules to take precedence
& Circumstance property and value
& The value of the as-of date property
& When to use directed inheritance and when to use
pattern inheritance

14
Section Four – Class Hierarchy concepts and
terms

Section four explains the>> Delivering


following concepts Value
related to class hierarchy

Class

Class Group

Benefits of Class Group

Inheritance

15
Class

& Class defines capabilities (rules such as properties, activities, HTML forms, and so on) available to other,
subordinate classes, or to instances of the class.
& >> Delivering Value
Classes are organized into a hierarchy. The ultimate base class named @baseclass is at the top (or left). The
base classes Data-, Rule-, Work- and others are immediate child classes of the ultimate base class. Other
classes are derived from the base classes.
& Custom classes that are immediate child classes of the ultimate base class are known as top-level classes.
These are different from base classes.
& Classes can be either Abstract or Concrete.
& Abstract class cannot have any instances, appears at the top level of the class hierarchy
& An abstract class is a rule (an instance of the Rule-Obj-Class class) created to support the definition of rules,
including other classes
& A dash or minus character "-" as the last character in the class name indicates an abstract class
& A concrete class, near or at the bottom of a class hierarchy can have instances stored in the database
& Concrete classes corresponding to instances saved in the PegaRULES database are known as internal
classes
& Concrete classes corresponding to a table in an external relational database (rather than the PegaRULES
database) are known as external classes.
& Concrete classes derived from the Rule- base class are known as rule types and those derived from the Work-
base class are known as work types.
& Concrete classes don’t end with a – (dash). For example: the Rule- class and Work-Cover- class are abstract
classes, while Work-Cover-General is a concrete class

16
Class Group

>> Delivering Value


What is Class Group

& A class group instance causes the system to store the instances
corresponding to two or more concrete classes that share a
common key format in a single database table.

& Class groups are primarily used to group a set of related


subclasses of the Work- base class; such class groups are also
known as work pools.

17
Benefits of a Class Group

>> Delivering Value


& All instances of classes that are associated with a class group share a common key
definition and common lock definition. This allows the database to save the
instances as rows in one table in the PegaRULES database.
& The common key format also ensures that the same database table is accessed when
an instance is converted from one class (within a class group) to another class (in
that same class group). For example, a work object may initially be entered
incorrectly as a merchandise order, but later be reclassified as a merchandise return
request. Both work types have the same key structure and belong to a common work
pool (class group).
& Class groups can help with database table management, backup, space, and
reporting.

18
Inheritance

& Inheritance is a primary benefit of object oriented technology. Process Commander offers multiple
types of inheritance that can maximize reuse of your rules while allowing localized overriding as
appropriate. >> Delivering Value
& Inheritance allows a rule created for one class (possibly an abstract class) to be applied to other
classes that inherit from it
& RuleSet version inheritance works using three-level version numbers. For example, users who
have a version 02-15-06 in their RuleSet list inherit rules in version 02-15-05, when no rule
instance exists in 02-15-06.
& RuleSet inheritance arises through the order of RuleSet names in the user's RuleSet list. Rule
instances in a RuleSet at the top of the RuleSet list supersede others of the same name.
& Organizational inheritance is implemented through a four-level assembly of privileges and
RuleSet versions through the access group, organization unit, division, and organization.
& Class inheritance searches for rules from a concrete, lower class, up the class hierarchy to
find available rules.
& Class inheritance uses a sophisticated algorithm to find the parent classes of a specific class. Two
types of class inheritance — directed inheritance and pattern inheritance — are available
& Directed inheritance allows to name a class choosing a name that's not related to its parent's
name.
& Pattern inheritance the name of the parent class is a prefix portion of the name of the class,
based on the dash (-) characters

19
Section Five – Smart BPM Concepts

>> Delivering Value

Work
Flow

Work Assignments
Object Common
Terms

Work Work
Parties Basket

20
Work Group and Work Baskets

What is Work Group What is Work Basket


>> Delivering Value

& A work group can identify a user & A workbasket is a named queue of open
who is a supervisor, and a set of assignments that are not associated with an
workers and workbaskets that operator.
report to that supervisor.
& A workbasket can be linked to an organization
& For the supervisor of a work group, unit, a work group, and a calendar.
the My Group area of the Process
Work space provides quick access to & Based on access settings, all the operators in a
the worklists and workbaskets unit can access work assignments in the
associated with the group. workbasket.Assignments are transferred
automatically to users based on their current
& Work group information is not work loads and skills.
related to the three-level
organizational hierarchy consisting & During system installation, one workbasket
of unit, division, and organization. named default@pega.com is created, as a last
Work group membership does not resort for routing of assignments.
affect a user's RuleSet list.
& During execution of a flow, a router task can
choose which workbasket is most appropriate to
receive a newly created assignment.

21
Assignments

What are assignments


>> Delivering Value

Assignments leave a work basket in three ways

An application
Users who are can automatically
qualified can remove route assignments Managers can transfer
an assignment from in a workbasket to assignments from a
the workbasket to users based on workbasket to user work
process the work schedules, lists.
assignment. due dates, skills,
workloads, and
other factors.

22
Work List

>>
What Delivering
is Work List Value

Worklists are lists of open assignments assigned to specific users.


A work list is created automatically when an operator is created.
A work flow activity routes assignments to a specific user's
worklist.

It lists open, outstanding (not complete) assignments waiting for


user to perform them.
Thus, a worklist display shows selected instances of the
Assign-Worklist class.

23
Work Objects

What is Work Object


>> Delivering Value

A work object is the primary unit of work completion in an application, and the
primary collection of data that a flow operates on.

As an application is used, work objects are created, updated, and eventually closed
(resolved). Every work object has a unique ID (property pyID), an urgency value, and a
status (property pyStatusWork).

In some organizations, a work object is known by the older term work item.

24
Work Party

>> Delivering Value


What is Work Party

Work Party: A work party is a person, organization, or other actor identified


in a work object, who can be the recipient of e-mail or other forms of
correspondence.
A work object may identify no work parties, one, or many work parties.
The work party role associated with each work party identifies why a party is
present, and may determine which properties are defined for that party.

25
Work Flow

What is Work Flow


>> Delivering Value
& A Flow is the fundamental representation of business Process in Process
Commander.
& Flow defines the sequence of processing that your application applies to work objects.

How the work objects Progress


through the system

A Flow governs How the work objects are created

How the work objects are resolved.

26
Standard Flow Shapes

>> Delivering Value


Flow Symbol

Connector

Assignment

Router
Standard Flow Shapes are

Utility

Decision

Flow End

27
Rule Types in PRPC

This chapter has six sections.


>> Delivering Value
1. The first section describes the Properties.
2. The second section describes the standard Harnesses,
Sections and HTML Rules.
3. The third section describes the activities.
4. The fourth section describes flows, their types and
different flow shapes
5. The fifth section describes the types and uses of
Decision Rules.
6. The sixth section describes the types and uses of
Declarative Rules.

3
Section 1 : Property

What is a Property

>> Delivering Value


& Property is similar to instance variable in Java or C++.
& Property defines and labels a value that can be associated with a class.
& Properties are used to hold data in work objects, so it can be a part of
your application RuleSet.

Defining initial property


values in model

Properties are used in Setting values in


activities

Specifying values to display


on forms

4
Standard Properties

Standard Properties
>> Delivering Value

px: computed properties that py : user can enter or change


user can see on a form, but via direct input
can’t directly enter or change.

pz : Reserved for internal


process commander use.
User can’t see, enter or
change it

5
Property Parameters

>> Delivering Value


Property has the following parameters

Property types determine


the kind of data that values Property modes
of the property represent determine how the
Text, Password, Integer, system represents the
Double, Decimal date, True property data
or False etc.

Property
name

6
Property Modes - String Based Modes

>> based
String Delivering
modes Value

& Single Value: Select Single Value to create a property that can contain
a single text string value. Text, numbers, dates, Boolean values and
amounts are stored in Single Value mode properties.
& The standard Single Value property named Work-.pyID holds the
system- assigned unique identifier for a work object.
& Value List: Select Value List to create a property that can contain an
ordered list of single values. There is no maximum number of entries.
& Value Group: Select Value Group to create a property that can contain
a un- ordered group of single values.
& If you create a Value Group property named Birthday, you can use it
in your future configuration to hold a group of values.

7
Page based Modes

Page based modes


>> Delivering Value

& Page: Page is a data structure that contains name-value pairs.


& Some clipboard pages may contain other pages, either as embedded
pages or as the value of a property that has a property mode of Page,
Page List or Page Group. These pages may in turn contain other
pages.
& Page List: A Page List mode property is a data structure consisting
of an ordered list of zero or more embedded pages, each identified
by an integer index .
& Page Group: A Page Group is a data structure consisting of an
unordered set of pages, each identified by a string index value.

8
Java based Modes
Java based modes

>> Delivering Value


Java Object: Java Object is selected to indicate that this property holds on the
clipboard a reference to an instance of a Java object.
Java ObjectList: Select Java ObjectList to indicate that this property can contain
an array of Java objects.
Java ObjectGroup: Java Object Group is selected to indicate that this property can
contain an unordered group of references to instances of Java objects.
Java Property: Supports the Process Commander Java pages feature that enables
your application to interact with Java objects as though they were pages and
properties on the clipboard. Java Property is selected to indicate that this property
represents a single property of a Java class that defines an external Java object.
Java PropertyList: Supports the Process Commander Java pages feature that
enables your application to interact with Java objects as though they were pages
and properties on the clipboard. Java Property List is selected to indicate that this
property represents an array property of a Java class that defines an external Java
object.

9
Associating Values with properties

Properties are added >>


to theDelivering
clipboard by Value
activities as they
execute, and by user input received through <FORM > inputs
and Submit buttons.

Using the Property-Set, Property-Set-


Special method.

You can set values into Applying a model.


properties by
Setting declarative rules.

Including the reference directive with the


INPUT keyword in an HTML rule. This
lets a user enter a value into an HTML
form.

10
Model

>> Delivering
What is Model Value

A model rule defines initial values for properties of a specific class.


A model can be applied to a new empty page of that class to set many
property values in one processing step.

11
Property Qualifier Rules

>> Delivering Value


& A property qualifier rule can supplement information in a
property rule with additional capabilities or restrictions.
Property qualifier rules are referenced on the Qualifier tab of a
property rule.

& Some of the standard Qualifier rules are pyBinaryFile,


pyCurrency, pyDecimalPrecision etc.

& For example, the pyDecimalPrecision property qualifier rule


affects how the system rounds arithmetic computations that
involve the properties that reference it.

12
Validate Rules

>> Delivering Value


& Validate rules to help users enter valid property values into an HTML
form or to validate data received from another system or source.

& A validate rule can test input values against edits defined in edit
validate rules for properties.

& To execute a validate rule during initial entry of a work object, create
a validate rule named onAdd.

& These rules test property values, typically immediately after they are
submitted on a browser form.

& Activities use the Obj-Validate method to call a validate rule to test a
set of property values.

13
The following rules can reference Validate rules
>> Delivering Value

Flow action rules, to validate user input

Flow rules, to validate user-entered parameter values

Activities, with the Obj-Validate method

Correspondence rules, to validate user responses to prompts

14
Standard Validate Rules

>> Delivering Value


The Standard Validate Rules are

Work-. Work-. Work- • Work-


OnAdd Validate Cover-.OnAdd • Cover-.OnAdd

15
Rule-Edit-Validate

>> Delivering Value


& Rule-Edit-Validate is used to validate a property value against certain rules,
and add a message to the page if validation fails.

& These can call on standard or custom Java to further test the input value.

& Use the Edit Validate form to define a Java routine that tests the validity of
an input value in an activity that processes the user input.

& The activity calls the Property-Validate method, which applies the test
defined in an Edit Validate rule.

& Use the Property-Validate method in an activity to execute the edit validate
rule when a value is submitted through a user input form.

16
Section 2 : Harness

What is Harness
>> Delivering Value

& Harness rules define the appearance and processing of work object
forms used in application to create work objects and process
assignments.
& It is a user interface. Harness form is a HTML form support users
to create, update and resolve work objects.
& Harness form is also called as work object form. Harness form
consists of Harness Sections.
& Every harness consists of one or more containers. Headers belong to
containers. A container may have a horizontal header, tabbed header
or no header.
& Each container can contain one or more sections, which in turn can
contain layouts, repeating layouts, and other sections.

17
Standard Harness Forms

New: The New forms support initial


>> Delivering Value
entry (creation) of the object.
Perform: The Perform forms support
users completion of assignments.

There are five types Review: The Review forms display the
of standard harness work objects in display-only mode,
forms with no fields changeable

Confirm: The Confirm forms accept a


text note explaining the user's reasoning
about a just-completed assignment.

Reopen: The Reopen forms support re-


opening an already-resolved work
object.

18
Harness Section

What is Harness Section


>> Delivering Value
& A Harness Section is a portion or area of a standard work object
form that is incorporated on a harness form.
& Section Rules define the form content, consisting the discrete
section that you include in the harness.
& Section rules are referenced in harness rules, and may also be
referenced in other section rules.
& Sequence of Harness Sections collectively makes the Harness
form.
& The Harness Section may contain other sections called sub
sections.
& The appearance, behavior, and contents of a section are defined
by a section rule.

19
HTML Rules

>>HTML Rules
Delivering Value

& Use an HTML rule to describe how the system is to


assemble, through stream processing, portions of HTML
displays in your application.

& HTML rules may be referenced in flow actions, flow rules,


section rules, and harness rules. For example, the input
fields on a flow action are defined through an HTML rule.
You can also use HTML rules for data mapping in
services and connectors.

20
HTML Property

& Use HTML Property >> Delivering


rules Value
to control how properties appear on
work object forms, correspondence, and other HTML forms, for
both display and for accepting user input.
& Use Rules Inspector to identify HTML rules. A small H
identifies the visible presentation of an HTML rule or HTML
fragment rule.

Examples:
& Date: Presents a localizable date in Date format, Calendar icon,
and several formats depending on parameters.
& PromptSelect: On input, presents a drop-down selection list of
values determined by the Table Edits tab of a property value. The
Table Edits tab can specify a Local List, Remote List, Field
Values, Prompt List, or Class Key Value.
& Text: Presents an HTML text box with a specified display size and
a maximum input length, both in characters.

21
Section 3 : Activities
Activities are the primary processing rules in Process Commander.
& Activities automate processing.
>> Delivering Value
& Activity rules contain a sequence of steps. Each step can contain:
& A method and its parameters — one of the seventy built-in basic
operations that perform computations, update properties and other
aspects of the clipboard, or move data between memory and the database.
& Flow-of-control instructions, including calls or branches to other
activities.
& Inline Java — a short snippet of Java code. Often, this code calls a
function (Rule-Utility-Function rule type). Functions are grouped into
libraries (Rule-Utility-Library rule type).
& Each activity has a type that characterizes its purpose and affects which
other rules can call it.
& When a requestor session runs an activity rule for the first time, the
system converts information from the activity rule into Java, compiles the
Java, and executes it. Later executions (of the same activity in the same
RuleSet, version, and so on) reuse the compiled Java.

22
Calling Activities

>> Delivering Value

Activities can be called from many places:

& Flow rules


& Other activities, through the Call instruction, Branch
instruction, and the Activity-List-Add method.
& Submit buttons or anchors in HTML
& Directly through a URL

23
Working with Activities

>> Delivering
Use Steps tab to define a numbered list of methodValue
calls, known as steps.
Activities may contain one or dozens of steps. Steps execute in sequence
except as described. Each row contains:
& A row number, optional label, and optional description
& Iteration instructions, for looping within a step
& Precondition — an optional True-False condition to be tested before
the method starts
& A method or instruction
& Parameters used by the method or instruction
& The step page for this method or instruction
& Transitions— optional conditions to be tested after the method
completes

24
Pages & Classes tab, Parameter tab and Security
tabs

>> Delivering Value

& Use Pages & Classes tab to list the pages used in the steps of this
activity.At runtime, the system uses information on the this tab to locate
properties and values on the clipboard. Over time, a user's clipboard
may grow to contain thousands of properties. The Pages & Classes tab
improves performance by limiting the search for a property to a specific
page or pages.
& Use the Parameters tab to identify any variables used as input
parameters to, or results from, the activity.
& Use the Security tab to specify the activity type and optionally to restrict
which users (or other requestors) can execute the activity

25
Section 4 : Flow

What is Flow
>> Delivering Value

& A flow rule defines a business process or part of a business process.


& A flow rule governs how work objects are created, progress through the
system, and become resolved.
& They determine who works on a work object in what sequence, what
decisions and processing occur automatically, and other aspects of the
business process.
& A flow rule consists of a network of shapes and connectors (lines), each
with associated parameters and values.
& Flow rules are normally stored in the PegaRULES database as rows of the
pr4_rule_flow table.

26
Types of flows

Types of flows Value


>> Delivering
1) Straight-through process: A flow rule that contains no
assignments, and so can execute from start to end without human input.

2) Screen flow: A flow rule that consists only of assignments or decision


and meets other criteria.

3) Starter flow: A flow that creates a new work object.

4) Sub flow: A flow that is called by another flow.

5) Parent flow: A flow that is calling another flow.

27
Flow Design Shapes
There are different flow shapes present in Visio, which helps in building up a flow.

Start task >> Delivering Value


Flow end task

Comment task Fork task

Assignment task
Integrator task
Assignment Service task
Notify task
Connectors
Router task
Decision Task
Spin – Off Task
Call or branch to a sub flow Split – Join Shape

Split – ForEach Pools and swim lanes

Ticket Utility
28
Start Task and Comment Task

Start task Comment task


>> Delivering Value

& Every flow has one start shape. It


doesn’t have any incoming
connectors. & These tasks have no effect on
processing.
& This is the beginning of the flow
rule. & It is used for documenting the flow.
& A start shape is always present, & It is used for entering the
when a new flow rule is created. description about the flow.
his start shape hardly needs
alteration

29
Assignment Task & Assignment Service Task

Assignment task Assignment Service


>> Delivering Value
task

& Assignment task is added to the flow,


when there is a requirement of a & This task is used to pass control to an
human judgment and input. external system using a connector
(connect rule).
& An assignment should always be
followed with at least one flow & Assignment Service tasks support
action. asynchronous coordination with
external systems, in contrast to the
& The assignment usually appears on Integrator tasks, which support
the worklist of the user. synchronous connections.

& By adding a router, the assignment & Both integrator task and assignment
can be sent to some other user or to service task reference an activity of
a work basket. type connect.

30
Connectors and Decision Tasks

Connectors Decision Task


>> Delivering Value

& Decision task is used to reference a map


value, decision tree, and decision table or
Connectors are used to connect a a Boolean expression that when evaluated
shape in the flow with the next produces a value, which is the basis of the
shape in the flow, to indicate a branching in the flow.
path between the two.
& At runtime, the system evaluates the
decision rule based on inputs from the
flow and the work object, and chooses one
of the outgoing connectors based on the
result. No user interaction or input is
required.
& For example, a decision shape for a credit
card processing application may select
one of three paths A, B, or C in the flow
based on two input values — a card type
(Standard, Silver, or Gold) and an amount.

31
Call or branch to a sub flow and Flow end task

Call or branch Flow end task


to a sub flow >> Delivering Value

& Define an end of the flow by dragging the


Flow End shape to the diagram and dropping
& This flow is used to reference a it. A flow may contain none, one, or multiple
call or a branch in the flow. Flow End shapes.
& A branch to another flow, without & When processing reaches this shape, no
any return. further processing by this flow rule occurs. If
this flow was called as a subflow by another
& A call to another flow, with a flow, processing continues in the calling flow.
return.
& The work object may remain open when it
& Part of a Split/Join or Split-for advances to a Flow End shape. Processing in
Each shape. a separate flow may advance the work object
farther towards eventual resolution.
& A flow rule that is branched to or
called by another is sometimes & Flow processing automatically saves the
informally called a subflow. work object ( using the Obj-Save method )
when a Flow End shape is reached, unless
work object is temporary.

32
Fork Task and Integrator Task

Fork task Integrator task


>> Delivering Value

& Use the Fork shape to represent a


point where the flow execution & An integrator task identifies activity
chooses one of a few different that connects your process
paths ( connectors ) based on test commander system to an external
on the work object. system to send or receive data.

& At runtime, the system evaluates & Example: an integrator task can
the conditions on each outgoing connect to a customer database to
connector, starting with the retrieve account balances or verify
connector assigned to the highest account numbers and status.
likelihood.
& Integrators tasks use activities (with
& The execution continues along the Connect as the Activity type ) that
first connector that evaluates to call connector rules ( Rule-Connect-
True. rule types ).

33
Notify Task and Router Task

Notify task Router task


>> Delivering Value

& Connect a Notify shape to an


assignment to cause flow rule & A router activity determines which
to send correspondence to a workbasket, worklist, or agent is to
work party (identified in the receive an assignment.
work object) reflecting the
creation of the assignment & Associate a router activity with
instance . each assignment, unless the
& The system creates this assignment is always to appear on
correspondence as the the worklist of the current user (
assignment is created, not later the one who is currently
when the assignment is executing the flow rule).
performed.

34
Spin- Off Task and Split-Join Shape

Spin – Off Task Split – Join


Shape
>> Delivering Value

& When a work object advancing & It is used to complete multiple subflows
through a flow reaches the Spin- in our flow before executing the current
off shape, Process Commander flow.
starts execution of a different flow, & These flows may be unrelated but execute
using the current or a different parallel. For example a mortgage
work object. application workflow may require that
& Processing in the current flow rule facts about the home buyers be validated
continues in parallel (sub flow), and a title search to be completed. These
without waiting for the other flow two tasks are unrelated and can be
to complete. performed in subflows that proceed
independently and parallel.

35
Split – ForEach and Pools & swim lanes

Split – ForEach Pools and swim


>> Delivering Valuelanes

& The Split-ForEach task provides


a form of searching or
enumeration over the pages in a
property. Processing in the
original flow pauses while the Pools and swim lanes are used to define
sub flows execute. separate processing performed by
different organization units within one
& Processing in the original flow division or that depend on the value of a
can resume after all the subflows work object property.
complete, or after any one of
them completes.
& This is used to iterate over the
pages of the page list or page
group property.

36
Ticket and Utility

Ticket Utility
>> Delivering Value

& A utility task is an activity that can


update a work object without
The ticket is used to mark the starting human input.
point for exceptions that may arise at
any point in the flow such as & It may perform computations,
cancellation. searches, retrieve data from
another system, make a decision
affecting the course of the flow,
and so on.

37
Screen Flow Rules

>> Delivering Value


& A flow rule that asks a user to complete a sequence of simple forms
is known as a screen flow.
& This restricted category of flow rules provides an effective way to
simplify input processing and present questions that depend on the
answers to previous question.
& A user can decide to change the answer to an earlier question by
backing up in the flow.

38
Section 5 : Decision Rules

What is Decision Rule


>> Delivering Value
Decision Rules define computations and comparisons that may cause
processing to continue along one path or another.

Decision Rules are categorized in to:

When Decision Decision Map


Condition Tree Table Value
Rule Rules Rules Rules

39
Decision Tree Rules and Decision Table Rule

Decision Tree Rule Decision Table Rule


>> Delivering Value
& A decision tree rule defines a series
of tests that are performed on
property values to allow an & A decision table is a rule defining
automated decision. a series of tests performed on
property values to allow an
& Decision Tree uses if/then logic to automated decision.
calculate a value in a user friendly
table format based on rows of & We can incorporate decision
property values, computations, and tables in a flow rule using the
comparisons. Decision task shape.
& We can incorporate decision trees in & In an activity, you can evaluate a
a flow using the Decision task shape. decision tree using the
Property-Map Decision Table
& In an activity, you can evaluate a method.
decision tree using the Property-
Map-Decision Tree method.

40
When Condition Rule

>> Delivering Value


& When Conditions are the simplest decision rules.
& A when condition rule evaluates a relationship among one or
more property values, and returns true or false.
& These rules are based on simple if/then/else constructs.
& We can reference when condition rules in activities and flow
rules.
& For example, each step in an activity can reference a
precondition when condition and a transition.
& Fork shape is used to represent a When Condition in a flow.
& Multiple when connectors can branch from a Fork shape.

41
Map Value Rules

>> Delivering Value

& A map value rule is a rule that converts one or two input values
into a single result. Where the decision criteria fits a table or
matrix structure.
& In a flow rule, you can reference a map value rule in a decision
task.
& In an activity, you can evaluate a map value rule using the
Property-Map-Value method or Property-Map-Value-Pair
method.
& A map value rule can call another map value rule. This process
is called Cascading

42
Section 6 : Declarative Rule

What is Declarative Rule


>> Delivering Value

& Declarative rules are evaluated automatically whenever needed to


satisfy certain conditions.
& Allow for dynamic processing of property values do not need to be
explicitly called.
& Declarative rules need / should not be refereed from any rule.
& The primary benefit of declarative processing is that the system,
rather than the developer, controls when computations are
processed

43
Declarative Processing

>> Delivering Value


& Declarative processing simplifies your application and reduces
the number of activities you must create.
& The declarative processing facilities support operation of four
rule types:
1) Constraints rules
2) Declare Expression rules
3) Declare OnChange rules
4) Declare Trigger rules

44
Forward and Backward Chaining

What is Forward Chaining What is Backward Chaining


>> Delivering Value

& Forward chaining provides the & Backwards chaining executes Declare
automatic calculation of the property Expression rules when a value is
by executing the declarative rule, when needed for a property, rather than
any one of the input property value is when inputs change.
changed.
& For example, if the Area property & For example, if the Area property
depends on the Length and Width depends on the Length and Width
property, then forward chaining causes property, then backward chaining
the Area property to be recomputed causes the Area property to be
each time either Length, or Width recomputed each time the Area
value changes. property is required/ referred.

45
Types of Declarative Rules

>>are
Declarative Rules Delivering Value
categorized into

Declare
Expressions
Declare
Trigger

Declare
Constraints Declare Declare
Index OnChange

46
Declare Expressions

>> Delivering Value


& These set the value of a property automatically based on its relationship to
and changes in other properties.
& These can be created for properties and will have typically same name of
the property.
& R-D-E facilitates automatic computation of the property value, basing on
changes of other property values.
& For example, we can declare a R-D-E for property called “Area”, so that
whenever its value is accessed from clipboard, its value is equal to the
product of properties, Length and Width. Once the R-D-E is saved for the
property “Area”, any change to a Length or Width value, regardless of
how it occurs, causes an immediate recomputation of the value of the
Area property

47
Declare Constraints & Declare Index

Declare Index
Declare Constraints >> Delivering Value

& Declarative constraints check the value & Declare Index rule are defined for
of a property automatically based defining criteria under which
on its relationship to and changes in Process Commander automatically
other properties and/or static values. maintains index instances for
faster access.
& The system evaluates constraints
automatically each time a property & Indexing can improve performance
identified in a constraints rule is and facilitate reporting.
changed.
& Index instances are sometimes
& This technique is known as forward called alternate keys or secondary
chaining. keys.

48
Declare OnChange Rules & Declare Trigger

Declare OnChange
Rules Declare Trigger
>> Delivering Value

& Declare OnChange rules can be used


to run an activity automatically
whenever the value of a specified & A trigger rule identifies an activity
property changes. that runs automatically whenever
& This capability provides a form of an object of a particular class is
automatic forward chaining. saved in or deleted or updated from
the database.
& For example, we can create a declare & Triggers implement forward
OnChange to call an activity that sends chaining.
a mail to an employee whenever either
HRA or Basic or Special Allowances
are changed.

49
Binary File

>> Delivering Value


&A binary file is any file that does not contain only text
characters.
&We can create a binary file rule to include a graphics file, such
as an image including GIF, JPG, or PNG files) or other non-text
files in your application as a rule
&Binary file rules can also hold non-image text files, including
ActiveX controls (OCX file type), Windows libraries (DLL file
type), Adobe Flash files (SWF file type), or Adobe PDF
documents (PDF file type).
&Any rules that contain HTML, such as harness, section, and
correspondence rules, can reference binary file rules.

50
Relation between Work Objects, Covers and Folders

This chapter has four sections.


>> Delivering Value
1. The first section describes Work Objects and their creation.
2. The second section describes about Covers and covered objects.
3. The third section explains about Folders
4. The fourth section describes the relation of folders with covers and
work objects.

3
Common Terms

>> Delivering Value

Folder

Work Cover
Object Common
Terms

Work Work
Object ID

4
Section 1 - Work Objects

What>>
is Work Object
Delivering Value

A work object is a primary unit of work completion in an application, and a


primary collection of data that a flow operates on.

As an application is used the work objects are created, updated and


eventually closed i.e. it will be resolved

Every work object has a unique ID (property pyID), an urgency value, and a
status (property pyStatusWork).

5
Work Object ID

What is Work Object ID


>> Delivering Value
& A work object ID is a permanent, external identifier of a work object, the value of property pyID. This value has an
optional prefix portion, a number, and an optional suffix portion and is unique system-wide.

& The standard activity named Work-.GenerateID uses the standard properties pyWorkIDPrefix and pyWorkIDSuffix in
its computation.

& By convention, an ordinary work object ID has a prefix of W-nnnnn and no suffix, so W-9432 identifies such an object.
Conventionally, a cover object ID has the format C-nnnnnn, and a folder object has the format F-nnnnn, where nnnnnn
is a system-assigned decimal number.

& Normally the system assigns a work object ID automatically as it creates a work object, using a prefix set in the model
rule of the work type or work pool.

& The internal class Data-UniqueID supports work object numbering, and ensures that work object IDs are unique

& The property Data-UniqueID.pyPrefix holds the prefix and is the key to instances of this class.

& The integer property Data-UniqueID.pyLastReservedID holds the highest assigned number

& The property Data-UniqueID.pyOrganization, a key part, is not filled in by standard rules.This property value is left
blank so that work object IDs are unique system-wide.

& The Work Object ID is stored in the pc_data_uniqeid table.

6
Section 2 : Cover and Cover Objects

What is a Cover and


>>Covered Objects Value
Delivering
A cover is a work object that is also a parent to one or more related work objects.
A cover work object provides a means to coordinate processing of related work
objects

& The Cover object and Covered objects have a parent-child relationship (one-
many) in which Cover is the parent and Covered are the children.

& Cover objects will contain the prefix ID as “C-“

& The cover facility has many practical benefits.


• For example,
If a single customer request causes a user to create three separate work
objects, these work objects may follow separate flows, be handled by
separate departments, and not otherwise affect each other.
• The cover object provides a way to consolidate, view, and manage the
outstanding service requests of this customer. After all three covered work
objects become resolved, the cover work object can be resolved.

7
Developer facilities for covers

Internally, a cover is a work object that is an instance of a concrete class derived from
>> Delivering Value
the Work-Cover- abstract class. The system includes harness rules, flow action rules,
and activities that support working with covers. The covered work objects can be of
differing work types. However, the work type of the cover and the work type of the
covered objects must all belong to the same work pool.

• Locking — By default, locking a covered work object also locks the cover work
object. This is desirable because the cover work object may contain totals,
balances, counts, or other derived values that require single-threaded access.

• Flow actions — The standard local flow actions Work-.AddToCover, Work-


.AddCovered, and Work-.RemoveFromCover allow user management of cover
contents.

8
Developer facilities for covers ( continued)

>> Delivering Value


• Page Names — By convention, a cover work object occupies a clipboard page
named pyCoverPage; the covered work object is on a page named pyWorkPage.
Many standard activities depend on these naming conventions.

• Ticket — The standard ticket rule Work-Cover-.AllCoveredResolved alerts a cover


flow that all the member work objects are resolved. If your application is to
incorporate this constraint, include this ticket in the flow rule or rules for the cover
work object.

• Harness rules — The Work-.NewCovered harness rule supports entry of a new cover
and cover members.

• Process Engine API — Activities Work-.AddCoveredWork, Work-.AddCovered, and


others support operations with covers.

9
Section 3 : Folder Object

What is a Folder Object


>> Delivering Value
• A folder object is a work object in a concrete class that inherits from Work-
Folder.
• A folder object holds a collection of one or more other work objects which
themselves may be basic work objects other folders and cover objects.

In contrast to covers:
& One work object may be associated with multiple folders, but only with one
cover.
& Members of a folder can belong to different work types, which need not
belong all in a single work pool.
& The relationships between folder work objects and their contents may be
many-to-many.

10
Purpose of Folders

>> Delivering Value


The main purpose of folders is to maintain
the Parent child relationship between the
Folders, Covers and Covered work objects.
For example if we have five work objects that
are dependent on each other then we use the
concept of covers and if the work objects are
independent then we use the concept of
folders.

What is the
purpose of
Folders

11
Section 4 - Relation Diagram of Folders, Cover & Covered
Objects

>> Delivering
Work Objects process evolving Value
Covers tightly coordinate
information about an processing on several related
individual unit of work work objects

Work Objects Covers

Folders

Folders loosely package other


work objects, covers or folders
for review and analysis

12
Examples of Work Objects, Covers and Folders

>> Delivering Value


Consider a purchasing application where a basic work object is a line item on
a single purchase order.
& The purchase order corresponds to a cover object.
& Every line item belongs to one purchase order.
& Folders organize open purchase order line items by our part number and
also by the vendor’s part number.
& A folder work object (in Work-Folder-OurPartNum work type) may be
associated with veral line items, and one line item can simultaneously
belong to a Work-Folder-OurPartNum work object and a Work-Folder-
and a Work-Folder-TheirPartNum work object

13
>> Delivering Value

Chapter Five
PEGA Reporting Features in PRPC
RULES
Process
Commander October 2008

Presentation
By
AIGSS BPM CoE

This document is the sole property of AIG Inc. All rights reserved.
Reporting Features in PRPC

This chapter has three sections.


>> Delivering Value
• The first section describes the reporting features in PRPC.
• The second section illustrates the different view report types in PRPC.
• The third section illustrates the procedure to generate reports in PRPC

3
Section 1 – Understanding Reporting Features in PRPC

>> Delivering Value

4
Process Commander

Process Commander provides multiple facilities to support reporting


>> Delivering Value
Report Wizard,
Personalization and
for guided assistance in creating
customization of
reports covering assignments,
existing reports
work objects, or data objects
Charting capabilities

Process List view rules,


Summary view
Commander for list-based reports covering
rules,
instances
for two-level
reports with
selected counts or The Obj-List method,
computations at for retrieval using SQL criteria
break levels

5
Section 2 – Viewing Reports in PRPC

The two different types of PRPC are:


>> DeliveringHow
Value
can I view
Reports???????
List View

Summary View

6
List View

What is the purpose of List View


>> Delivering Value

& List View rules are used to define a custom report or personal
version of a report
& List Views generate HTML that provides an attractive and
interactive display
& In an activity, a list view rule can be executed to provide
searching and sorting, with no display, as an efficient alternative
to the Obj-List method.
& With appropriate configuration on the Organize tab, a list view
rule can support editing of Process Commander data (property
values) in Microsoft Excel

7
List View – Process Overview

) When executing a list view rule, Process Commander uses stream processing to select,
>> Delivering Value
retrieve, and format data for user presentation
) It creates SQL statements and sends the SQL request to the Process Commander
database. The database results appear in a Page List property named pxResults of
class Code-Pega-List, which contains a Page property pxResults(1), pxResults(2), and
so on for each returned row (each object instance). After database results are available,
local sorting, filtering based on when condition rules and formatting operations can be
performed
) Results from different tables (properties from two or more classes that are in separate
class groups) can be merged into a single report. This can be achieved by using the
Join tab or by creating a Database View and concatenating the data from both tables
using a common column.
) The presentation of a list view report reflects the combined result of CSS styles. A style
sheet, referenced in the Reports field under the skin rule is used. We can also refer style
sheets for the reports under the Format Tab for List view rules.
) The list view rule can be tested directly from the run button in the toolbar or can be
executed from an activity and from a URL.

8
Comparing List View and List Rules

>> Delivering
List rule (Rule-Obj-List Value
rule type) can be used rather
than a List View rule for simple retrieval and reporting
that does not involve sorting or calculations

9
List View – Performance and Limitations

Performance >> Delivering Value


Limitations

• The list view facility works best for queries


• For performance reasons, some selecting, involving 500 or fewer rows. It does not
filtering, and sorting occurs through the support queries that contain more than 10,000
software supporting the database (such as rows unless report paging is enabled.
Oracle, IBM DB2 or Microsoft SQL • Process Commander stores the values of all
Server), while later processing of the data aggregate properties and some Single Value
occurs on the Process Commander server. properties in a BLOB column (the Storage
Selection and sorting operations done by Stream) usually in a compressed form. Such
database software are typically faster, but properties cannot support selection in list view
are limited to those Single Value properties and summary view reports, and can slow
that are exposed columns in the database retrieval and processing in other operations.
schema. Such properties should be exposed as separate
database columns to be able to display in a
report

10
Summary View

What is the purpose of Summary View


>> Delivering Value

& List View rules are used to define a custom report or


personal version of a report
& List Views generate HTML that provides an attractive and
interactive display
& In an activity, a list view rule can be executed to provide
searching and sorting, with no display, as an efficient
alternative to the Obj-List method.
& With appropriate configuration on the Organize tab, a list
view rule can support editing of Process Commander data
(property values) in Microsoft Excel

11
Summary View – Processing Overview

>> Delivering Value


) This rule generates HTML that provides an attractive, custom
interactive display or chart
) As a best practice, developers and business managers create summary
view rules indirectly, through guided processing provided by the
Report Wizard. Developers can also define reports directly by
completing the Summary View form
) Summary view rule has an option of displaying the reports in a
graphical manner. We can select the type of the chart which has to be
displayed as the result using the Chart tab

12
Summary View – Performance and Limitations

>> Delivering Value


Performance Limitations

To the extent possible,


summary view reports The summary view facility
should be designed to works best for queries
maximize processing by involving 1,000 or fewer
database software and rows. It does not support
reduce processing within queries that contain more
the Process Commander than 9,999 rows..
server.

13
Drill Down Charts

>> Delivering Value


Using two interactive charts
(each defined by summary view
rule), a list rule, and an XML
rule, your application can present
interactive drill-down charts

14
Section 3 – Generating Reports in PRPC
Select the view from the List view or the Summary View option
Step 1: Select the type of the report, the wizard mode and whether to create a new report or to
modify an existing one.
>> Delivering Value
Data Source
Step 2: This panel lists rule classes, work types, assignment types, or concrete Data- classes that
can be the source of rows for the report.
From the available options, select the ones on which the report needs to be generated.
And click the button, NEXT.

Criteria
Step 3: Define selection criteria as rows of this array. Each row can define a comparison test for
a property in the data source selected in step 2.

Group by
Step 4: Identify one or a few fields that are to become break levels in the summary report.

Fields
Step 5: Using this step, computations can be performed on the report. Computations like Count,
Sum, Average, Min and Max are performed. Thresholds can be defined to include one or
more colored backgrounds in the report.

15
Generating Reports (Continued…)
Drill Down
Select a view type to display when the user drills down on a row in the report. You can drill
down to another report or chart from the selected row. Choose either Detailed View or
Step 6:
>> Delivering Value
Summary View in the Drilldown field:
Detailed View — this view displays detailed information in the called report or chart.
Summary View — this view displays summary information in the called report or chart and
allows you to specify an additional drilldown to another report or chart. When you select this
view, a Configure button appears that allows you to configure the summary view drilldown
display.

Chart
To present the summary view report as a chart, or a chart with tabular data, select the Chart
Step 7: check box. When clicked on the Chart check box, we get different options to select for the type
of chart we need. The charts available are Pie Chart, Column Chart, Area Chart, Line Chart,
Gauge Chart, Bubble Chart

Options
Step 8: Different options, like changing the Title, adding to favorites, export to excel, customize criteria
link, customize view button and open button are available to generate customized reports.

End.
Step 9: Click on Finish button, the wizard displays the report along with the chart that is selected. This
chart can be saved.

16
Deployment

This chapter has three sections.


>> Delivering Value
1. The first section describes using products and product patches to
package an application. It also explains about Service Export
Directory.
2. The second section explains the application deployment process.
3. The third section explains importing and exporting rules.

3
Section 1 : Using Product and Product Patches to package
an application

& To move an application rules and utilities as a package and import it to on a separate process
commander system.
>> Delivering Value
& To create a package of rules from more than one Rule Set or to contain selected data instances, use a
product rule or a product patch rule.

& Product rule identifies all the RuleSets, versions, data objects, and other parts of an entire application.
This rule supports the migration and delivery of an application to other Process Commander systems.

& Product Patch rule is used to supplement the product in a previously created Product rule. For example,
you can send enhancement rules and fix rules in a ZIP file.

& At any time after you save product/product patch rule, click Create Zip File button in the Contents tab
to start the assembly of a Zip archive that contains:
& The RuleSets and versions that make up the application
& Selected data instances

& After creating the Zip from any product/product patch rule, It places the Zip archive in the Service
Export directory. Right-click to download the file to your workstation or a network drive

4
Service Export Directory

>> Delivering Value

The ServiceExport directory for a server node is a directory that can hold
files to be imported into Process Commander or that are produced by
Process Commander for export.

• For example, the Export Archive tool and Service Package facilities
create output files in this directory. The Import Archive tool finds
input ZIP files in this directory.

• By default, the ServiceExport directory is a subdirectory of the


temporary files directory on the server. You can change the default
location of this directory through the prconfig.xml setting.

5
Section 2 - Application deployment Process

Check in rules to be deployed


>> Delivering Value
Run rule reports to confirm that the
appropriate rules are checked in

Lock the RuleSet versions


The application
deployment process Create a product rule
comprises the
following steps. Create a product archive ZIP file

Upload and import the archive file to the


system

Verify the import

Rebuild libraries (Optional)

6
Section 3 : Importing and Exporting Rules

Ways of creating
>> Delivering Value
ZIP archives Import Archive
Tool

This section explains the


the following

Production Skimming a
Migration Wizard RuleSet

7
Ways of Creating ZIP Archives

>>to Delivering
What are the ways Value
create ZIP archives

& To create a ZIP archive containing rules from more than one Rule Set or to
contain selected data instances, use a product rule (Rule-Admin-Product rule
type) or a product patch rule (Rule-Admin-Product-Patch rule type).
& To create a ZIP archive containing only rules from one Rule Set, use the
Export Archive tool. This ZIP archive contains the rules to be extracted. You
can copy all rules in a specific RuleSet and version, all rules and data instances
defined in a product rule or patch rule.

8
Import Archive Tool

>> Delivering Value


& This option lets you import into a Process Commander system the
contents of an archive ZIP file produced by the Export Rules/Data tool,
the Product Package wizard, or the Product or Product Patch rule forms.

& Rules contained in the ZIP file are added to the rules already present in
this system, optionally overwriting some existing rules. Data instances (if
any) in the Zip file are added to the data instances already present,
optionally overwriting some existing ones

9
Product Migration Wizard

The Product Migration wizard enables you to automatically archive, migrate, and import a
product rule (Rule-Admin-Product rule type) or a product patch rule (Rule-Admin-Product-
>> Delivering
Patch rule type) to one or more destination systems. Value

The wizard eliminates the need to

Create the ZIP file Upload the ZIP Log into each
using the Export file into other destination system and
Rule/Data tool, or Process manually import the
the product or Commander’s rules from the ZIP file
product patch rule temporary file using the Import
forms. systems Rules/Data wizard.

10
Skimming a Ruleset

& The Skim facility causes a resetting of the RuleSet version values in the highest version of existing
rules. >> Delivering Value
& Skimming collects the highest version of every rule in the RuleSet and copies them to a new major
or minor version of that RuleSet on the same system, with patch version 01.

& For example, you can skim rules from RuleSet versions 06-01-01 through 06-13-17 to 07-01-01.

& For Major Version RuleSet Skim, the system adds one to the major part of the version, and sets
the minor and patch values both to "01".
& For example, if you want to create a major version 02-01-01 of a RuleSet, skimming takes
the highest version of every unblocked rule in version 01-xx-xx and copies it to a new
rule in major version
& 02. A rule in version 01-02-15 (assuming that is the highest version of that rule) is copied
to version 02-01-01.
& For a Minor Version RuleSet Skim, the system preserves the major version, and sets the minor
and patch version values to the version you specify.
• You can also skim a consecutive range of minor versions to a higher version. For
example, you can skim versions between 01-01-01 and 01-01-03 to version 01-02.

11
Debugging Tools

This chapter has three sections.


>> Delivering Value
1. The first section describes the Tracer.
2. The second section introduces the Clipboard.
3. The third section is about the rules inspector

3
Section 1 : Tracer

This section explains with the following topics:


>> Delivering Value
• Starting the Tracer
• Operations
• Setting Breakpoint
• Setting Watch Variable
• Setting the options

About Tracer Tool:

& Tracer tool is used to debug flows, activities, services, parse rules, and declarative
rules.
& The Tracer tool provides full debugging facilities, including step-by-step execution,
breakpoints, and watch variables. You can see in summary or detail the processing
that occurs as you or another requestor executes an activity, declarative rule, or flow
rule.
& You can pause and resume processing, view or set the value of watch variables, and
drill down to step-by-step details. You can view trace events for any requestor
connected to your server node, not just your own session

4
Starting the Tracer

To start the Tracer tool:


1. Select Run > Tracer to trace your current session and Thread.
>> Delivering Value
2. Select Run > Trace Open Rule when a service rule or activity rule is open in the
workspace. You can start the rule with the Run toolbar tool () or Pause () to stop
tracing.
3. Type the keyboard shortcut CTRL + T.

Button Function
Choose a requestor session other than your own. Wait a few
Connection
seconds until the Tracer connects.

Options Select which RuleSets, rules, and events are to be traced.

Breakpoints Set or change breakpoints.

Set or change watch variables


Watch
Save Tracer output on the workstation as an Excel CSV or XML
Save file.
After Clicking Play ( ), select to reduce the amount of clipboard
Abbreviate Events?
detail retained for each Tracer row.

5
Operations

& After selecting the connection and setting other options:


& Minimize the Tracer window.
>> Delivering Value
& Perform the work that you want to trace (or wait for it to be performed, when tracing
a requestor session other than your own session).
& Restore the Tracer window to review its results.
& As the target session runs, the Tracer display lists the events of each type that you
selected in the Trace Options dialog box.
& At any time tracing is paused, you can change any options using the buttons in the
above table. After tracing begins, you can use these buttons:

Button Function
Clear Erase the displayed events.

Pause Pause the session being traced at the next possible moment.

Resume processing after a Pause button click, or after a


Continue
breakpoint event. Appears only after a pause
Save the Tracer results in the current window into a text file in
Comma-Separated-Values format or as a more detailed XML file.
Save
You can open and print the saved CSV file with Microsoft Excel

6
Setting the Breakpoints in Tracer
Use the Breakpoint button to access the Breakpoint Configuration form. You can set
break points for specific steps in activities.
To see a list of activities:
>> Delivering Value
1. Select an Applies To class from the list in the Class Name field. Wait until a list
of appears.
2. Select an activity in this class.
3. Complete the Where to Break field. Select the step before which you want
processing to pause. Select at entry or 1 to break when the activity starts. To
break for each step, choose all steps.
4. Click Set Break . The form changes list the added breakpoint.
5. To remove a break, check the Remove box and click Remove .

Thereafter, when you (or the selected requestor connection) starts this activity, the Tracer
window acquires focus.

& To resume processing after a break, click


the Continue button ().
& If you don't resume processing for an hour
after a break, processing resumes
automatically.
& You can't review the clipboard when
processing has reached a breakpoint, as the
requestor being traced is paused.

7
Setting the Watch Variable

>> Delivering Value


& Set a watch variable to detect that processing has
changed the value of a property.
& After you set a watch variable, you can minimize the
Tracer window and use the system. Focus returns to the
Tracer window when your work causes the property value
to change.

8
Steps to set the Watch Variable

1. Click the Watch button () and complete the Watch Variable Form
Watch Variables form.
>> Delivering
2. Click Set Watch to access the detail form. ValueCompleting the field
Field
3. Minimize the Watch Variables form and
the Tracer window.
Page Name Enter the name of the page, or enter param
4. Resume other work. for the parameter page.
5. When the Tracer next detects a change in
Property Enter the property name. Don't type a
the property value, it displays a Property Name period before the name of the property.
Inspector area in the lower left area of the
Or Page Select to watch this page for page
event window. Messages messages.
6. To see the full Property Inspector window,
place your pointer at the line until a yellow
Property Inspector Window
arrow appears. Drag up until the complete
Property Inspector window is visible.
7. Click Continue to resume tracing. (If you Field Description
don't resume processing within an hour
after a break, processing resumes Reference The page and property being watched.
automatically.)
Old Value If you clicked Continue , and the Tracer
8. To end the watch, access the detail form tool finds that the value has changed, it lists
again, check the box under Remove and the previous value here.
click Remove.
Current The current value of the property.
Value

9
Setting the Options

1. Click the Watch button () and complete the Watch Variables form. Field Completing the field
2. Field
3.
4.
Completing the field
>> Delivering Value
Page NameEnter the name of the page, or enter param for the
Page Name Enter the name of the page, or enter
param for the parameter page.
parameter page.Property NameEnter the property name. Don't
Property Enter the property name. Don't type a
type a period before the name of the property.Or Page Name period before the name of the property.
MessagesSelect to watch this page for page messages.2. Click Set
Watch to access the detail form. Or Page Select to watch this page for page
5. 3. Minimize the Watch Variables form and the Tracer window. Messages messages.
6. 4. Resume other work.
7. 5. When the Tracer next detects a change in the property value, it
displays a Property Inspector area in the lower left area of the Field Description
event window.
8. 6. To see the full Property Inspector window, place your pointer at Reference The page and property being watched.
the line until a yellow arrow appears. Drag up until the complete
Property Inspector window is visible. Old Value If you clicked Continue , and the Tracer
9. Field tool finds that the value has changed, it lists
10. Description the previous value here.
11. ReferenceThe page and property being watched.Old ValueIf you Current The current value of the property.
clicked Continue , and the Tracer tool finds that the value has Value
changed, it lists the previous value here.Current ValueThe current
value of the property.
12. 7. Click Continue to resume tracing. (If you don't resume
processing within an hour after a break, processing resumes
automatically.)
13. To end the watch, access the detail form again, check the box
under Remove and click Remove .
14. Setting the Options:
15. Click the Options button () to set or adjust Tracer output options.
16. Click OK when your entries are complete.

10
Section 2 : Clipboard

>> Delivering Value

This section deals with the following concepts of


Clipboard

• Basics
• Page Category
• Usage during Development & Debugging

11
Clipboard Basics

>> Delivering Value


Each connected Process Commander requestor (including browser-based users,
even if guests) has an associated temporary memory area on the server known as
the clipboard. The clipboard has a hierarchical structure, consisting of nodes
known as pages, most of which have a name and an associated class.

Pages act as buffers or temporary copies of object instances (of that class) that are
copied from, or may later be stored into, the PegaRULES database or another
database.

The contents of a page are an unordered list of unique property names (defined as
Rule-Obj-Property instances within that class) and optionally a value for each
property.

Properties are added to the clipboard by activities as they execute, and by user
input received through <FORM > inputs and Submit buttons. In addition to
property names and values, pages can contain messages.

12
Clipboard Pages

>> Delivering Value


The clipboard contains three broad categories of top-level pages:

• User pages
• Declared pages
• System-managed pages: requestor page, process page, application
page, Thread page, OperatorID, Organization, OrgDivision,

Some clipboard pages may contain other pages, either as embedded


pages or as the value of a property that has a property mode of Page,
Page List or Page Group. These pages may in turn contain other pages.

13
Clipboard usage during development &
debugging

Use the Clipboard tool when developing and debugging to:


>> Delivering Value
• Examine property values and messages associated with them
• Find the information necessary to reference a property — the page names and
the property name
• Quickly create, update, delete, and modify pages using the Action menu
• Quickly start activities and flows using the Action menu

Select Tools > Clipboard or type the keyboard shortcut CTRL + B to open the
Clipboard tool.
• The Clipboard tool displays two panels:
• The left panel displays the page structures, in a hierarchical tree format.
• The right panel displays the value of Single Value, Value List, and Value
Group properties and messages, for one page selected in the left panel.
Click the Help button () at the top right for more details on the display.
You can control whether the Clipboard tool opens in a new window or in the lower
half of the Developer workspace.
1. Select Edit > Preferences.
2. Select or clear the Clipboard box in the Tools group.
3. Click Save .

14
Left and Right panels of Clipboard

The left panel presents the entire clipboard as a


tree, growing from the left. When you select a page in the left panel, all
>> Delivering Value
Two types of pages are grouped for quick Value List, Value Group, and Single Value
properties on that page appear in the right
access: User Pages and Declare Pages.
Click a name or plus sign () to expand any panel, sorted by property name. Property
node in the left panel to view the page structure messages appear in red text.
it contains. Click again or click a minus sign () Use the left panel to click the page (either
to collapse (hide) the pages within a page. top-level or embedded) that contains the
If one of the User Pages holds a work object, property
that page is initially selected in this panel, and
details for that page appear in the right panel.

15
Section 3 : Rules Inspector

>> Delivering Value


This section explains the following concepts of Rules
Inspector

• Basics
• To Turn on rules inspection
• Working while rules inspection is on
• Results
• Interacting with the results
• To Turn off rules inspection
• Notes

16
Rules Inspector Basics

>> Delivering Value


Use the Rules Inspector tool to identify the names of:

& The top-level harness rule or HTML rule (Rule-Obj-HTML rule type) that
produced any window or form you are viewing.
& Section rules, flow action rules, paragraph rules and HTML rules that the
top-level rule incorporates through the pega:include JSP tag, the HTML-
based rules referenced by these and so on.
& Properties referenced in any of these rules.
& Properties displayed that are computed automatically by Declare Expression
rules.
& Labels and other elements on harness, section, and flow action rules marked
for localization, for which field value rules are defined.
& Identifying these names can be valuable as you update harness, section, flow
action and HTML rules to evolve the user interface of your application.

17
To turn on Rule Inspector

Four menu settings set or remove rules inspection. When these menu items are set,
>> Delivering Value
a check mark appears before the menu item. Select:

1. Run > Rules Inspector > HTML Rules to turn on marking of harness,
section, and flow action rules with an icon. The icon appears above the
visible presentation of the HTML in the rule. This menu selection also
marks HTML rules with an H icon. The keyboard shortcut is
CTRL+ALT+Y.
2. Run > Rules Inspector > Property Rules to turn on the marking of visible
properties. A small red P identifies each property reference. The
keyboard shortcut is CTRL+ALT+X.
3. Run > Rules Inspector > Declarative Rules to turn on the marking of
properties computed by Declare Expression rules. A small red D
identifies such properties. The keyboard shortcut is CTRL+ALT+V.
4. Run > Rules Inspector > Field Value Rules to turn on the marking of
portal, harness, section, and flow action elements that are marked for
localization and supported by field value rules (Rule-Obj-FieldValue rule
types). This option is most useful when testing a localized application.
The keyboard shortcut is CTRL+ALT+w.

18
Working while Rules Inspector is on

>> Delivering Value

Rules Inspector settings affect all forms presented after you turn on the settings.
To see the enhanced display for a form that's already displayed:

1. Right-click anywhere in the form.


2. Click the Refresh icon or on your portal. (If this icon isn't visible, save your
work and choose Refresh from the right-click context menu presented by Internet
Explorer.)

19
Results

>> Delivering Value


Rules Inspector settings affect all Internet Explorer forms presented after you turn
on the settings. The enhanced display contains up to four types of icons:
• A top-left yellow icon ( ) identifies the harness rule. Additional icons
identify the start of the visible presentation of a section rule or flow
action rule.
• A small H identifies the visible presentation of an HTML rule or HTML
fragment rule.
• A small red P identifies a property reference.
• A small red D identifies a property computed by a Declare Expression
rule.
• Any of the following four globe icons may appear at points on a harness,
section, or flow action rule for which the Localized check box (on the
HTML tab) is selected and a language-specific RuleSet is in use:
— A field value rule exists RuleSet for ToolTip text (in the
language-specific RuleSet).
— No field value rule exists for ToolTip text.
— A field value rule exists for the text label, caption, or value.
— No field value rule exists for the text label, caption, or value

20
Interacting with results

>> Delivering Value


You can use work object forms while rules inspection is enabled. In addition, you can
identify the rules that make up a work object form:

• Place and hold your mouse pointer over the, H, D, or P to display in ToolTip text,
the rule type and the full name of the rule.
• Click an H, P, or mark to open the referenced section, HTML, fragment, or
property rule.
• Click a D mark to view the dependency network for that property. The network
shows the current values of other properties that contribute to the current property
computation. To understand the computation, you can alter selected input values to
see the effect on the computation. Your changes do not alter the value on the form.
• Click any field value icon ( , , or ) to access the Field Value Manager,
which lets you review, add or update a language-specific field value to the current
language-specific RuleSet.

21
To turn off Rules Inspector and Notes

>> Delivering Value

Using this facility slows your session; enable it only when needed.
To turn off rules inspection, select each Run > Rules Inspector menu item again to
remove the check marks

Some standard rules have Availability set to Final (and so cannot be overridden by your
application). These rules are not marked when rules inspection is enabled.
A few properties and HTML rules marked as "internal-only" are not marked when
rules inspection is enabled

22
>> Delivering Value

Thank You

This document is the sole property of AIG Inc. All rights reserved.
Enhancing PRPC

This chapter has three sections.


>> Delivering Value
1. The first section is about building the Internal Tables
rapidly with the Data Table Editor the common
terms.
2. The second section is about using Correspondence,
Flow Actions & SLA’s.
3. The third section introduces Validations.

3
Section 1 – Data Table Editor

What can a Data Table Editor be used for


>> Delivering Value

Use the Data Editor Table to…


Allow interactive entry and update of instances of simple data
classes that contain only a few Single Value properties, such
as those defined by the Data Table wizard.

How can one start the Data Table Editor

To Start the Data Table Editor…


Select Application > Data Tables. A list of Data Tables appears.
Two standard examples are available, for the General-Product and
General-Product Area classes.
(The General- top-level class is derived from the Data- base class.)

4
Edit Data Table Class

>> Delivering Value


How to edit Data Table Class within the portal

To Edit the Data Table Class within the portal…


1. Confirm that you have the appropriate access to add, delete, and update
instances of the class.
2. Select Application > Data Tables. The system lists classes for which you have
editing access.
3. Identify one class to edit. Click the Class Name link in that row to open an
HTML form in a new window.

5
Editing Instances of a single Data Table

Editing Instances of a single Data Table


>> Delivering Value
Rows of this Data Table editor form correspond to data instances

Editing instances using the form … Editing instances using Microsoft Excel …

1. Confirm that you have the appropriate


1. Click to display a form containing only
access to add, delete, and update instances
this row, allowing it to be edited.
of the class.
2. Click to append a new row so you can
2. For the Work Manager portal, click the
add a new instance
Data Tables link in the Accelerators and
3. Click to unlock a row to allow updates
Wizards area of the Dashboard workspace.
to any value (except the key)
The system lists classes to which you have
4. Click to validate and save one instance
editing access.
5. Click to undo changes to the current
3. For the Developer portal, select View >
instance
Data Tables. The system lists classes to
6. Click to delete the instance.
which you have editing access.
7. Click <<Data Tables to return to the list
4. Identify one class to edit.
of eligible class descriptions.
5. Click Edit in Excel.

6
Data Table Wizard usage by Developers

How do developers use the Data Table Wizard


>> Delivering Value
Developers can use the Data Table editor to add, update, or delete instances of a concrete class derived from
the Data- class for which no form is defined, or other classes for which an Excel template rule is defined.
This facility allows easy entry and maintenance of data instances for classes that have a simple structure.

Developers can create additional Data Tables to edit with the Data Table wizard. One can use the wizard to
create an edit form for any class that meets these requirements:
& Derived from the Data- base class
& Contains only properties of mode Single Value
& Does not require user input for properties inherited from any higher classes
& Contains a Single Value property that defines a unique key.

After a data table is defined for the class, developers can maintain instances of the class using either an HTML
form or an Excel spreadsheet.

Note: Do Not attempt to create a Data Table class derived from the Work- base class. Work objects are not designed
to define reference data, though they may contain properties that have values from Data Tables.
The system is initially limited to 200 data tables. This limit can be increased if needed.

7
Creating Data Table Editor, Class & Properties
To create new Data Tables:
1. Select Application > Data Tables to access a list of existing Data Tables in your system.
2. Click Add at the bottom of the form.
3. >> Delivering Value
Complete the form to define the class and properties in the class.

1. Complete the Class Information form to define the properties in the new class.
2. Choose a name for the new class. The class name must not end in a dash character. Class names must be unique
system-wide.
3. Enter a description for the new class.
4. Complete the Class Information form to define the properties in the new class.
5. Choose a name for the new class. The class name must not end in a dash character. Class names must be unique
system-wide.
6. Enter a description for the new class.
7. Identify an existing class as the parent class. Choose a class derived from the Data- base class.
8. Enter a name and description for each column.
9. Select a Type for the Single Value property that will be created for each column.
10. Optionally, you can enter an edit validation rule (Rule-Edit-Validate rule type) for each property, indicate that it
is required (non-blank), and enter an expected display size in characters and a maximum display size is
characters.
11. Select a box to identify the field that identifies a unique key for each row.
12. Click Generate to create the class rule, the associated property rules, and the Data Tables editor.
13. The system creates the class and properties. Click <<Data Tables to return to the editor.

8
Class Information & Properties

Class
Information

Class Class Name


>> Delivering Value
Enter the name for a new concrete class. By convention, classes used with the Data Table
editor are derived by pattern inheritance from the Data- top-level class.
Information
Description Enter a text description of this class.
Derives Identify the parent class.
From

Properties Define Single Value properties using this array.


Key Select to indicate that this property defines a unique key to the class.
Properties Name Enter a property name. Start with a letter and use only letters, digits, and the dash character.
You can't create property names that start with px, py, or pz.
Label Enter a description of this property.
Type Choose a Type.
Mode Not used. All properties have mode Single Value.
Validation Optional. If the allowable values of this property are defined by the key values of another
Class class that has a single key part, identify that class here.
Exp. Size Optional. Enter an expected width in characters for the property value.
Max Size Optional. Enter a maximum width in characters for the property value.
Required Click to require that this property have a non-blank value.
RuleSet Identify the RuleSet for the class, rule property rules, and other Data Table rules.
Version Identify the version of the RuleSet.
Note: If you add a property (column) to a previously created data table, you must open and update the list rule (Rule-Obj-List rule type) to have the new property available to the Data
Table editor.

9
Section 2 – Correspondence, Flow Actions & SLA’s

Correspondence
>> Delivering
Correspondence is the Process Commander Value
term for outgoing e-mail messages, printed letters, or
facsimile transmissions produced by the system and its users. These are typically associated with
one work object (or a cover or folder) and may consist of text, images, or both. Create
correspondence rules to define, in HTML, templates for the content of outgoing correspondence.
Each correspondence rule contains standard text for one type of correspondence such as e-mail,
letter, or fax. JSP tags or directives allow correspondence to incorporate property values and
calculations. To send correspondence as e-mail messages, your system must contain an Email
Account data instance and connect to a mail server.

Rules of three other rule types can reference correspondence rules:


& Flow rules, using Notify tasks
& Flow action rules, indirectly through activities identified on the Action tab
& Activities

Process Commander includes more than 20 sets of standard correspondence rules that
you can use in your application, or copy and modify.

10
Standard Activities and Flow Action Rule & Types

The standard activities support correspondence generation and sending


>> Delivering Value
Called from a Notify shape in a flow. Generates correspondence to a
Work-.Notify
work party identified in a parameter

Called from a Utility shape in a flow. Generates correspondence


Work-.CorrNew automatically, not requiring any user intervention etc

Types of Flow Action


A flow action rule controls how users interact with work
object forms to complete assignments.
In a flow rule, developers can associate flow actions with
Connector Local connectors (arrows) and with assignment tasks.
Flow Action Flow Action At runtime, the flow actions associated with an
assignment determine the choices available to users as
they perform the assignment.

11
Connector Flow and Local Flow Action

Connector Flow ActionValue


>> Delivering
& Connector flow actions appear as lines on Visio presentation in the Diagram tab of a flow rule.
& A line exits from an assignment shape and ends at the next task in the flow.
& At runtime, users choose a connector flow action, complete the assignment, and advances the work object along the connector to
the next task.
& When creating a flow that includes connector flow actions, we can associate a likelihood value or percentage between 1 and 100
for each.

Local Flow Action


& A local flow action permits users at runtime to update, but not complete, an assignment. Like connector flow actions, local flow
actions are referenced inside an assignment task in a flow.
& A local flow action, when selected at runtime, cause the assignment to remain open and on the current user's work list.
& Local flow actions are recorded in the Assignment Properties panel and are not visible on the Visio flow diagram.
& Local flow actions are always optional. Users may perform none, one, or multiple local flow actions

12
SLAs

Service level rules define three time intervals, known as goal, deadline, and late
intervals. >> Delivering Value
The goal time is the smallest time interval, the deadline time is a longer interval,
and the late interval defines post-deadline times. Each time interval is in days,
hours, minutes, and seconds.
Service level rules can be associated with a work object or an assignment.
When the time interval defined by the service level is reached without the
assignment being performed (or the work object becoming resolved), escalation
occurs.
Service level rules are referenced in the assignment tasks of flow rules.
The Events tab defines three time intervals, known as the Goal, the Deadline,
and Late intervals. The optional Late values can occur once, or more than once.
When one of these time intervals is reached without the assignment being
performed (or the work object being resolved), the system escalates this object
to the defined next level. For example, sends it to a manager. The
ProcessServiceLevelEvents agent detects these goals and deadlines not met
and performs escalation processing.
When one of the time intervals is reached, a task is automatically sent to the
internal SLA queue for the SLA agent to handle between 1 and 100 for each.

13
Section 3 - Validations

Rule-Edit-Validate
Validate rules Rule-Edit-Validate is used to validate a property value against
>> Delivering Value
Validate rules help users enter valid property values into an certain rules, and add a message to the page if validation fails.
HTML form or to validate data received from another system These can call on standard or custom Java to further test the input
or source. value
A validate rule can test input values against edits defined in Use the Edit Validate form to define a Java routine that tests the
edit validate rules for properties. validity of an input value in an activity that processes the user
The following rules can reference Validate rules: input.
& Flow action rules, to validate user input The activity calls the Property-Validate method, which applies the
& Flow rules, to validate user-entered parameter values test defined in an Edit Validate rule.
& Activities, with the Obj-Validate method Use the Property-Validate method in an activity to execute the edit
& Correspondence rules, to validate user responses to validate rule when a value is submitted through a user input form
prompts Edit Input
To execute a validate rule during initial entry of a work An edit input rule provides a conversion facility.
object, create a validate rule named onAdd. Use edit input rules to convert data entered by a user (or received
These rules test property values, typically immediately after from an external system) from a format that your application
they are submitted on a browser form. doesn't use into another format.
Activities use the Obj-Validate method to call a validate rule Edit input rules perform conversions, not validations.
to test a set of property values. You can reference an edit input rule in the Edit Input Value field
The Standard Validate Rules are: on the Property form.
Work-.OnAdd Edit input rules referenced by a property rule execute automatically
Work-.Validate only during HTTP requests, not for properties set through data
Work-Cover-.OnAdd mapping, Property-Set methods, or other computations.
Work-Cover-.OnAdd Edit input rules use Java code for the conversion.
Process Commander contains a few standard edit input rules like
DateTime-Calendar, GetStandardValue etc

14
Libraries and Functions

Libraries
>> Delivering Value
& A library is a collection of Java functions grouped by a library rule.
& A library can contain one or more function rules.
& Create a library rule to hold custom functions for your application, which can
supplant and extend standard functions.
& Each reference to a function rule identifies the library to which the function rule
belongs
& Your system contains several standard libraries and hundreds of standard functions.
& For example, the standard library rule named DateTime contains several standard
functions for date and time format conversions.

Functions
& Each function rule defines a Java function and makes it callable from activities and
expressions.
& Use a function rule to define a Java function that is accessed through rule resolution.
& You can reference function rules in expressions and directly in Java

15
>> Delivering Value

Thank You

This document is the sole property of AIG Inc. All rights reserved.

Você também pode gostar