You are on page 1of 224

Certification Material

1

Table of Contents
1. Introduction to BPM & BRE ................................................................................ 3
2. General PRPC Architecture .............................................................................. 12
3. Class Structures & Hierarchy Design............................................................ 31
4. Data Modeling...................................................................................................... 44
5. Process Flow ........................................................................................................ 50
6. Case Management ............................................................................................... 67
7. Activities .............................................................................................................. 73
8. User Interface ................................................................................................... 92
9. Decision Rules & Declarative Rules .............................................................. 115
10. Rule Management/Security .......................................................................... 126
11. Integration ....................................................................................................... 150
12. Implementation and Performance Tools ................................................... 179
13. Reporting .......................................................................................................... 191
14. Application Deployment ................................................................................ 203

2

1. Introduction to BPM & BRE

3

Business Process Management:
Ø A business process is a set of coordinated tasks and activities, conducted by both
people and equipment that will lead to accomplishing a specific organizational goal.
Ø Automation of business processes, in whole or in part, where documents, information,
or tasks are 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.
Ø Business Process Management is a structured approach that models an enterprise’s,
human and machine tasks and the interactions between them as processes. BPM
software provides users with a dashboard interface that offers a high-level view of the
operation that typically crosses departmental boundaries. The dashboard integrates
with all the applications that perform processes as well as related databases. It can be
used to trigger the start of a unit of work, and it provides a single interface to the end
user.
Ø Advantages:
C Solution tailored to closely meet needs of business
C Easy to build, easy to change
C Ability to capture of objectives directly in system
C Automates the programming and the work!
C Ease of integration
C Leverage BPM vendor's significant development investment
Ø Disadvantages:
D May encounter cultural resistance as BPM fundamentally changes the way
Business Users and IT work together.

Business Rules Engine:
Ø Business rules represent policies, procedures and constraints regarding how an
enterprise conducts its business.
Ø 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

4

build. Ø This means that the rules engine is capable of getting data through services. ü A BPM application can be a type of B2C. No need to write thousands lines of code (For Example Parsing XML. workflow and routing. Generating XML. that is. BREs can be used alone or in conjunction with other technologies. Ø BRE is the software that automates policies and procedures within an organization. and return results through services. SmartBPM Ø The latest generation of PegaSystems' industry-leading. New software can be deployed knowing that the same business logic is going to be executed in the new programs. but through services. it goes out to the BRE to obtain its business logic. like Business Process Management (BPM). Ø A business rules engine is a software system that executes one or more business rules in a runtime production environment. process the data with some business logic. they may be implemented in a software system. and manage process-management solutions through their entire lifecycle. can use inferencing.) BPM vs. and are context sensitive. 5 . The use of a rules engine (BRE) requires placing the company rules in an external repository that can be easily reviewed rather than buried inside the code of numerous applications. whether legal. BRE ü BPM tools are made for process automation.Ø Business rules become requirements. It can also interact with other backend systems to get more information. It can also ensure that the same rules are applied in all programs on all platforms across departmental lines. it supports platform changes. ü A BRE application can be a type of B2B. rules-driven Business Process Management (BPM) is a comprehensive suite intended to help businesses plan. validate data etc. ü BRE's are made for decision management. internal or operational. In addition. Ø Advantages of Business Rules Engine: C Quick development C Easy Rule move from one environment to another environment C Business Users can update the rule directly without IT help (Up to some level) C Lot of in build functionality. Connecting external system. Ø A BRE enables software changes to be implemented much faster than changing source code. Instead of a program executing internal algorithms.

7. and resolving. Researching by rules-driven data and image gathering 5. Pegasystems provides the traditional BPM capabilities — receiving. Process Simulator — New business processes are simulated before they go live. Ø SmartBPM Suite contains the below Components 1." analysts can quantify and compare potential for increased service levels. Portal Integration — Businesses turn to web-portal technology to enable collaboration with their trading partners and to open up self-service to their customers. Responding automatically via multiple communication channels 6. Case Management — A smart case-management application is included as part of the SmartBPM Suite. 1. Enterprise Integration — PegaSystems' SmartBPM is built from the inside out with a services-oriented architecture (SOA). test environments. and production environments. as well as reductions in time. Ø What is SmartBPM — Six Rs? With PegaRULES Process Commander. 2. error. Routing work based on worker skills and workload.and content-management systems to manage global policies and processes for record retrieval and retention. 3. and employs a sophisticated common object model to deliver the power of process and practice integration. user interfaces. without the expense and resources associated with maintaining separate business process and rules databases. and SLA-based priorities 3.Ø SmartBPM is a process that blends your process and practice rules and helps you rapidly deploy and update solutions in response to changing circumstances. Receiving and controlling work regardless of the source or channel 2. including support for industry standards such as BPEL. Process Analyzer — Uses a data warehouse of both historical work and simulated data. Resolving by automating critical business decisions 6 . Using "wizards. PegaRULES Process Commander — At the core of the SmartBPM Suite is PegaRULES Process Commander. responding. and reporting on work across the enterprise. accomplishing these tasks automatically based on intent-driven rules and processes & completes work by researching. not just models 4. It offers an extensive library of enterprise connectors and adapters. and cost. Reporting and simulation based on historical. and can be put to work immediately. 4. routing. with on-line analytic tools to continuously improve processes. 5. Content Management Integration — The SmartBPM Suite can also integrate multiple image repositories and document. thereby eliminating most manual processing for completing work. Built on top of the PegaRULES enterprise rules engine. 6.

as well as Visio flow import ü Extensive array of fit-for-purpose forms to speed implementation and allow business-user change Ø What is meant by SmartBuild? SmartBuild – Smart Design for Smart Systems SmartBuild is the sequence of 14 steps for developing business process management (BPM) and Business rule engine (BRE) solutions with Process Commander. debug rules and performance management ü Graphical decision trees with natural language expression ü Push-button documentation for project tracking and compliance requirements ü Portal interface for architects. and business analysts ü Integrated Microsoft Visio for process and rule creation. developers.SmartBPM — Six Rs Drive Work to Completion Ø What is meant by Build for Change? Build for Change — Rapid development of solutions that support fast and safe realtime changes ü Built-in versioning makes interactive change and selected pilots easy and safe to manage. Each 7 . ü Solution Accelerator auto-generates solutions — links to PegaSystems Process Simulator for what-if testing ü Web-based tools provided for trace.

Ø Process Commander is shipped with 56 standard rulesets viz. Rule-Connect-JCA 8 . Rule-Service-JSR94 12.step describes how to design and build specific components. Rule-Service-Email 10. Rule-Service-MQ Ø Connectors are interfaces from PRPC to other systems. Standard services that come in with PRPC are 1. 5. SmartBuild is the design and development process for Process Commander Solutions. In short. Rule-Service-EJB 9. Rule-Service-DOTNET 8. Standard connectors that come in with PRPC are 1. and responding — eliminating most manual processing for completing work. Rule-Service-File 5. 3. Rule-Connect-HTTP 5. resolving. Rule-Service-JMS 11. You perform these steps and the associated tasks iteratively to deliver a fully functional solution. Rule-Service-COM 2. Ø Process Commander accomplishes these tasks automatically — and goes beyond traditional workflow management to complete work — researching. Ø Process Commander is the only BPM solution that automates both the business decisions and the business processes that drive work to completion. 4. Ø Services are interfaces from other systems to PRPC. Rule-Service-Portlet 7. Rule-Connect-EJB 2. Rule-Service-HTTP 6. 2. Rule-Connect-File 4. Rule-Service-CORBA 3. and reporting on work across the organization. Rule-Service-BPEL 4. PegaRules Process Commander (PRPC) Basics Ø PRPC is a combination of BPM ( Business Process Management) and BRE (Business Rules Engine ) Ø Most Business Process Management (BPM) solutions provide workflow capabilities — receiving. Rule-Connect-BPEL 3. Pega-ProCom – Supports business Process Management Pega-InvSvcs – Supports integration services Pega-WB – Supports portal infrastructure Pega-Rules – Supports rules engine and rule resolution Pega-AppDefinition . 1.supports the Direct Capture of Objectives features. routing.

Important entries while creating the operators are 1. A work group can identify a user who is a supervisor. and in queries. Division ( Mandatory ) 3. Access Group ( Mandatory ) 6. Ø Access group is an instance of the Data-Admin-Operator-AccessGroup class. Access roles can be referenced in requestor instances. together with a set of workers and workbaskets that report to that supervisor. 9 . Organization ( Mandatory) 2. in activities. Rule-Connect-SOAP 11. Divisions are below the organization level (Data-Admin-Organization class) and above the organization unit level (Data-Admin-OrgUnit class). An organization is the top level of the three-level organizational hierarchy available to all of your applications. Ø An operator ID can belong to only one primary access group. divisions at a second level. Access groups make a set of RuleSet versions available to requestors. Ø A division is an instance of the Data-Admin-OrgDivision class and is the middle level of the three-level organizational hierarchy available in all applications. Ø An organization is an instance of the Data-Admin-Organization class. Workgroup ( Mandatory ) 5. Allow Rule Check Out ( Check box ) ( Optional ) Ø Work group is an instance of the Data-Admin-WorkGroup class.6. Ø An organization unit is an instance of the Data-Admin-OrgUnit class.Use an access role name to convey permissions (capabilities) to a user or a group of users. in access group instances. Operator ID instances. Rule-Connect-MQ Ø Process Commander supports a three-level organizational hierarchy consisting of organizations at the top level. Rule-Connect-DOTNET 7. Ø Access role is an instance of the Rule-Access-Role-Name class. Rule-Connect-JMS 10. Unit ( Mandatory ) 4. Rule-Connect-SQL 8. and units as a third level. Ø Operators are created through instances of Data-Admin-Operator-ID class. An organization unit is the bottom level of a standard three-level organizational hierarchy available in every Process Commander application. Rule-Connect-Java 9.

and high level configurations Ø RuleSet name is an instance of the Rule-RuleSet-Name rule type. Business Users 1. classes derived from the Rule.base class. and flows 2. The three segments are known as the major version.Version 02 –Minor release within the version 03 – Interim or patch release within minor release Ø Rule resolution is the sophisticated internal search algorithm that the system uses to find the best or most appropriate rule instance to apply in a situation. because every instance of every rule type references or "belongs to" a RuleSet. Together with the RuleSet version. Process Architect: A business analyst who defines and maintains business rules. service levels. Business User : End user of the application 2. Rule resolution uses as input values: ü The name of the rule needed 10 . and patch version. Each RuleSet defines a major subset of rules in the PegaRULES database. a RuleSet name is a major aspect in: ü Access control ü Managing the rules ü Moving applications — sets of rules — from one Process Commander System to another. minor version. System Administrator: System engineer who is responsible for installation and setup. Ø RuleSet Format LoanAppl 01-02-03 01. The version number in the form NN-NN-NN. and of the application it belongs with. System Architect: An application developer who creates class structure for the application and who builds the interfaces with external systems 3. but not all. Ø RuleSet version is an instance of the Rule-RuleSet-Version rule type.Ø Standard access roles (with names starting with PegaRULES:) define capabilities for below PRPC model users a. security. Business Manager : Who monitors the performance of users or user groups b. defines six digits in three groups that characterize the evolution and development of a rule instance. Rule resolution applies to most. Developers and Implementers 1.

Portal access c. Decision trees c. User IDs d. the system administrator maintains which of the following rules: a. Adopt an Iterative Project Approach 2. the system architect maintains which of the following rules: a. RuleSets e. Limit Custom JAVA 5. Calculate and Edit Declaratively. Expressions 2. Design Intent-Driven Processes 7. User interface rules c. Too Questions: 1. Access privileges e. Services d. Circumstance property and value The value of the as-of date property When to use directed inheritance and pattern inheritance. Keep Security Object-Oriented. Typically. which may cause time based rules to take precedence. Build for Change™ 6. Not Procedurally 10. Activities 11 . Do Nothing That Is Hard 4. Access roles d. Typically. Monitor Performance Regularly 9. the process architect maintains which of the following rules: a. Flows b. Establish a Robust Foundation 3. Correspondence f. Decision tables b.ü ü ü ü ü ü Starting location in the class hierarchy RuleSet list Current date-time. Ø Ten Guardrails for a Successful PRPC Solution 1. Properties b. Indexes 3. Typically. Create Easy-to-Read Flows 8.

2. General PRPC Architecture 12 .

In addition. Java caching.PRPC and JEE architecture Ø PegaRULES has a flexible. context management. The engine maintains the rules and executes Pegasystems’ patented rule resolution algorithm. The run-time environment also provides other essential capabilities such as performance monitoring. The environment also includes the clipboard containing XML objects that represent the work data for various users or requestors. open architecture. the PegaRULES engine consists of a run-time environment. This capability provides flexibility to system administrators in configuring and deploying user accounts or execution models against a shared PegaRULES database. PegaRULES Process Commander Internal Architecture Ø As illustrated. including the forward and backward chaining inference engine. It allows you to execute the rules engine in a variety of configurations and platforms. PegaRULES nodes can run concurrently on heterogeneous platforms. and database access. Ø The flexible architecture of PegaRULES Process Commander supports several patterns that can be deployed with variations to fit the specific platform requirements of an enterprise business rules application and technology environment. 13 . security management.

The rules engine runs self-contained within the Java Virtual Machine (JVM). such as Apache Tomcat). The patterns shown in the following sections are examples of fundamental implementations. PegaRULES can support various architectural designs. PegaRULES servlets run within the Web container of a J2EE application 14 .Ø PegaRULES runs as a collection of loosely coupled nodes that bring the execution of processes and rules in proximity to the requesting user or system. Multitier Java Architecture — Portable and Powerful Ø A number of servlets are associated with PegaRULES including the PRServlet (the standard servlet) as well as servlets for system monitoring. Basic Multitier Pattern with Servlets Ø PegaRULES runs as servlets within the Web container of a J2EE application server (or a servlet container. rule tracing. and external services.

embedded or batch processing provides a better alternative. The rules engine can be invoked through the Java API and can execute within a rules engine application on the same Java virtual machine (JVM). such as SOAP and other industry-standard transports. two other primary integration methods — batch and embedded — are not. For this reason.server (or a servlet container. Process Commander sends HTML to the browser for both business user and developer/administrator functions. Ø In the multi-tier architecture. For certain high-performance applications. With this pattern. Process Commander is built to run within the J2EE environment without inheriting its limitations. Embedded Java Application Pattern Ø PegaRULES supports the JSR 94 standard rules application interface (API). Embedded PegaRULES Engine 15 . PegaRULES also supports server tier architectures and EJBs. While these architecture patterns are well served by the J2EE framework. Ø Process Commander is designed to run as a Web application. HTML screens are managed using specialized HTML rules within the rules engine. client applications can embed the rules engine in the overall Java code of their applications. such as Apache Tomcat). built in a Service Oriented Architecture (SOA) to support a Web services environment.

Batch Processing Pattern Ø The embedded Java application pattern can be used in processing large volumes of business rule transactions through batch scripts. With file listeners. PegaRULES Engine in Batch Processing Ø The robust PegaRULES engine also supports other architecture patterns. WAR and EAR Deployments Overview of the Installation Procedure Ø The following outline details the steps in the 5. Prepare the Database server ü Create a database with a PRPC user and password ü Install the PRPC schema appropriate for your database vendor 2.1 installation process: 1. a batch job (or any other application) can write files to a prescribed folder. PegaRULES uses file listeners to support batch processing. the patterns described in the previous sections provide the flexibility that system administrators and application developers need in deploying enterprise applications. Prepare the application server ü Configure the server environment ü Verify the Java environment 16 . However. The PegaRULES listener can then pick up and execute these files in high volume.

Configure Your PRPC system ü Optionally configure a Lucene search engine to support Rule and Work Object searches in Process Commander ü Configure the Help and System Management applications ü Setup an initial user organization Ø You perform the first two steps with the database and application server administrator tools. 3. and to set up the initial configuration of your Process Commander system. Deploy the PRPC components. respectively. You use the Process Commander Database Utilities application (prdbutil) to upload and install the application files. Verify the PRPC Temporary directory 3. Ø To set up a Process Commander system.ü ü ü ü Create and verify the database connection Create a DataSource with the JNDI name of jdbc/PegaRules. Install the Process Commander Rulesets ü Start the Process Commander Database Utilities application ü Upload the application files from the Process Commander distribution to your application server ü Install the Process Commander application instances to the database 4. you deploy four software components in your application server: 17 .

war or prpc_j2ee14. or Oracle Application Server 10g Release 3 prweb.x or WebLogic 9.Ø The deployment of a basic installation instance is shown in the diagram below: Deployment of a basic installation instance Selecting the right core component for your platform Ø The PRPC core application is packaged in five different versions to support the deployment of PRPC into different J2EE environments.war All new deployments on WebSphere 6.x. 18 .ear Note: The legacy packages listed below are provided only for existing customers to support backward compatibility. The following table summarizes all the packages provided and their use: Type of deployment All Tomcat deployments PRPC package to use prweb. Contact customer support before deploying.

This is in addition to any memory allocated for the operating system or other applications on the server.5 SP1 EAR. Process Commander requires a minimum of one GB of free memory.3 specification. ü A working installation of the application server. or Oracle Application Server customers may also deploy the WAR if they are not using functionality in either of the EAR packages.ear Ø Components labeled ‘j2ee14’ should be deployed in application servers that conform to the J2EE 1. ü A configured relational database available for Process Commander use.war or prpc_j2ee13. Ø The prerequisites for installing Process Commander are: ü An application server host computer with adequate memory and disk space for the installation. You must deploy the EAR file component if you intend to use any of the following containermanaged features with your Process Commander application: ü Two-phase commit ü ü ü JMS message services Rule-Service-EJB J2SE security Ø When upgrading Process Commander. WebLogic.war or prweb_j2ee13. Tomcat and WebSphere 5. if you upgrade the supporting platform components at the same time as Process Commander. That is.x that used prweb.ear prweb.ear prweb. The memory required for your system may need to be higher.All new deployments on WebSphere 5.1.4 specification.war or prweb_j2ee14. prweb. Ø WebSphere.ear Existing deployments on WebSphere 5.x or WebLogic 8.ear Existing deployments on WebSphere 6. 19 .5 SP1 WAR component.x prweb. and support in your organization for the installation and configuration of relational databases. you should generally install the core component package that is currently in use in your environment. you may need to change the PRPC core component and your system configuration. depending on the number of users and your specific configuration. existing EAR deployments should deploy the 5. existing WAR deployments should deploy the 5. The components labeled ‘j2ee13’ should be deployed in application servers that conform to the J2EE 1.x or WebLogic 9.war All new deployments on WebLogic 8.x that used prweb. However. Note: Please refer the Pega Installation Guide from the PDN site for any detailed Deployment procedure.1 customers should install the WAR in all cases. or if your integration requirements have changed.

Note: The database and application server platforms may be either UNIX or Windows systems. stores it in the Rule cache. PegaRULES has a series of caches. the system retrieves the rule. It passes the request on to the database. Ø A conclusion is an instance of a Java object (resulting from the Rules Assembly process) that was generated. PegaRULES® Process Analyzer™. some caches are stored in the system memory (JVM). the cache has no information about it. Rules assembly. Ø Caches stored in memory include: ü Rule cache ü Rules Assembly cache ü Conclusion cache Caches stored on disk in the file system include: ü LookupList cache ü Static Content cache Ø Rule cache holds data about the reads done from the PegaRULES database for rule classes. The unique feature of conclusions that differentiate them from “normal” Java object persistence is that these classes also rebuild themselves in response to rule changes (just like all other types of rules). a Windows system is required for the Pegasystems developer and end-user clients and for some of the Pegasystems monitoring tools. The environment for your initial Process Commander system should include at least one Windows platform. especially code compilation. and then sends the rule information back to whichever process requested it. instantiated. The benefit of conclusions is that they group a number of similar rules. it is retrieved from the cache instead of the database. The first time a rule is requested from the database. and the system attempts to retrieve the information from the database. and digest the information down to the minimum amount required at runtime. The next time that information is required. Ø Rules Assembly cache is used to minimize Java code generation and compilation mainly by tracking RuleSet lists and user entries. Process Simulator™ and Autonomic Event Services™. A cache contains data that has been copied out of one place and stored temporarily in another for easier access. some are stored in the database. However. Rules assembly is the process whereby all the rules run by the Process Commander system are generated into Java code for the system to execute. If the data is available in the database. 20 . In Process Commander. and then persisted to the database for future use. and some are stored on disk. Caching Ø To allow the powerful Rule Resolution process to occur with the required performance levels for enterprise-scale systems. specifically. is extremely resource intensive and comprises a series of processing steps.

Therefore. several Rules caches have been added to try to minimize Java code generation and compilation. but due to their different Lists. the code compilation is the most expensive. In PegaRULES Process Commander. as that controls which rules the user may see. The static content data is actually cached in two places: • on the client (each user’s PC) • on the server 21 . if that rule was never executed. Since these files don’t change rapidly and are expensive to read from the database. the generated class is exactly the same. Due to these factors. it may call other rules) ü generate the Java code for the rule ü compile the code ü load and execute the resulting class file Of these steps. they can persist in the file system through system shutdown and startup. and be retrieved as a file. and the files are cached to the server file system (not into memory). which will not be affected by changes to rules or to work items). rather than spending the resources to constantly retrieve the data from the database.Ø Rules Assembly is the process whereby all of the rules which are run by the Process Commander system are generated into Java code for the system to execute. one of the key factors is the user’s RuleSet List. the main Rules which contain static content are: ü Rule-File-Binary ü Rule-File-Form ü Rule-File-Text These rules are read from the database using the Rule Resolution process. During Rules Assembly. a cache structure is maintained in memory. the process has been broken down into several steps to maximize performance and efficiency. Similarly. keyed by a combination of the RuleSet List and Rule Name (its purpose) that maintains a reference to the generated class file’s loaded instance. it is possible for two users with different-yet-related RuleSet Lists to call for the same named rule. Two users with different RuleSet Lists may call the same named rule. such as form images or help files (example: the login “splash” screen. Ø When the system calls a rule to be run. Since Rules Assembly is an expensive process (in terms of system resources). Static Content Cache Ø In PegaRULES. because the rules are defined entirely in the RuleSets they have in common. static content files contain information presented to users which doesn’t need to be constantly processed. the Rules Assembly process must: ü assemble the rule. including all the other rules required (for example. the rules selected and the code ultimately generated may be quite different. if this is an activity rule.

Files are put in the contextroot/webwb/llc directory. If the file is not already cached. in the following order: ü Personal RuleSet subdirectories (\rule_cache\webwb\RuleSethashname\PersonalRuleSethashname) ü RuleSet List directories (\rule_cache\webwb\RuleSethashname) ü the WebWB directory (NOTE: Just as the Rules in the personal RuleSet override the Rules in the main RuleSets. it will be returned. the system searches the directory structure for the requested rule. Also. and grouped by classname. in the file system. that information will be cached in the browser on the client side.) LookupList Cache Ø LookupLists contain information that displays in dropdown boxes in Process Commander. Help forms. which will slow performance until the caches are rebuilt. the system will load the file from the database. and other static content in the WAR file). so the static content in the Personal subdirectory overrides the static files in the main subdirectory.Ø Static Content Cached on the Client is standard browser caching. Example: prweb/webwb/llc/Rule-Obj-Fieldvalue prweb/webwb/llc/Rule-HTML-Harness Ø The first time a LookupList is requested. and also write the file to the LookupList cache on disk. Since this information is so expensive to produce. such as importing rules using the PRImpExpServlet. It is possible to set an expiration tag on this information. Ø The LookupList cache is stored similarly to the Static Content Cache. Ø Again. in appropriate class subdirectory under LLC. The consequences of clearing the cache is that the system must check the cache before going to the database. If the file is present. 22 . and data was not correctly propagated to the other nodes in the system. if ever. Whenever a user requests static content (Rule-File. If something that is done that modifies rules outside normal processing. These are items (such as the SmartPrompts) which are built on a complex query that takes a long time to run (perhaps more than two seconds). which will tell the browser to look first in its cache for data before asking the server again. the LookupList Cache should be cleared (along with various other caches). Ø Static Content Cached on the Server: The first time information from a static file is requested. then the cache must be cleared to pick up the new data.forms. if there was a problem with the system pulse. the LookupList cache should have to be cleared rarely. it is cached to improve performance. and then cache everything again. the system searches the directory structure for the requested rule.

and which have a timestamp which falls within the window of time starting with the last pulse (or system startup) and now. and each of those nodes must be updated with rule changes. the types of event which are saved to this table include: • Cache – for any changes to the rule cache (changes to the rules) • Index – for Lucene changes • DELLC – when the lookuplist cache is deleted • RFDEL – for any rule-file. The query retrieves records which are “not from this node” (which this node did not create). it will not be found in the cache. and the appropriate cache entries on this node are invalidated. Each node records all their changes in this table. which will then register the change in the pr_sys_updatescache table (in the same database). This update process is managed by the System Pulse functionality. 23 . add.Ø When PegaRULES is installed on a multi-node system. or delete) to one of the Rule tables in the database will fire a PegaRULES database trigger. the pulse (which is part of the standard PegaRULES agent) on each node wakes up (independently) and queries the pr_sys_updatescache table. all of the changes originating on other nodes are selected. The next time one of the rules which has been invalidated is called. In this way. then a copy of the various caches are stored on each node.deletes Ø Once per minute. and the updated version of the rule will be read out of the database and be eligible for caching again. Ø Saving a rule change (update.

Agents are autonomous and asynchronous. Your site can establish another value in the prconfig. Process Commander also uses the Pega-IntSvcs agent. Ø Two built-in master agents are background processes operating on each Process Commander node that manage requestor sessions and agents defined through agents rules and agent schedule data instances.xml file setting: <env name="agents/newqueuewakeup" value="NNN" /> where NNN is in seconds. in seconds. one agent schedule is generated for each node in the system. this occurs every 60 seconds. (Technically. They are not defined by agents rules.Agents Ø Agents are internal background processes operating on the server that run activities according to a schedule.) Ø The Master-for-Requestors (Requestor Manager) master agent monitors idle requestor sessions to enforce automatic timeouts.xml file setting: <env name="agents/requestortimeoutwakeup" value="NNN" /> Ø The Master-for-Agents (Agent Manager) master agent starts and monitors agents defined through agents rules and agent schedule data instances. rather than full agents. based on the settings in the agent queue rule. By default. Process Commander generates these schedules for each node in the system. These rules specify the activities the agent runs and the interval. Your site can establish another value in the prconfig. For each agent queue rule. There can be no more than one agent queue rule in a RuleSet. By default. Ø Agent schedule data objects – instances of Data-Agent-Queue. the Master-for-Agents master agent awakes every ten minutes. these are daemons. 24 . The activities they call run individually on their own schedules and one activity does not have to finish before another one runs. Agents are implemented through two Process Commander objects: ü Agent queue rules ü Agent schedule data objects Ø Agent queue rules – instances of Rule-Agent-Queue. at which it runs them. Ø Process Commander relies on two standard agents: ü Pega-ProCom ü Pega-RULES ü If your system is using the PegaDISTRIBUTION Manager application.

In another example. ü SendCorr – sends notify messages to users about assignments and outgoing correspondence to work parties. ü GetConvertedPDFsFromPDM – checks the PDM Requests table to see if any Word documents have been converted to PDF files. and late times of the current assignments. simply. the term agent means an agent activity and queue means agent queue rule. typically the SystemPulse activity run by the PegaRULES agent is called. Agent vs. the Agent Management page in the System Management application lists each activity specified in an agent queue rule as a separate entry. 25 . You enable this activity only if you are using PegaDISTRIBUTION Manager and you want to use it to convert Word files attached to work objects into PDF files Ø The PegaRULES agent queue is configured to run three activities by default: ü SystemCleaner – removes stale entries from system caches once a day. routes them according to the settings in the e-mail account. Activity Ø Because the processing of an agent is completed through activities. Ø Additionally. This activity is enabled by default and it runs every 30 seconds. On that page. the System Pulse.Ø The Pega-ProCom agent queue rule is configured to run two activities by default and two additional activities if you enable them: ü ü ProcessServiceLevelEvents – compares the current time to the times specified as the goals. deadlines. When enabled. the term agent sometimes refers to the agent (the rule and/or the data object) and sometimes it refers to an activity the agent runs. ü Email_CheckIncoming – checks the inboxes of any incoming e-mail accounts that have been configured and if it finds messages. Ø For example. This activity is enabled by default and runs every 30 seconds. ü SystemPulse – synchronizes the system caches once every minute. it runs once every 30 seconds. sometimes the ProcessServiceLevelEvents activity is referred to as the SLA agent. ü SystemIndexer – generates and updates the indexes that support the Find feature once every minute.

An object that is stored in the PegaRULES database is persistent. IBM DB2 or Microsoft SQL Server databases. The object is available to other users. True False Ø The rules. Process Commander may open more than one connection to a database. The pages become persistent when they belong to both concrete and abstract classes. Database data instances are always stored as rows of the pr4_base table Ø JDBC Connection Pool to use a connection pool defined by a Java Naming and Directory Interface (JNDI) facility. Concrete classes that correspond to rows of an external database are known as external classes. The Data-Admin-DB-Name class contains database data instances. and other data supporting a Process Commander system are stored in one or more Oracle. and remains after the requestor session that created it ends.Interacting with the Database Persistence Ø A persistent object is an object instance that was saved from a requestor's clipboard into the PegaRULES database. What methods store persistent data objects in PegaRules database? a) Obj-List b) Obj-Save c) RDB-Commit d) None of the above Q. transactions. a general guideline for production systems is to set the maximum number of connections for the PegaRULES database to about one-third to one-fifth of the number of simultaneous requestors and adjust the PegaRULES database settings to allow the same number of connections.xml are as below: 26 . Q. It can be accessed and used by others requestors and remains in the database after the requestor session ends. True False Ø Classes that are mapped to the PegaRULES database are known as internal classes. The rule is an instance of concrete class only. Q. Ø Database settings in prconfig. Note: Don't forget to count listeners and agents as requestors. When using WebSphere's pooled connection facility.

By default. the thin client (Type 4) works with Oracle 10g. If your PegaRULES database is hosted by Oracle 9. Sybase is not supported as a host for the PegaRULES database. Use Connect SQL rules (Rule-Connect-SQL rule type) to access relational databases other than the PegaRULES database. We can reverse the effect of an Obj-Save method — if it has not yet been committed — with the Obj-Save-Cancel or the Rollback method. It specifies that an object should be saved. Q. the Type 2 (OCI or thick client) driver is required. Obj-Save sets up a deferred write operation that does not occur until the next commit operation executes. Do we need to undeploy and redeploy the PRPC configuration file prconfig.<env name="database/databases/Northwind/url" value= "jdbc:microsoft:sqlserver://shelpnt:1433. Which background process will save the User pages in PRPC? a) Clipboard b) Passivation daemon Ø Obj-Save method: Use this method to request that the system save a clipboard page to the PegaRULES database or (if the page belongs to an external class) an external database. 27 .SelectMethod=cursor"/> <env name="databases/databases/Northwind/userName" value="Smith" /> <env name="database/databases/Northwind/password" value="password" /> <env name="database/databases/Northwind/maxConnections" value="3" /> Q. Tables and views in the PegaRULES relational database become visible through Database Table instances (Data-Admin-DB-Table). What alert will be set to detect long database call waits? a) PEGA0001 b) PEGA0014 c) PEGA0026 d) PEGA0023 Ø Sybase databases are accessible only through Connect SQL rules. If the Database connections limit exceeds then what error will be thrown by PRPC? a) SQL exception b) Java Database exception c) Page level error d) None of the above Q.xml after any changes to Database setting? True False Q.

For example a single Commit operation may update both the PegaRULES database and an external database (made visible through the External Database Table wizard). All pending Obj-Save and Obj-Delete methods are cancelled. the JTA transaction aspects of this method depend on how the Process Commander system is deployed.base class or the Embed. You can also use this method to undo an Obj-Delete that has not yet been committed. or rolled back. The Commit method operates on Thread pages.Using Obj-Save method system examines the page's pxObjClass property to determine its class. Lock Key format. Ø In a J2EE application server setting. If your system is deployed appropriately in the Enterprise tier of a J2EE application server. This is useful when objects are saved to more than one database. 28 . Ø Obj-Save-Cancel: Use this method to cancel the most recent uncommitted Obj-Save method. Q. We cannot save a page that your session does not hold a lock on True False Q.base class. Any objects with locks specified as ReleaseOnCommit are released with a rollback operation. It uses the corresponding Rule-Obj-Class instance to find the Database Table name. True False Ø Commit method: Use this method to commit all uncommitted database changes. and so on. Ø Rollback method: Use this method to cancel or withdraw any previous uncommitted changes to the PegaRULES database (and to external databases accessed from an external class) from the current Thread. so that the instance is not written as part of a later Commit operation. The Commit method has no parameters. If any of the operations fail. a Commit operation can be processed as a full Java Transaction API (JTA) transaction. Specifies that all operations currently on Process Commander's deferred operations list be written to the database. the commit will end in a rollback: all the operations will be rolled back. Can we save a page that is locked by another requestor? Yes No Q. Such pages exist only on the clipboard. Specifies that all operations currently on Process Commander's deferred operations list should be removed. This method writes all the instances specified by one or more earlier Obj-Save methods to the PegaRULES database (for internal classes) and to external databases (for external classes). We cannot save pages of any class derived from the Code.

in the same Thread. Transaction Model Ø The applications need to participate in distributed transactions. If the commit failed: ü Report errors to the clipboard page and to the Pega log. In such cases. Often. Process Commander is in charge of the (distributed) transaction. Process Commander ensures data integrity by creating a deferred operations list during a business transaction rather than writing each change to the database individually. later execution of the Commit method. Only the processing managed by certain Process Commander Service rule types (EJB. 2.Ø Generally speaking.commitWithErrorHandling activity also illustrates how to report errors when a commit operation fails. When Process Commander finishes its work.DeferredOps interrogates system internals and presents an ordered list of deferred (uncommitted) database operations for the current Thread. The Work-. an external J2EE container starts and ends distributed transactions that Process Commander joins as one of the participating resources. Ø Container-Managed transaction: When running in this mode. activities that commit objects use the following pattern: 1. In addition to the object locking feature. Java. Ø The standard HTML rule @baseclass. ü Roll back the operations. Evaluate the results of the commit step. Process Commander must be deployed as an enterprise application and must use a JDBC driver with XA support. Deferred Operations Model Ø This method does not always cause the object to be written immediately to the database. Commit the deferred operations list. Q. and JMS) can participate in container-managed transactions. developers use this method perform a deferred write operation. 3. it submits a list of operations to the resource manager(s) or it marks the transaction for rollback. 29 . What is the default transaction model of Process Commander? a) Bean-Managed b) Container-Managed Ø Bean-Managed transaction: When running in this mode. Process Commander issues the begin statement and the final commit or rollback. completes the database update.

Object locks are associated with users' requestors. Threading Model Ø A PegaRULES Thread object is a named context of clipboard pages. 30 . ReleaseOnCommit parameter instructs Process Commander to release the object lock on the item being opened when changes for the object are committed to the database. A daemon is a reserved background Java thread that executes as a BATCH requestor type. Ø A Java object that holds information about a user and that user's session. Most processing for a requestor is single-threaded. users are represented as requestors and object locks are associated with a user's requestor.Locking Ø Object locking for work objects is enabled by default. After the processing of the application causes the changes to be written to the database. Object locks have a timeout interval that is set to 120 minutes by default. no other requestor can make changes to that object. The pxThread page is a named top-level clipboard page sometimes referred to as the thread page. When selected. Database locking provides functionality such as preventing two write operations from committing changes to the same row at the same time. What is Pega alert in case of number of threads exceed the limits? a) PEGA0011 b) PEGA0018 c) PEGA0026 Ø A requestor can have multiple Threads. Q. Ex: Passivation daemon — Saves requestor sessions after timeout or other situations The PEGA0030 alert is generated when the number of requestors logged onto the system (including agents and services) exceeds the alert threshold. In Process Commander. but the Threads are guaranteed to never run concurrently. The class for the page is Code-Pega-Thread. Requestors obtain a lock on a work or other object when the user opens an object for modification. While the requestor holds the object lock. Ø Mechanisms provided by your database management system that control how/whether operations access data at the same time. the lock is released and the object is available to another requestor. The first Thread for a requestor is named STANDARD.

Class Structures & Hierarchy Design 31 .3.

Access groups may span multiple work groups. and accessible work are controlled by access groups. ü Top Level: Organization .Users and the work they do are tied to work groups. and four units. and organization units as a third level.identifies the highest-level entities of the company. division. three divisions. Each user (Operator ID instance) is associated with an organization. portal layout. For example.identifies the most specific level at which organization information is recorded (a cost center. Users working on a common set of items generally belong to a single work group. divisions at a second level. their organizational affiliations grant them appropriate RuleSet access. which fall below units in an extended organizational hierarchy. ü Work Groups . ü Second Level: Division . The ID also identifies two additional affiliations: work group and access group. ü Lowest Level: Unit . and typically mirror Process Commander job functions. Ø Process Commander Application. The following structure shows a sample organizational hierarchy with one organization.identifies the company entity. ü Access groups . and unit. you might use the structure of your company's senior management team as a starting place for division-level entities. for example). 32 . Basic Organizational Hierarchy Ø When a user log in with an operator ID. using nested levels of organization.Organizational Hierarchy Ø Process Commander supports a three-level organizational hierarchy consisting of organizations at the top level.Users' application permissions. group organizational data hierarchically. division and unit.

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

execute with the corresponding implementation classes. develop a list view and summary view reports. a rule can only reference other rules at the same level in the hierarchy or higher. The higher a rule is in the hierarchy. To simplify. Implementation Class vs. Classes associated with the framework are sometimes called the framework layer. For example.Ø Reusability is the ability for PRPC to share the same instance of a rule.that can be can be reused by many applications as-is without customization • Utility functions that are defined in a shared RuleSet so that they can be reused by multiple applications • The class structure provides you with a hierarchy in which rules can be placed. work objects belong only to implementation classes (work types). the more potential reuse there is. ü Some examples of reuse that we see in PRPC are: • The Add activity defined at Work. However. at runtime. Framework Class: Ø An implementation class is a class that belongs to RuleSet that is one of your application RuleSets. Classes for the implementation are sometimes called the implementation layer. and/or service so that it can be reused by other portions of the same application and/or other applications. You can define reports in framework classes that. RuleSet.cannot call Rule Y defined at A-B if no rule Y exists at A-. 34 . Ø A framework class is a class that belongs to RuleSet that is not one of your application RuleSets. Example: Typically. a rule X at class A.

Class Ø Class defines capabilities (rules such as properties. HTML forms. and so on) available to other. The base classes Data-. Ø A Concrete class. including other classes. ü 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. The ultimate base class named @baseclass is at the top (or left). or to instances of the class. Classes can be either Abstract or Concrete. An abstract class is a rule (an instance of the Rule-Obj-Class class) created to support the definition of rules. A dash or minus character "-" as the last character in the class name indicates an abstract class.and others are immediate child classes of the ultimate base class. Other classes are derived from the base classes. subordinate classes. activities. Ø Abstract class cannot have any instances. Concrete class that is a class group: 35 . near or at the bottom of a class hierarchy can have instances stored in the database. appears at the top level of the class hierarchy. Ø Classes are organized into a hierarchy. Work. Rule-.

Ø Inheritance allows a rule created for one class (possibly an abstract class) to be applied to other classes that inherit from it. Rule instances in a RuleSet at the top of the RuleSet list supersede others of the same name.base class are known as rule types and those derived from the Work. Concrete classes don’t end with a – (dash). The Rule. while Work-CoverGeneral is a concrete class. Ø Inheritance is a primary benefit of object oriented technology. users who have a version 02-15-06 in their RuleSet list inherit rules in version 02-15-05. 36 . These are different from base classes. ü RuleSet inheritance arises through the order of RuleSet names in the user's RuleSet list. organization unit. For example. ü Class inheritance searches for rules from a concrete. Process Commander offers multiple types of inheritance that can maximize reuse of your rules while allowing localized overriding as appropriate. ü RuleSet version inheritance works using three-level version numbers. ü Organizational inheritance is implemented through a four-level assembly of privileges and RuleSet versions through the access group. Ø Custom classes that are immediate child classes of the ultimate base class are known as top-level classes.Concrete class that belongs to a class group: Ø Concrete classes derived from the Rule. division. when no rule instance exists in 02-15-06. lower class.class are abstract classes. up the class hierarchy to find available rules. and organization.base class are known as work types.class and Work-Cover.

For example.base class. The following benefits of having class group: ü All instances of classes that are associated with a class group share a common key definition and common lock definition. based on the dash (-) characters. but later be reclassified as a merchandise return request. This allows the database to save the instances as rows in one table in the PegaRULES database. ü Pattern inheritance the name of the parent class is a prefix portion of the name of the class. such class groups are also known as work pools. Two types of class inheritance — directed inheritance and pattern inheritance — are available ü Directed inheritance allows naming a class choosing a name that's not related to its parent's name.Ø Class inheritance uses a sophisticated algorithm to find the parent classes of a specific class. Both work types have the same key structure and belong to a common work pool (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. ü 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). a work object may initially be entered incorrectly as a merchandise order. 37 .

backup. as judged to be a duplicate of another work object ü Resolved-Rejected — resolved. Ø A work object is a primary unit of work completion in an application.GenerateID uses the standard properties pyWorkIDPrefix and pyWorkIDSuffix in its computation.ü Class groups can help with database table management. the work objects are created. and reporting. work completed 38 . and an optional suffix portion and is unique system-wide. This property value is left blank so that work object IDs are unique system-wide. is not filled in by standard rules. The value of this property is a primary indicator of the progress of the object towards resolution. an ordinary work object ID has a prefix of W-nnnnn and no suffix. Ø Resolved work objects identify completed work and are ordinarily not modified by any further processing. Ø A work object ID is a permanent. updated and eventually closed i. Every work object has a unique ID (property pyID). a key part.pyPrefix holds the prefix and is the key to instances of this class. and a primary collection of data that a flow operates on. Ø The standard activity named Work-. Conventionally. unless the work object is re-opened. space. By convention.e. a number.pyStatusWork defines whether the work object is open or resolved. The following are the standard work object statuses available: ü New — not yet reviewed or qualified ü Open — responsibility for processing is with the processing organization ü Pending — responsibility for processing is currently with an external organization ü Resolved-Duplicate — resolved. This value has an optional prefix portion. The integer property Data-UniqueID. Ø The Work Object ID is stored in the pc_data_uniqeid table. Values are restricted and controlled. Normally the system assigns a work object ID automatically as it creates a work object. As an application is used. Ø The standard property Work-. a cover object ID has the format C-nnnnnn. and a status (property pyStatusWork). external identifier of a work object. and a folder object has the format F-nnnnn.pyLastReservedID holds the highest assigned number.pyOrganization. the value of property pyID. and are changed only through specific mechanisms. so W-9432 identifies such an object. it will be resolved. not accepted ü Resolved-Complete — resolved. The property Data-UniqueID. where nnnnn is a system-assigned decimal number. not just within an application or organization. and ensures that work object IDs are unique system-wide. The property Data-UniqueID. using a prefix set in the model rule of the work type or work pool Ø The internal class Data-UniqueID supports work object numbering. an urgency value.

Ø The HTML property rule WorkStatus supports localization of the status value on displays. through field value rules. Clipboard Viewer: 39 .

a dash. part of the sample application. typically belonging to the a class derived from the standard abstract class Work-Objectü Covers. is a superclass to all the classes that define work objects.base class.base class may have a name that does not begin with "Work. Ø Properties." For example.instances is recorded in the pyID property.Ø The Work. and an arbitrary but unique number. is a work type. including ü Ordinary work objects. Ø Through directed inheritance. a subclass of the Work. typically belonging to a concrete class derived from the Work-Coverclass ü Folders. HTML forms. and typically consists of an alphabetic prefix. the class PegaSampleCustomerRequest. one of thirteen standard top level abstract classes. typically belonging to a concrete class derived from the Work-Folderclass Ø The external key to all Work. and flows in the Work.class are available to support the behavior and appearance of all types of work objects. 40 .

acme 41 . Neither Pattern or Directed are selected Q3) In describing class inheritance in PegaRULES Process Commander. The developer must specify pattern inheritance. Q4) Consider the following Data Tables and their classes Class Data Table DataData-AdminData-Admin-XYZ Acme- pr_data pr_data_admin pr_XYZ acme Now a class Acme-Data-ABC is created which directly inherits from Data. Directed Inheritance is mandatory d. Identify major units of completed work d. regardless of any defined pattern inheritance. Pattern inheritance causes a class to inherit characteristics from classes that it resembles. Identify the key tasks that the application will perform Q2) In a class a. b. what should the first step be? a. In which of the above data tables are these five rows included a.Questions: Q1) In designing a class structure for an application. d. pr_XYZ d. c. Both Pattern Inheritance and Directed Inheritance should be selected b. Five rows are added to this. pr_data_admin c. directed inheritance is optional and if specified. which of the following statements is false? a. pr_other e. Pattern Inheritance is mandatory c. Identify primary users b. Directed inheritance causes a class to inherit characteristics directly from the specified parent class. pr_data b. takes precedence.and a data table that belongs to this class is created. Identify systems that the application will be interfacing with c. In pattern inheritance dashes are the delimiters for pattern matching. moving up the pattern class hierarchy.

Q6) Which one of the following defines a work-pool a. direct d. It belongs to class group c. all the above.class like MyCo-HR-Loan-Work. Have instances Q8) Class group should inherit from a. It may be a class group d. @baseclass b. Q11) A top-level class a. Work-Group b. A class group must always have at least one key 42 . Abstract classes can not have instances c.class Q10) Which type of inheritance allows the name of the parent class to be a prefix portion of the name of the class. Must inherit from abstract class e. Work. Work. Classes that end in “-” must be abstract b.Foldere. Work. Class-Pool Q7) About Concrete class (select 3) a. Work-Basket c. Is usually the same as a “bottom level” class Q12) Which of the following is not true a.means. Concrete classes must belong to a class group d. Indicates the Class Group b. Contains most of your business logic d. a. Indicates the Work Pool c. directed c. pattern b. Workc. a. Must end with “-” b. Class-Group d. Inherits from @baseclass b.CoverQ9) A concrete class which ends the Work. Developer can derive the Work.Objectd. Inherits from Workc.

Class Group d. b. Causes the system to store the instances corresponding to two or more concrete classes that have a common key format in a single database table c. WorkObjectStatus. StatusWorkObject d. Class Group d. Q15) Concrete classes corresponding to instances saved in the PegaRULES database are known as a. Q16) Concrete classes corresponding to a table in an external relational database (rather than the PegaRULES database) are known as a. pc_data_uniqeid table. Internal Class b. pc_data table. Q17) The standard property that defines whether the work object is open or resolved. External Class c. Is unrelated to your application’s requirements Q14) An implementation class is a class a. that belongs to RuleSet that is one of your application RuleSets. Internal Class b. External Class c. that belongs to RuleSet that is not one of your application RuleSets. pcv4_work_history 43 . pr_data d.pyID c. Q18) The Work Object ID is stored in the a. Is any set of related work objects b. Work-. a. c.pyStatusWork b. None of the above. None of the above.Q13) A class group a. b. Work-.

Data Modeling 44 .4.

Types: Text. User can’t see. py. DateTime. Ø A property is an instance of the Rule-Obj-Property rule type. This is a permanent feature of a property that cannot be changed after you save a property rule. There are three types of standard properties stating with the Index px. inheritance. Ø Property modes are used to determine how the system represents the property data. ü Properties starting with px are computed properties that user can see on a form. Because a property definition is a rule. but can’t directly enter the values or change. TrueFalse. so it can be apart of your application Rule Set. enter or change the values of these properties. it shares the benefits of versioning. Identifier. Password. The simplest 45 . Every property has one of eleven property modes. TextEncrypted. Decimal. TimeofDay. Date. Double.Properties Ø A property rule provides a name and characteristics for data in an object. and pz. Integer. There are 11 different types in the representation of a single property. ü Properties starting with py can be used by the user or developer to enter or change via direct input ü Properties starting with pz are reserved for internal process commander use. and access control that Process Commander provides to all rules. Properties are used to hold data in work objects. Property Types Ø Properties can be used in different types to determine the kind of data that values of the property represent.

in unordered manner and each identified by a unique text index value. ü Page Group: A Page Group is a data structure consisting of an unordered set of pages. numbers. The major categories are Value modes. sometimes called an array. Ø Page mode identifies properties for which the value has a single or multiple page structure. Text. Page modes. Ø Properties with a mode other than Single Value are known as aggregate properties. or a Boolean true/false value. a date or time. Boolean values and amounts are stored in Single Value mode properties. ü Value Group: A Value Group mode contains one or multiple strings. All eleven properties modes can be divided into four categories based on the representation of the property data. each identified by a string index value. indexed list of strings. Java Object mode. Ø Value mode identify properties that can have none. one. 46 . ü Page: Page is a data structure that contains name-value pairs. each identified by an integer index. A Single Value property contains text that can represent HTML. dates.property mode is Single Value. and Java Property modes. ü Page List: A Page List mode property is a data structure consisting of an ordered list of zero or more embedded pages. a number. or multiple strings as the value: ü Single Value: Select Single Value to create a property that can contain a Single text string value. an identifier. ü Value List: A Value List mode is an ordered.

or identifying a place where a list of values is available at runtime. 3. so it can be apart of your application Rule Set. 47 . Field Valueà Values correspond to field value rules. Ø An embedded page is a clipboard page that has the value of a property of mode Page.: ü Java Property: A property rule provides a name and characteristics for data in an object. Prompt List à Values are enumerated as with a Local List. inheritance. Remote List à Values are enumerated as elements of a List or Group within a single Process Commander object.Ø Java Object mode contains a reference to an instance of a Java object. ü Java Property List: 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 Object Group: Java Object Group is selected to indicate that this property can contain an unordered group of references to instances of Java objects. They are 1. 6. Properties are used to hold data in work objects. Java Property List is selected to indicate that this property represents an array property of a Java class that defines an external Java object. Pages contain properties that can have single or multiple pages as their values. Ø Java Property mode support the Java pages feature. Because a property definition is a rule. Process Commander uses a recursive page structure. 4. 2. Ø Using Prompts in Property we can define optional table edits for Single Value. and access control that Process Commander provides to all rules. Value List and Value Group properties by enumerating the values that the property can assume. Class Key Value à Values correspond to the first key parts of a known other class. Local List à Values are enumerated in this tab. which enables Process Commander applications to interact with external Java objects as though they were pages and properties on the clipboard. a different localized value appears on input or output. Any page on the clipboard that is not a top-level page is an embedded page. but for each internal 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. 5. ü Java Object List: Select Java Object List to indicate that this property can contain an array of Java objects. None à No table edits apply. it shares the benefits of versioning. Ø There are six types of table edits.

Ø Properties wizard are used to create one or more property rules with a common Applies To class by completing a single form. This is used only when to create several properties. This facility allows easy entry and maintenance of data instances for classes that have a simple structure. or delete instances of a concrete class 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 Ø If you add a property (column) to a previously created data table. 48 . you must open and update the list rule (Rule-Obj-List rule type) to have the new property available to the Data Table editor. Click Add at the bottom of the form to create a new data table. Data Table Ø Developers can use the Data Table editor to add. After generating the data table. Ø Select Application > Data Tables to access a list of existing Data Tables in your system. using this wizard the all properties can be created faster than completing the Property form for each property. update. edit the data table to enter the required data. Ø We Can use the wizard to create an edit form for any class that meets these requirements: ü Derived from the Data.class for which no form is defined. or other classes for which an Excel template rule is defined.

to True or False. A model can be applied to a new empty page of that class to set many property values in one processing step. In an activity. Ø Superclass Model causes the system at runtime to apply a model of the immediate parent of this model's class with the same Model Name before it applies this model.class to set initial properties for the work object. Ø Using a model the value of multiple properties can be easily set to required values. not at runtime. not by following full class hierarchy searches 2.Ø How to use data tables? To make references using data tables: 1. Linking together several models is called as model chaining. this improves runtime performance. 2. the value of multiple properties can be easily to zero. Process Commander identifies the parent of the current class using the Parent field in the class definition. By convention. Model is an instance of Rule-Obj-Model. Pass the value into your application. In Definition Tab of Model specify a target property or property reference to be initialized with the initial values. perform an Obj-Open on the instance that contains your system details. because you can set values for many properties quickly. Ø Important Points 1. rather than setting the property values one-by-one in an activity. and so on. Using a model also speeds development. 3. After identifying a parent class. The model in the highest class is applied first. to a computed value such as today's date or the current time. Create a Data-Zzzzzz class. a copied value such as your Operator ID. Process Commander identifies the superclass to be called at the time you save the Model rule form. Ø Using a model. Ø Flow rules that create work objects — use a model rule for a Work. the system uses rule resolution to find the model of the same name as the current model. 3. to the null string. a model named pyDefault is available for most standard classes. Model Ø A model rule defines initial values for properties of a specific class. 49 . The current model is applied last.

Process Flow 50 .5.

Ø List of Flow shapes FlowStart — Identifies the start task of this flow. which graphically represents a process. Ø Flow Editor Toolbar button ( ) is used to start Microsoft Visio 2002/2003 and edit the flow. work objects are created. Ø A work object is the primary unit of work completion in an application. A flow rule governs how work objects are created. ü Temporary work objects cannot be members of a cover. select the Creates temporary object checkbox in the flow that creates the object. Temporary work objects can be used in screen flows and regular flows. Flow rules are normally stored in the PegaRULES database as rows of the pr4_rule_flow table. updated. Ø A flow rule defines a business process or part of a business process. Ø A flow rule is an instance of the Rule-Obj-Flow rule type. ü The Where-Am-I? Display is not available for temporary work objects. ü History additions performed on such objects do not cause a flow to fail. and become resolved. and eventually resolved. Also the below points are important in terms of temporary work object: ü Temporary work objects do not have a work object ID. and the primary collection of data that a flow operates on. Ø A temporary work object is a work object that is created and resolved by a single operator or through straight-through processing and never saved as a database object. history. Every work object has a unique ID. and attachments are not available for temporary work objects.Process Flow Ø Process Commander associates a flow rule with a Microsoft Visio diagram. progress through the system. Click the Return button ( ) when you complete Visio editing. Every flow has one Start shape. The diagram contains a network of shapes (tasks) and connectors (arrows). A flow rule consists of a network of shapes and connectors (lines). each with associated parameters and values. Ø Some of the features like reporting. To create a temporary work object. and a status. 51 . but have no effect. an urgency value. As an application is used.

after the assignment task is defined. Split-Join — Sends the work object to two other flows. Integrator — Identifies an activity that can connect to an external system to send or receive data. Spin-off — Starts a new flow execution and does not wait for its completion. Connectors leaving other tasks such as decision or utility shapes may be when conditions. which is a flow rule that is referenced in another flow. workbasket. you can associate a service level rule with it. It represents a pause or potential pause in the flow. using a Connect BPEL rule). Flow — Identifies a subflow. Fork — Supports automatic selection of one connector from two or more. both of which must complete before the current flow resumes. Notification — Notifies a work party by e-mail or correspondence about the status or progress of this work object as the assignment is created. or agent other than the current user. Pools and swim Lanes — Identifies and groups tasks performed by separate organizational units within one division. A clock appears on the diagram. 52 . The second flow is called a subflow of the first flow. Optionally. This activity determines which worklist or workbasket is to contain the assignment. Assignment-Service — Passes control to an external system (for example. Assignment — Creates an assignment task associated with work object in a workbasket or worklist. Associate a Router task with an assignment task. Comments do not affect execution of the flow. Decision — Identifies an activity that can make an automated decision about the progress of the work object through this flow. Router — Sends an assignment to a user. The task must be completed by a person or the system before the flow can progress. Split-ForEach —Performs an operation or test on each element in a repeating group. For example.Connector — Associates a task in the flow with another that may follow the first task. Connectors leaving assignment tasks may be flow actions. Comment — Adds explanatory text comments anywhere on the flow diagram. such as a cancellation. as shown here. Ticket — Marks a business exception that might arise at any point in the flow. Utility — Specifies an activity to run at that point in the flow to perform automated processing without any user assignment. add a Flow shape to your flow rule to start another flow and end processing of the current flow. Flow execution pauses until Process Commander receives a service request of the appropriate type.

2 shapes. and section rules are known as templates. This flow calls the standard flow named FinishPolicyOverride as a final task.Ø A few standard flow rules. After submitting a form. previous answers. harness rules. ü ScreenFlowClassic: Creates a screen flow rule — a sequence of assignments for one or a set of users that involves no automated processing tasks. rare situations also can be considered straight. Special restrictions apply. see Flow Form — Editing in Visio — Screen Flow Rules. you can select one to use as a base (similar to copying) for this rule. flow actions. If the Template field appears on the new dialog. At any point. is known as a straight-through process. 53 . A flow rule that contains assignments that apply only for unusual. Ø A flow that creates a new work object is called a starter flow. the user can backtrack to review. This can save time and typing. ü ScreenFlowStandard: Creates a screen flow rule using the Process Commander shapes ü ScreenFlowStandardTabbed: Creates a screen flow rule using the Process Commander shapes & the tabbed work object forms ü Standard: : Creates a Standard flow rule using the Process Commander shapes Ø A standard Business Process Modeling Notation (BPMN) will provide businesses with the capability of understanding their internal business procedures in a graphical notation and will give organizations the ability to communicate these procedures in a standard manner. ü BPMN: Creates a flow rule using Business Process Modeling Notation and terminology.3. ü PolicyOverride: Creates a flow rule to support policy override reviews. ü ScreenFlowBPMN: Creates a screen flow rule using Business Process Modeling Notation and terminology. Process Commander flow rules can support such interactions in Screen Flow mode. Ø A flow rule that consists only of assignments or decisions and meets other criteria is known as a screen flow. See Flow Form — Editing in Visio — Swim Lanes. These rules have special characteristics and settings. ü Classic: Creates a flow rule using V4/5. ü CrossFunction: Creates a flow rule consisting entirely of tasks performed by two or more distinct organization units in one division. and so can execute from start to end without human input. Types of flows Ø A flow rule that contains no assignments. These differ only in appearance from the standard shapes introduced in V5. or change. the user is presented with another simple form (with more questions) that may depend on previous answers.

Flow processing automatically saves the work object (using the Obj-Save method) when a FlowEnd shape is reached. the calling flow is called parent flow. This marks the first shape of every execution of the flow rule. A subflow. The ticket is a label for a point in a flow. When you create a flow. 54 .Drag and drop a comment symbol and type in your comment text. processing continues in the calling flow. processing stops on that flow promptly. A raised ticket causes the system to search for any executing flow (on the same or a different work object) that contains this ticket. Processing of a subflow is synchronous. no further processing by this flow rule occurs. so that execution of the other rule may start execution of the subflow. An activity executing anywhere in your entire Process Commander application can set or raise this ticket by executing the Obj-Set-Tickets method with this ticket name as a parameter. Processing in a separate flow may advance the work object farther toward eventual resolution. and resumes at the ticket point. The work object may remain open when it advances to a FlowEnd shape. You can enter or revise these fields: Ø Use comments to document your flow on the Visio diagram.Ø A flow that is called by another flow is known as a subflow. that is referenced in another flow rule. Comments ( ) have no effect on processing. Ø Use the Ticket shape ( ) to mark the starting point for exceptions that may arise at any point in the flow. meaning that the calling flow execution pauses for the duration of the subflow. If this flow reaches ( was called as a sub flow by another flow. Ø A flow may contain none. such as a cancellation. also called a subprocess. When processing ) this shape. Description of Flow Shapes: Ø Every flow rule has a single Start shape ( ) with no incoming connectors. the Start shape is already present. much like a programming "GOTO" destination. You rarely need to alter the Start Properties panel. If found. one. unless the work object is temporary. or multiple FlowEnd shapes.

an e-mail message goes to the first operator listed in the Contacts array of the Workbasket tab. but only send when a threshold urgency level is reached or exceeded.Ø Connect a Notify shape ( ) to an assignment to cause your flow rule to send correspondence to a work party (identified in the work object) reflecting the creation of the assignment instance. not later when the assignment is performed. See Standard activities for flows for descriptions of a few Notify activities. The Notify shape attaches to the bottom of the Assignment shape. They can be used in ). ü NotifyParty: Send an e-mail message as correspondence to a party identified through a parameter. 55 . Ø These standard Work. Rule: Select a Notify activity. ü NotifyAssignee: Send an e-mail message to the Process Commander user who received the assignment. which support synchronous connections. ü NotifyAllAssignees: Send an e-mail message to the Process Commander user who received the assignment. However. represented by the Notify shape ( ü Notify: Send an e-mail message as correspondence to a party identified through a parameter. If the assignment is in a workbasket rather than a worklist. the Notify task. Assignment Service tasks support asynchronous coordination with external systems. Connect BPEL rule). an e-mail message is sent to each operator listed in the Contacts array. Ø Use the Assignment Service task ) in a flow to pass control to an ( external system using a connector (for example. If the assignment is in a workbasket rather than a worklist. in contrast to the Integrator tasks. the activity associated with the notify task runs when the system creates the assignment. ü NotifyAll: Send a single e-mail message to each work party identified in the work object.activities have an Activity Type of Notify. Connect at least one incoming connector and at least one outgoing connector to the shape.

See Standard Activities for Flows for descriptions of a few standard Utility activities.At runtime. and chooses one of the outgoing connectors based on the result. Rule: Select a Utility activity to be executed when a flow execution reaches this shape. ) is an activity that can Ø A utility task ( update a work object without human input. or agent is to receives an assignment. unless the assignment is always to appear on the worklist of the current user (the one who is currently executing the flow rule).Work Type: Select the name of the work type for the application that you want to link to the flow shape. At runtime. The value of this field is referenced with the flow diagram in application documents. See Standard activities for flows to read about a few standard router activities. decision table rule.Choose a decision rule Type: Map 56 . No user interaction or input is required. It may perform computations. decision tree rule or a Boolean expression that when evaluated produces a value that is the basis of branching in the flow. starting with the connector assigned the highest likelihood. the system evaluates the conditions on each outgoing connector. Associate a router activity with each assignment.Ø Use the fork shape ( ) to represent a point where the flow execution chooses one of a few different paths (connectors) based on tests on the work object. worklist. The flow execution continues along the first connector that evaluates to True. and make a decision affecting the course of the flow. retrieve data from another system. ) to reference a Ø Use the Decision task ( map value rule.Rule: Select a router activity that determines which workbasket or operator worklist is to receive the assignment. ) activity determines which Ø A router ( workbasket. and so on. searches. the system evaluates the decision rule based on inputs from the flow and the work object.

Use SmartPrompt to see a list of activities with an Assign Activity Type that are available. Service Level: Optional. • Work-.Value. ü Rule: Select an assignment activity. Creates an instance of the Assign-Worklist class. Ø Add an assignment task for each place in the business process that requires human judgment and input. Type: Map Value or Decision Tree or Decision Table or Boolean Expression.WorkBasket — causes the assignment to be placed in a workbasket. sending a temporary assignment by e-mail to a party identified in the work object who is not an interactive Process Commander user. Work Type: Select the name of the work type for the application that you want to link to the flow shape. Four standard activities defined with • Work. 57 . Rule: Select an activity with an Activity Type of Connect.rule types).as the Applies To class are always choices in this field.WorkList — causes the assignment to be placed on the worklist of the current operator (or of another operator identified by a Router shape). Rule: Select a map value rule. (Your application may include others or override these standard activities. Creates an instance of the AssignWorkbasket class. Decision Table or Boolean Expression. identified by the second key part. For example. Select a service level rule to apply to this task.) • Work-. The value of this field is referenced with the flow diagram in application documents. a service level can cause escalation processing when no response is received from the external system after 60 seconds. Creates and instance of the Assign-External class.External — starts the directed Web access feature. Integrator tasks use activities (with Connect as the Activity Type) that call connector rules (RuleConnect. Ø An Integrator task ( ) identifies an activity that connects your Process Commander system to an external system to send or receive data. Decision Tree. determined by an associated Router shape. • Work-.

Work-. Select a service level rule to apply to this assignment. ü Service Level is Optional. Similarly. a subflow called from this flow can return a literal constant result to indicate which FlowEnd shape was reached. Enter one or more local flow actions that are to be available at runtime from this assignment. • Ø Use connectors (sometimes called arrows) to connect a shape element in the flow with the next shape element. and ü Local Actions are Optional. There are two or more outgoing connectors from a decision or fork shape.Agent — Sends the assignment to a background process rather than to a person (rarely used. Use SmartPrompt to display all flow actions available to flows in this class. A utility shape can return a literal constant result using the Task Status-Set method. Ø The summary of actions for connectors when they are coming out of different shapes is: Connector action Assign Decision Utility Fork ment Always Action Status When Else No Yes No No No No No Yes No Yes Yes No Yes Yes Yes Yes No Yes Yes Yes Spin-Off/ Called flow /Spilt-join /Split for each Yes No No Yes Yes Integrator Yes No No Yes Yes Ø A Call or Branch Flow shape ( ) may represent any of the following: ü A branch to another flow without returning (one or more incoming connectors. no outgoing connectors) 58 . Complete the Connector Properties panel to identify the connector flow actions available to a user who performs this assignment. similar to WorkBasket). In Flow Action select the Action Name — second key part — of a flow action. one of which is labeled Else. to indicate a possible path for the flow execution.

Add at least one outgoing connector to the bottom of the shape. This allows subflows to execute asynchronously. see the standard flow Work. the embedded pages must exist before the Split-ForEach shape is reached 59 . this shape process the work object's embedded Page List or Page Group properties. Select and drag a Flow shape ) for one of the subflow ( to be started. 4. Add a connector from the top triangle to the top of each called flow. At runtime. Select: ü On current work Item to continue processing on the current (unresolved) work object in the next flow. Ø Define Flow on Identify the objects the flow rule is to update.ü A call to another flow with return (one or more incoming connectors. 6. Add at least one connector from the bottom of each called flow to the bottom triangle. 5. The Split/Join shape must contain at least two called subflows. 3. For an example. If you choose Status for the connectors that start the subflows. At runtime. Use a Split-ForEach shape to iterate over the pages of a Page List or Page Group property. Expand the Split/Join shape so that the rectangle becomes large enough to enclose the Flow shapes. Complete the Connector Properties panels. Ø The Split-ForEach ( ) task provides a form of searching or enumeration over the pages in a property. one or more outgoing connectors) ü Part of a Split/Join or Split-forEach shape (at least one incoming and one outgoing connector) ü A flow rule that is branched to or called by another is sometimes informally called a sub flow. you can associate a Likelihood value with each. Complete the SubFlow Process panel. ü Choose on Embedded Page when this flow is part of a Split-forEach operation. You can't use the Split-ForEach shape to create work objects. ü Choose on another Work Item to start processing on a different work object. ( ) Ø Connecting the shapes 1.ParallelWork. in parallel. Process Commander starts the called flows in order of greatest likelihood. Connect at least one incoming connector to the top of the Split/Join shape. then click Apply. Ø Use the Split-Join shape to require that multiple subflows of your flow be completed before the current flow continues execution. Repeat for each additional flow to be started. 2.

A workbasket is defined by an instance of the Data-Admin-WorkBasket class. Ø A worklist is an element of the outstanding (not complete) assignments waiting for a user to perform them. Process Commander starts execution of a different flow. as in an Olympic swimming pool. As work objects progress through a flow execution. Ø Assignments leave a workbasket in three ways: ü Users who are qualified can remove an assignment from the workbasket to process the assignment. Processing in the current flow rule continues in parallel. ü An application can automatically route assignments in a workbasket to users based on work schedules. Assignments may be associated either with human users or with a workbasket. Some Business Process Management materials use the term subprocess for a branch flow. and other factors. the original is called the parent flow. in a separate window. Ø A flow rule that is reached and started by another is sometimes informally called a subflow. Ø A workbasket is a named queue of open assignments that are not associated with an operator.Ø When a work object advancing through a flow reaches the Spin-off shape ( ). Ø Flow in Draft mode is a setting that allows you to create and model flows with shapes that contain rules and flow actions that are not yet defined or complete. skills. the system creates an assignment. Thus. using the current or a different work object. To create a flow for which every shape belongs to a lane. assignments appear on a worklist because an Assignment task in a flow created the assignment. due dates. those with the highest pxAssignUrgency value. Assignments appear in order of assignment urgency — the most urgent assignments appear first. It lists open. However. For ease in developing applications. workloads. Ø Use pools and swim lanes to define and separate processing performed by distinct organization units within one division or that depend on the value of a work object property. no field on the rule form marks a flow rule as a subflow. a worklist display shows selected instances of the Assign-Worklist class. workspace home page. Each lane corresponds to an organization unit or specific property value. the Visio diagram of the current 60 . choose CrossFunction as the Template value in the new dialog box. This shape defines a series of vertical lane borders. the term describes how a flow rule is referenced rather than its characteristics. this mode allows you to define and save flows that reference rules and flow actions that do not exist. Ø Click the Where-am-I? Icon ( ) on a worklist or the Where-am-I? Button ( ) on a work object form to view. without waiting for the other flow to complete. ü Managers can transfer assignments from a workbasket to user worklists. Usually.

in HTML. If the current flow execution is a subflow that was called by another flow rule. 61 . Correspondence rules are part of the Process category. printed letters. JSP tags or directives allow correspondence to incorporate property values and calculations. with a larger arrow marking the current assignment. Ø Correspondence rules that use JavaServer Pages tags can incorporate paragraph rules (Rule-HTML-Paragraph rule type). Outgoing e-mail is supported by an appropriately configured Data-EmailAccount data instance. templates for the content of outgoing correspondence. These are typically associated with one work object (or a cover or folder) and may consist of text. using Notify tasks ü Flow action rules. Each correspondence rule contains standard text for one type of correspondence such as e-mail. They are part of the Process category. The class you identify must use the properties pyOwnerKey and pxCreateDateTime as key parts. or facsimile transmissions produced by the system and its users. Ø A correspondence type rule is an instance of the Rule-CorrType class. Create correspondence rules to define. If the correspondence is to be printed or faxed. This is an instance of RuleObj-Corr. or fax. your application can incorporate the text in a correspondence fragment rule in multiple correspondence rules during stream processing. you can navigate within the display to see the call location within the parent flow. Most correspondence is sent using e-mail. letter. with image files if any) is sent to a server running Windows and the Correspondence Output Server. such as a standard heading. indirectly through activities identified on the Action tab ü Activities Ø The Pega-ProCom agent periodically sends queued messages. Correspondence fragment rules are instances of the Rule-Corr-Fragment class. which provide rich-text editing on the rule form. images. Rules of three other rule types can reference correspondence rules: ü Flow rules. footer. Ø Correspondence is the Process Commander term for outgoing e-mail messages.flow rule. or signature. You can use any of three standard classes or another class you created: ü Data-Corr-Email ü Data-Corr-Letter ü Data-Corr-PhoneText Ø Create a correspondence fragment rule to define reusable or boilerplate HTML text for correspondence. the HTML file (as a ZIP archive. These rules determine how the system finds an address for outgoing correspondence. or both. Using the <pega:include > JSP tag.

and late intervals. Ø Service level rules define three time intervals. ü Default: Imposes a goal of two days and a deadline of five days. deadline. ü Work-. not requiring any user intervention.Send — used by the Pega-ProCom agent. and the late interval defines post-deadline times. once for each repeating interval. ü NotifyAssignee: Sends an e-mail reminder to assignee upon reaching goal time or deadline time.CorrAddressPopulate — Copies address details from page pyAddress (for the work party) to the pyCorrPage page. ü Repeating Interval — If an assignment remains open when any repeating interval ends. ü NotifyManager: Sends e-mail to the assignee's manager upon reaching the deadline time. known as goal. Generates correspondence to a work party identified in a parameter. Service level rules can be associated with a work object or an assignment. Generates correspondence automatically. ü Work-. Service level rules are referenced in the assignment tasks of flow rules. ü TransferToManager: Transfer assignment to manager upon reaching the deadline. The goal time is the smallest time interval. Sends messages of correspondence type ZZZZZ. the system adds this value to urgency value of the assignment.CorrNew — called from a Utility shape in a flow. ü Assign-Corr. ü Work-. Ø The Standard service level rules are: ü Advanceflow: Push the assignment along a flow action automatically. the system adds this value to urgency value of the assignment. Ø A service level rule includes ü Goal — if an assignment remains open when the goal time is reached. the system adds this value to urgency value of the assignment.SendCorr — Called by the Pega-ProCom agent ü Data-Corr-ZZZZ. 62 .Ø These standard activities support correspondence generation and sending: ü Work-. ü Deadline — if an assignment remains open when the deadline time is reached.CreateandProcessCorr — Sets address details. the deadline time is a longer interval. The Pega-Procom agent a background requestor — detects goals and deadlines not met and performs escalation processing.Notify — called from a Notify shape in a flow.

NotifyandTransferToManager: Notifies manager when the assignment remains
open after one full day (goal time). Transfers the assignment to a manager after
three days
ü TransferToWorkbasket: Transfer assignment to a workbasket when it is open at
deadline time.
ü

Ø 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. Work Parties
rules are part of the Process category. A work parties rule is an instance of the RuleObj-WorkParties rule type. Work parties rules are referenced implicitly by harness
rules. A work object may identify no work parties, one, or many work parties.
ü Data-Party-Com — For business organizations
ü Data-Party-Gov — For government organizations
ü Data-Party-Operator— For Process Commander users (who each have a DataAdmin-Operator ID instance)
ü Data-Party-Org — For nonprofit organizations
ü Data-Party-Person — for people who may not be Process Commander Users
with Operator IDs.
Ø A work object is the primary unit of work completion in an application, and the
primary collection of data that a flow operates on Work Status specifies the current
work objects completion details. The important property Work-.pyStatusWork
defines whether the work object is open or resolved. Values for this property are
restricted to a set defined by field value rules, and changes to this property value
convey important information about the progress of the work object towards
completion.
Ø The standard work statuses are:
ü New — Not yet reviewed or qualified
ü Open — Responsibility for processing is with the processing organization
ü Pending — Responsibility for processing is currently with an external
organization
ü Pending-PolicyOverride — Work is suspended pending a review of a potential
violation of policy
ü Resolved-Duplicate — Resolved, as this work object is judged to be a duplicate
of another work object
ü Resolved-Rejected — Resolved, not accepted
ü Resolved-Revoked — Resolved, reviewer has ended processing
ü Resolved-Completed — Resolved, work completed.
Ø In an activity, don't use the Property-Set method in an activity to change a work
object status. Call the standard activity Work-.UpdateStatus, which changes the

63

status directly, and calls standard activities RecalculateAndSave and Resolve as
appropriate. This activity is of type Utility.
Ø The status may also change when your flow uses these two standard activities:
Work-.WorkBasket — Places the assignment in a workbasket and calls Work.UpdateStatus. This activity is of type Assign.
ü Work-.Worklist — Places the assignment on a worklist and calls Work.UpdateStatus. This activity is of type Assign.
ü

Ø A flow action rule controls how users interact with work object forms to complete
assignments. After selecting one flow action, users may fill in a section of the form to
complete (perform) the assignment. Flow action rules are part of the User Interface
category. A flow action rule is an instance of the Rule-Obj-FlowAction rule type.
Ø There are two types of Flow actions
ü Connector flow actions appear as lines on Visio presentation in the Diagram tab
of a flow rule. At runtime, users choose a connector flow action, complete the
assignment, and advances the work object along the connector to the next task.
Flow actions of the other type, known as connector flow actions, appear above the
horizontal line. Unlike connector flow actions, local flow actions are not visible
on the Visio diagram of the flow rule. They are recorded in Assignment Properties
panel.
ü A local flow action, when selected at runtime, causes the assignment to remain
open and on the current user's worklist. Local flow actions are recorded in the
Assignment Properties panel. Local flow actions always are optional. Users may
perform none, one, or multiple local flow actions. A developer can mark a flow
action rule as local on the Flow Action form. On standard work object forms,
local flow actions appear below a horizontal line in the Take Action selection box.

Ø Process Commander generates HTML code, including JSP tags and directives, for
this flow action. In unusual cases, you can author the HTML code directly. In most
cases, the system generates the source HTML automatically.

64

Ø Methods used to define HTML:
Reference HTML to use an HTML rule that defines the presentation.
Define Form to record the source HTML directly in this rule using open
authoring, or to have the system generate the HTML from the Form tab.
ü Reference Section to use a section rule that defines the presentation. This
approach is often suitable to present an embedded list view to users.
ü No HTML to indicate that this connector flow action requires no user input.
ü
ü

Ø Use activities in Flow action to do certain preprocessing and post processing when
users select this flow action. Associate activities with the flow action, and to control
operation of the Perform harness form.

Ø Run an activity before this flow action is used to perform some pre processing before
this flow action is getting executed from an assignment. After flow action enter the
name of an activity to run after other successful processing of this flow action.

Questions:
1. The Smart Shape used for showing a harness to the customer:
a. Assignment
b. Connector
c. Integrator
d. Flow Action
2. Flow without human interaction is
a. Screen Flow
b. Straight through processing
c. Sub Flow
d. Starter Flow
3. Which harness screen will succeed New Harness?
a) Perform harness.

65

b) Confirm harness.
c) Review harness.
d) Reopen harness.
4. Identify standard local actions
a) AttachANote
b) AttacAURL
c) AttachAFile
d) AttachADocument
5. The Smart Shape is used to skip certain steps of a flow without affecting the flow
is:__________
6. Rules like Notify,Utility,Route belongs
a) Rule-HTML-Property
b) Rule-Obj-Activity
c) Rule-Obj-Flow
d) Rule-Declare-OnChange
7. List at least 3 PRPC predefined data classes that serve the purpose of work parties
8. Where can we specify new work object harness?
a) NewDefaults
b) Model.
c) FlowRule.
d) Harness.
9. What are the possible fields we can give in an assignment properties
a) Flow name
b) Assign Activity
c) Routing Activity
d) SLA
e) Local Action
10. When a Flow is in Draft mode….(Choose 2)
a) You cannot add smart shapes
b) You cannot run the Flow
c) It is not visible to Rule resolution
d) You cannot create Work Objects
11. Agent activity of assignment flow rule is used to ------------ purpose.
a) Sends the assignment to background process rather than to a person.
b) starts the directed web accesses feature
c) Causes the assignment to be placed in a work basket, determined by an
associated router shape.
d) Causes the assignment to be placed on the worklist of the current operator.
12. Which shape is used to start a different flow parallel to the current flow?
a) Split-join
b) Fork
c) Spin-off
d) Swim lane

66

Case Management 67 .6.

In covers if the covered objects are resolved then the cover objects get resolved automatically. Ø A cover object is also a work object in a concrete class that inherits from WorkCover-. Ø Every work object has a unique ID (property pyID).GenerateID uses the standard properties pyWorkIDPrefix and pyWorkIDSuffix in its computation. the prefix of work object Q1432 is Q.is known as the cover work object.base class. work objects are created. Ø A cover work object provides a means to coordinate processing of related work objects. Ø Cover Work Objects will maintain the parent child relationship and those cover objects will contain the prefix ID as “C-“ Ø Covers are used to maintain the parent child relationship. The suffix of work object MORT-763-K4 is K4. and the primary collection of data that a flow operates on. is a super class to all the classes that define work objects.Case Management Ø A work object is the primary unit of work completion in an application. The work object ID is required to contain either a prefix or suffix. and eventually closed (resolved). updated. the system prevents the resolution of a cover work object unless all of its "member" covered work objects are resolved. For example if there is a necessity of resolving five work objects to process a request. an urgency value. and that contains the default prefix “W-”. Ø Ordinary work objects. The class that is derived from Work-Cover. then we use the concept of Covers and Covered work objects. As an application is used. A cover object can consist of many work objects and those work objects are inherited from work-object. A work object is the fundamental unit that records processed work in an application.is known as the cover work object and the five work objects related to that cover object are known as the covered work objects. The standard utility activity named Work-. Ø A folder object is a work object in a concrete class that inherits from Work-Folder-. For example. A folder object holds a collection of one or more other work objects which 68 .class and those work objects are known as covered work objects and the work object derived from work-cover. one of thirteen standard top level abstract classes. The prefix of the work object MORT-763-K4 is MORT. status (property pyStatusWork). Ø The Work. typically belonging to the class derived from the standard abstract class Work-Object-. Ø Work object ID will create automatically as a work object is created. By default.

which need not belong all in a single work pool.themselves may be basic work objects other folders and cover objects. Cover objects and covered objects and those all work objects can be created processed and resolved in the cover itself. Ø The main purpose of folders is to maintain the Parent child relationship between the Folders. covers and Folders: 69 . Ø Relation ship between Work object. For example if we have five work objects that are dependent on each other then we use the concept of covers and if those work objects are independent then we use the concept of folders. Folder Objects will have the prefix ID as “F-“. Ø Folders provide a structure for more loosely associating multiple related work objects. ü One work object may be associated with multiple folders. ü Folders offer a vehicle for keeping track of one or more commonalities among otherwise disparate work objects. but only with one cover. ü Members of a folder can belong to different work types. The folders can contain the folders. ü A standard harness rule is available that displays a cover and lists its member work objects. Ø Covers are intended to coordinate processing on multiple distinct but closely related work objects. ü The relationships between folder work objects and their contents may be many-tomany. Covers and Covered work objects. Ø The main differences are: ü Covers can be resolved automatically when all their constituent ("member") work objects are resolved. Ø In Process Commander Work objects capture and process evolving information about individual units of work.

Ø Steps for creating a Folder Object: ü Create a class group and it is derived from work-. In case of the covers. Named work object ü Mention the name of the cover class in the process tab of work object flow named work object. From the cover we can go to any work object that is covered work object associated with the cover object and we can create process and resolve it. when all the work objects associated with the cover object get resolved that is the when all the covered objects are resolved then the Cover objects will be resolved automatically. processed and resolved with in the cover itself. Create a basic flow for generating the cover object named cover If the cover object is created then it will ask to create any work objects associated in it. 70 . ü Create a flow for generating folder objects named as Folder. covers and folders to the current folder. create the work objects and also we can add the work objects. ü Create a basic flow for generating the work object. ü Now we can resolve the current folder based on the flow designed. The work objects that are related to the cover are known as covered work objects. ü When all the work objects are resolved then the cover objects get resolved automatically. Ø Steps for Creating Covered Work Objects: ü Create a concrete class named work object that is derived from work-object-. ü Then execute the flow.Ø Work objects from the cover itself. ü Hence the work object is processed and the work object is resolved. This class should belong to a class group which is derived from work-. Here the work object name is work object that is associated with cover. Ø Steps for Creating Cover objects: ü ü ü ü Create a Concrete class named cover that inherits from work-cover-. ü While creating the folder object there is an option called view folder contents and by this we can view the folder contents. So that the works object is created by executing the flow. Ø These Covered work objects are created. ü Create a work type in the class group and the work type belongs to the class group and name that work type as Folder that inherits from Work-Folder-.

covers. Work. Questions: 1. Work. Ø Work object locking is mainly used to prevent others to open the same work object and to prevent them from make the changes. Only work objects b. Work – New 2. Locking may be more important in some situations than in others. Locks are retained until a Commit method occurs. select View > System > Locks > My Locks. Work objects.Work object locking: Ø The purpose of locking items before making changes is to prevent data loss.ObjectID b. Ø A Process Commander requestor can lock an open instance if the instance belongs to a class that has Allow Locking? Selected in the class rule and it has ever been saved and committed to the PegaRULES database. Folders can contain: a. Work objects or covers c. Work – Object d.GenerateID c. Which will be used to Generated work Object ID in New Release? a. Ø To view object locks held by your own requestor session. or other folders 71 .

pyWorkPage b. the Cover is automatically Resolved c. Cover work object is currently on the UI screen. Covers have some automatic behavior a. the Cover is automatically Resolved b. pyPrefix only c. pyWorkIDPrefix and pyWorkIDSuffix respectively b. pyWorkCover c. pyWorkCover b. pyWorkPage d. Whenever all of the covered work objects are Resolved-Complete. Step Page d. Whenever all of the covered work objects are Resolved. pyWorkCover b. pyWorkPage d. Where can you view the details about cover? a. Where can you see the cover details? a. pyCoveredWork c. none of the above 4. Whenever all of the covered work objects are Resolved. A covered work object is currently opened on the screen. the AllCoveredResolved Ticket is raised 6. pyCurrentPage 7. pyCoveredWork c. pyCoverPage 72 . pyWork 5.3. What are the properties used to set the prefix and suffix for a work object? a. pyWorkIDSuffix only d. Covered work object will be stored in which page? a.

Activities 73 .7.

A property is similar to an instance variable in Java or C++. ü Continue Whens. An activity is an instance of the Rule-Obj-Activity rule type.ACTIVITIES Ø An activity is similar to an instance method. ü Method (required) – The name of one of 86 predefined methods to call to work on the step page. Ø Use a precondition to conditionally skip execution of a step.or two-character step label name which will be used for reference. the system converts information in the form into server-side Java source code.Control exits the current activity and goes to the calling activity ü Exit Iteration. The following are the Fields of the Activity Rule Form ü Label (optional) – Enter a one.Next When Condition is validated ü Skip Step. ü Description (optional) –Description about the functionality of the step ü Step page (optional) – The name of the clipboard page that this step operates on. each of which can contain a method or an instruction.The Control goes to the method or instruction referenced in that step ü Exit Activity. As an activity form is saved. The Run icon executes an activity. At runtime. Different options available for a Pre condition are. If false. The activity must be saved and valid for the Run icon to be visible. can transfer control to another activity.For the current iteration the step is skipped and the control goes to next iteration ü Jump to Later Step: The Control goes to the step referenced. this Java code is compiled and executed to perform processing. or execute custom inline Java. The system evaluates whether specified conditions are met before it executes the method or instruction referenced in the step. Ø An activity when defined consists of a sequence of steps. Ø An activity consists of one or more steps. and decision making. 74 .Current Step is skipped and control goes to next step ü Skip Whens. Each step can call a Process Commander method. the rest of the step is skipped. analysis.

The significant functionality of transition step is that it is used for error handling in activities. transition of some sort can be done. This provides a limited form of enumeration or looping.Ø The Transition step defines any post condition that needs to be validated and based on the validation. Ø Iterations are used to repeat a step a number of times or until a condition is met. the transition step can be used to make the control shift to a later step which handles the exception. The different options available for looping are as follows ü For each page-option to sequence through all pages of a specified class 75 . The transition step also has the same options as pre conditions for the transition to take place. When ever there is an exception.

The calling activity can provide input parameters to the called activity. an activity can call through an inline Java step which calls the required activity. ü For each element in a value group-to repeat the step for each element in a Value Group property. Ø Parameters are variables that can be passed from an activity or to an activity. control transfers to another activity found through rule resolution. an approach known as callby-reference ü Branch: Branch instruction to cause the current activity to find another specified activity and branch to it without a return. or it can share its own parameter page with the called activity. Ø CALLING AN A FROM ANOTHER ACTIVITY: ü Call: Call instruction to cause the current activity find another specified activity and executes it. Parameters generally have a global scope. The former is termed as Out Parameter and the later is termed as In Parameter. When the system executes a Branch step. Local variables are properties that are used inside an activity and these variables will have only a local 76 . When that activity completes.ü For each embedded page-apply a method or instruction to each embedded page in a Page List or Page Group property ü For each element in a value list-to repeat the step for each element in a Value List property. The Parameter can be any one of the data types specified and whether it is mandatory or not can also be mentioned. In addition to these two ways. control returns to the calling activity. ü For Loop-to repeat the step a number of times determined by the values of integer constants or integer properties.

Ø Step Pages are the pages that are defined for the activity to work on it. we define the step pages that are to be used in the activity. the step method works on the appropriate step page and has the same visibility characteristics as its class. ü A step page specified for a Property-Set method indicates to set the properties of the page defined ü A step page specified for a Show-Page method indicates the XML for the specified named page Ø Different types of keywords as pages available are 77 .scope and it cannot be used out side the declared activity. When it is defined. ü A step page specified for a Page-New method indicates the name (and class) of the page to be created. The Local Variable can also be any one of the mentioned data type. In Pages & Classes tab.

This page structure is not part of the clipboard. indicates that this page is retrieved or located at runtime through an activity of type Locate. atomic operation that can be performed by one step of an activity (Rule-Obj-Activity rule type) or a Parse Structured rule (Rule-Parse-Structured rule type). not a property. a keyword indicating that the name that follows the word "local" and the period is a local variable. or mark it for later deletion with the Commit method 78 .pagename". ü Param — identifies the parameter page for an activity. Delete a page from the clipboard. two things are specified: the name of the activity being called and the page it is called to work on. not by the activity itself. These methods can’t be altered or new methods can be added. Release a lock held after Commit. a method is an instance of the RuleMethod rule type. this is referred to as the activity’s PRIMARY page. This keyword is used in Declare Index. ü Prompt — as a prefix portion of a page name. ü Parent — in the context of an embedded page. ü Locate — A prefix to a page name (in lowercase). S. ü Top — identifies the top-level page to which the current embedded page belongs. This keyword may appear more than once in a property reference. Ø The concept of primary page is a relative term. Internally. Rename a page or name a primary page Associate a message with a page.No Methods for entire clipboard pages 1 2 3 4 5 6 7 8 9 10 11 12 Page-Change-Class Page-Clear-Messages Page-Copy Page-Merge-Into Page-New Page-Remove Page-Rename Page-Set-Messages Page-Unlock Page-Validate Methods for persistent instances Commit Obj-Browse 13 Obj-Delete Description Change the class of a page. When an activity is called. In the clipboard. Validates all properties on a page. Ø A Process Commander method is a primitive. Copy contents of one page to another page Merge two or more pages into one page. ü Mode — identifies an indirect page reference.ü local — Not a page. The below table consists of all the methods that can be used in an activity. Create a page. The PRIMARY page of an activity is determined by the activity that called it. decision table. not a keyword identifies an indirect page reference in a Call or Branch. Commit all database changes in the Thread. Search through and select instances of a class based on tests of values of exposed columns. identifies the immediately containing page to which the embedded page belongs. Remove page messages from the step page. the called activity exists within the page on which it is called. and refers to these pages using the syntax "Prompt. decision tree. and map value rules. The called activity identifies an indirect page by selecting prompt as the Mode field in the Pages & Classes tab. Delete an instance from the database.

37 Exit-Activity Requestor-Stop Thread-Clear Wait Methods for HTML and XML streams Show-HTML 38 Show-Page 39 40 Show-Property Show-Stream Use the Obj-Delete-by-Handle method to delete an instance identified by its handle Remove embedded pages of a Code-Pega-List results page that fail to meet criteria specified in a when condition rule. Add an activity to an internal dispatch list. or mark it for saving (commit) later. When that activity completes. Stop processing of the requestor.14 Obj-Delete-By-Handle 15 Obj-Filter 16 Obj-List 17 Obj-List-View 18 Obj-Open 19 20 21 Obj-Open-by-Handle Obj-Refresh-and-Lock Obj-Save 22 Obj-Save-Cancel 23 24 Obj-Sort Obj-Validate 25 26 27 28 29 30 Rollback Control methods and instructions Activity-Clear-Status Activity-Set-Status Activity-End Activity-List-Add Branching to another activity 31 Calling another activity 32 Collect Use the Collect instruction to begin execution of a collection rule (Rule-Declare-Collection rule type). Apply stream processing to a JSP. This rule can execute additional rules of several types. Send a single property value to the browser. Search through instances of a class and extract selected properties. typically representing user input. Clear the thread page. Use the Branch instruction to cause the current activity to find another specified activity and branch to it without a return Use the Call instruction to cause the current activity find another specified activity and executes it. Sort the values of a property of mode Page List. not yet committed to the database. control returns to the calling activity. 33 34 35 36 End the current activity. End the current activity and calling activities. Pause a Thread for a specified time interval. or XML rule. Assemble and send an HTML page to a user's browser. Send an XML representation of a page to the browser. Save page data to the database. including activities and other collection rules. but with no formatting or HTML display. Open an instance stored in the PegaRULES database or in certain cases an external database. Property methods 79 . Open an instance and acquire a lock. Cancel any uncommitted database save operations. Reset the method status from the previous method. Set a return value. Reverse a previous Obj-Save or Obj-Delete method. Run a Validate rule on a set of properties. Open an instance using a permanent unique key. correspondence. HTML. Execute the retrieval and sorting operations of a list view rule.

Save the contents of an HTML stream as the value of a property.NET framework. Use the Connect-MSMQ method to invoke a connector to an external system that uses Microsoft MQ (MSMQ) messaging services. Start a connector to an external system using the Java Message Service application programmer interface. Start a connector to an external system using HTTP. Record your changes to work objects or activities List instances of a class. XML. Delete a property from a page. Start a connector to invoke a Web service. Start a connector to an external Enterprise JavaBean. Retrieve rows from an external relational database. Sort the values of a property of mode Page List. Associate a literal text message with a property or a step page. add contents to. Start a connector to call an external Java class or JavaBean. Start a connector for a WebSphere MQ connection. Set or reset tickets. Start a flow execution. Set the value of one or more specified properties Save the contents of a correspondence stream as the value of a property. Delete an instance from a relational database. Use the Connect-File method to invoke a Connect File rule (Rule-File-Connect rule type). Convey results of activity processing to a calling flow. Start a connector to an external system through a JCA resource adapter.41 Apply-Model 42 43 44 45 46 Obj-Sort Property-Remove Property-Seek-Value Property-Set Property-Set-Corr 47 Property-Set-HTML 48 Property-Set-Messages 49 Property-Set-Stream 50 Property-Set-XML 51 52 53 54 Property-Validate Flow-related methods Flow-End Flow-New Obj-Set-Tickets 55 TaskStatus-Set 58 History methods History-Add History-List Methods for connectors Connect-dotNet 59 Connect-EJB 60 Connect-File 61 62 Connect-HTTP Connect-Java 63 Connect-JCA 64 Connect-JMS 65 Connect-MSMQ 66 67 68 Connect-MQ Connect-SOAP Connect-Wait 69 70 71 RDB-Delete RDB-List RDB-Open 56 57 Use the Apply-Model method to execute a model rule to update an existing clipboard page. Block (pause) for a time interval to synchronize with a child requestor. The rule can create. Open an instance from an external relational 80 . Save the contents of a JSP. Save the contents of an XML stream as the value of a property. Apply an edit validate rule to test user input. interrupting the normal sequential processing of a flow. or HTML stream as the value of a property. End a flow execution. Start a connector to a Web service based on the Microsoft . Use backward chaining to obtain a value. or close an output file.

Execute a Parse Structured rule in an activity. Use this method to determine whether the current requestor has access to a specific privilege Use the Property-Map-DecisionTable method to evaluate a decision table rule and save the result as the value of a property. Do not use this method. Manipulate string buffer containing local variables. Execute a XML parse rule in an activity. The method sets the result as a value for a Single Value property. 83 Local variables StringBuffer-Append 84 StringBuffer-Insert 85 StringBuffer-Reset 86 87 Other Assert-No-Invocation Connect-FTP 88 Link-Objects 89 Log-Message 90 Privilege-Check 91 Property-Map-DecisionTable 92 Property-Map-DecisionTree 93 Property-Map-Value Manipulate string buffer containing local variables. Evaluate a parse normalize rule. The Property-Map-Value method evaluates a onedimensional map value (Rule-Obj-MapValue rule type) defined in the parameter. Use the Log-Message method to append a message to the Pega log when the step is reached. Save the contents of a clipboard page to a relational database.base class.72 RDB-Save 73 74 75 76 Structured parsing Apply-Parse-Delimited Apply-Parse-Structured Apply-Parse-XML Map-Structured 77 Parse-Byte-Pos 78 Parse-Char-Pos 79 80 81 82 Parse-Fixed-Binary Parse-Packed-Decimal Text-Infer Text-Normalize database. Evaluate a parse infer rule. Execute a Parse Delimited rule in an activity. This method appends a text string to the current contents of the buffer Manipulate string buffer containing local variables. Use this method to copy a file from one file system to another file system using File Transfer Protocol Use this method to create an instance of a concrete class derived from the Link. Use the Property-Map-DecisionTree method in to evaluate a decision tree rule (Rule-DeclareDecisionTree rule type) and store the result as the value of a property. A link functions as a bidirectional cross reference to associate two objects together. Used only in Parse Structured rules. This method inserts a string into the buffer at a specific byte offset position. Use this method to clear a local variable of type String Buffer of an activity Reserved. Used only in Parse Structured rules for parsing by char positions Used only in Parse Structured rules. Use the Map-Structured method to invoke a map structured rule Used only in Parse Structured rules for parsing by byte positions. 81 .

The system uses the specified class and key fields to find and open the object and place its data into the specified step page. If left blank. PropertyName Enter in this array the name of each property or properties and the associated values that together make up the key of the instance to be opened. to start the internal processing that develops rule references This method is used only for custom rule types. It sets the value that results into a specified property. identify the name of a page to be created by this method to hold the results of the locking attempt.94 Property-Map-ValuePair 95 Queue-for-Agent 96 Queue instruction The Property-Map-ValuePair method evaluates a two-dimensional map value rule identified in the parameters. Advanced 97 Java 98 Start-Validate 99 End-Validate To include inline java into the activity Use this method only when building custom rule types. specify either a literal value or a property reference. Lock Select this box to acquire a lock. the class is obtained from the Pages & Classes tab of the activity based on the property references in the parameter array. Use this method when constructing the application logic that queues items such as work objects or assignments to be processed in the background by an agent. PropertyValue For the value. when it fails. LockInfoPage Optional. Parameter Description OpenClass Optional. Use the Queue instruction to start asynchronous execution of a second activity. Identify the concrete class of the instance to be opened. ReleaseonCommit Select this box if the Lock box is selected and want the system to release the lock when the next Commit method occurs for this instance. to end the processing that develops rule references STANDARD METHODS Ø Use the Obj-Open method to open an instance stored in the PegaRULES database or in an external database linked to an external class. Ø Use Obj-Save method to request that the system save a clipboard page to the PegaRULES database 82 . As a debugging aid. Enter at least one property name. and save it as a clipboard page.

Select Select to return the value of this property on each embedded page. The Obj-Browse method has five base parameters and an optional array of selection criteria. leave this box cleared WithErrors Select this box if the instance is to be saved even when it contains messages. can be returned. Sort Select No Sorting. Ø Use Obj-Sort method to sort the clipboard pages that are the values of a property of mode Page List. values of properties that are not exposed as columns. Only properties exposed as columns can be used as selection criteria. Parameter Description PageName Enter the name of the destination page to contain search results. Ø Use the Obj-Browse method to search instances of one class and copy the entire instances. ReadOnly Marking the embedded pages as read-only with this check box prevents changes to the values of properties on the embedded pages Logic Optional. MaxRecords Optional. including embedded properties. indicating validation errors. Use the Obj-Browse method optionally followed by the Obj-Filter method to create a list of search results. and whether the sort sequence is ascending or descending for each sort level. Enter the maximum number of instances to be returned at runtime. If left blank. Condition To filter the value in the list based on a condition Value Enter a constant value. a property reference or other expression for the comparison for each instance of the class. However. Ascending.Parameter Description WriteNow Normally. to the clipboard as an array of embedded pages. the default is no limit. The system uses Code-Pega-List as the class of this page. ObjClass Identify a class to search. Field Enter a property reference. or specified properties. 83 . Enter a boolean statement that defines how the rows of the parameter array are to be combined Label Enter a unique letter or identifier for this row. referenced in the Logic field. You can specify one or more properties to sort on. or Descending to control the sorting of results by this field.

Ø Use the Obj-Delete method to delete a database instance corresponding to a clipboard page and optionally to delete the clipboard page too. Immediate If selected. unless the Immediate box is selected or the Commit method has already occurred. Clear the box to sort in ascending order. RDB-List. or (more commonly) defer deletion until a later execution of a Commit method. To delete the database instance immediately from the database. Leave blank in most. the system deletes the page identified in the Step Page column of this step from your clipboard and marks the corresponding persistent instance for deletion. Class Optional. of class Code-Pega-List. Reverse or cancel a previously executed Obj-Delete method by using the Obj-Save-Cancel method (like the method Obj-Save can be reversed). Each property reference most identifies a Single Value mode property or a single text string. 84 . The deletion can occur immediately. Parameter Description List Page Name of the results page. Parameter Description Remove If selected. the database instance is deleted by the next Commit operation. If this box is cleared. you can use the Obj-Filter method to remove all embedded pages where no value of FirstName is "Robert". For example.Parameter Description PageListProperty Enter a property reference that identifies a target property of mode Page List to be sorted. Descending Select to cause the method to sort in descending order for the property. do not check the immediate check box. Obj-List-View or ObjBrowse methods) based on one or more when condition rules. the system deletes the database instance immediately (commits this deletion). select this box. if each embedded page on results page contains a Page List property Child and each Child page contains a Single Value property FirstName. Ø Use the Obj-Filter method to filter the embedded pages of a results page (such as a Code-Pega-List page produced by the Obj-List. SortProperty Identify in rows of this array a property reference (starting with a period or a page name) on each page of the Page List property that is the basis of sorting. To use the Obj-Delete method in an activity with Activity Type of Trigger.

ResultClass Select the Applies To key part of one or more when condition rules (Rule-Obj-When) to be used to test each result. case-sensitive end value for this property Like Optional. Identify the second key part — List Name — name of a list MaxRecords Optional. Ø Use the Obj-List method to retrieve data to the clipboard as an array of embedded pages. specifying a when condition rule. case-sensitive start value for this property SelectTo Optional. RuleObjList Optional. the comparisons and expressions in the when condition rule involve one or more aggregate properties or unexposed properties. The system uses CodePega-List as the class of this page. When Complete at least one row of this array. Parameter Description PageName* Enter the name of the destination page to contain search results. it uses this value as the Applies To field (first key part) with rule resolution to find the list rule. Enter a literal. SelectFrom Optional. Enter one or more properties to select and return from each instance of the class to be searched. ObjClass* Identify the concrete class to search. To include in SQL query Lightweight Results Select to cause results from this Obj-List method to be returned in a special format consistent with a lightweight table in SQL rather than the standard pxResults pages. Enter a literal. 85 . Typically. Must match or be an ancestor class of the class of the embedded pages in the ListPage page. Enter the maximum number of instances want to be returned in the list at runtime. The Obj-List method searches sequentially through instances of the PegaRULES database or an external database and retrieves specified data to pages in the clipboard. When this method references a list rule. Enter the second key part (When Name) of a when condition rule. SelectionProperty Optional.

you can enter: • A literal constant • A reference to the value of another property • A reference to the value of a parameter variable defined on the current activity's parameter page • An arithmetic operation • A function call • A reference to the value of a local variable defined on the parameter page Ø Use Property-Set-HTML method to save the contents of an HTML stream as the value of a Single Value property. If the Step Page field for this step is blank. This method can’t be used to set the value of a property that is the target property of a Declare Expression rule. PropertiesValue Enter an expression to compute a value for each property. If the property is on the step page.Ø Use Property-Set method to set the value of one or more specified properties. HTMLStream Enter the Stream Name key part of an HTML rule (Rule-Obj-HTML rule type) to be processed to produce the value of the property. Each row of the array contains a property name or reference (the destination). Identify the property that to receive its value from stream processing. This method sets the results of stream processing on an HTML rule. as the value of the property specified. The property value can then be mapped as output and conveyed to an external system. The Property-Set method uses an array of parameters. Parameter Description PropertyName Enter a Single Value target property reference. The property value can then be mapped as output for transmission to an external system. Ø Use Property-Set-XML method to save the contents of an XML rule after stream processing completes as the value of a Single Value property. Parameter Description PropertiesName Enter one or more target property references. Order is significant. after all directives are processed. and a value (the source). For example. the system uses the primary page of the activity. Parameter Description PropertyName Identify a Single Value target property to receive the value produced by stream processing. precede the 86 .

Message Enter one of the following: • A message rule key. Ø Use Page-Copy method to copy the contents of a source clipboard page to a new or previously created destination clipboard page. Parameters Description CopyFrom Optional. include the page name in the reference and ensure that this page appears on the Pages & Classes tab of the Activity form. Ø Use Property-Set-Messages method to associate a text message with a property or a step page. with no quotes. • A literal text string in double quotes. • The third key part of a field value rule where @baseclass is the first key part and the Category value is the second key part. If this property is on a different page. Parameter Description Model Optional. Use this only when the Category field is not blank Field Identify the property on which the message is set. Leave blank unless when the message text is displayed the output is intended to be localized based on field value rules in a language-specific RuleSet. The system reads the appropriate property and adds the message to the page. Accept the default value pyMessageLabel except in advanced cases.property name with a period. NewClass Optional. To save the name of the new page as the final element in a list. XMLType Enter the third key part of an XML rule to process. XMLStream Enter the Stream Name key part of an XML rule to process. The source page is not altered. to support localization. Enter the name of the source page from 87 . Identify a class — in most cases concrete class — for the new page. Identify a localization category. Enter a model (an instance of the Rule-ObjModel rule type) to apply to the new page. PageList Optional. identify a Value List property (not a Page List property). Ø Use the Page-New method to create a page on the clipboard. Parameter Description Category Optional. The new page may be a top-level page or an embedded page.

Tracer output begins when the activity starts. the system uses the Step Page of the current step or the primary page of the activity if the Step Page field is blank. HOW TO TEST AN ACTIVITY: Ø If the activity requires only a few parameters. ü Optionally. The contents of the database are not affected. This eliminates Tracer output from other rules in the RuleSet. ü Select Run > Trace Open Rule.which to obtain property values to copy. Ø Use the Page-Clear-Messages method to remove all property messages and all page messages from the page identified in the Step Page column of the current step. Use the notation pagename. Identify a model to be applied to the destination page before copying data from the source page. The current contents of the destination page are erased before the copy operation occurs. If it exists. if the activity requires extensive setup and is more appropriately tested in context rather than through unit testing. Ø Use Page-Remove method to delete one or more pages from the clipboard.propertyname. However. CopyInto* Enter the name of the destination page. identify a Value List property (not a Page List property). PageList Optional. 88 . and deselect the RuleSet containing the activity. trigger the Tracer to start only when the activity is reached. To save the name of the new page as the final element in a list. Enter the name of a top-level or embedded clipboard page to delete. as described below. it can be tested easily using the Run toolbar button. Exit from the Tracer. The Tracer tool starts. If blank. ü Begin other processing that eventually calls the activity in your own requestor session. it must have the same class as the source page. click to open the Trace Options panel. Model Optional. which may or may not already exist. Ø In-context testing To test an activity in the context of other activities and rules that produces the needed initial conditions: ü Open the activity in the workspace. Parameter Description Page Optional.

What is the class of the top level clipboard page created by the Obj-List method? (a) Code-Pega-List (b) Rule-Pega-Obj (c) pxResults (d) The same class as the returned instance 2. property values. The system retains these pages when the form is closed. and so on. it may update the clipboard.) ü Click Execute to start the activity in your requestor session. Click Run Rule. including copies of named pages identified on this form. If the activity uses parameters. display HTML forms. i) StepPage is not required on each step of an activity. Questions 1. Enter constants for input parameters as prompted. g) Step pages are removed when the activity ended h) Steppage class is always equal to AppliesTo Key. start the Tracer tool to monitor activity execution. A pop-up form appears. properties on these pages remain available for later tests of this or another rule tested with the Run button. Using the Clipboard tool or other means. open and alter instances. ü Click the Run toolbar button ( ) or the equivalent keyboard shortcut CTRL + R. 3. and other initial conditions. Show-Html 89 . Which of the following is true about step pages? (Choose 2) f) Steppages define the default pagecontext during the step execution. set up clipboard pages.Ø Unit testing ü Optional. ü If the text requires a test page. It uses the current RuleSet list and access roles. ü If the execution causes errors. Set Tracer options. Which of the following method is used for viewing any step page’s info in XML format (especially for the purpose of debugging?) a. the system presents an input form for parameters. ü Complete the Test Page area. Show-XML b. ü Use the Clipboard tool and the Tracer tool to uncover errors and view processing details. ü As the activity runs. an error form appears. select the Create a Test Page radio button. Ø Clipboard contents Testing with the Run button can create one or more clipboard pages. (Some input parameters may be optional. ü Next.

without actually waiting for Commit method a. Which of the following statements is true? a. Commit 7. Obj-Save-Drop d. An instance of a step page with the same name can be reused and the data must be cleared using Page-Reset d. Write-Now b. Show-Step-Page e. The step page can be classless if it is temporary c. Obj-Save c. Immediate. To create a work object from an activity: a. and the system does not return to the calling activity. Save-Now 6. Obj-All-Rollback 5. Show-Property 4. The following method is used to make Obj-Save method not be effective and hence not to be taken up by subsequent Commit method a. Obj-Save-Rollback c. 8. ----------. Immediate c. Obj-Open d.Save-Cancel b. Immediate. Show-Html b. Create a step page of the class of the work object b. Obj. the step page has to be created using Page-New b. • If one activity calls another activity that contains the Activity-End method.Check box in Obj-Delete method facilitate immediate write into database. Obj-Open methods open an instance of a class into a step page. Before Obj-Open. Both Assign and Utility activities can not use which of the following methods a. All of the above e. both activities end. An instance of a step page with the same name can be reused and the data is cleared automatically 90 . Explain in single line difference between Activity-End and Exit-Activity methods • The Exit-Activity method ends the current activity and returns control to the calling activity. Save-Now. Enter the name of a starting harness d. Immediate d. None of the above. Write-Now. Show-Page d.Check box in Obj-Save method and ---------. Call the Add activity c. activities cannot create work objects 9.c.

A parameter page is a classless c. activities cannot create work objects 13. A and C 14. Which statement about Local Variables is true? a. They can direct the logic to another point in the activity c. All of the above e. To create a work object from an activity: a. They exist only within the context of an activity c. global c. They use WHEN statements or IF statements that evaluate to true or false b. Obj-List b. They are stored on the clipboard as temporary variables b.10. They are stored in a named page that is created automatically 12. They can end activity processing based upon the status d. local b. Work-Open d. They can be stored in the database d. None of the above. A parameter page is used to pass parameters between activities b. A parameter page must contain one literal value. primary d. Create a step page of the class of the work object b. Call the Add activity c. RDB-Retrieve 91 . A parameter page can contain references to properties on the primary page 15. You can use Activity Parameters to set: a) The work object status b) The assignment status c) Both d) Neither 11. Which statement is not true? a. All of the above e. the page key d. Which of the following keywords are used in place of an explicit page name? a. Which statement best describe Preconditions and Post transitions: a. Which method is used to retrieve rows from a database and place the results as embedded pages in a clipboard? a. Enter the name of a starting harness d. top 16. RDB-Open c.

8. User Interface 92 .

Sections may contain other sections. without any compiling code. Paragraph 5. and others. Harness rules are instances of the RuleHTML-Harness class. Harness 2.Introduction Ø Process Commander includes portals and work object forms that allow application users to enter. harness rules define the structure. Ø Section rules are referenced in: ü Harness rules ü Other section rules ü Flow action rules ü Paragraph rules with SmartInfo pop-ups Ø A flow action rule is an instance of the Rule-Obj-FlowAction class. review. and behavior of the forms used in applications to create and update work objects and assignments. Together with section rules. HTML rules. Ø Use harness rules to define the appearance and processing of work object forms used in application to create work objects and process assignments. A flow action is a choice available to users as an interim or final disposition of an assignment they are processing. Harnesses are also called work object forms. Ø Section is a portion or area of a standard work object form that is incorporated on a harness form. and resolve work objects. Ø The User Interface category contains six rule types that control the presentation of work object forms and other aspects of the user experience: 1. Portal 6. informally called subsections. Flow Action 4. update. Ø The appearance. property rules. Section 3. Ø Work object forms are HTML based. Section rules are instances of the Rule-HTMLSection class. update. appearance. behavior. so can create and change them in place as needed. Skin Ø Harness rule defines an HTML form that supports application users as they enter. and contents of a section are defined by a section rule (Rule-HTML-Section rule type). 93 . First define layout and Process Commander generates the basic HTML to display the form. and resolve work objects.

and layout of portal. After selecting one flow action. and resolve work objects. images. Ø There are two types of flow actions: 1. and styles appropriate to each user community. that together determine the colors. Paragraph rule to provide read-only text for a cell in a work object form that can include bold. update. rule forms. italics. causes the assignment to remain open and on the current user's worklist. Local flow actions are recorded in the Assignment Properties panel and are not visible on the Visio flow diagram. images. users may fill in a section of the form to complete (perform) the assignment. A skin rule defines four Cascading Style Sheet (CSS) files. reports. Ø The appearance and function of your Process Commander portal depends on information in your access group. Customization of the Developer portal is typically not necessary and ordinarily limited to menus and skins. users choose a connector flow action. A line exits from an assignment shape and ends at the next task in the flow. layout. Ø A skin rule is an instance of the Rule-PortalSkin rule type. fonts. The Process Commander portals support two user communities: 1. Skin rules are referenced in portal rules. facilities. Ø Developer portal provides quick access to dozens of tools. The Developer portal provides an integrated work. and other rich text. and development environment to support application developers. and causes the work object to progress along the connector to the next task. A local flow action. User portals may be customized to reflect the terminology. Connector flow actions appear as lines on Visio presentation in the Diagram tab of a flow rule. Ø Use the Style Viewer tool to identify and preview the appearance of styles in a CSS file. when selected at runtime. stored as text file rules. test. and other capabilities. colored text. and report displays. 2. At runtime. User portals support managers and users of applications workers. wizards. Ø A portal rule is an instance of the Rule-Portal class. complete the assignment. work object. which references a portal rule (Rule-Portal rule type). 2. Ø A Paragraph flow action rule is an instance of the Rule-HTML-Paragraph class. 94 . as they enter.Ø A flow action rule controls how users interact with work object forms to complete assignments. A connector flow action is an instance of the Rule-Obj-FlowAction rule type.

Ø How the Harness would work in your application? ü The flows are used to define the tasks and sequences of the business process. a different harness rule can be specified. This value defaults to the standard New harness. ü The harness rule is used to create a new work object of the associated class on the Process tab of the flow form (See Figure 2). although a different harness can be created Figure 2 Connecting the Harnesses to Flow Ø Flows can contain assignments that represent a required user or external system interaction with existing work objects. the standard NewWork flow is used as a starting point to create a basic flow. 95 . However. When creating the class structure. including connections to associate process and practices rules. Assignments have this property set to the standard Perform harness (Figure: 3). They also provide the initial connection between the harness and to the application.

as shown below. as well as action icons and buttons.Figure 3 Connecting the Perform harness to an Assignment Ø Process Commander comes with standard harness rules (of type Rule-HTMLHarness) for each object. Object Type Work Object Defined in class Work- Cover Work-Cover- Folder Work-Folder- Harness Rules New NewCovered Perform Confirm Review Reopen Perform Review Perform Review ReviewForExplore Standard Harness Rules Ø The name of the harness rules & its purpose: Name of the harness New NewCovered Purpose Creating new objects Allows a user to create both a cover work object (for example. in the Work-Cover-General class) and in the same form create one or more covered work objects 96 . and fragments. For example. The elements are included based on user or object state. streams. the Perform and Review harness displayed covered and non-covered work objects differently. Ø The harness rules specifies how to assemble the appropriate form consisting of the specified sections.

Add an Input Box Add a static read-only text label into a cell Add a radio button group representing a property value. Add an icon to the form. Add a hidden field to expose a property value. Place blue.Perform Confirm Review Reopen Ø Performing assignments on existing objects Confirming Object resolution Reviewing the closed objects Reopening closed objects Harness form Completing the Layout tab Layout Controls Controls Description Add an accordion to the harness Add a container to the harness form. Add a red label that opens a pop-up SmartInfo section when the user hovers the mouse pointer over the label. underscored text in a cell. Add a section rule into this harness Add a tab to a harness. 97 . Add a layout to the harness Add a panel set to this harness. in a cell or on a header. When clicked at runtime. to support a composite portal. Add a check box representing a property value. Basic Controls Controls Description Place a button into a cell or to the bottom of the form. the link starts an activity Advanced Controls Description Use an autocomplete text box to present a drop-down list of dynamic choices computed by an activity. which can contain more than one line of text. Adding a Work Area to a composite portal Add a dynamic drop-down list For harnesses that are part of a composite application built with Internet Application Composer only. Add a Select control that presents a fixed list of values Add a TextArea. Include an image in the form. Add a text box containing a Date or DateTime value.

ü Learn the names of section rules. for which field value rules are defined. to identify and experiment with changes to the CSS styles that are applied to a part of a form. ü Find labels and other elements on harness. a paragraph rule that presents only read-only text and images using rich text Ø The Rules Inspector tool provides a quick and interactive way for you to identify and inspect a form’s underlying harness. Select: ð Run > Rules Inspector > HTML Rules to turn on marking of harness. ð Run > Rules Inspector > Property Rules to turn on the marking of visible properties. Ø Use the Rules Inspector tool to: ü Learn the name of the top-level harness rule or HTML rule (Rule-Obj-HTML rule type) that produced any window or form you are viewing. Reference. styles and property rules as well as the associated HTML and property dependency networks.making it available to the external page that displays the composite application. section. ü Identify properties displayed that are computed automatically by Declare Expression rules. Add a dynamic menu to a composite portal. 98 . ü Start the Style Discovery tool. Adding a List View display Adding a list-to-list control. paragraph rules and HTML rules that the top-level rule incorporates through the pega:include JSP tag. flow action rules. the HTML-based rules referenced by these and so on. flow action. The keyboard shortcut is CTRL+ALT+Y. This menu selection also marks HTML rules with an icon. The icon appears above the visible presentation of the HTML in the rule. The keyboard shortcut is CTRL+ALT+X. in a cell. When these menu items are set. ü Learn the name of properties referenced in any of these rules. a check mark appears before the menu item. Ø To turn on rules inspection ü Four menu settings set or remove rules inspection. section. section. and flow action rules marked for localization. and flow action rules with an icon. A small red identifies each property reference.

This option is most useful when testing a localized application. The keyboard shortcut is CTRL+ALT+w. ü A small identifies the visible presentation of an HTML rule or HTML fragment rule.ð Run > Rules Inspector > Declarative Rules to turn on the marking of properties computed by Declare Expression rules. A small red identifies such properties. Additional icons ü A top-left yellow icon identify the start of the visible presentation of a section rule or flow action rule. section. See Localizing with the Field Values Inspector. P. ü A small red identifies a property reference. harness. Select Run > Rules Inspector > Styles again to disable the Style Discovery toolbar. and experiment with style changes Ø Rules Inspector settings affect all forms presented after you turn on the settings. ü A small red Any of the following four globe icons may appear at points on a harness. D. identifies a property computed by a Declare Expression rule. The keyboard shortcut is CTRL+ALT+V. and A icons identifies the harness rule. and flow action elements that are marked for localization and supported by field value rules (Rule-Obj-FieldValue rule types). section. ð Run > Rules Inspector > Field Value Rules to turn on the marking of portal. allowing you to determine which CSS styles apply to elements of a form. 99 . or flow action rule for which the Localized check box (on the HTML tab) is selected and a language-specific RuleSet is in use: Ø Working with the Style Discovery tool The Style Discovery toolbar ( ) appears whenever the Styles option is checked and a report display or work object form is visible. The enhanced display contains up to four types of icons Understanding the H. ð Run > Rules Inspector > Styles to turn on the Style Inspector.

The window lists all style sheets currently in force for your session. the last CSS to be applied appears at the bottom of the list. Click again to enable the display. pop-up toggle Click to disable SmartInfo display of CSS styles and properties. If you have altered a style more than once. Enter a text string in the Search Styles input box. Style Explorer Click to open a pop-up window that starts the Style Explorer. Ø Understand the benefit of automatically generating HTML and the consequences of overriding this feature/ Section rules/ FlowAction not autogenerated: advantages and risks ü Auto Generated ð The preferred approach for section rules (Rule-HTML-Section rule type) and flow actions (Rule-Obj-FlowAction) is to use auto-generated HTML and create the display interactively using the Layout tab (or Format tab). You can search through the selectors (style "names") or through the style definitions.Ø Icons & Purpose Select and slowly drag the grab area to move the Style Inspector toolbar to another location within the portal. Click Search. then check the By Selector box or the By Definition box (or both). Click to list the styles that you have temporarily altered or redefine with this tool. with the latest change appearing last. in cascading order. it appears multiple times in the list. 100 . Search tool Click to open a pop-up window that support searching for styles using text matching. Drop the toolbar in a location away from the work object form elements of interest.

Ø Illegal HTML Tags The following HTML tags should not appear in a hand-crafted section rule. do not code incomplete HTML structures. follow the guidelines below to allow the browser to correctly render the HTML and to allow the Harness. The <HTML> tag is part of the harness rule. Remember that a section is part of a larger form. <Head> All sections reside inside the <body> tag of a harness rule. This makes it hard for the browser to correctly render these in different contexts and may cause the rule form to show script errors and/or cause an unrecoverable error. ð The best practice is to create as much of the HTML infrastructure with autogenerated sections and flow actions and use hand-crafted HTML code in small custom spots. 101 . an HTML document can have only one <body> tag. After selecting one flow action. <Link> According to the definition. Because the <head> tag is part of the harness. 1.ð When the Auto-Generate HTML? check box on the HTML tab is selected. conforms to the guardrails and poses the least risk. Process Commander generates HTML code each time you save a Section form or Flow Action form. The <body> tag is part of the harness rule 3. it may be necessary to clear this check box and enter custom HTML code. 2. Section. users may fill in a section of the form to complete (perform) the assignment. you cannot include your own <link> tag. 4. <link> tags can only be inside of a <head>. When a non-auto generated section is needed. Ø A flow action rule controls how users interact with work object forms to complete assignments. <body> Similarly. and Flow Action forms to correctly incorporate these hand-crafted section Ø Complete HTML Element Structure When creating small HTML snippets. ü Non Auto-Generated ð For special situations involving customized displays. not a complete HTML document itself. <HTML> The <HTML >tag cannot appear within the scope of another <HTML> tag. ð This approach generates correct HTML code. This should be used sparingly and with great care.

At runtime. Select one window from a list of windows on the Windows desktop. Type in a text note that becomes an attachment to the work object. This action used in applications created by the (basic) Application Accelerator. A line exits from an assignment shape and ends at the next task in the flow.Ø A flow action is a choice available to users as an interim or final disposition of an assignment they process. This flow action supports a search for the appropriate cover and selection from search results. By default. Does not alter work object status. causes the assignment to remain open and on the current user's worklist. Start a new flow execution for this work object. Create a Link-Folder instance associating this work object with a folder. when selected at runtime.pyDetail) and an actual effort value (property . users choose a connector flow action. Note: Users can select one of these flow actions at runtime only if they hold the AllFlowActions privilege or the ActionZzzzz privilege. with a category for each. Ø Standard Flow Actions (Local only) This table shows selected standard flow actions that can be used only as local flow actions. another work object in a Work-Cover. including an explanatory note but no attachment category. and advances the work object along the connector to the next task.pyEffortActual). and then capture and attach a screen shot JPG image to 102 . Supports browsing for the file to be attached. Attach a file to the work object. Add a party to a work object.AddCovered AddFlow AddMultipleAttachments AddParty AddToCover AddtoFolder AttachAFile ApproveSample AttachANote AttachAScreenShot Purpose Add a file attachment and assign it to an attachment category. not eligible for bulk processing. Flow Action AddAttachments Work-Cover. complete the assignment. Add multiple file attachments. Local flow actions are recorded in the Assignment Properties panel and are not visible on the Visio flow diagram. in a single action. where Zzzzz is the name of the standard flow action. Uses HTTP (or HTTPS) to upload the file Enter a text note (property . Each flow action is defined by an instance of the Rule-ObjFlowAction rule type Ø Flow actions are of two types: ü Connector flow actions appear as lines on Visio presentation in the Diagram tab of a flow rule. as controlled by the associated work parties rule. Override this standard flow action to specify the work type of the covered work object. those that do not complete an assignment. Include this work object as belonging to a cover.class. Select the work pool. then select the folder work object. ü A local flow action. Adds a covered work object to the current (covering) object.

but can present the user with a listing of possible values to choose from for the missing property 103 . and BCC recipients for e-mail correspondence. Enter a text note (property . CC. Transfer an assignment to another operator or to a workbasket. This action used in applications created by the (basic) Application Accelerator. By default. Select multiple To. (This action must be a valid choice when assignments are transferred in bulk. (For example.) The Short Description is "ReAssign". Transfer this assignment to the manager of the current assignee for clarification. By default. urgency adjustments) for work object and current assignment. not eligible for bulk processing. Validation occurs. Does not update work object status. By default. Starts the Image Viewer tool to view or update a TIFF file from a scanner. Cause the system to start backward chaining to obtain the value of property pyResolutionCost. Update the work object without completing the assignment. (To experiment with backward chaining. Transfer assignment to another by choosing the work group first.) By default. By default. The Short Description is "Transfer". or other reasons. copy this rule and change the GoalProperty activity parameter to the property that applies in your situation. escalation. Does not change the service level rule associated with this assignment in the flow rule. Update the work object urgency. if the file type is XLS. the program is Microsoft Excel. customer satisfaction status.pyDetail). Select the recipient party.AttachAUrl AttachFromScanner ChangeAssignmentSLA ChangeOwnerOrg ChangeSatisfaction ChangeWorkSLA EditAttachment Flows RequestAssistance RejectSample RemoveFromCover RemoveFromFolder Save SelectRecipients AndAttachments SendCorrespondence Transfer TransferAdvanced TransferToManager UrgencyUpdate VerifyProperty VerifyPropertywithListing the work object history. and work object status. Select a service level rule to apply to this assignment instance only. not eligible for bulk processing. Remove the work object from the cover. Change the ownership of the work object — organization. End the association of the work object with a specific folder work object. this flow action is not eligible for bulk processing. division. Presents the Start a new process button. not eligible for bulk processing. The recipient must be a valid choice when assignments are transferred in bulk. This flow action calls the BuildCorr flow. saving changes to various property values. with an explanatory note. Create a version of a file attachment using a workstation program based on the file type of an attachment. Change the value of root cause.) Similar to VerifyProperty. or unit. allowing the user to select and start an additional flow execution on this work object Allows users to request that a co-worker enter a note attachment. Attach a URL reference to the work object with an explanatory note. and then an operator within that work group. not eligible for bulk processing. Update the service level and related fields (goal and deadline date/times.

by selecting that work type from a selection box. Save a work object without validation. This can be used to correct an incorrect work type. Prompt for correspondence fields. Change the work type (class) of the work object to a different type in the same work pool. but allows an external user to enter a note. Flow Action ActionStub Approve Use Description Placeholder action with no input requirements. a work object initially recorded with a SuspendDelivery work type may actually be a CancelSubscription work type. Initiate a new flow execution on work object that creates an assignment for another user. Typically you use GetAppointmentList and 104 . Start a new flow on this work object that creates an assignment to an external party. Converts an existing work object attachment that has a DOC file type. known as connector flow actions. Create a version of a Microsoft Word file attachment that has an attachment category. a work object initially entered as an Unclassified work type may. Allows the user to enter a note. the validate activity is not called. created by Microsoft Word. record the user's approval of some previous Y Assign Y AttachandHold CancelAssignment Y C ChangeClass Y Classify N ConvertAttachment toPDF Y CorrPrompt CorrVerify EditCategorized Attachment EngageExternal Y N Y EngageManager Y EngageStaffmember Y EnterInformation EnterInformation External Finish Y Y N GetAppointmentList Y Y assignment or question. and those that can be either connector or local flow actions. Change the work type of the current work object to another work type in the current application (work pool). into a new work object attachment with a PDF file type. Similar to EnterInformation. ü A ‘Y’ in the Use column indicates that this flow action can be used in both Local and Connector situations. Verify previously created but unsent correspondence. Initiate new flow on work object that creates an assignment to the manager of the assignee. Send the assignment to another operator. Allows users to query the Microsoft Outlook calendars of other operators. Generate and attach Word correspondence Complete the current assignment and display the Confirmation harness. For example. after more information becomes available. re-editing property values as required. be classified as a Renewal work type. Y Enter a note.Ø Standard Flow Actions Connector and Connector/Local ü The table below lists important standard flow actions that can complete an assignment. by selecting first a work group and then the operator within that work group. For example.

Allows users to send Microsoft Outlook meeting requests to other operators. The operators would use GetAppointmentList first to determine whether another operator is available at a specific time and then use SendMeetingRequest to make the appointment Submits the form immediately. Search for potential duplicates. Return to the most recently completed assignment. resolving it with a status of Resolved-Rejected. Initiate correspondence (notifications) using a standard. Can be sent to a party involved in the work object. Jump to the most recent task completed earlier in the flow execution that is marked as an entry point. not eligible for bulk processing. Ends execution of the OverallSLA flow. Retry last step of now-fixed problem flow Sample e-mail message. Complete the current assignment. quick form for rapid text entry. and resolve the work object with a status of Resolved-Duplicate Affirm that the previous response to an information request is satisfied. By default. Select a correspondence type. Not useful in other flows. Reject this work object from further consideration. and restore that assignment to the worklist of the operator who last updated the work object. with an explanatory note. without requiring any user inputs or confirmation. division. used as a template rule. allowing the user to select a correspondence rule from a list that includes only those compatible with the party's contact preferences Generate correspondence (notifications) to a party external to Process Commander. A template rule for flow action rules for portlets. Empty flow action rule.@baseclass. GoBack C Notify Y NotifyExternal N NotifyQuick Y PickLanguage PortletAction Y Y Previous PreviousOperator Reject N RemoveSLA N Resolve N ResolveAsDuplicate N ResponseVerified N RetryProblemFlow N SampleEmailToCustomer Y SearchForDuplicates SelectCorrTemplate SelectCorrType SendMeetingRequest Y Y Y SetTicket Y StandardTemplate TakeOwnership Y Y TransferTo Workbasket Verify Y N SendMeetingRequest (see below) together. Change ownership of the work object to the user's organization. 105 . such as e-mail. Generate correspondence (notifications) to a party in a work object. configured to generate portlet-compliant HTML. Users can review the search results to mark any that are truly duplicates. regardless of whether the assignment was originally on a worklist or in a workbasket. Select a language for the work object. set a ticket to resolve this current work object as a duplicate. Select a correspondence rule to be used. resolving work object with a status of Resolved-Completed Complete the current assignment. Turn on ("raise") a ticket for this object. or to any e-mail address. and unit Transfer this assignment into a workbasket. Record an affirmation by this user that prior work on this work object is correct. If appropriate.

Validate rules test property values. for both display and for accepting user input. and other HTML forms. or section rules) and other HTML forms to speed user input Ø The Dynamic Select control displays a drop-down list that contains values returned from an activity. and add a message to the property or page if validation fails. with the Obj-Validate method ü Correspondence rules. Use HTML Property rules to control how properties appear on work object forms. correspondence. to validate user input ü Flow rules. to validate user-entered parameter values ü Activities. to validate user responses to prompts 106 .Withdraw Y Set (turn on) a ticket on the work object causing the system to resolve it as withdrawn. To validate a property or a page means to check its value against certain rules. Ø Rules of four types can reference validate rules: ü Flow action rules. Ø This control provides a dynamic alternative to the normal (static) HTML SELECT element below: <select Name="name" > <option Value="red">Red</option> <option Value="yellow">Yellow</option> <option Value="green">Green</option> </select> Validation Ø A validate rule is an instance of the Rule-Obj-Validate rule type. including a reason for the withdrawal. Ø Dynamic Select function in an HTML rule type: The Dynamic Select control is an optional feature you can add to work object forms (through HTML rules. harness rules. Ø HTML Property rules are instances of the Rule-HTML-Property class. Ø Validate rules are part of the Process category. An invalid page (a page that has any associated messages) usually cannot be stored into the database. typically immediately after they are submitted on a browser form.

Value List or Value Group) may reference an edit validate rule on the Advanced tab.S. or false if the date is a future date or not in the expected format. This rule returns true if that date is today's date or a past date. which applies the test defined in an Edit Validate rule. OperatorPassword Supports the optional password management facility. pyMinimumLength. 107 . compares the actual length of the value to the minimum and returns false (with a message) if the value is too short. Ø Process Commander contains more than 60 standard edit validate rules. Defines validation for work objects when the work object is updated. Defines validation for cover objects when updated. FileName Checks whether a text string is a valid Windows file name.Validate Purpose Defines validation for work objects (not covers) when the work object is created (entered).When applied to the value of a property that is associated Enforce with the pyMinimumLength property qualifier.OnAdd Work-. FileType Checks whether a text string is a valid Windows file type.Ø Standard validate rules Name Work-. NotFutureDate Expects a string in theValue in the format YYYYMMDD. Social Security Number. Use the Property-Validate method in an activity to execute the edit validate rule when a value is submitted through a user input form. SSN Validates the format of a U. Ø Use the Edit Validate form to define a Java routine that tests the validity of an input value in an activity that processes user input. InternationalPhone Validates the format of an international phone number IsNonNegative Checks whether a value is greater than or equal to zero. Ø A validation rule may reference edit validate rules (Rule-Edit-Validate rule type). The activity calls the Property-Validate method.Validate Work-Cover. Defines validation for cover work objects when first created (entered).OnAdd Work-Cover. Ø A property rule (of mode Single Value. The table describes a few of them: Name DoesClassExist Purpose Checks whether a text string identifies a Process Commander class.

Taxpayer Identification Number.TIN Validates the format of a U. User portals may be customized to reflect the terminology. Portals Ø The Process Commander portals support two user communities: ü The Developer portal provides an integrated work. the latter require Java programming skills to develop. and resolve work objects. as they enter. facilities. test. and development environment to support application developers. ü User portals support managers and users of applications workers. Note: Don't confuse validate rules with edit validate rules. layout.S. Ø The appearance and function of your Process Commander portal depends on information in your access group which references a portal rule (Rule-Portal rule type). Validate rules can call edit validate rules. and styles appropriate to each user community. Customization of the Developer portal is typically not necessary and ordinarily limited to menus and skins. update. 108 .

WorkUser Accesses the Process Work layout only.5) User Composite Portals for Worker (introduced in v5. ü Composite portals are built from section rules and harness rules 109 . Ø Standard Portal rules Recommended portal rules: Owner Purpose Developer Support for Developer (access to six facilities (Process. Integrations & Cases and Content). this is useful in debugging. for application users who are not managers. Supports full localization and IE 6/7. Monitor Activity. who can use the Monitor Activity workspace and the Scan Station tool. you can define alternative layouts. User Interface. Enter the name of a portal rule to make an additional portal presentation available to this user.2 Administer and Manage Rules workspaces Ø Difference between the traditional Portals and composite Portals: ü Traditional portals have a fixed layout and are built from HTML rules with DataGadget as the Applies To key part. Supports full localization and IE 6/7.5) Other standard portal rules: Owner Purpose TabbedWorkSam Sample for Multiple Tasking Portals ple Traditional portal rules: These portals support special situations and provide backward compatibility Owner Purpose WorkManager Supports managers and supervisors. but not FireFox SysAdminDD Supports administrators. but not FireFox. known as slices Manager Composite Portals for Manager and Supervisors (introduced in v5. to allow them to quickly switch between layouts.Field Default Portal layout Secondary Portal Layouts Description Identify a portal rule to indicate which portal presentation supports those requestors who reference this access group. policy Decisions. providing access to the Version 4. For developers.

and work forms. ü Select Application > New > Skin. text. You can design the color schemes. Ø Starting and using the wizard: ü Verify that all rules that you are modifying. The wizard presents this series of steps in the navigation panel: 110 . style sheet. images. Ø A skin comprises a set of Cascading Style Sheet (CSS) files stored in your application. including the skin. and portal are checked in. and sizing of the interface components that comprise your User portals.Ø What are the advantages of composite portals over traditional portals? ü Broader choice of layouts ü Ease of extension and tailoring ü Integrated full-text search of work objects Full support of style changes through the ü Application Skin wizard ü Multiple work object support ü Application-level switching for work object entry ü Fully localizable ü Support Microsoft Internet Explorer and Firefox 2+ browsers Application Skin wizard Ø The Application Skin wizard (sometimes referred to as a "branding" wizard) enables you to quickly develop and put into production a skin rule that reflects your corporate or departmental standards. The wizard helps you reduce or eliminate manual CSS coding. reports. Ø The wizard contains a wide range of functions and controls that let you create and edit these files.

Step 2 displays the Quick Create feature enabling you to. tab.Step 1 identifies the name and RuleSet version of the skin rule and other associated rules to be created. row. 111 . Steps 7A and 7B define report components including title bars. It also defines the appearance of the panels built into a harness rules (used for composite portal types). fonts. create default fonts. accordion. Step 3 defines general appearance of most UI elements including background. and repeating (tab. and reports. Steps 6A through 6C define the appearance of labels. and column) layouts. columns. and headers. as well as bar. and error sections. Steps 8A through 8D define the appearance of UI elements that are unique to traditional (non-composite) user portal rules. buttons. and the main and accent colors for your portals. and links. You can also add a top header logo for traditional portals. and enables you to add custom styles. Steps 4A through 4E define the appearance of smart and custom layouts. work forms. Steps 5A and 5B define the appearance of menus and grids. in one-step.

Alternatively. Ø Some elements do not display in preview mode. Click directly on a step in the navigation panel to open its screen. or reports. 112 . Important Points: Ø Skins produced from this wizard are not suitable for the Developer portal. Ø The wizard defines an application skin (Rule-PortalSkin rule type) and its associated CSS style sheet text files (Rule-File-Text rule type). In those cases.Navigation: Ø You can open any step without proceeding through them sequentially. The skin references images as binary file rules (Rule-File-Binary rule type) and is linked to portal rules (RulePortal rule type). click Preview to open in a new window a rendering of most UI elements as configured so far. Ø As you work with the wizard. use the Next >> and << Back buttons to navigate. Ø Some steps contain a set of collapsed sections. A check mark appears next to the step when you go to another step. they are displayed individually as used in composite portals. Use these skins only with User portals. work forms. By default. You can expand them all by selecting the expand button () at the top.right corner of the wizard screen. save the skin to a composite-type portal and open the section to review the changes (specify the skin in the Developer's portal preferences section).

Property rules d. The Scripts & Styles in Harness will be of type Rule-File-Form Rule-File-Text Rule-File-CSS & Rule-File-Script Rule-File-HTML 7. Organization b. Clipboard 3. Access Group e. skin rules 113 . Unit d. Rule-Obj-FlowAction 2. Rule-HTML-FlowAction c. Select the rule which is not under UI category a. Which of the following are std. Which one of the tool is used to view the definition of a section in Harness? a. Workgroup 6. Rule-HTML-Section d. a. c. d. Rules Inspector d. Form Builder c. The portal layout for group of users can be generally controlled from which of the flowing a. which of the following can be identified (Select all that apply) a. When Rules e. b. Image viewer b. Division c. d. HTML rules c. Field Value Rules 5. Rule-HTML-Harness b. Using Rules Inspector. Which of the following rules are not subject to rule resolution (select two)? Harness Section Binary File rules Text File rules Fragment rules 4. Flow rules b. b. c. Declarative Rules f.Questions 1. a. e.

for both display & accepting User input. 8. Work-. Decision d. b. Utility c. _______________ rules control how properties appear on work object forms Correspondence.OnAdd b. Work-Cover-. a. Assignment b. how is the property value referred in the java code this theValue Value propertyName 10.Validate c. d. (Work-. validate rule defines validation for work objects when the work object is updated. The standard privilege ------------allows a user to apply one flow action to a list of assignments. a.PerformBulk) 114 .a. Local Flow Actions are added to which task form? a. b. c. c. Work-. (HTML Property) 11. Classic Metal Both None of the above Which of the std. and other HTML forms. d. Connector 12.OnAdd 9. In an Edit Validate form.

Decision Rules & Declarative Rules 115 .9.

each containing test conditions and a result. ü In an activity. This can be referenced in a pre condition or in the Transition step of an activity. ü A Declare Expression rule can call a decision tree rule. 1.Decision tree rules contain a list of one or more input properties. The decision table execution happens in the following way: ü If any of the conditions in a row evaluate to false. The Actions columns and Return column for that row are ignored. a decision tree rule can compute and return "today's order cutoff time" as 5 P. if today is a Friday before a Monday business holiday. and comparisons. on most business days. Decision Table rules 4. Ø Decision Table is an instance of Rule-Declare-DecisionTable. Rules of four other types can reference decision tree rules: ü In a flow rule. Case Match Ø A when condition is an instance of Rule-Obj-When rule. you can evaluate a decision tree using the Property-MapDecisionTree method. but 2 P. Map value rules 5. processing continues with the next row.M.Decision rules — Concepts and terms Ø Decision rules define computations and comparisons that cause processing to continue along one path or another. Use a decision table to derive a value that has one of a few possible outcomes. identified by the Decision shape ( ). 116 . Decision Tree rules 3. ü A collection rule can call a decision table rule. For example. A decision table rule lists two or more rows. Hierarchy 6. and can return a property value as a result. where each outcome can be detected by a test condition.Use a decision tree rule to record if then logic that calculates a value in a table format based on rows of property values. Ø Decision Tree is an instance of Rule-Declare-DecisionTree. This rule evaluates a particular condition and returns true or false. you can reference a decision tree rule in a decision task. computations.M. When conditions 2.

processing continues through all remaining rows. Type the word call followed by the name (the second key part) of another map value rule with the same first key part. This is a straightforward way to present decisions and computations that depend on ranges of the input values. or dates) into a single resulting value. numbers. identified by the Decision shape ( • In an activity. to restrict the possible results to one of a small known list of literal constants. 117 . you can evaluate a map value rule using the Property-MapValue method or Property-Map-ValuePair method. assign a B. complete the Results tab before the Matrix tab. • A collection rule can call a map value rule. Assign C for 71 to 80. four. SmartPrompt is available. ü If the Evaluate All Rows check box is not selected. Click the pencil icon ( ) to open the other map value rule. performing the Actions and Return calculations for any rows for which the conditions are all true. ü If for no rows in the table do all conditions evaluate to true. • A Declare Expression rule can call a map value rule. Example: "If the test score falls between 91 and 100. then the Actions and Return columns of that row are processed. ü Rules of four other types can reference decision table rules: • In a flow rule. • A Declare Expression rule can call a decision table rule. One map value cell can reference another map value rule as the source of its value. you can evaluate a decision tree using the Property-MapDecisionTable method. you can reference a map value rule in a decision task. Optionally. where the decision criteria fit a table or matrix structure. ). processing ends and the system returns the value in the Return column as the value of the entire rule. or more inputs. identified by the Decision shape ( ). the system returns a default result. Rules of five types can reference map value rules: • In a flow rule. Complete the Input tab before the Matrix tab. assign a grade of A." ü Cascading Map Value: Through cascading — where one map value calls another — map value rules can provide an output value based on three. If Evaluate All Rows box is selected.ü If all the conditions in a row evaluate to true. What happens next depends on the Evaluate All Rows check box (on the Results tab). Use a map value rule to convert one or two input values (text. Ø Map Value is an instance of Rule-Obj-MapValue. you can reference a decision table rule in a decision task. • A map value rule can call another map value rule. • In an activity. If the test score falls between 81 and 90. • A collection rule can call a decision table rule.

or a branch (subtree) of a larger hierarchy.SeekCases.As output. Ø Case Match: A case match rule (Rule-Declare-CaseMatch rule type) supports casebased reasoning. an activity can use standard functions to load the entire hierarchy.Ø Hierarchy: Hierarchy rules are instances of the Rule-Define-Hierarchy class. Other standard functions can navigate through the hierarchy to locate nodes. Create a hierarchy rule to define relationships among text values. or a single match. and so on.SeekFirstCase and @baseclass. consisting of the root rule plus all branch rules. To evaluate a case match rule. The rule specifies how the case data is obtained and the criteria for matching. Each rule can define an entire hierarchy. call one of two standard activities: baseclass. Use case match rules to compare one object (a page) to a series of "cases" (in a Page List property). At runtime. but can evaluate numerous properties • For business logic currently stored in written documents • Best used for complex if/then/else statements ü Map Value • Can convert one or two property values into a single result • For computations based on ranges • Also for substitution of values ü Decision Table • Can convert multiple property values into a range of return values • Based on same property inputs with varying values ü When • Evaluates relationship among one or more property values and returns true or false • Based on simple if/then/else constructs 118 . Ø Which Decision to Use at what point of time? ü Decision Tree • Accepts one input property value. They are part of the Decision category. A case match rule receives as input a page that becomes the source page to be compared against a set of cases (pages). determine which nodes are immediate children of a specified node. and to rank the results by closeness of fit. the rule constructs a Code-PegaList page comprised of either a list of matches.

identified by the second key part. it detects changes in property values and uses them with rule resolution to automatically determine which rules apply.Ø Use the fork shape ( ) to represent a point where the flow execution chooses one of a few different paths (connectors) based on tests on the work object. Rule: Select a map value rule. starting with the connector assigned the highest likelihood. Ø Use the Decision task ( decision tree rule or a Boolean expression that when evaluated produces a value that is the basis of branching in the flow. and then explicitly calls it in the appropriate situation to invoke that processing. 119 . decision table rule. and chooses one of the outgoing connectors based on the result. the developer decides when a piece of processing needs to happen. depending on the rule type. In programs that support a declarative model. ) to reference a map value rule. In programs that use a procedural model. Process Commander automatically invokes that rule whenever appropriate. Choose a decision rule Type: Map Value or Decision Tree or Decision Table or Boolean Expression. At runtime. you define — or declare — what processing to perform in a declarative rule. the system evaluates the conditions on each outgoing connector. At runtime. writes the code. Declarative Rules: Ø Declarative processing: It simplifies the application and reduces the number of activities that needs to be created. Because the Process Commander rules engine is change-oriented. No user interaction or input is required. The declarative processing facilities support operation of six rule types: ü ü ü ü ü ü Constraints rules (Rule-Declare-Constraints rule type) Declare Expression rules (Rule-Declare-Expressions rule type) Declare Index rules (Rule-Declare-Index rule type) Declare OnChange rules (Rule-Declare-OnChange rule type) Declare Trigger rules (Rule-Declare-Trigger rule types) Declare Pages rules (Rule-Declare-Pages rules type) Ø Difference Between Procedural And Declarative Program Models: Process Commander supports both a procedural and declarative program model. The flow execution continues along the first connector that evaluates to True. the system evaluates the decision rule based on inputs from the flow and the work object.

For example: Area is computed as Length multiplied by Width. regardless of how the change occurs. the value of the Area property. However. such as: ActualExpense ("December") is never greater than BudgetExpense ("December").) For example. (An activity with an Activity Type of Trigger performs the processing. is equal to the product of the values in the Length and Width properties. causes immediate recompilation of the value of the Area property.Ø Dependency Network Analysis (DNA) : The Declarative Network Analysis tool provides the below facilities: ü Brings visibility to the path that led to a decision.) Ø A Declare OnChange rule causes computation to occur when the value of certain "watched" properties change. the system monitors whether the constraint is met each time either value changes. This works even if the update to Length happens indirectly. Ø A Constraints rule records an expected relationship between property values. the trigger rule executes. in this case). ü Convenient way to test varying inputs and conduct what-if analysis of rule decisions ü Provides an easy way to test rule firing within a rule network ü Easily detect dependencies of other rules and the impact they have on your application Types of Declarative Rules: Ø A Declare Expression rule defines a computational relationship among properties. when accessed on the clipboard. Like other declarative rules. If the constraint becomes false. the system adds a message on the page containing the left-hand property (ActualExpense (). A Declare OnChange rule starts an activity that can perform more complex or comprehensive computations than can be defined by expressions. Any change to a Length or Width value. index objects support specific data-access needs rather than computation. This may cause more frequent updating than a Declare Expression rule. you can maintain the total month-to-date dollar value of new work objects with a Declare Trigger rule.base class. the rule operates automatically and as needed. Ø A Declare Index rule creates or deletes new objects in concrete classes derived from the Index. (Because this processing occurs in the current user requestor. After a Declare Expression rule is saved. Ø A Declare Trigger rule identifies processing to occur automatically when an instance of a specific class is saved or deleted. Accordingly. As with expressions. and that locking ensures that only one user can update the total at a time. make sure that the design saves the total in a separate object. Pages that are not valid cannot be saved to the database. the trigger activity runs and updates the total. Declare Index rules are best designed by database 120 . marking the page as not valid. Each time a new object is resolved.

There are two options to Choose from: Thread and Node. forward chaining causes the Volume property to be recomputed each time Length. Ø Forward chaining provides the automatic propagation of changes in one property value to cause recompilations of another property's value. then each time the system accesses the Area property for a value the Declare Expression rule recomputed. For example. or Width. Unlike the other rule types described here. The rules used to define and load the page are subject to rule resolution based on the RuleSet list defined 121 . For those Declare Expression rules with Whenever inputs change in the Calculate Value field. and the Volume depends on the Area and Depth property. For example. Ø Backward chaining executes Declare Expression rules when a value is needed for a property. This recompilation may occur more often. than the inputs Length and Width change values. each thread will have its own instance of the page. ü Thread scope pages are individually loaded and maintained in each thread that references that page name. rather than when inputs change. If a requestor has multiple threads. if the Area property depends on the Length and Width property. and can be shared across all requestors. Declare Index rules are part of the SysAdmin category. ü Node scope pages are loaded into a common area in the PegaRULES application server or node. Ø Declarative Pages: Thread and Node Level pages ü Page Scope defines the scope of the declarative page. The rules used to define and load the page are subject to rule resolution based on the loading requestor’s RuleSet list. if property is missing ü Whenever used If the formula Area = Length times Width is set up for backward chaining with the Whenever used option. Backward chaining applies to Declare Expression rules with the Calculate Value field set to one of the following: ü When used if no value present ü When used. identifying which properties have values that may depend on which other properties. the system creates an internal dependency network. a value may be needed because the property appears as a source in a Property-Set method or as an input to a computation. Note: Thread pages persist in the system until the requestor session that created them ends. or Depth changes value. or less often.administrators or Process Commander developers with database experience.

Where referenced Alias function rules are useful for functions that managers or less technical developers may use frequently in decision tree rule. the manager can update the entire rule form or only fields in the leftmost tab of the rule form. The associated access group is defined on this tab. Ø Rule Delegation: A delegated rule is a link to a rule or data instance that provides a quick shortcut. these links appear on the My Business Rules area in the Dashboard workspace. define a period of time in Days. The alias rule provides an optional naturallanguage description and prompting that supports certain selection lists on decision rule forms. Click the link to open the form. Quite simply. Ø Function Alias rules are instances of the Rule-Alias-Function class. Use an alias function rule to define prompting for a function rule for users who maintain decision rules. For managers who use the standard WorkManager portal. the first user to reference the declare pages rule causes the load activity to run on that node to create the page on the clipboard. the page is deemed ‘stale’ and the load activity will be executed. Ø Refreshing Declare Pages: ü The first Refresh Strategy is common to all types of Declare Page types. it’s classed as “fresh. String type or a primitive type such as int). and constraints rules. when condition rules. Note: In a multi node system.lang. ü Cannot define an alias for a function rule that returns a complex Java type (that is. They belong to the Technical category. the Load Activity is executed to recreate it. Declare Expression rules. not by the RuleSet list of individual requestors. a type other than a Java. The When rule answers the question “Is the Declare Page fresh?” When your declared page is referenced by a rule.by the Access Group referenced in the Declare Pages rule. If the When rule evaluates as False. Depending on access roles and privileges. For each node. there is an additional. ü Complete and test the function rule itself before defining a function alias rule that references it. 122 . that is both thread and node scoped pages. If the page is older than the specified time. otherwise. each node has its own copy of the clipboard pages created by this declare pages rule. optional feature allowing you to add a When rule. this value is used to check that the page is “stale”. Minutes. When the page is referenced. if the When rule evaluates as True. the Load Activity will not be executed because the page is deemed fresh. Hour. and Seconds in the appropriate fields.” ü For Thread Scope pages.

5. In Rule-Declare-Expressions which of these types of computational expressions are allowed a) Self-referential or circular expression b) Expression with target properties of types: Time and Password c) Nested expression d) Expression that references a Function rule (Rule-Utility-Function) 3. or Other User Personal for the Add To value. Keep the Label value short. My Personal. an additional text box appears. to multiple users. Questions: 1. A rule can be delegated to a single user. If I want to use an expression.Developers can see rules delegated to them by selecting View > My Rules. To mark a rule as delegated. Select My Access Group. 4. Other Access Groups. Complete the dialog box: 1. Select Open the Highest Version if the system is expected to find the rule using the rule resolution algorithm. is to be delegated. open the rule form and click the Favorites toolbar button ( ). in this exact RuleSet. Enter a text label for this rule. In a Declare-Expression rule. If Other Access Group or Other User Personal is selected. Select Always Open This Version box selected if the exact version. or to all users who are associated with a specific access group. function calls constants etc. or use the search button to select a value. Which of the followings are true about Rule-Declare-Index? a) Sometimes called Secondary Keys 123 . 3. You can delegate a rule to yourself if you need frequent easy access to it. Click OK. Enter the other access group or Operator ID. then click done. to appear on the My Rules list on the Dashboard workspace. a) b) c) d) Expressions that calls themselves and contains constants Expressions that calls Circular expressions Expressions that calls Rule-Utility-Function Both a and b 2. which contains expressions. The system defaults the Short Description of the rule. 2. Which of the following to be used.

c) The value for a property can be set. b) A decision table can be called if this option is checked. which of the following rule to use a) Data-Declare-Expression rule b) Data-Declare-Constraints rule c) Data-Declare-Trigger rule d) Data-Declare-CaseMatch e) Both a and b 6. Which of the following decision corresponds to IF-THEN ELSE statements? a) Decision Tree b) Decision Table c) Hierarchy Rules d) When conditions 7. this rule can provide an output based on three. four or more inputs.b) Indexing reduces the search performance c) Index processing automatically deletes old instance that are no longer accurate d) System saves indexes as instance of concrete classes derived from the Declarebase class 4. d) The value for constants can only be changed. 9. a) When Condition b) Decision Tree c) Map value d) When Directive 8. Is it possible to call a decision table using this function DecisionTable. Through cascading (where one rule calls another). If I want to do a operation on the Saving or Updation of the database. Which of the following cannot be used with declarative rules a) Circumstances b) Rule Resolution c) Backward Chaining d) Forward Chaining 5. Which of the following decision rules can be used to conditionalize a segment of HTML or XML stream processing? a) Decision Tree b) Map value 124 . What is the purpose of “Allowed to take actions” in the results tab of a decision tree? a) A decision tree can be called if this option is checked.ObtainValue () Yes 10.

c) When directives d) Decision Table 11. 70-90 Grade B. What are the possible rules which can be used to achieve this? a) Decision Table b) Map value c) When d) Declarative Expression 13. Ans: Decision 125 . ______________ Shape in flow can be used to call a Map value. Which of the following returns a boolean value? a) When rule b) Decision tree c) Decision table d) Decision Map 12. 50 -70 Grade C. Examination questions if answered 90-100 Grade A.

10. Rule Management/Security 126 .

127 . For ease of management. This convention also prevents potential RuleSet collisions at a customer site. use names that are short and easy to remember. There are two parts in a Ruleset ü Ruleset Name ü Ruleset Version Ø A RuleSet name is an instance of the Rule-RuleSet-Name rule type. used by rule check-in processing. Version 01-01-01 is not locked. records the RuleSet name to which the instance belongs Ø Process Commander consists of six standard RuleSets: RuleSet Name Description Pega-AppDefinition Standard rules supporting Direct Capture of Objectives features Standard rules that support business process management Pega-ProCom (BPM) applications Standard rules that support integration Pega-IntSvcs Standard rules that support the portal infrastructure Pega-WB Standard rules that support business rules engine and rule Pega-RULES resolution CheckInCandidates Optional. ü Always begin a RuleSet name with a prefix that uniquely identifies your company and the business purpose. present in every rule instance. RuleSet name is a major aspect in: ü Access control ü Grouping interrelated rules ü Managing the rules ü Moving applications . Ø The Rule-.from one Process Commander System another. Ø Naming Conventions of a Ruleset The following conventions represent best practice when naming RuleSet rules: ü RuleSet names cannot exceed 64 characters.sets of rules .pyRuleSet property. Empty.RuleSets and Versions Ø A Rule is a named business object that defines behavior of part of an application.

use a name that contains Test or Sample. minor version. For example.ü Do not use Pega or Pega. defines six digits in three groups that characterize the evolution and development of a rule instance. but not all. 128 . or quotation marks ("). the pyRuleSetVersion property records the version number (without the name and colon) of that rule. underscores (_). ü Use names that make sense. and patch version. For example. Rule resolution applies to most.base class. ü For a test RuleSet. A name should clearly describe the RuleSet. plus signs (+).as a prefix for your RuleSet names. ü Avoid using special characters such as dashes (-). The three segments are known as the major version. ü For legibility. QuadStateMortgage is better than QSGMLS (as an acronym for Quad State Group Mortgage Loan System). or any other base class. and of the application it belongs with. Ø The version number in the form NN-NN-NN. This usage is restricted for use by Pegasystems and can cause unexpected behavior. avoiding obscure acronyms. CandyOrders is easier to read than candyorders. Ø Rule resolution does not apply to instances of classes derived from the Work-. ü RuleSet ü RuleSet Version ü Access of Role to Object ü Access Deny ü Library Rule Resolution Ø Rule resolution is the sophisticated internal search algorithm that the system uses to find the best or most appropriate rule instance to apply in a situation. Data-. Ø A RuleSet version is the process of assigning unique version numbers A RuleSet version is an instance of the Rule-RuleSet-Version rule type. Ø In every rule instance. Ø A few rule types are not versioned: ü Application ü Class — Has a version for File > Export and migration purposes only. use single-word names with significant letters in uppercase (also referred to as title case). classes derived from the Rule.

Ø Rules defined at a higher level can be overridden by more specific rules defined at a lower level. and patching. Benefits: Ø Rules can be shared across applications and organizations. often determined by context Your RuleSet list The current date and time. and multiple versions of one application with minimal concern for conflicts and interference. even within one RuleSet.Ø While the rule resolution algorithm is fast and invisible. testing. Ø Rules can have multiple versions. multiple organizations. it provides often-needed flexibility while bringing visibility to exceptions. make your choices of values for key parts based on how you want rules to be found by rule resolution. As you create applications. Sharing and reuse is a major benefit of object-oriented software. While this dilutes the sharing benefit. it is important to understand how it operates. This facilitates application evolution. 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 129 . yet all can depend on common rules that are locked (and so won't change) Ø Rule resolution uses as input values: ü ü ü ü The name of the rule needed (one or more key parts) A starting location in the class hierarchy. and security rules control which users see and execute which versions. Ø Applications can be developed independently from other applications. Ø One Process Commander system can host multiple applications.

Ø How the system finds rules through rule resolution: Different Phase Phase 0 (Purpose) Phase 1 (Product) Phase 2 (User) Phase 3 (Timing) Phase 4 (Customer) Phase 5 (Security) Description Match rule type and name Search up the class hierarchy as necessary Filter by RuleSet list and availability Filter based on date and time Qualify on Circumstance Enforce Access Roles and Privileges Ø Execute the survivor rule ü If no rule instances survive the above five phases. The same rule resolution search process finds each of the referenced rules. the user process is notified of the "no rule found" condition. ü Execution of one rule may naturally call for other rules to be found and executed. the one lowest in the class hierarchy — closest to the Applies To class — is performed. If only one rule instance survives. 130 . it selected and executes. If more than one is found.

or update or delete existing instances. If selected. complete the Security tab of the RuleSet form. To prohibit changes to class rules. Ø Important Points: ü Changes made to this box take effect immediately after you save the Version form. If a needed function fails to compile.Ø RuleSet Locking: Ø Select to lock this RuleSet version. ü As a best practice. lock a RuleSet version only at a time when no rules are checked out from that version. you won't be able to correct the function rule later. 131 . ü Locking a RuleSet version does not prevent later changes to class rules in the RuleSet. Version and scan the resulting report for rules from this RuleSet. except for rules that a user has open at that moment or that a user has checked out from this version. select View > Rules > All Checkouts by RuleSet. without unlocking the version. no one can save new rule instances to this RuleSet version. as a class belongs to a RuleSet but not to a version. ü As a best practice. To confirm this. You may be prompted for a password upon saving. Ø Clear this box to allow developers to save rules associated with this RuleSet version. compile each library that contains functions in this RuleSet version once more before locking the version.

but this layer may be omitted in some very small one-off applications. Work-Object-. It is rare. Work-Folder-. This is common in ASP models where different clients will have different rules 132 . such as MyCo and YourCo. You should always include this layer. and Dataü Enterprise Shared Product Layer: The Enterprise Shared Product Layer is a library of extensions to the PRPC base functionality. on the other hand. Here you will define most of the rules for your base application.Reusability and Specialization Ø Reusability is the ability for PRPC to share the same instance of a rule. These components could be a single rule or many different rules based on specific criteria. RuleSet. is the ability for PRPC to differentiate a component and/or some portion of that component based on some characteristic for use within or across applications. such as mortgage products that offer fixed versus adjustable-rate mortgages ü Client – Rules that differ by client. Ø Some examples of reuse that we see in PRPC are: ü The Add activity defined at Work. ü Generalized Application Layer: The Generalized Application Layer represents a generic base application to use as a framework for application instances. ü Organizational and Specialized Application Layer: The Organizational and Specialized Application Layer represents an organizational application instance. and/or service so that it can be reused by other portions of the same application and/or other applications. WorkCover-. Some common specialization characteristics are: ü Locale – Rules that will differ by state and/or country ü Business line – Rules that differ by business line. such as personal and commercial lines ü Product lines – Rules that differ by product.that can be can be reused by many applications as-is without customization ü Utility functions that are defined in a shared RuleSet so that they can be reused by multiple applications ü Activities and flows that are defined at a generic application layer of a class hierarchy so that they can be used without customization by implementation of that application Ø The PRPC recommended class structure design pattern offers flexibility in your design and provides for more levels of reuse. There are four distinct layers in the PRPC best practice class structure design pattern: ü PRPC Shared Product: The PRPC Shared Product represents the out-of-the-box Process Commander classes such as Work-. Ø Specialization.

if this is blank. it enters his private RuleSet. Rules in a private RuleSet are never executed by other users. An application rule is an instance of the Rule-Application rule type. your application RuleSets may include rules that you do not consider part of the application. When an application developer checks out a rule.ü Date – Rules that differ depending on the current date or the submission date of a loan or policy. Ø Users who have the Allow Rule Check Out? Check box (on their Operator ID instance) selected can place copies of rule instances into a private RuleSet. the requestor cannot check out rules. 133 . Application Rule Ø An application rule defines a set of RuleSet versions to be added as a unit to a user's RuleSet list. Ø No instance of the Rule-RuleSet-Name class exists for a private RuleSet. Personal RuleSet: Ø The private RuleSet is sometimes called the personal RuleSet. Ø Private RuleSets are used in with check-in and check-out.xml file. the standard property pxRequestor.com. a memory cache similar to. Ø As you develop rules. which is part of the Security category Ø In some situations. which contains rules checked out to you ü The application RuleSet does not include rules in RuleSets listed in the Production RuleSets array of the Access tab. ü The application RuleSets does not include your private RuleSet. Ø A private RuleSet is always topmost in a user's RuleSet list. part of the rule management facility. such as john_sawyer@abc. pxPersonalRuleSetName identifies the private RuleSet. Ø The system creates a private RuleSet automatically when needed. or may exclude others you expect. Ø On the requestor page. but separate from.pxSecuritySnapshot. The maximum size of this cache (for all developers combined) is determined by elements in the fua node of the prconfig. The name of this RuleSet is the same as their Operator ID. the rule cache contains rules in your private RuleSet.

Rule resolution automatically checks this RuleSet first. Ø Ordering of RuleSets in Application Rules: Order 1st 2nd 3rd 4th 5th RuleSet Type Personal RuleSets Production RuleSets Application RuleSets Pega Rule Sets Pega-RULES RuleSet Description The RuleSet that contains rules that are checked out to a user. RuleSets that are deployed in a production system. Pega-ProCom 2. Ø The RuleSet list is an internal data structure that the system uses to determine which rule instances that a requestor can execute. they are usually locked. 1. Click the link containing your name at the top of the navigation panel to review your RuleSet list. Pega-WB Pega-RULES Note: ü This is a collection of RuleSets. Ø How a RuleSet list is compiled? ü Your RuleSet list is assembled bottom-up ü The RuleSet list has file sub-lists in two layers 134 . Your RuleSet list often contains additional RuleSets not present on the Application RuleSets list. presented on the profile display. Organization data instance. RuleSets that are unlocked to allow rule changes.ü Rules from RuleSet versions listed in the Requestor Type data instance. not a collection of RuleSet versions ü An operator's full RuleSet list — in contrast to the Application RuleSets list — is an ordered list of RuleSet versions — not RuleSets. Pega-IntSvcs 3. or Division data instance are not included unless these RuleSets also appear in the application rule.

and the locked Pega. You can circumstance a base rule with a single property and its value. This sub-list is assembled from those listed in the Override RuleSets area of the Advanced tab of an application rule that is directly referenced by an access group listed in one of the five data instances described below in this topic. The application RuleSet is a collection of RuleSets. The RuleSet list is an ordered set of RuleSet versions. with no versions. application RuleSet Versions. rules found by rule resolution among the RuleSet versions in the top layer supercede all rules located anywhere in the second layer. The circumstanced rule is selected by rule resolution if the value of the circumstance property on the rule matches that property's value on the clipboard at runtime. For example. arranged in two layers. Ø Circumstance qualified rules ü A circumstance-qualified rule instance (often referred to as a "circumstanced rule") is always based upon an unqualified rule instance (base rule). Using a circumstance allows your application to support multiple variants of a rule.RuleSet Versions that define Process Commander. a subset of the RuleSet list relevant to developers who are using the Application Explorer and other developer tools. Note: Ø Don't confuse the RuleSet list with application RuleSets. variations of an ordinary rule instance can be created for different customer status levels or for different geographic locations. The rule form for a circumstance-qualified rule displays the property 135 .ü A completed RuleSet list contains up to five sub-lists of RuleSet versions. (The contents of the Override area of application rules referenced through the Built on Application field are ignored. Multivariate Circumstancing Ø A circumstance is an optional qualification available for all rules. or with multiple properties and their values (called multivariate circumstancing). • The second (bottom) layer may contain four sub-lists: one private RuleSet.) At runtime. shared and component RuleSet Versions. of override RuleSet versions (if any). Order is significant at the layer. icon identifies a circumstance-qualified rule instance. A ü On many displays. unless the rule found in the second layer has an availability of Final. Ø The standard function rule IsInRuleSetList(RuleSet) tests whether a RuleSet is included in your own current RuleSet list. sub-list level. an icon identifies a base rule instance that has one or more circumstanced instances. and within each sub-list: • The top layer contains one sub-list.

you can revert in specific cases to pre-5. Ø Database software supporting your Process Commander system limits the number of columns that can occur in any database table. If two rules with the same Applies To key part and family name are both unqualified and each has one or more associated property circumstance-qualified rules. email. you can circumstance-qualify Declare-Constraints. and Declare-OnChange rules.State. claims that exceed a specific amount and the method by which the claims were conveyed (letter. Another example may be the need for a rule that is specialized by an age range and not an absolute value. You cannot use circumstances with a final rule 3. the same circumstance property must be used. Alpha cannot have a circumstance rule with any property other than . Declare-Expression. then another activity MyClass. this is not the default rule resolution behavior: you can copy a base rule to a higher version without the need to also copy each of the (possibly many) qualified rules associated with the base rule into that higher version. Conversely.2. 4. circumstance-qualified rules with a RuleSet version number lower than the RuleSet version of a base rule were ignored (never selected) during rule resolution.4. Ø In releases before V5. the base rule must contain directives. 2. the base rule must also contain JSP tags rather than directives. an insurance company may be required to collect.State.and its value next to the Circumstance label located in the top right area of the form Ø If you use a single circumstance property. Note: 1. and so on). if activity MyClass. for every state.2. If you use multivariate circumstancing. Alpha has an associated circumstance-qualified rule using property . you define the property name and its value directly in the Save As form. Circumstances are available only for certain rule types — those with the Allow Selection based on Property Rules? box selected on the Class form defining the rule type. For example. you may not exceed this limit. If desired. For example. phone. When creating a Circumstance Definition rule. if the time-qualified rule contains directives. As of Version 5. Starting with version V5. If a circumstance-qualified stream rule contains JSP tags (rather than directives). there are two rules in the Save As form: ü Circumstance Templates (Rule-Circumstance-Template rule type) ü Circumstance Definitions (Rule-Circumstance-Definition rule type) Ø Multivariate circumstancing enable you to specialize a rule by more than one feature.2 behavior by 136 .

Ø The system uses access groups identified in up to four data instances to assemble a user's RuleSet list during sign-on: ü Operator ID ü Organization ü Division ü Requestor type Ø When referenced in the following. Typically. Ø Use the Circumstance Property Issues report (a link in the Rule Reports area of the Monitor Activity slice) to identify single circumstance-qualified rules that incorrectly use two or more different properties. Access groups make a set of RuleSet versions available to requestors. they determine which applications and which parts of those applications users can access. Ø Developers define access groups and associate an access group with each user (each Data-Admin-Operator-ID instance). Ø An access group is associated with a user (or other requestor) through the Operator ID data instance. multiple users are associated with or belong to one access group. access groups determine the RuleSets and Versions available to external systems when they request services from a Process Commander application. Access Groups Ø Access groups bind the many aspects of an application. ü Service package data instances ü Listener data instances ü Service rules 137 . In addition. Ø An access group is an instance of the Data-Admin-Operator-AccessGroup class. Such conflicts can arise when rules are imported into a RuleSet that already contains some circumstanced rules.selecting the Base Rule check box on the form produced by the Availability toolbar button ( ). The access group determines: ü Their portal layout ü Which work pools are available ü The types of work objects they can enter ü Which RuleSets appear at the top of their RuleSet list ü Which access roles and privileges they hold ü The initially displayed RuleSet and version for rules they create with New or Save As.

Ø Various sections in an access group instance and their functions 1. Field Description Application Fields To update this RuleSet Name rule.) Identify the second key part of an application rule. a user enters the same Name password in this field as the one you specify in the field of the same name in the Define Passwords section above. Roles Array Roles Identify one or more access roles (Rule-Access-Role-Name rule type) that members of this access group are to acquire at login. a named collection of work types Leave blank if users associated with this work object do not enter new work. in addition to access roles they may acquire from other sources. RuleSets. List all class groups for work pools in which users Work Pools associated with this access group are permitted to enter new work objects. Work Pools array Optional. For a development Process Commander system. Each class group defines a work pool. Access Group form completing the Layout tab Complete this tab to identify the class groups. Version (Leave blank in legacy configurations only. and access roles available to the Operator IDs or requestors that reference this access group. commonly assigned access role names are the three standards: 138 .

The order of rows in this array becomes the order they appear in the RuleSet list. 2. use PegaRULES:User4 For a work manager. RuleSets ⇒ Leave blank except for developers and others who modify rules ⇒ Optional. the access roles available to a user act as a collection of capabilities granted. At login. the system appends these entries to the top of your RuleSet list. Enter the RuleSets and Versions specific to this access group. but starting at the bottom of this array.For a worker. use PegaRULES:WorkMgr4 For all developers. Order is not significant. Enter the RuleSets and Versions specific to this Production access group. Production RuleSets array Optional. use PegaRULES:SysAdm4 Enter an access role that is consistent with the value you entered in the Default Portal Layout field in the Settings tab. not a hierarchy. Access Group form completing the Setting tab 139 .

portal layout. Click the pencil icon () to open the portal rule Select a portal layout that works with the Roles array on the Access tab. * The Developer portal is designed to support application developers who have the PegaRULES:SysAdm4 access role. accept the default of /webwb. select the traditional portal WorkManager. Authentication Enter a number of seconds after which the system challenges timeout (secs) idle browser sessions (for users of this access group).Use this tab to define the home directory. Typically. Directories within 140 . Field Login Setting Default Portal layout Description Identify a portal rule to indicate which portal presentation supports those requestors who reference this access group. See timeouts. Note: Typically. set the authentication timeout value in this field to a period that is much shorter than the requestor timeout set in the timeout/browser value in the prconfig.xml setting. This timeout event does not cause session context or clipboard contents to be lost. you can disable the authentication challenge that normally appears after this timeout occurs: <env name="Initialization/noAuthenticateOnActivate" value="true" /> HTTP/HTTPS The default setting is false. asking users to re-enter their Operator ID and password.xml file. or composite portal Manager. and other capabilities for users or other requestors who reference this access group. For a manager. select Developer. Do not choose Developer unless PegaRULES: SysAdm4 appears in the Roles array on the Access tab and Allow rule check out? is selected on the Security tab. Typical choices referencing standard portal rules are: For a worker. For all developers. select the traditional portal WorkUser or composite portal User. Through a prconfig.

RuleSet Select a RuleSet from those listed in the Production RuleSets array on the Access tab. Home style sheets. select a language-specific RuleSet. if the Default Portal Layout field identifies a composite portal. select a RuleSet that is not intended to be moved to other Process Commander systems. and images. 3. Ø If this access group is to support application developers — users who can create rules — select a RuleSet that the developers usually work in and add rules to. Enter the name of a portal rule to make an additional portal presentation available to this user. required if RuleSet is not blank. Similarly. that the system suggests as a destination RuleSet when users associated with this access groups create a rule. or from those listed in application rules referenced on that tab. Version Optional. directory Secondary Portal Layouts Portal Layout Optional. you can define alternative layouts. Ø For language specialists involved in internationalization. Local Customization As a best practice. leave this array blank or list only other composite portals here. Leave these fields blank for an access group that supports logging on to Process Commander from external systems. Do not mix the two kinds of portals. this is useful in debugging. if the Default Portal Layout field identifies a traditional portal.this directory hold important static XML forms. JavaScripts. Access Group form completing the Setting tab 141 . to allow them to quickly switch between layouts. leave this array blank or list only other traditional portals here. Ø For managers who are to customize reports. or that supports workers or managers who never create rules. For developers.

Click to ID open the Operator ID form. For users who are not managers.01. from the Operator Full Name field on the Operator tab of the Operator ID form. Name PegaRULES:Administrators PegaRULES:Agents Purpose For developers. and privileges appropriate to their needs. create access groups for managers that provide access to the portal. If your organization implements the optional password management facility. RuleSets. Field Description Application Fields Full Name Full name of an operator.05. This is a PegaRULES:WorkUsers sample. users of the Developer portal. For all Batch requestors. which enforces service level rules. your system contains the following access groups. Click to open the Operator ID form. Ø When first installed.05. This is a sample. each linked to the standard application rule PegaRULES. PegaRULES:WorkManagers For managers. including the PegaProCom agent. update this access group to make the restrictions of the PegaPwdControl RuleSet apply during login. and privileges appropriate to their needs. Key of an Operator ID instance that references this access Operator group on the Operator tab of the Operator ID form. PegaRULES:PortalUsers PegaRULES:Unauthenticated For guest users. Update this access group to reference any application RuleSet Versions that contain service level rules. For JSR-168-compliant portlet access. listeners. create access groups for managers that provide access to the portal. and services. 142 . RuleSets.Use this read-only tab to review or quickly access Operator ID instances that reference this access group. Supports all agents.

PegaRULES:SystemArchitects Deprecated. Access Deny rules ü ü Access Deny rules are instances of the Rule-Access-Deny-Obj rule type Use an Access Deny rule to restrict users who have a specified access role from accessing instances of specific classes under certain conditions.2 systems. Use PegaRULES:Administrators. ü 2. Process Commander denies all access to a class except when explicitly granted by an Access of Role to Object rule. They are deprecated and not recommended for continued use. Use PegaRULES:Administrators Security Ø Rule types and data classes are organized into categories as a learning and navigation aid. Create or modify an Access of Role to Object rule for each class on which you want to set new or additional access permissions based on access role (Rule-Access-Role-Name rule type).Ø Deprecated access groups These are retained to support applications created in Version 4. ü Denial of access to the class can depend on the production level value (1 to 5) of your system or whether certain Access When rules evaluate to true. By default. Name Purpose PegaRULES:ProcessArchitects Deprecated. The Security category contains seven rule types and four data classes respectively Ø Ø Ø Ø Ø Ø Ø Rule types Access Deny Access of Role to Object Access Role Access When Attachment Category Privilege Setting Ø Ø Ø Ø Data classes Access Group Application ID Keystore WS Security Profile 1. To specify new or different access to a class than provided by standard Access of Role to Object rules. Access of Role to Object ü ü ü Access of Role to Object rules are instances of the Rule-Access-Role-Obj class. create an access role (Rule-Access-Role- 143 .

or a numeric value between 0 and 5. Attachment Category a. you reference the access role name in other rule types to assign the access role to users and to provide. the production level of your Process Commander system is not greater than the numeric value. If. you can enter an Access When rule name. or restrict. a requestor to perform an operation on an instance of a specific class. The forms are similar. 2. For each of the eight categories in the array. or disallow. Create access role names using the format application name: role name. Enter a value between 1 and 5 to provide access. To deliver the capabilities to users. 144 . ü Don't confuse the Rule-Access-When rule type — referenced only to control user access to a class — with the more widely used Rule-Obj-When rule type. An access role rule defines a name for a role. but the purpose and references are different. then users with the specified access role can perform the operation (on objects of that class). Access role names form the first key part of Access of Role to Object rules (Rule-Access-Role-Obj rule type) and Access Deny Obj rules (Rule-AccessDeny-Obj rule type). and represents a set of capabilities. ü You can reference Access When rules in Access of Role to Object rules and Access Deny rules. 4. at runtime. Access Role ü ü ü ü ü Access Role Name rules are instances of the Rule-Access-Role-Name class. Access roles are conveyed to users through access groups. If an Access When rule evaluates to True at runtime. access to certain classes. 3. Note: 1. where application name is the name of your application and role name is the name of a role that uses the application. Attachment Category are instances of the Rule-Obj-AttachmentCategory rule type. ü An Access When rule defines a test that the system performs to allow. Enter 0 or leave blank to prohibit all access. as an alternative to a system production level number.Name rule type) and then create an Access of Role to Object rule for the appropriate classes. Access When ü Access When rules are instances of the Rule-Access-When class. the users with the specified access role can perform the operation. 5.

AttachAURL ü Work-.AttachAScreenShot ü Work-. To convey privileges to a requestor. identified in the access group referenced in the Operator ID data instance.AttachConvertedPDF. review. A privilege rule is an instance of a Rule-Access-Privilege rule type. screen shot. As users (or other requestors) work with your application.EditAttachments ü Work-. Users who hold any of the privileges listed may use the rule. by restricting access to specific rules rather than to entire classes or RuleSet versions. or all of these factors: ü Privileges — Held by the operator (or other requestor) ü When rules — Runtime true-false tests ü Attachment type — File. or URL ü Work group — To which the operator belongs c. one. 145 .ConvertAttachmentToPDF ü Work-. and Work. Attachment category rules are referenced by the standard activities Work. Access can depend on none. e. Every requestor holds one or more access roles. Privilege a. Define an attachment category rule in your application to control the security of attachments on a work object. The rule restricts operations that can be performed including create.EditCategorizedAttachments 6. scanned document. d. note. Work-. or delete.AttachAScannedDocument ü Work-.AddAttachmentFromMail ü Work-.AttachAFile ü Work-. edit. Use privileges to differentiate the capabilities of different groups of users within your application.AddAttachment ü Work-.AttachANote ü Work-. associate the privileges with access roles. the system compares the privileges they hold with the privileges required.b. c.AddMultipleAttachments ü Work-.ActionAddAttachment plus these standard flow actions (typically used as local actions): ü Work-.ProcessAddMultipleAttachments.AttachFromScanner ü Work-. Privileges complement the security and access control features provided by access roles and RuleSet lists. b.

Access of Role to Object rules — To convey privileges to those users who hold an access role 7. Summary view rules — To limit which users can produce the summary view report or chart 8. After a privilege is defined. Activities — To limit use of the rule to users who hold a privilege 2.f. This lets you specify different access to certain capabilities for different access roles based on the value of a setting. you can associate it with specific rules in eight rule types. One type conveys access and seven types restrict access: 1. 8. Keystore ü A keystore is a file that contains encryption keys. reference privileges in that rule within your application. 9. 146 . Attachment category rules — To limit operations that can be performed on an attachment 3. You assign values to a setting when you reference it in Access of Role to Object rules for various class/role combinations. This option is available for selected rule types only d. To require privileges for use of a rule. Correspondence — To limit use of the rule to users who hold a privilege 4. WS Security Profile ü The Data-Admin-Security-WSSecurityProfile class contains WS Security Profile data instances. You can attach a keystore file to a data instance of the class Data-Admin-Security-Keystore. to support Web Services Security. Flows — To limit starting the flow to users who hold a privilege 5. Setting rules ü Access Setting rules are instances of the Rule-Access-Setting class ü Use a setting rule to define a name and data type for a setting that your application's activities can use for finely tuned access control. List view rules — To limit which users can produce the list view report 7. e. Flow actions — To limit selection of the action to users who hold a privilege 6. The association between access roles and privileges is defined by instances of the Rule-Access-Role-Obj rule type.

e. ü PRExtAssign — Supports external assignments (Directed Web Access). If the submitted user credentials match those in an Operator ID.ü Enable Web Services Security (WS-Security) on a SOAP connection to securely move messages to and from your application. Enterprise Class Structure Security and Encryption 147 . any SOAP message moving through a connection will do so securely Authentication Ø Authentication is the process of determining the identity of a user or other requestor. ü J2EEContext — specifies that the application server in which Process Commander is deployed use JAAS to authenticate users. Ø Process Commander authenticates users by matching submitted user names and passwords to those that are stored in Operator ID instances.Web-Login-SecuredBasic. which your application can override). A requestor or user who is not authenticated is known as a guest. you must first prove who you are before the system can determine the list of actions you're authorized to perform and the resources you are authorized to access). defines the realm of actions that you are allowed to perform. the user is authenticated. ü PRCustom — Supports access to an external LDAP directory or a custom authentication scheme. Authorization Ø Authorization. Ø Process Commander supports several types (or schemes) of authentication: ü PRBasic — Based on passwords in Operator ID data instances and the log-in form (defined by the HTML rule @baseclass. ü PRSecuredBasic — Similar to PRBasic but passes credentials using Secure Sockets Layer (SSL) using Basic HTTP authentication The log-in form is defined by the HTML rule @baseclass. which your application can override.. on the other hand. and the data and resources you are allowed to access. Ø Authorization follows authentication (i. Once enabled. Web-Login.

d) To define security for rules 5. Are used only in defining Work Parties b. Represent a person’s authority level relative to part of the work process d. c) To play an important role in rule resolution.Questions: 1. Are seldom required – since you can simply use the ones that come with PRPC 7. RuleSet versions consist of 3 separate numbers: a) Patch-Major-Minor b) Minor-Patch-Major c) Major-Minor-Patch d) Minor-Patch-Major-SubMajor 4. Control the workpools that you can access c. Which of the statements below is NOT one of the main purposes of a Rule set? a) To act as a container for rules. None of the above 6. Which defines the work portal and application access for a group of people tat perform the same job function? a) Organization 148 . Access Groups c. Access Roles a. b) To facilitate migration & shipping (application deployment). The best way to create a new Major RuleSet version is to use: a) Export Rules b) Load Rules c) Skim Rules 3. All of the Above e. Requestor Types d. Which of the following can be used to implement security?: a. What is the purpose of locking a RuleSet version? a) To restrict the access of rules belonging to the RuleSet version b) To activate the export feature c) To restrict new instances being added to the RuleSet version d) To restrict the creation of new RuleSet versions for the RuleSet 2. When Rules b.

including purpose. security groups and access roles 12. An Access group is associated with a user through the _______ data instance. date and time range. Generalized followed by Specialized ruleset d. Circumstance Property and Circumstance Value 14. access groups. WorkPools e. Users of the PegaRULES Process Commander system are defined by: a. Access Role b. access roles and operatorID’s b. Access Groups control (Choose 3) a. The Circumstance feature is defined by: a. ruleset and version. Circumstance Value and Circumstance Level c. class. Rule resolution dynamically selects the right rule by searching your profile RuleSet list across multiple dimensions. Circumstance Property and Circumstance Level b. (TRUE/FALSE) 15. (YES/NO) 149 . (True/False) 16. Operator ID 11.base class.b) Division c) Unit d) Access group 8. circumstance and security. Access group is not referenced in the following rule(s) a) Requestor type b) Unit c) Operator ID d) Work Group 10. access groups. Declarative rules such as Rule-Declare-Expressions and Rule-Declare-Constraints can be specialized using circumstances. (operator id) 9. security groups and operatorID’s c. Portal Layout d. Password c. Specialized followed by Generalized ruleset 13. Alphabetical b. The Ruleset list is assembled in which of the following order a. a user class d. Chronological c. Rule resolution applies to all the classes that are derived from Rule.

Integration 150 .11.

151 . ü The service package locates a service rule. ü The service rule. invokes the appropriate rules to map the incoming parameters to Process Commander Properties. ü The service rule invokes an activity. ü The service assembles a response message from the output properties and sends the response. a service can reply with data that the external system requested and it can process the incoming data to determine that it needs to create a work object and initiate a workflow. The activity processes the input ü Properties and completes the task of the service.Services: Ø A service receives input from an external system and can respond in some way. For example. As mentioned. Ø The following is a high-level description of how a service works: ü An external client or system assembles and delivers a message or request to a Process Commander Service. The data mapping for the service rule then maps appropriate values into output properties. in turn. The message identifies the service package that contains the service rule or method to invoke. perhaps the service extracts data from the Process Commander database or delivers a work item to Process Commander.

9. 11. Portlet service rules provide the mechanism for displaying Process Commander features and functions in JSR 168-compliant portlets that are displayed by JSR 168-compliant portal servers. Process Commander provides the following standard types of services: 1.NET Framework). 3. JMS service rules respond to messages sent by Java Message Service clients to a queue or topic. JSR 94 service rules receive and respond to requests from external applications through JSR 94 invocations. Use HTTP rules when you want to send XML or string data using a messaging protocol like SOAP. A JSR 94 service is used when a part or all of a Process Commander application is embedded in another Java-based application. 10. 7. 14. 4. 13. The ActiveX control interacts with other parts of the Windows application using Microsoft Component Object Model (COM) protocols. E-mail service rules import and evaluate e-mail messages. COM service rules support the creation of a custom Windows ActiveX control that you can integrate with external (desktop or server) Windows applications by using Microsoft Visual Studio or similar Windows development tools.Ø The Process Commander services are based on industry-standard technologies.NET service rules provide Web services to Microsoft . File service rules evaluate the contents of files that are stored outside of Process Commander. BPEL service rules act as a container for the SOAP services and connectors that communicate with the same external Business Process Execution Language (BPEL) application when the external BPEL application starts a Process Commander flow. 8. 12. 5. Defined by the Java Community Process. including their headers and attachments. Process Commander can automatically generate an Interface Definition Language (IDL) file. HTTP service rules process and respond to HTTP requests that contain XML or other string data (text) or HTML POST data. 152 .NET clients (external systems based on the Microsoft . EJB service rules expose functions in a Process Commander application as though they were methods of an Enterprise JavaBean. Java service rules expose functions in a Process Commander application as though they were public methods of a Java class. 2. 6. JSR 168 describes a set of Portlet APIs. . SOAP service rules provide Web services to SOAP (Simple Object Access Protocol) clients. CORBA service rules let external clients request services of Process Commander through an Object Request Broker (ORB) that implements the Object Management Group Common Request Broker Architecture (CORBA) standard. JMS services read messages from the queue or topic. MQ service rules accept WebSphere MQ (formerly called IBM MQSeries) messages from external systems and respond to them.

If so. ü Configuration information about the requestor pool when the service rules run as unauthenticated users and session state is stateless. the incoming message from the external client application must include the name and password of a valid Process Commander operator. Process Commander translates the functions and processing provided by the service rules in that service package into the appropriate kind of deployment component for a service of that type. • Instance of Data-Admin-ServicePackage • Our SOAP service rules are placed in this package. Ø The service package has global configuration settings for all the services that belong to it: ü The access group that the service rules use when they run as unauthenticated users. Portlet. Ø For SOAP. EJB. A service package represents the service as an application and the service rules represent individual functions or methods in that application. 153 . ü Whether the services must run as authenticated users. SnapStart is a lightweight data import facility that conveys data from one desktop application into Process Commander under the control of a user. COM. and CORBA services. • If the service is stateful specify whether to keep the requestor session open and when to close it in the service rules.15. Ø Service Package: A service begins with a service package data object. Unlike the other services. the SnapStart service does not rely on a subclass of Rule-Service. BPEL. Building a SnapStart interface requires skills in creating HTML forms and writing short activities. A service package is similar to a container class. The service rules must belong to one of the RuleSets listed in the access group. • If the service is stateless. the End Requestor option in the service rule does not apply. ü Whether the service is stateless or not. use the service package form to generate deployment files. dotNet. Java.

154 .

ü Information about recognizing and reporting exceptions ü The list of input and output parameters. 155 . Ø A service rule has three key parts: ü Name of the service package. and how their values are mapped to and from clipboard pages. their data types. the service rule maps the input parameters into clipboard properties and then calls an activity to process the request. The service package must exist before you can create the service rule. that is. The service rule handles the details for this kind of request. Ø The service rule holds the following types of information: ü Class of the primary clipboard page that the service uses ü Name of the primary clipboard page that the service uses ü Name of the service activity ü Information about whether to keep the requestor session open or to close it after the service rule is finished.Ø Service Rule: The service itself is defined by an instance of the appropriate RuleService.subclass.

This is the only key for an email service rule. ü An incoming message must identify the service by specifying all three parts of the name (package. ü Name of the service method. The service package name and service class name are used to group service rules. This name is a string. it is not an instance of RuleMethod. it is not an instance of Rule-ObjClass. This name is a string. class. and method) in the message. The service method name describes what the service rule does. 156 .ü Name of the service class.

When creating a service rule. 157 . ü The connector assembles and sends a message or request to the external system. ü The external system replies to the connector with the data the connector Requested. Ø The following is a high-level description of how connectors work: ü A work object triggers an Integrator task in a flow. designate the service activity by entering its name in the Activity Name field on the Service tab of the service rule. ü The activity calls the connector. ü The Integrator task calls the connector activity and passes it the appropriate properties from the clipboard. Ø Connectors are the mechanism that Process Commander uses to send messages to or make requests of external systems and then process the results or response.Ø A service activity evaluates the property values that are stored on clipboard pages and takes an action.

jar files that are located in Process Commanders classpath. connectors are based on industry-standard technologies. processes it. 158 . ü JCA connectors send requests to external Enterprise Information Systems through resource adapters that implement the Common Client Interface of the J2EE Connector Architecture specification.ü The connector receives the reply. ü HTTP connectors send message data to external systems through HTTP GET or POST requests and process the response data. ü SQL connectors send complex SQL statements to an external database. The connector then returns control to the Integrator task. ü JMS connectors send request messages to an external system and process responses through an intermediate server that hosts Java Message Service middleware. (EJB) and call it’s remote methods. Process Commander provides the following standard types of connectors: ü EJB connectors access an Enterprise JavaBean. ü Java connectors call the Java methods and constructors of Java classes or . You can also use them to communicate with WebSphere Business Integration adaptors. and places the data as PropertyValue pairs on the clipboard. Ø As are services. ü SOAP connectors are SOAP (Simple Object Access Protocol) clients that call Web services. and the flow resumes.

Ø The connector rule holds the following kinds of information: ü The RuleSet. ü MQ connectors send request messages to an external system and process responses through an intermediate server that hosts IBM WebSphere MQ middleware. SOAP. 159 . For example.NET clients that call Web services on external systems based on the Microsoft . the connector rule specifies session and time-out information. For example. The connector rule types encapsulate the appropriate logic for communicating with a service of that type.NET Framework.Net connectors are Microsoft . if so. and dotNet connectors). ü The number and type of output and input parameters. the activity uses the Connect-SOAP method to call the connector rule. if the connector is a SOAP connector. A method in the activity calls the connector rule. ü Whether the system it communicates with accepts requests from authenticated users only. ü BPEL connectors act as a container for the SOAP services and connectors that represent Process Commander as a partner of a Business Process Execution Language (BPEL) process when Process Commander starts the process. the username and password the connector is to use. if the request is sent via HTTP (HTTP. For example. a SOAP connector holds the URL of the SOAP server. An EJB connector holds information about the EJB container that holds the bean and which of the bean’s Java methods to use.ü . ü Technology-specific information about connecting to a service of that type. Ø The connector activity is the mechanism that starts the connector. Ø The connector itself is defined by an instance of a Rule-Connect-* rule. and.

160 .Ø With the exception of the SQL connector. ü A Database instance and one or more Database Table instances that provide access to the tables or views of the external database. ü A JDBC library that provides access to the external database software. RDB-Delete. use the following elements along with the Connect-SQL rule: ü An activity that references one or more of four standard methods for operating on relational databases — RDB-Open. RDB-List. which holds the name of the external service or method that it connects to. ü Special data mapping syntax to associate properties with database columns. An activity that uses RDB-Open to call a connector rule runs the SQL statement on that connectors Open tab. They belong to the Integration-Connectors category. Connect SQL rules are used when the application needs to run complex Structured Query Language statements such as joins or stored procedures to update or extract information from an external database. a connector rule has two key parts: ü Name of the class rule it applies to ü Service name. and RDB-Save. The names of the methods match the names of the tabs in the connector rule. Ø Connect SQL rules are instances of the Rule-Connect-SQL class. Ø To configure an SQL connection to an external database.

ü Use Open tab to open a single row in the data base. To execute the SQL statement
on this tab, an activity uses the RDB-Open method.
ü Use the Delete tab to enter the SQL to delete a row or rows from a relational
database. The SQL statement in this tab operates in conjunction with an activity
that uses the RDB-Delete method.
ü Use the Save tab to enter the SQL to save an instance to the database. The SQL
statement in this tab is executed by an activity that includes the RDB-Save
method.
ü Use the Browse tab (in conjunction with an activity that includes the RDB-List
method) to create a rules that at runtime searches an external relational database
and returns to Process Commander data from the selected rows.
Ø The HTTP integration interface supports interactions between the Process
Commander applications and other systems through Hypertext Transport Protocol.
Use HTTP connector rules when the application wants to send XML or string data
(text) as messages to an external system without the need to comply with messaging
standards or protocols like SOAP.
Ø There are two types of HTTP method which is GET and POST. "GET" is basically
for just getting (retrieving) data whereas "POST" may involve anything, like storing
or updating data, or ordering a product, or sending E-mail. A Connect HTTP is
created which is inherited from Integration-Connectors.
ü Service tab: Used to identify the external system with which this connector rule
communicates.
ü Endpoint URL: Enter the URL of the external system to which this rule
connects.
ü HTTP method: Select which HTTP method to use to send the string: GET or
POST.
ü Request only: When the HTTP Method is set to POST, select to indicate that
Process Commander is to send the message and close the connection without
waiting for a response.

161

ü Request tab: Used to map data for the request message.
ü Query String Parameters: When the HTTP method specified on the Service tab
is GET, use the fields in this section to specify name/value pairs to append as a
query string to the URL of the target system.
ü Name: Enter the name to use for the parameter. The data type of a query string
parameter is String.
ü Description: Enter a short description of the parameter.
ü Map From: Specify the source or the type of source of the value.
ü Clipboard - Map from the page name or property on the clipboard specified by
the Map From Key field.
ü Constant - The data is a fixed value that does not change.
ü Map From key: Specify the key to locating the property or rule in the source
specified in the Map From field.
• If the Map From value is Clipboard, enter the property name from which
the data is mapped at runtime.
• If the Map From value is a Rule-Utility-Function from a MapFrom library,
either select the property that holds the value to be processed by the
function at runtime or leave this field blank, as appropriate for the
function. If the Map From value is Constant, enter the value of the constant
surrounded by double quote characters.
ü MessageData: Used to specify the data to include in the POST message.
ü Description: The data type of the message data is String. Enter a short description
of the string in the response.
ü Map From: Specify the source or the type of source of the value:
• Map From Key: Specify the key to locating the property or rule in the
162



source specified in the Map From field:
If the Map From value is Clipboard, enter the reference to the property
from which the data is mapped at runtime.
If the Map From value is Constant, enter a literal text string.
If the Map From value is XML Stream, enter either the Stream Name (second
key) of the appropriate XML rule or a page name and stream name using the
syntax PageName.StreamName. (The page must be present on the clipboard
when the connector rule runs for rule resolution to find the rule.) If you specify
the stream name only, the system uses the Applies To class of this connector rule
as the first key part of the XML rule.
If the Map From value is HTML Stream, enter either the Stream Name (second
key) of the appropriate HTML rule or a page name and stream name using the
syntax PageName.StreamName. (The page must be present on the clipboard
when the service rule runs for rule resolution to find the rule.) If you specify the
stream name only, the system uses the Applies To class of this connector rule as
the first key part of the HTML rule.
If the Map From value is a Rule-Utility-Function from a MapFrom library, enter
or select the property that holds the value to pass to the custom function at
runtime.

ü Response tab: Used to map the data from the response.
ü MessageData: Used to map the response data from the message.
ü Description: The data type of the message data is String. Enter a short description
of the incoming string.
ü Map To: Specify the destination or the type of destination for the value in
Process Commander.
• Clipboard: Map to the page name or property on the clipboard specified by
the Map To Key field.

163

• XML ParseRule: The incoming data is a stream of XML that must be parsed
using the actions defined in a parse XML rule (an instance of Rule-Parse-XML).
• Delimited ParseRule: The incoming data is in a delimited format that must be
processed by a Parse Delimited rule (an instance of Rule-Parse-Delimited).
• Structured Parserule: The incoming data has a fixed format with fixedlength fields and must be processed by a structured parse rule (an instance of
Rule-Parse-Structured).
ü Map To Key: Specify the key to locating the property or the rule in the
destination specified in the Map To field.
• If the Map To value is Clipboard, enter the property name to which the data is
to be mapped.
• If the Map To value is XML Parse Rule, enter the Namespace name
(secondkey part) and the Element Name - third key part - of the appropriate
XML parse rule. Separate the Namespace from the Element name with a space
using
the
syntax
NamespaceName
ElementName"
rather
than
"NamespaceName.ElementName." The system uses the Applies to class of this
connector rule as the first key part of the parse rule.
• If the Map To value is Delimited ParseRule, enter the Namespace and
Record Type names (second and third key parts) of the appropriate delimited
parse rule. The system uses the Applies To class of this service rule as the first
key part of the parse rule.
• If the Map To value is Structured ParseRule, enter the Record Type (third key
part) of a structured parse rule. The system uses the Applies To class of this
service rule as the first key part of the parse rule.
• If the Map To value is a Rule-Utility-Function function from a MapTo library,
either select a property to hold the results of the function or leave this field blank,
as appropriate for the function.

164

Ø Both the file listener and the file service have a part in processing the files. The service activity can then process the data – pass the data to another rule. or start a flow and create a work object based on the data. and then write the fields to the clipboard. the listener moves the files into a subdirectory named work_<name of listener> and calls the file service. evaluate each input record.Ø Mapping Connect-HTTP method to the Activity: Specify the name of the method to be used as Connect-HTTP. Enter the value of the property to which the MessageData has been mapped. When files that match the pattern the listener is listening for arrive. File Listener File Listener Ø A file listener monitors the file directory and calls the file service when files arrive. structured. When the file service finishes processing the file.Specify the name of another method as Show Property. The file service uses a parse rule (XML. When the listener starts. or delimited) to open and read the file. 165 . In Connect-HTTP method in the activity specify the name of the Service (name of the Connect HTTP method). The listener also creates a reports subdirectory to hold report files that contain the results of the processing. divide the records into fields. depending on how the listener is configured. the listener either deletes the file or moves it to the work_<name of listener>/completed subdirectory. it creates subdirectories in the file directory it is monitoring.

Before setting up a file service. This class is part of the Integration-Resources category. create or identify the parse rules (XML. As an alternative to updating this form directly. only those files with a specific file extension or some other distinguishing characteristics. Each file contains a single XML record that describes the claim and the file service must create a work object for each claim. and so on ü How the files are arranged – is there one record in each file or multiple records in each file. the Process Commander server must have read and write access to the file system where the input files arrive. you can create a File Listener data instance through the Service accelerator. 166 . This section describes one way to set up the data mapping rules and service activity for this example.How to set up a file service (and file listener) Ø Use the File Listener form in conjunction with Service File rules to import data from a file or files into your Process Commander system. or click the File Listeners link on the Resources area of the Integration slice ( ). ü Ø The Data-Admin-Connect-FileListener class contains file listener data instances. Ø Use file services to read in and process the data in files. because the listener moves and sometimes renames files. Verify that it has these access rights. or created by users as text files in any of a wide variety of formats. structured. determine the following: The target directory. or delimited) that map the data from the input files to the clipboard and the activity that performs the service processing. The data files may be exported from another system. ü Ø Use the Rules by Type Explorer to review or create file listener data instances. what is the data structure of the records. you may also need to create additional properties to hold data before or after it is processed. that is the location of the files to be processed How the listener identifies the files – should it process every file it finds. For an example for this article. say that you are creating a file service for an insurance claim application. and so on ü ü Note: Verify that it has these access rights. Ø Configure the data mapping rules and service activity What is the file service meant to do? Is it supposed to create work objects? Perhaps it provides the incoming data to existing work objects? Determine what the service is supposed to do and then create the rules that implement its purpose – that is. As with any service implementation.

ü The XSD file used for this example describes one complex element named Claim. Because the work objects created from the example used in this article need all the data from the incoming files. The page class of the embedded page property would be the top-level class rule generated from the imported XSD file.Ø Use the Import XSD/DTD wizard to generate data mapping rules Obtain the XML schema definition (. The wizard creates class rules for each complex element or type defined in the schema document and creates properties for each element or attribute in the complex element or type. DataSample-File-Claim: 167 .xsd file) that describes the XML used in the input files (records). Here are the results after importing it with the wizard: ü Ø Create properties that support data mapping Determine how to connect the data represented by the generated rules to the work class. You can either configure the service activity to copy individual property values from the clipboard to individual work object properties that you create for this purpose. It also creates XML parse and/or stream rules. or. you can link the entire generated data model to the work object through an embedded page property. ü Run the Import XSD/DTD wizard and upload the XSD file. you would determine the top-level class rule of the generated data model and link it to the work object by creating an embedded page property for the claim work class.

you cannot call the generated XML parse rule directly from the service rule. For that reason. create a page entry for the applies to class of the XML parse rule. ü On the Pages and Classes tab. Create a single value text property to use to as a temporary storage place for the incoming data until the XML parse rule can be called from the service activity. Instead.When you create the service rule in a later task. you will set the service's page class to that of the work class. this is the work class of the claim object. you'll map the incoming file data to a placeholder property and then call the parse rule from the service activity. and not the class generated from the XSD file. For example: Ø Create the service activity Create an activity for the file service and specify that it applies to class is the work class – in the example. ü 168 .

On the Steps tab. ü Ø Then configure a step that calls the standard activity Work-. Provide values for the method’s parameters as follows: ü NameSpace – the second key part of the XML parse rule name ü ElementName – the third key part of the XML parse rule name ü SourceProperty – the name of the placeholder property that holds the input record at runtime (the property you created in step 2 of the previous procedure) ü At runtime. the XML parse rule specified parses the data located in the SourceProperty and puts it on the step page in the clipboard.createWorkProcess to create a work object from the clipboard data on the primary page. Be sure to provide values for the activity’s input parameters. flowType and organization: 169 . configure a step that uses Page-Copy to copy the contents of the Step Page clipboard page to the embedded page property that you created in step 1 of the previous procedure. configure a step that creates the page you defined on the Pages and Classes tab. In the next step. ü In the next step. The first key to the rule is the page class of the step page. set the Step Page to that page and use the ApplyParse-XML activity method to invoke the XML parse rule.

2.Ø Create the service package and service file rule Use the Service Accelerator to generate the service package. service rule. Be sure to assign the appropriate access group. In the New form. click the Integration button on the Developer portal home page to open the Integration page. For the example used in this article. you may need to also specify a model rule and/or a page name. 170 . and file listener. Then. File Service Rule Verify that the service package. In the Service Rule form. but most likely you will have to edit the generated items because file listeners and file service rules have many options to consider. and data mapping rules exist. 1. Then complete the following steps: From the Rules by Type explorer. identify the page class of the service activity (or activities) that you will specify on the Requestor tab. Then click New. select Integration-Services > Service File. on the Service tab. Service Package To create a service package without using the Service Accelerator. you would set the Page Class field to the name of the claim work class and leave the Page Model and Page Name fields blank. under Resources. 3. select Service Packages and then click New. enter the name of the service package you created for this service in the Customer Package Name field. Then enter appropriate names in the Customer Class and Customer Method fields. service activity. Depending on how you configured the service activity.

On the Request tab. On the Method tab. To continue with the example.” specify “text only” in the Data Mode field. Continuing with the example. describe how the contents of the files are organized. and leave the Character Encoding field set to Default. use the Parse Segments section to map the data from the file to the clipboard or a parse rule and to specify the service activity that is to process the data. Note that if the files contain multiple records and records of different types need to be processed differently. you select either “record at a time” or “by record type. you would set Processing Method to “file at a time. you would configure one row that maps the incoming data to the single-value placeholder property you created and specifies the name of the service activity in the Activity field: 171 .4. 5.” Then you describe how the service rule can determine where one record ends and another record begins with the fields in the Record Layout and Record Type Identifier sections.

Ø Save the rule and then test it. under Resources. you use the order of the processing definitions to specify which activity or parse rule to use for each record type. you create as many rows as you need in the Parse Segments section. If the different records always appear in the same sequence but there is no type indicator. Verify that the service rule exists. select File Listeners. 6. and click Execute. (Each thread operates on a single file.xml extensions only. 2. provide some representative data for the service rule to process. For example. and Service Method fields. Do not continue to the next task until you see a success message similar to this one: Create the File Listener The file service must exist before you can create the file listener. unless multiple qualifying input files are available at one time. Click the Run toolbar button. If the records can be identified by type. 4.xml” the listener notifies the service about files with . Set Concurrent Threads to 1 and run the listener on a single node only. In the File Listener form. In the New form. 3. on the Properties tab. Service Class. 172 . identify the location of the files. you use the Record Type field to indicate which processing definition to use for records of each type. Then click New. specify selection criteria with the Source Name Mask field. Remember that Process Commander needs read and write access to the directory you specify. and then complete the following steps: From the Integration page.Note that if the files contain multiple records and records of different types need to be processed differently. Specify the file service rule that the listener routes the files to in the Service Package. if you enter “*.) 1. enter a descriptive name for the listener. If files of various types are located in the directory and the listener should not call the service to process all of them.

Use the Reporting section if you want to keep a record of the results from the file service processing. For example.If the file listener and service must run as an authenticated requestor. 7. On the Process tab. 173 . in seconds. 5. Specify the page and property where the information is located in the Source Page Name and Source Property fields. 6. perhaps you’d like to keep a record of the IDs of the work object created from the processed files. specify the credential of a valid operator in the User ID and Password fields. specify how frequently the listener should check the directory for files.

it creates subdirectories like these in the directory it is monitoring: Ø Test the File Service When you finish creating the file service and you have started the new listener. 3. Click in the List of Available Listeners. Open the file service rule. Do not continue to the next task until you see a success message similar to this one: 8. Save the listener. On the Error tab. and click Start. Select Run > Trace Open Rule. Then go to the Listener Management page. Ø Start the Listener Open the System Management application (Tools > System Management) and select the node on which the file listener should run. and then return to the Properties tab. test the configuration as follows. When the listener starts. 2. Put a file in the input directory and wait for the listener to wake up and check the directory. 1. Watch the Tracer as it adds new rows of information. 174 . specify how many times the file listener and service should attempt to process the same file if there are processing errors and what to do with files that cannot be processed. Click Test Connectivity. 9. select the listener you just created. 4.Optional.

xml file (enabled by default) 3. However. and whether listeners start If desired. 1. Files and folders The listener creates three folders (subdirectories) within the original input directory: Work — Copies of input files. When — Controlled by the initServices/initFile setting in the prconfig. 175 . Ø Examine the results and verify that the file service worked the way you expected it to. The original file is deleted to prevent double processing by this or other listeners. Whether — Controlled by the Blocked check box on the Properties tab of this form. Report — Files with an RPT file type. output reports created by Service File rule processing. Locate the initServices/initFile element and set the associated value to false. you can use the System Management application to start and stop specific listeners on specific nodes. May also contain input files for which processing failed. 2. The listener is a data instance. when.5. and where the listeners can run: 1. 3. Three settings affect how Email Listener requestors run. a requestor based on this listener needs access to the RuleSet and version that contains the referenced Service File rule. when the listeners start. Completed — Input files for which all processing has completed successfully. Thereafter. you can edit the prconfig. 2.xml file to prevent file listener from starting when the system starts (on an eligible server node). Where — Controlled by the Startup Option property on the Properties tab of this form. so it has no associated RuleSet or Version. Ø Where. to process an input file. They control whether the listeners can run.

Controlling when listeners start Settings in the prconfig.xml file control when file listeners start. Node based startup — The listener is started only on specified nodes. Run on all nodes — The listener is run on all nodes — all servers in a cluster. 1. edit this file to add or update the initFile element within the initServices section: <env name="initServices/initFile" value="true"/> If this entry is not present in the file or the value is not "true. 2." or "yes. If this box is cleared. Select the Remote Logging check box on the Service File form for each Service File rule you want to debug. Server based startup — The listener is started on a specified number of nodes on specific servers within the cluster. Start the listener using the System Management application. Ø Using remote logging to debug listeners The remote logging feature is often helpful when debugging file listeners. Controlling where listeners run The options listed in the Startup Options property on the on the Properties tab determine where the listener starts.Controlling whether listeners start The Blocked check box on the Properties tab determines whether the listener requestors defined by this File Listener data instance start. You can also stop and restart them using the Listener Management menu item of the System Management application. identify a workstation to receive logging output and a TCP/IP port (port 8887 by convention). 3. To set up remote logging: 1. If the Blocked box is selected. these listeners start when Process Commander starts (on eligible nodes). The following options are available. 176 . To start unblocked file listeners when Process Commander starts. 2." you can start unblocked file listeners only from the System Management application. they do not start when a Process Commander node starts and you cannot start them in the System Management application until you clear the Blocked option and save the listener instance. On the Properties tab. 3." "y.

create a data base b. IOResourceManager could not find reference to parent file” This error appears even though the file listener processed the file successfully. Set the LoggingLevel parameter to InfoForced and the Message parameter to: Contents of page:\n" + myStepPage.ResourceException: Failed to create new file.ear file).Exception: Caught exception while executing Interaction Function.lang. 1. you can re-deploy the application in the web tier (prweb. flow action etc?) a. except for 5. Solution: You can ignore this error as it has no impact on file listener or overall Process Commander processing. assign. Rule-Connect-SQL is used for? (choose 2) a. when Process Commander is deployed in the Enterprise tier (prweb. Services b. Add a single row d. Activity d. Connectors c. Add multiple rows 2. Data-Admin-DB-Name c. If you want to eliminate this message.Debugging To include the clipboard results of service file processing in the Pega log. Both 177 . PRPC has the ability to access data from an external database using: a.lang. javax.Exception after file listener processing Symptom When processing a file with file listener.getXML()).x versions.resource. temporarily add the Log-Message method at an appropriate place in the service activity. all the above 3. delete a data base c.4+.war). Rule-Connect-SQL b. What do you need to connect to an external database (activity. Failed to create PRFile: java. Ø Troubleshooting: java. This error occurs in all 5. the following error message appears in Log file: 1.

SOAP and JSR-94 are protocols that can be used with: a. Both d. Rule-Service-Package 6. Neither 5. SOAP is a protocol that can be used with: a. config.d. Services b. Connectors c. With the Process Commander application acting as the client and the external system acts as the server.jar 7. Services b. which must be edited? a. The container that holds all the components of a service is of which class: a. _____________ is defined as programmatic components that implement an interface that is defined by an external system. c. prconfig. Both a and b d. ANS: Connectors 8. Rule-Admin-Services d. Data-Service-Requestor b.jar.xml d. Neither a or b 178 . resources. To prevent the file listener from starting when the PRPC system starts. Neither 4. COM. Connectors c. CORBA.xml b. Data-Admin-ServicePackage c. prresources.

Implementation and Performance Tools 179 .12.

You can also check for browser compatibility of visual elements. Using the Application Preflight tool Ø Use the Application Preflight tool to list each rule in an application that contains a warning message. Browser compatibility report 7. use the Application Preflight tool before you lock a RuleSet version. Eliminating high priority warning conditions before putting the rules into production is strongly recommended. Download and high priority warnings 2. To start the tool we need to select Application > Preflight to start the Application Preflight tool. a list view that retrieves embedded properties) or by violating data integrity (for example. Ø After Clicking the Preflight tool the following window will appear and there we can select the type of warnings and reports which we want to see. because the uppermost row of the table is used at runtime. However. Ø For example. They can degrade system reliability by slowing performance (for instance. Warning messages suggest that the rule is at variance with guardrails and other best practices. which corresponds to the pr_index_warnings database table. the conflict may indicate that the rule was not entered correctly. an activity that uses the Commit method incorrectly). The Application Preflight tool summarizes these warnings. 1. but still be marked with a warning ( ). Ø Performance and DataIntegrity warning types are considered to be high priority. a decision table rule may contain two rows that conflict — give a different result for the same inputs. Warnings appear only when a rule is saved in a V4. Ø We can perform the preflight check at any time during development. All warnings by rule type 3.2SP6 or later system. It consists of the following items. A rule in your application may work correctly and save without errors. Percent of rules with warnings by rule type 5. Performance warnings by rule type 4. As a best practice. These checks encourage good design and implementation practice. You can save the decision table rule and execute it within your application. Warnings are instances of the Index-Warning class. Research each warning message.Preflight Tool Ø The Application Preflight tool reports the results of several checks on the rules in the currently selected application. as codified in the guardrails and elsewhere. Pie chart of warnings by severity 6. Rules saved in earlier versions and not yet resaved in a newer system do not include warnings. Accessibility report 180 . and other conflicting rows are ignored.

Ø If we Click Download High Priority Warnings. Click Download to obtain a list report of high priority warnings for the RuleSets in your current access group and download it as an Excel spreadsheet. You can change the rule type range in the display using the slider widget at the top of the chart. Click Open to download the file and open it in Excel. the Download warnings for <your application> dialog appears. The File Download dialog appears. Ø The all warnings by rule type display the number of rule instances for each rule type that contains a warning. 181 .

Ø Click the open icon ( ) next to the RuleSet Name field. Click a Rule Type name in the summary for a list of the rules with warnings. 182 . the number of rule instances that do and do not have warnings.Ø The summary report specifies. Click the Run button ( ) to generate the report. Select one or more RuleSets from the list (only RuleSets that contain warnings are included). Click Apply. for each rule type. Click a list item to open the rule form.

183 . The summary and Criteria functionality are the same as described above for the All Warnings by Rule Type report. Hover your cursor over each section of the chart to display number of warnings at each level and the percentage each level represents of the total.Ø Displays a bar chart and summary report of rule instances that have warnings. The summary and Criteria functionality are the same as described above for the All Warnings by Rule Type report. Level one signifies a warning that is most likely to compromise expected processing behavior. The chart shows the number of rules within each rule set as a percentage of all the rules in the RuleSet. Ø Displays a pie chart and summary report of total warnings by severity level (four levels).

You can pause and resume processing. 2. tracking the execution of rules. The Tracer tool provides full debugging facilities. services. You can start the rule with the Run toolbar tool ( ). activities. and declarative rules. and watch variables. Including stepby-step execution. view or set the value of watch variables. Select Run > Tracer to trace your current session and Thread. Type the keyboard shortcut CTRL + T. not just your own session. 184 . You can view trace events for any requestor connected to your server node. parse rules. 3. and drill down to step-by-step details. the Tracer tool to debug flows. breakpoints. Select Run > Trace Open Rule when a service rule or activity rule is open in the n workspace. Ø How to start the Tracer tool? 1.Tracer Ø The Tracer is a tool that monitors an individual requestor session.

Options Set or change breakpoints. Breakpoints Watch Save Set or change watch variables Save Tracer output on the workstation as an Excel CSV or XML file.Ø The following are the controls in the Tracer tool Function Button Choose a requestor session other than your own. Connection Select which RuleSets. Wait a few seconds until the Tracer connects. Page 185 of 224 . and events are to be traced. Erase the displayed events. rules.

You can set a higher value and this requires additional workstation memory. See Tracer — Adjusting the buffer size. or after a breakpoint Continue event. How to view or download the Pega Log? Ø Select Tools > Log Files to view or download the current Pega log from the server to your workstation. Pause Resume processing after a Pause button click. you can change the name or path of the Pega log for a node by modifying the prlogging. the system first writes log output to a memory buffer that is 8 kilobytes in size. they write lines to a common Pega log file.xml settings. By default.Clear Pause the session being traced at the next possible moment. depending on volume. The prlogging.log. to reduce the demand on system resources. As a result.xml file contains settings that can cause the system to create a new Pega log daily or on a periodic basis. the Tracer displays the 500 most recent trace lines. depending on prconfig.xml file. Ø In an activity. Save Save the Tracer results in the current window into a text file in Comma-Separated-Values format or as a more detailed XML file. Ø If two or more Process Commander servers are installed in a single application server instance. rather than only at startup. (This operation is available only on user workstations that have installed the PegaClientSupport ActiveX control. The Alert log contains only alerts and supports performance-related monitoring. Appears only after a pause.log" /> Page 186 of 224 . use the Log-Message method to add a message to the Pega log.) Ø By default. You can open and print the saved CSV file with Microsoft Excel. the contents on the disk log file may not yet contain output written minutes ago or even in some cases hours ago. In this example the log file name starts with PEGABLUE: <param name="FileNamePattern" value="C:\LOGS\PEGABLUE-'yyyy-MMM-dd'. where the date portion of the name indicates the date the application server was recently started (on the current node). If this is not desirable. The log file is usually named PegaRULES-YYYY-MMM-DD. Pega Logs and alert Ø Pega Log contains messages created since the server was most recently started.

Alert message description: The browser interaction time has exceeded the specified threshold (in milliseconds). You can use PLA results to identify. browser). request: http://sdevrulesb3:9081/prweb/PRServlet/ksjNgaBVLyUBsr9UytBwWg%5B%5B* /!Developer?pyActivity=WBSave 2) Quantity of data received by database query exceeds limit: This alert is triggered when a query to the PegaRULES database loads into memory a quantity of data (bytes) that exceeds a per-interaction threshold (interactionByteThreshold). and so on. consolidate and summarize Process Commander logs of all three types — Pega log (also known as the system log or console log). or scalability. which represents the system event that generated the alert." Ø The PegaRULES Log Analyzer (PLA) is a Java program that can parse. Page 187 of 224 . and help remediate issues that may affect performance. and JVM. the type of requestor (for instance. Ø Each performance alert message is named "PEGAnnnn" where nnnn is the message ID.Ø During application processing. The security alert log is usually named PegaRULES-ALERTSECURITY-YYYY-MMM-DD log. Alert message description: Number of bytes received from the database has exceeded per-interaction threshold (bytes). Monitoring this database activity helps you recognize when queries are inefficiently designed or when data is being loaded indiscriminately. The message describes the event and contains other information such as the value that exceeded the threshold. The performance alert log is usually named PegaRULES-ALERT-YYYY-MMM-DD log. stability. Ø Security alerts are generated in the security alert log when security to a Process Commander web node server is at risk. Example of message text HTTP interaction has exceeded the elapsed time "alert" threshold of 1000 ms: 2066852 ms. Process Commander writes to the performance alert log a sequence of text entries called alert messages that identify mainly performance-related issues or errors. These alerts are named "SECUnnnn. The alert logs contain the following alerts. 1) HTTP interaction time exceeds limit: This alert is generated when the elapsed time for an HTTP interaction time exceeds the threshold setting. the activity or stream that triggered the alert. Alert log. This alert can take the form of a warning or an error. diagnose.

Maximum bytes: 100 Actual bytes: 600 3) PegaRULES engine started: This alert message occurs each time the PegaRULES engine starts successfully.xml file is a control file for the Process Commander logging facility. and RuleSet version. Refactoring tools Ø We can use the Refactor Rules tool to move rules to a different Applies To class. and operates similarly to that facility. you can move them all into class YourCo-Mortgage-East. For example. After selecting the class in your Application Explorer.xml on each node to control the contents of the server console output and Pega log files. RuleSet.has 200 applicable rules — 200 rules which apply to that class — in RuleSet version MyCo:03-04-07. The message indicates that the PegaRULES engine started successfully. Page 188 of 224 . and when rule: <category name="com. The logging facility is based in part on the log4j facility (v1. Entries in the prlogging.Agent"> <priority value="info"/> </category> <category name="Rule_Obj_Activity"> Log4j Ø Process Commander includes a central file named prlogging.com.1+. model. activity. In a development environment.14) from the Apache Software Foundation.engine. By editing the prlogging.2.pegarules.pega. and the individual rules you want to move. the following settings cause INFO-level logging for every agent. if the work class MyCo-Mortgage-West. you specify the new class.xml file follow the syntax of Apache log4j xml configuration entries. RuleSet. Ø For example. This alert is included in V5.Example of message text (warning) The number of database bytes input for this interaction has exceeded the "warning" level for Requestor HF940FD8761E5A3A67F32F892CD68954B. You can temporarily override settings in this file using the Logging Level Settings tool. you can affect the format and level of detail in the log file as an aid to debugging. Ø The prlogging. or RuleSet version. Reason for alert: Process Commander System adds this alert when initialization completes. operator theDeveloper@pegasystems.context.xml file and incorporating appenders. The rules are saved to the target class and removed from the original class.and RuleSet version YourCo:01-01-01 with this tool. a modified version of the Apache log4j facility. due to developers restarting server nodes. this alert may appear many times in an Alert log.

Rules with no Applies To key part are not affected by this tool 5. and RuleSet Version as an existing rule. right-click on the class that contains the rules. Only rules that have an Applies To key part matching the single source class are moved. The Refactor Rules page displays the below screen and use this page to specify the criteria for the refactoring.Ø Prerequisites and limitations to move the Rules are as follows 1. Page 189 of 224 . other keys. The class must allow rules in the target RuleSet 4. 2. The rule to be moved must not have the same class. Rules that are checked out are not moved 3. and to select the rules you want to move. Ø How to start the tool? 1. From the Application Explorer. The RuleSet version or versions currently containing the rules to be copied must not be locked 2. Select Refactor from the context menu.

When the process completes. 5. the status of each rule will be displayed. 4. Use the Version dropdown to select the version of the selected RuleSet for the refactored rules. Use the Move items to . The class you select becomes the Applies To class for the rules after they are moved..Ø Steps to be followed to move the Rules 1.. The rules are saved to the target class and removed from the original class. Hover over the error status to display a tool-tip describing the problem. 1. and an 'X' indicates an error. 3. A check mark indicates success. . dropdown to select the RuleSet to contain the rules after they are moved. From the list of applicable rules. 2. Page 190 of 224 . When your criteria are correct. 6. select the checkbox next to each rule that you want to refactor or select the checkbox at the top of the column next to Rule Type to select all the rules. Use the Same them into RuleSet . . click Save As to begin the refactoring. dropdown to select the destination class.

13. Reporting Page 191 of 224 .

ü Monitor Processes reports provide information about the open (unresolved) work objects being processed by one application. and work object history.base classes. They show counts of the work grouped by status. and how long it takes operator to complete that action. They list assignments that are past their goals and deadlines. and so on. Data-. they compare the number of open items today with the number a week ago. This category includes two rule types — list view rules and summary view rules. or System.Reports: Ø Rule types in the Reports category define reports that support the Monitor Activity workspace. History-. assignments. The Main categories in this slice are ü Monitor Assignments reports gather and present information about the open assignments in one application (work pool). Ø Reports on assignments and work objects operate as in the Monitor Activity workspace of the WorkManager portal.These reports can also show you the contents of work lists and workbaskets. Ø Developers can define reports on any concrete class derived from the Assign-. and the number of work objects that were created in a specific time period. The data included in these reports is system-wide – the data does not depend on the RuleSets or work pools you have access to. ü Analyze Quality reports summarize data about the resolved work objects from one application. Rule-. the operators who resolve the most items. Page 192 of 224 . ü Analyze Performance reports present performance information in terms of tasks – how often was each kind of flow action selected by assignment. and other facilities. and show assignments by organization. These reports display data about how many items were resolved according to the service level agreements configured for the process. Ø Operators with the SysAdmin role and using the Developer portal see two categories in addition to the four listed above: ü Rule Reports tally and list the rules in your system. the Explorer tools. Log-. reflecting only the assignments and work objects in one currently selected work pool. Ø Managers can define reports in four categories. Index-. and so on. Ø In Monitor activity slice you can have the contents of reports and charts you can access in this area. Managers who create reports using the Report Wizard also indirectly create rules of these types. covering work objects. Ø Any developer can create and maintain these two rule types.

click the Create Custom Report button on the toolbar of the appropriate category. Ø Both developers and managers can create and update list view rules. Application developers may determine a need to report on instances of classes that inherit from the Database class. Users can personalize list view reports easily and interact with them. List View: Ø A list view rule. The following report is a workbasket list. To open the Monitor Activity page. and provides a toolbar with three buttons for each category: ü To see all the reports from a category. If you have access to more than one application. be sure to select the application you are interested in before running the report.class as the Applies To key part support the Monitor Process Assignments group. ü To see a list of your custom reports. an operator’s work list is a report of this type. ü To start the Report Wizard.ü Data Reports. There are no standard data reports. defines a report. click the Custom Reports button on the toolbar of the appropriate category. Reports and the Report Wizard Ø The Monitor Activity page in the Developer or Work Manager portals provides access to the standard reports and the Report Wizard. Ø In an activity. Ø Three sets of standard list view rules support the Monitor Activity workspace: ü Several standard list view rules with an Assign. ü Several standard list view reports with Work. click the Monitor Activity slice in the home page. Ø List reports display lists of data that match selection criteria. an instance of the Rule-Obj-ListView rule type. Ø Most reports display data from a single application (work pool). the Obj-List-View can execute a list view rule to provide searching and sorting with no display.as the Applies To key part that report on open (unresolved) work objects support the Monitor Process group of reports Page 193 of 224 . Ø The Monitory Activity page lists a subset of the standard reports. For example. click the Browse button on the toolbar in that section. organized by category.

ü

Several standard list view reports with History-Work- as the Applies To key
part support the Analyze Process Performance group of reports.

Summary view:
Ø Summaries present the data that match selection criteria as an aggregate – that is,
summarized lists that are organized by data point. This report shows open work,
summarized by work status.

Ø To drill down to the individual records, expand the section in the summary report.
For example, a click on the Status: New category in the preceding example makes
the report display a list of those work objects in a separate window.

Page 194 of 224

Ø Interactive charts display the data from a summary report as a pie, bar, column,
area, or line chart. For information about creating charts.
Ø Reports are implemented through list view rules and summary view rules, which
the Report Wizard can generate for you. If you have a system administrator access
role, you can share the reports you create with other users and embed links to them
on the Monitor Activity page.

Report Wizard:
Ø The Report Wizard presents a series of forms that prompt you to enter the
information it needs to define a report — selection criteria and which fields to
display.
Ø Work objects, assignments, rules, and data classes have a set of standard
properties whose values are stored both in the blob and in separate columns.
Ø These properties — work status, create operator, goal time, for example — are
said to be "exposed" and they are what you use as selection criteria for your
reports.
Ø Because reports can select records based only the values of exposed properties, the
application developers considered your reporting needs while planning and
implementing the data design for your applications.
Ø If you determine that you need additional properties to use for selection criteria,
consider the following guidelines:
ü To expose single value, non-embedded properties, you can directly change the
schema of the existing pc_work tables or other storage tables by adding new
columns for the properties.
ü To expose complex or embedded properties, you must use declarative
indexing.
ü To see the columns of the tables in the PegaRULES database, use either the
View/Modify Database Schema Wizard or the database schema reference,
which is located on the installation media.

Creating a list report:
Ø From the Monitor Activity page, click the Create Custom Reports button in the
appropriate category.
Ø In the Select View Type form, select List View and click Next.

Page 195 of 224

Ø In the Data Source form, select the appropriate class or work type. The options
that appear depend on the category you started the Report Wizard from. If you
started it from Monitor Processes, the form displays work types.

Ø In the Define Criteria form, specify the selection criteria — that is, the fields and
their values — to use as the selection criteria for the records to include in the
report. The picture below shows the criteria for a report about open work.

Page 196 of 224

Ø When you are finished with the selection criteria, verify there are records that
match the criteria with the preview count link. Then click Next.

Ø In the Select Fields form, specify the fields you want displayed as columns in the
list report. For example:

Page 197 of 224

Page 198 of 224 .Ø In the End form. specify which buttons to display when an operator generates this report. and then click Next.

name and describe the list view rule that holds your report definition. examine the results. Ø In the Save form. Is this what you wanted? If not. When you are finished. Creating a summary report: Ø The Steps to be followed for creating the summary report are same as list report but the only change is here the reports are Group By. click << Back and fine-tune the display fields and/or selection criteria until you are satisfied. Ø The wizard saves the report as a list view rule and displays the Delegate View form. The Purpose field holds the report name and the Title field holds the Short Description.Ø In the Preview form. Then click Save. Page 199 of 224 . click Save View.

Ø In the Group By form. division. for a report about open work objects. specify how you want the data summarized. For example. Page 200 of 224 . you could specify that the data should be organized by organization unit. and organization.

Page 201 of 224 . specify which buttons to display when an operator generates this report. and then click Next. click Next without selecting the chart option Ø In the End form.Ø Summary list reports offer the person running the report to drill down to the individual records. Ø In the Chart form. In the Drill Down form. specify the fields you want displayed as columns in the lists that show the individual records.

What are the slices available in developer portal (select multiple answers) a. Rule-Obj-SummaryView 2. While we are using List report which of the options is not available to Developer? a. Fields d. Questions: 1. known as----------. Cases and Content b. Rule-Obj-Report b. 5. The first step in the Report Wizard is to: (a) Indicate source of the data for the report (b) Select the report layout (c) Create the SQL to get the data 3. Monitor Activity 4. User Interface c. Custom reports can be created as all the following rules except: a.Ø The wizard saves the report as a summary view rule and displays the Delegate View form. Dashboard d. Rule-Obj-ListView c. The home page of the Developer portal provides rapid access to six facilities. Drill down b. group by c. Criteria Page 202 of 224 .

Application Deployment Page 203 of 224 .14.

Deploying a product
You can create a ZIP archive file from a product rule for use in archive tools such as
the Import Archive tool, the Export Archive tool, or the Migration Wizard.
Different ways of Creating ZIP archives:
These related wizards work with product rules or ZIP files:
⇒ Product Migration Wizard — Creates a ZIP archive from a product or product
patch rule, migrates the archive, and imports it to one or more destination systems.
⇒ Package Work wizard — Creates a product rule that (when executed) includes
work objects, work object history, and work object attachments.
⇒ Purge/Archive Wizard — Removes resolved work objects from your system and
optionally saves them in a ZIP archive.
Basic Navigation:
Access these tools from the File menu. Select:
⇒ File > Export Archive — To copy rules and data instances from the PegaRULES
database to create a Zip archive file on the server.
⇒ File > Migrate Product — To create a product rule that packages work objects.
⇒ File > Import Archive — To upload rules and data instances in a previously
exported ZIP file into the PegaRULES database of the destination Process
Commander system.
About Product Rules
Complete the Product form to define a rule that identifies the RuleSets and versions,
rules and data objects, and other parts of an entire application. This rule supports the
migration and delivery of an application to other Process Commander systems.
After you complete and save a product rule, you can generate a ZIP file containing:
⇒ Rules in RuleSets and versions comprising a specific application.
⇒ Rules in selected RuleSets and versions.
⇒ Instances within any class. These can be filtered using a list view rule, or can be
individually selected from a list.
⇒ A post-installation Read Me display.
Product rules are instances of the Rule-Admin-Product class. They belong to the
SysAdmin category.
Procedure (Creating Product Rule):
1. Identify the RuleSets and Versions that comprise your product. As a best practice,
choose View > Rules > All Checkouts to list all rules checked out. Confirm that
none of the rules in these RuleSets are checked out and being worked on. Errors

Page 204 of 224

are reported if you create a ZIP archive at time when any of the rules designated
for it are checked out.
2. Although not required, you may want to review these RuleSet Version rules to
confirm that each RuleSet version is locked. (RuleSet Version Form – Locking –
Enable the Lock this Version?)
3. Create a product rule by selecting Application > New > Rule > SysAdmin >
Product from the menu.
4. Identify and Select the Application RuleSets
In the RuleSets to Include section, enter the RuleSets and the appropriate RuleSet
versions. Order the RuleSets in the list as they would appear on a RuleSet hierarchy as
shown in this example:

5. Identify the Application Data
Identify the data classes and instances that you are exporting, including all the data
classes that are part of your application. The classes may include instances for the
organization structure, security (access groups), connections to databases, external
systems, and other Process Commander system-related instances. Consider carefully
any dependencies among data instances or between data instances and your rules.
During import of the ZIP archive on the destination system, data instances that are
already present are not overwritten unless you specify that they should be. The
following provides a categorized checklist of data classes as you build your product
rule.
Access and Portal Gadget Data Classes
⇒ Data-Admin-AuthService — The authorization Service AuthService is specified
in the Web.xml file.
⇒ Data-Admin-Operator-ID — Operator IDs if applicable
⇒ Data-Admin-Operator-AccessGroup — These should be organized by the
specialized types of users of the system that have unique roles, portals, and access
to applications.

Page 205 of 224

⇒ System-User-MyRules Instances
Organization Data Classes
⇒ Data-Admin-Organization — Always set to “Your org name”
⇒ Data-Admin-OrgDivision — The Divisions with your company
⇒ Data-Admin-OrgUnit —Set to “Agency” or the internal department
⇒ Data-Admin-Workgroup — Work group name
⇒ Data-Admin-Workbasket — Workbasket name should identify the function it is
serving
Services/Connectors Data Classes
⇒ Data-Admin-ServicePackage — Always reference the appropriate service name
⇒ Data-Admin-Connect-EmailListener
⇒ Data-Admin-Connect-EmailServer
⇒ Data-Admin-Connect-FileListener
⇒ Data-Admin-Connect-JCAAAdaper
⇒ Data-Admin-Connect-JMSListener
⇒ Data-Admin-Connect-JMSProducerModel
⇒ Data-Admin-Connect-JNDIServer
⇒ Data-Admin-Connect-MQListener
⇒ Data-Admin-Connect-MQServer
⇒ Data-Admin-EmailAccount
Mapping Data Classes
The following classes control where instances of a class are stored. Since many
applications depend on database tables and class groups, it is a best practice to always
include them:
⇒ Data-Admin-DB-Name
⇒ Data-Admin-DB-ClassGroup
⇒ Data-Admin-DB-Table
Other Application Data Classes
Display Data Instances (not shown above that inherit from Data-)
Note: Some concrete Data- classes contain information that is valid only on a
single Process Commander system, or only on one node of a single system. For
example, the system creates a Data-Agent-Queue record automatically on each
node, and the Node ID is part of the key. Listeners and similar data instances
(Data-Admin-Connect-* ) contain port numbers, computer names, and passwords.
Do not include instances of these Data- classes in a product ZIP archive unless
you have carefully confirmed that they are valid on the target system.
5. Select the Application Data (optional: using When Rule)
To ensure that you include the requisite data objects for your application you can
use either when rules or query data instances from data classes.

Page 206 of 224

6. When the product rule form is complete, save it.
7. At any time after you save this rule, click Create Zip File to start the assembly of
a Zip archive. Enter a file name (with no file type). Processing may take several
minutes to complete. Choose a file name that is valid for both the destination
server and the current server; they may be hosted on different Windows or UNIX
platforms. Many special characters are allowed, but you can't include an equals
sign character (=) in the file name.
8. The system places the Zip archive in the ServiceExport directory. Right-click to
download the file to your workstation or a network drive.
9. To confirm correct operation or review errors, open the newest instance of the LogPegaRULESMove class.

Page 207 of 224

all rules in a full RuleSet. ⇒ Don't create a ZIP archive at time when any of the rules designated for the archive are checked out. or all rules and data instances defined in a product rule or patch rule.About Export Rule/Data Complete this form on a source Process Commander system. the one that contains the rules to be extracted. Neither the original version nor the checked-out version of the rule is included in the ZIP archive Export Archive form 1. Select an export mode Select to determine the scope of the contents of the ZIP file: By RuleSet/Version To create a ZIP archive containing all rules in a RuleSet and Version (or all versions). By Product To create a ZIP archive containing rules and data defined by an existing product rule (Rule-Admin-Product rule type). By Patch To create a ZIP archive containing rules and data defined by an existing product page rules (Rule-Admin-Product-Patch rule type) ZIP File on Server To copy a previously created ZIP file from the Process Commander server to a local directory. An error is reported identifying each checked-out rule. You can copy all rules in a specific RuleSet and version. Page 208 of 224 .

If you selected By Product. complete these two fields to identify the two key parts of an existing product or patch rule. select a RuleSet from those on your RuleSet list for the RuleSet field. they may be hosted on different Windows or UNIX platforms.ZIP" suffix is Page 209 of 224 . File Name 1. The ". or All Versions. Use a file name that is valid for both the destination server and the current server.If you selected By RuleSet/Version. or By Patch. Enter a file name for your Zip file in the File Name field. Select a single version for that RuleSet. The second key part (Version) of product and patch rule types is not necessarily related to RuleSet Versions. Complete the RuleSet Version field.

Click Create ZIP File . the Zip file created link provides access to the new file.) 6. neither the checked-out copy of the rule nor the checked-in rule is included in the ZIP file created. click the Zip file created link. A progress bar shows the count of rules extracted. 3. Click Close. Many special characters are allowed in the file name. Each such rule is noted as an error. Page 210 of 224 . The system displays the progress of the extraction. 2. Choose Save in the pop-up window. which may require one to several minutes. click the Total Number of Errors link in the lower right corner of the display form to see the error messages. You can print this for later analysis. Note: ⇒ If the RuleSet versions you select contain any checked-out rules. ⇒ Although Process Commander does not restrict the number of records or size of the ZIP file. If errors are reported. 5. but you can't include spaces or an equals sign character (=) in the file name. When the export operation completes. (You can download the file later using the ZIP File on Server option.optional. 4. typically placed in the ServiceExport subdirectory of the server. some vendor ZIP utilities limit the file size to 2 gigabytes. To save the file now to a local directly.

a prompt appears. This is an intentional design restriction on the HTTP file copy facility. Select: Zip File on Server Local Zip File if the ZIP file has already been placed in the ServiceExport directory if the ZIP file is on your local area network only 2. ⇒ Using this facility.About Import Archive wizard 1. not a limit on the rule import processing. or click Browse . ⇒ If you attempt to upload a ZIP file when the ServiceExport directory already contains a file of that name. select it. In the File Name field. For larger Page 211 of 224 . Navigation through “Import Archive” 1. Click to confirm that you want to overwrite the existing file. by default. you can't upload a ZIP file using this facility that is larger than 25 MB. and click Upload file . Navigate to the local directory that contains the ZIP file. type in the full path and name of the ZIP file to be uploaded. Completing the Form — Local ZIP file Complete the Select Import Mode field.

Page 212 of 224 .xml file. use File Transfer Protocol (FTP) or another means to place the file into the ServiceExport directory.files. 3. Alternatively. you can set a higher (or lower) upload limit on your system by changing the value for the Initialization/MaximumFileUploadSizeMB parameter in the prconfig. Completing the form — Zip File On Server Click to select one file in the boxed text area.

2. The wizard displays a listing of the classes in the archive and allows you to specify the names of classes to replace the top-level and Data. This tool supports merging RuleSets developed by Pegasystems or others into your PegaRULES database. Navigation through “Refactor on Import” You can use the Refactor on Import wizard to rename classes in a RuleSet archive or product archive as it is imported. Select the name of the file you want to import. Starting the wizard Select File > Import > Refactor on Import to start the wizard.jar or . Step 1: Upload A File The file must be a Pegasystems archive ZIP or JAR file as created in Process Commander by the Export Archive tool. Step 2: Select Import Archive Use this page to select the archive you want to import. or in the Rulebase Utilities application (prdbutil. or the Product or Patch rule forms.zip file. and click Next. This allows you to integrate the imported class structure into the existing class hierarchy on your system. the Product Package wizard. Page 213 of 224 .jar or *. the Purge/Archive wizard. You specify the . The form lists all the archives currently uploaded to the Process Commander server ServiceExport directory.zip file containing a Process Commander archive.classes for rules contained in the *.war) by the Export Process Commander Application Instances utility.

Step 3: Provide Refactor Parameter Page 214 of 224 . click Back and use the Upload form to copy the file to the Process Commander server.If you do not see the name of the file you want to import.

Step 5: Verify Classes This page displays the changes that will be made to the classes and RuleSets. the tool will provide the refactor parameters used in that import as the default values for the current import. click Back to reset the parameters or Cancel to exit from the wizard. If there is a previous import of this product. specify the New Class Names and optionally specify New RuleSet Names that you want to apply to each class or RuleSet as they are imported.This page lists the top-level classes and RuleSets in the import archive in the left column. Step 4: Display & Refactor a) Rules That Will be Changed Page 215 of 224 . You only need to confirm that the changes are still valid. the Refactor on Import tool looks for a previous import of the same Rule-Admin-Product name. When you have confirmed that the changes are correct. If the import archive contains a product rule. If the changes are not correct. In the right column. click Next to continue. click Next. When the changes are specified correctly. You cannot use a class name or RuleSet name that already exists in the system.

⇒ Modifying the configuration of a purge/archive agent dataset (change work types and work object age) Scheduling wizard: Select Application > Purge/Archive > Schedule when you are: ⇒ Creating a purge/archive process schedule for an agent activity configuration (created in the Configuration wizard) ⇒ Reviewing the history of purge/archive activity and modifications to the agent work object ⇒ Modifying the schedule information for a purge/archive configuration ⇒ Removing the schedule for a purge/archive configuration Page 216 of 224 . Purging and archiving old work objects and their related history and attachment records helps maintain system performance by reducing database-processing demands. work object data volume can grow to a size where hundreds of megabytes of database storage is required. The Purge/Archive wizards enable you to use an agent to automatically delete old work object data from the respective tables and/or stores them in ZIP archive files. Two wizards comprise the Purge/Archive wizard: Configuration wizard: Select Application > Purge/Archive > Configure when you are: ⇒ Creating and configuring a purge/archive agent dataset and defining the age of work objects you want to purge/archive.b) Select Rules to be changed c) Results About the Purge/Archive wizards In a production application.

or scalability. use the Log-Message method to add a message to the Pega log. exceptions (with their stack trace statements). Alert log. You can use PLA results to identify. The Pega log can contain messages created by your activities as well as messages created by standard rules The JVM garbage collection (GC) log provides insight into how a java application makes use of memory. What is the PegaRULES Log Analyzer tool and how does it work? The PegaRULES Log Analyzer (PLA) tool is a Web application that consolidates and summarizes three types of logs from individual JVM server nodes in your application system. diagnose. Developers and system administrators can use this information to quickly identify. and JVM. and remediate issues that may be degrading or compromising: Performance Stability Scalability The Alert log contains diagnostic messages that identify individual system events that exceed performance thresholds or failures. stability. The Pega (system) log gathers system errors. consolidate and summarize Process Commander logs of all three types — Pega log (also known as the system log or console log). Alert messages contain a set of field values that identify the alert. diagnose. When to use PLA? It is strongly recommended that you use PLA to test a new or reconfigured Process Commander application during UAT performance and stress testing and immediately Page 217 of 224 . debug statements. The log file is usually named PegaRULES-YYYY-MMM-DD. the conditions that caused it. § The Alert log contains only alerts and supports performance-related monitoring. The log data provide key information about operational and system health. Log messages In an activity. Each node on a Process Commander system produces two logs: § The Pega Log — also known as the console log or system log — contains messages created since the server was most recently started. where the date portion of the name indicates the date the application server was recently started (on the current node).log. and any other messages not specified as alerts. and the state of system when it occurred.Pega Log Files and Alerts The PegaRULES Log Analyzer (PLA) is a Java program that can parse. and help remediate issues that may affect performance.

stability and scaling issues are likely to occur. Viewing data in PLA The Home view in the PLA window (shown below) presents a table summarizing the benchmark metrics in each type of log. the log for January 23 there were 198 exceptions. you should investigate them to assess their impact on production and remedied if necessary. PLA signals issues that may grow into major operational problems if not addressed early. A GC time equal to or less than 2%.after deployment into a production environment. Here is an example of an alerts list report generated when you click Alerts: Page 218 of 224 . Regular monitoring during development and production helps ensure that your application is operating at its full potential. PEGA0017. PEGA0026. Operational checklist The results of a PLA import should indicate the following: Alert log System log Garbage collection log No critical alerts. PLA provides an efficient method for diagnosing the issues and locating their root causes. These are issues that need immediate remediation. or debugs. The next day there were 116 alerts of which 5 were critical. Given the large number of total alerts (which include non-critical alerts). These include PEGA0004. PEGA0019. If there are unusually large numbers of warning alerts. errors. Using view options located in the left panel enables you to display the data in summary and list reports for each log type. These are the phases when performance. they should be evaluated for their impact before being deemed acceptable for production No exceptions. and PEGA0028. For instance.

For example.You can sort the tables on almost any of the columns. you can sort the alert list shown above by Severity so that Critical alerts rise to the top of the report. trace list. and parameter page. Here is an example for a PEGA0028 alert: Page 219 of 224 . pega stack. From this view you can drill down into an alert to display the alert details including PAL data.

Clicking an Excel button in the Home view table extracts and loads the data for that date and automatically starts Excel .Database operation time exceeds limit DB Time PEGA0008 .Commit operation time exceeds limit DB Commit Time PEGA0003 .HTTP interaction time exceeds limit Browser Time PEGA0002 .Outbound mapping time exceeds limit Service Mapping Time PEGA0013 .Data parsing time exceeds limit Service Parse Time PEGA0016 . Here is an example of the critical alert data as it is displayed in a spreadsheet: Pre-configured Excel PivotTables provide multi-dimensional views of the data so that you can add or remove fields to suit your requirements.Agent processing disabled Agent Disabled PEGA0011 .Category PEGA0001 .Quantity of data received by database query exceeds limit DB Bytes Read PEGA0005 .Total request time exceeds limit Service Total Time PEGA0012 .Exporting PLA data to Excel spreadsheets You can easily export the PLA data to an Excel spreadsheet (assuming it is installed on your workstation) for further diagnosis and information-sharing among development team members.Cache reduced to target size Cache Reduced Page 220 of 224 .Inbound mapping time exceeds limit Service Interaction Time PEGA0015 .PegaRULES engine failed to start PRPC Failed Start PEGA0010 .Update operation time exceeds limit DB Time PEGA0007 . The spreadsheet is organized into summary and list report pages similar to those used in the PLA interface.Rollback operation time exceeds limit DB Rollback Time PEGA0004 .PegaRULES engine started PRPC Started PEGA0009 .Activity interaction time exceeds limit Service Activity Time PEGA0014 .Query time exceeds limit DB Time PEGA0006 . Performance alerts Alert .

Rule cache has been disabled Rule Cache Disabled PEGA0023 .Time to connect to database exceeds limit Acquire DB Connection PEGA0027 .The number of declare indexes from a single interaction exceeds a threshold Declare Index PEGA0035 -A Page List property has a number of elements that exceed a threshold Clipboard List Size Security alerts Alert .The number of requestors for the system exceeds limit Requestor Limit PEGA0031 .PEGA0017 .HTML stream size exceeds limit HTML Stream Size PEGA0030 .Number of rows exceeds database list limit DB List Rows PEGA0028 .Database query length has exceeded a specified threshold DB Query Length PEGA0034 .Rule cache has been enabled Rule Cache Enabled PEGA0024 .GC cannot reclaim memory from memory pools Memory Pool Collection PEGA0029 .Clipboard memory for declarative pages exceeds limit Declarative Page Memory PEGA0022 .Rule change invalidated the specified threshold of entries in the Rule Assembly cache Invalidated Rules PEGA0033 .Unexpected properties received in HTTP request Security SECU0002 .Total connect interaction time exceeds limit Connect Total Time PEGA0021 .Generated stream overwritten and not sent to client Stream Overwritten PEGA0032 .Attempt to execute a rule failed in web node environment Security SECU0004 .Attempt to run a stream from URL failed in web node environment Security Page 221 of 224 .Time to load declarative network time exceeds limit Loading Declarative Network PEGA0025 .Cache exceeds limit Cache Force Reduced PEGA0018 .Category SECU0001 .Performing list with blob due to non-exposed columns Reading Blob Need Columns PEGA0026 .Long-running requestor detected Long Requestor Time PEGA0020 .Number of PRThreads exceeds limit PRThreads Limit PEGA0019 .XML received in post data for web node requestor Security SECU0003 .

To change the format and level of detail in the log file as an aid to debugging.err.log file 6. c.message. The generic name for any PRPC solution. log4j.Question & Answers: 1. system. Export Rules b. logfactor5. Skim Rules 3. A PRPC solution that is only used to support the business processes of a single company 8. Not Available 4. the best practice is to mark the RuleSet as: (select all that apply): a. Blocked d.err log files b. What is the purpose of locking a RuleSet version? a.out log files c. Describe the difference between the “Move Rules” tools and the features in instances of RuleAdmin-Product? Page 222 of 224 . A PRPC product is: a. To restrict the creation of new RuleSet versions for the RuleSet 5. Export Rules b. Java exceptions are written to: a. exception. Locked c.xml c.out files d. To activate the export feature c.out and system. To restrict the access of rules belonging to the RuleSet version b.xml b. The best way to move a RuleSet from the development environment into the productionenvironment is to use (select all that apply): a. Load Rules c. When delivering a PRPC Product. jvm_log. the following file should be edited: a. PegaRULES.xml 7. Load Rules c. b. To restrict new instances being added to the RuleSet version d. The best way to create a new Major RuleSet version is to use: a. Final b. Skim Rules 2. A PRPC solution that can support the business processes of multiple companies. java.

Also we can consider only one ruleset at a time Page 223 of 224 . we can consider more than one ruleset at a time Move Rules: we can add rules only to zip file.Rule-Admin-Product: we can add rules and data classes also. In addition.

ALL THE BEST Page 224 of 224 .