pega online training +91-9908107432

55
168 1) We can provide Flow-Wise Local Action in Design Tab of the Flow. This Local Flow action will be available in all the Assignments in the Flow. 2) List Rule A list rule is an instance of the Rule-Obj-List rule type. A list defines an ordered array of property names from the class. Lists are referenced only in activities, using the Obj-List method. A list rule determines which properties of a specified class are copied into embedded pages when the Obj-List method runs. When only a fraction of all the properties of an object are needed on the clipboard, using a list rule improves processing efficiency by reducing memory and disk demand. When we create a Data Table out of a Data Class, A List rule is created inside our Data Class (Normally with Name EditList). It Contains the List of properties in the Data Class. 3) Modifying a Data Table If we modify our Data Class by adding a new property, It’ll not reflect in the Data Table. We need to modify the List Rule (EditList) in our Data Class. Then Open the Data table with Data Table wizard, the new property will appear in the Data table. 4) Lock mechanism between cover and covered work objects. If the covered objects are locked, the Cover object is also locked. Locked means only one requestor can access it at a time. The Activity that maintains this lock is Determine Lock String in Work- class of Pega-Procom rule-set.

Upload: ashock-roy

Post on 16-Apr-2017

1.269 views

Category:

Technology


9 download

TRANSCRIPT

Page 1: Pega Online Training +91-9908107432

168

1) We can provide Flow-Wise Local Action in Design Tab of the Flow.

This Local Flow action will be available in all the Assignments in the Flow.

2) List Rule

A list rule is an instance of the Rule-Obj-List rule type.

A list defines an ordered array of property names from the class. Lists are referenced only inactivities, using the Obj-List method.

A list rule determines which properties of a specified class are copied into embedded pages when theObj-List method runs. When only a fraction of all the properties of an object are needed on theclipboard, using a list rule improves processing efficiency by reducing memory and disk demand.When we create a Data Table out of a Data Class, A List rule is created inside our Data Class(Normally with Name EditList). It Contains the List of properties in the Data Class.

3) Modifying a Data Table

If we modify our Data Class by adding a new property, It’ll not reflect in the Data Table.

We need to modify the List Rule (EditList) in our Data Class. Then Open the Data table with DataTable wizard, the new property will appear in the Data table.

4) Lock mechanism between cover and covered work objects.

If the covered objects are locked, the Cover object is also locked. Locked means only one requestorcan access it at a time. The Activity that maintains this lock is Determine Lock String in Work- class ofPega-Procom rule-set.

Page 2: Pega Online Training +91-9908107432

169

5) How cover work object is resolved automatically.Few important things to note here.

The covered work objects can be of different work classes (types), but Cover and Covered workobjects should be a part of same workpool.

Locking: By default, locking a covered work object also locks the cover work object. This isdesirable because the cover work object may contain totals, balances, counts, or other derivedvalues that require single-threaded access.

Page Names: By convention, a cover work object occupies a clipboard page namedpyCoverPage; the covered work object is on a page named pyWorkPage. Many standard activitiesdepend on these naming conventions.

Ticket: The standard ticket rule Work-Cover-.AllCoveredResolved alerts a cover flow that all themember work objects are resolved. If your application is to incorporate this constraint, include thisticket in the flow rule or rules for the cover work object.

Flow actions: The standard local flow actions Work-.AddToCover, Work-.AddCovered, and Work-.RemoveFromCover allow user management of cover contents.

Harness rules: The Work-.NewCovered harness rule supports entry of a new cover and covermembers.

Process Engine API: Activities Work-.AddCoveredWork, Work-.AddCovered, and others supportoperations with covers.

Folders:

A work object folder is a work object in a concrete class that inherits from the Work-Folder- class. Afolder object holds a collection of one or more other work objects (which themselves may be basicwork objects, other folders, or covers) providing access for analysis and reporting. By convention, thework object ID of folders has the format F-99999.

Covers and folders are two built-in facilities that allow your application to support collections of workobjects. In contrast to covers:

One work object may be associated with multiple folders, but only with one cover.

Members of a folder can belong to different work types, which need not belong all in a singlework pool.

The relationships between folder work objects and their contents may be many-to-many

These standard rules support folders:

Work-.AddToFolder flow action — Add a work object to a folder

Work-.RemoveFromFolder flow actions — Remove a work object from a folder

Work-Folder-.Review harness — Show folder work object, includes the View Folder Contentsbutton ( ) to access contents

Work-Folder-.Perform harness — Update folder work object and contents

Page 3: Pega Online Training +91-9908107432

170

Work-Folder-.ReviewforExplore harness — Split-screen presentation

Work-Folder-.FolderContents section — Show folder contents

Work-Folder-.NewWork flow — Create a folder

6) Who decides the pyWorkPage as default page for new W.O ?

Standard Activity: createWorkPage in Work- class of Pega-Procom rule-set.

On the Requestor page of the clipboard, the property pxRequestor.pxCurrentWorkPoolholds the value of a user's current work pool.

SYSTEM PULSEThe Pega-RULES agent performs periodic processing known as a system pulse.

This processing synchronizes the contents of the in-memory rule cache on that node with rules storedin the PegaRULES database. The pulse helps each node coordinate processing and synchronizeoperations, including the contents of the rule cache.

In a multinode clustered system, a rule updated by a user on node North is retained in the rule cacheon node North, and also committed to the PegaRULES database. For a brief interval, users at anothernode in the cluster — for example South — may have a stale copy of that rule in the rule cache on theSouth server node. When pulse processing for South completes, the South rule cache has the currentrule.Between pulses, updated rules are noted in the pr_sys_updatescache table, corresponding to theSystem-Updates-Cache class.

The Agent Schedule data instance named Pega-RULES.<node> defines the pulse interval. Thedefault interval is 60 seconds.

REQUESTOR

A requestor is the process and data associated with a user (guest or authenticated) of yourProcess Commander system, or the processing and data associated with a request into your systemstarted by an outside system, such as a Web Applications Server or an Active Server Page on a Website.

Each HTTP response that presents the Process Commander log-in form results in the creation of aguest requestor, one that is authenticated and has only access to the RuleSets and Versions in thePegaRULES:Unauthenticated access group. To avoid tying up system resources, the default time-outperiod for idle guest requestors is a minute.

Information about each type of requestors your system supports is defined in instances of the Data-Admin-Requestor class.

Important facts about the context of each requestor are contained in the pxRequestor page of theclipboard for that (human or electronic) requestor.

Page 4: Pega Online Training +91-9908107432

171

A requestor ID is a system-generated hash identifier that uniquely identifies a requestor session. Thisis sometimes called the connection ID.

The first letter of the requestor ID identifies the requestor type:

H — Interactive, browser-based requestor

B — Background requestors, such as agents

A — Listeners and services

P — Portlet

When installed, Process Commander contains four requestor types. Typically, these are all youneed.

Name Purpose

APP For listeners and for access to Process Commander from an external client system, such as through a servicerequest (other than JSR-168 requests using Rule-Service-Portlet rules). Requestor sessions using this requestortype instance have requestor IDs that start with the letter A.

BATCH Background processing, such as performed by, listeners, services, agents, and daemons. Requestor sessionsusing this instance have a requestor ID that starts with the letter B. As initially installed, all BATCH requestors haveaccess to the PegaRULES:Agents access group.

BROWSER For HTTP or HTTPS access to the Process Commander portal using Microsoft's Internet Explorer Web browser on aWindows workstation, or from a browser presenting a Pega Composite Application. Requestor sessions using thisinstance have a requestor ID that starts with the letter H.

As initially installed, all BROWSER requestors have access to the PegaRULES:Unauthenticated access group.

PORTAL For HTTP access as a portlet in conjunction with Service Portlet rules. Requestor sessions using this instance havea requestor ID that starts with the letter P.

Agents can broadly be classified into 2 categories. Task Driven and Schedule Driven.

To avoid overwriting an existing page

You may want the activity to check whether a page with a certain name exists before you open a new page.

In the activity step's precondition, enter the following:

= @PageExists("myPage", tools)

where myPage is the name of the clipboard page.

$NONE AND OTHER CONCEPTS

- $NONE - While creating a new page using Page-New, we may sometimes give $NONE inNewClass. This creates a classless page.

Page 5: Pega Online Training +91-9908107432

172

- $CLASS – While we create a pageList or pageGroup, we give a concrete class name. But we canalso give two things there. A abstract class (But we need to provide the concrete class later inactivity using this property) or $CLASS keyword, here also we have to give a concrete class later(but it can be any class). E.g Code-Pega-list.pxResults uses this keyword.

SHARING PAGES BETWEEN ACTIVITIESThe calling activity can provide input parameters to the called activity, or it can share its ownparameter page with the called activity, an approach known as call-by-reference.

The preferred means for passing a single page from one activity to another is to identify the page inthe Step Page field of the calling activity. The called activity receives this page as its primary page.

If you need to pass more than one page, use the indirect page mechanism:

In the called activity, identify an indirect page by the keyword prompt as the Mode field in thePages & Classes tab.

In steps of the called activity, refer to these pages using the syntax promptpagename. Nocorresponding entry is required in the Parameters tab.

In the calling activity, pass the additional pages as arguments to the Call instruction thatinvokes the second activity.

Page 6: Pega Online Training +91-9908107432

173

The value supplied for the prompt page must not be blank and must evaluate to a clipboardpage name (top-level or embedded). The keywords primary, top, local, and parent are not validwith prompt pages; the param keyword is valid.

Indirect pages provide a generic way to pass pages not only between activities, but also to otherrule types such as list view rules and summary view rules.

Note: The clipboard page created will be only DataPage not promptDataPage.

Problem Flows and Connection Problem FlowFlow problems are error conditions that a flow execution encounter as it executes that

prevents it from continuing. For example, the flow may reference a rule that is not found at runtime.This is considered a flow problems (or a problem flow), and can arise from many different sources.

The system halts the progress of that flow execution and starts a flow named Work-.FlowProblems.This flow normally notifies a user named [email protected], where org.com is the organization ofthe user (requestor) who encountered the problem, and creates an assignment. Your application canoverride the standard activity Work-.ToProblemFlowOperator to designate a different operator as therecipient of these flow problems.

If you can fix the problem through a change in the flow rule, by modifying a rule, or creating a newrule, the processing can resume.

Your organization can copy and override the FlowProblems flow and the ToProblemFlowOperatorrouting activity to meet your needs.

Through an Integrator task — represented by the shape in the Visio diagram of a flow rule— a flow execution can call an external system such as a relational database, Enterprise JavaBean,or Web service. The activity referenced in the Integrator shape references a connector rule (forexample, a Connect SOAP rule) that controls the communication and data exchange with the externalsystem.

For various reasons, a tested connector interface may fail or time out, causing work object processingin the flow rule to halt. To facilitate detection and analysis or repair of such events, you can designatein your application a flow rule for connector exceptions. Failure of an Integrator task causes thedesignated flow rule to start. The flow rule can send out e-mail correspondence, attempt retries, skipover the integrated step, or send an assignment to someone.

DevelopmentSee Using Error Handler Flows for Connectors, a document on the Integration area of the PegaDeveloper Network, for detailed development instructions, summarized here.

To use this facility, specify the second key part — Flow Type — of a flow rule in the ErrorHandler Flow field on a connector rule form. Process Commander uses the Applies To key part of thecalling flow as the first key part when retrieving the exception flow rule.

If you leave the Error Handler Flow field blank, a connector problem causes the flow executionto fail and is reported only as Java exceptions in the Pega log of type:com.pega.pegarules.pub.services.ConnectorException.

Page 7: Pega Online Training +91-9908107432

174

The standard flow rule Work-.ConnectionProblem provides a default approach to exception handling.

When you accept the default, a connector exception causes the following processing:

1. The original flow execution is paused. The ConnectionProblem flow is called with sevenparameters:

Operator ID of a user to notify (not used)

The Applies To and Flow Type key parts of the original flow execution

The name of the shape in which the problem arose

A ConnectorException type

An error message

An assignment type (Workbasket or Worklist), indicating where to place a resultingassignment.

2. For all the exception types other than ResourceUnavailable, processing continues in aFlowProblems flow. See Working with the Flows with Problems report.

3. If the exception type is ResourceUnavailable, up to five retries are attempted, at intervalsdetermined by a service level rule.

4. A developer accessing the workbasket can cancel the assignment (ending both theConnectionProblem flow and the original flow) or attempt to restart the original flow, perhapsafter taking corrective action.

Logging:Each node on a Process Commander system produces two logs:

The Pega Log — also known as the console log or system log — contains messages createdsince the server was most recently started. The log file is usually named PegaRULES-YYYY-MMM-DD.log, where the date portion of the name indicates the date the application server wasrecently started (on the current node).

The Alert log contains only alerts and supports performance-related monitoring.

Viewing or downloading the Pega log

Select Tools > Log Files to view or download the current Pega log from the server to your workstation.

Listeners operate as Java threads rather than as full requestors, and so cannot be accessed with theTracer. Accordingly, use logs to debug listeners.

Follow the steps in the following procedures to configure a listener or service requestor to send logmessages to your workstation. Then, using a modified version of the LogFactor5 log analysis module,you can review detailed or filtered messages. (LogFactor5 was an open source project of the ApacheSoftware Foundation.)

Install the log4j Remote Logging package

To install remote logging client software on your workstation:

1. Select Tools > System Management Application to start the System Management application.

2. On the System Management application window, select a node. Select the Logging andTracing > Remote Logging menu item.

Page 8: Pega Online Training +91-9908107432

175

3. Click the link "here" in the sentence "To download log4j socket server click here." Thisdownload contains a licensed redistribution from the Apache Software Foundation.

4. Save the file to a local drive and extract its contents.

5. Note the directory that you extracted it to so you know where to locate thestartSocketServer.cmd file. This file starts the LogFactor5 window that displays the contents ofthe log.

6. Review Internet Explorer settings to confirm that your workstation has a Java 1.4.1 or laterJVM installed and enabled.

7. Create a Windows shortcut for the startSocketServer.cmd file and then place it on your desktop.You then can start LogFactor5 with a mouse click.

1) Adding Headers and Footers in a List View/Summary View

Under Format Tab of the reports. We define two sections for Header and Footer.

2) List-to-ListSummaryA List to List control on a work object form allows a user to make multipleselections from one list of candidates. In this example flow action from an autoinsurance application,, a user selects safety equipment from the left list, eachidentified by name, and clicks an arrow to add the selection to the right list. The right list identifieschosen safety equipment options; the left list contains all of the available options.

Additional controls (unless disabled when the rule is configured) allow the user to sort either list, toremove previous selections, to copy all or remove all selections. The user can make further changesuntil the user submits the flow action form.

Page 9: Pega Online Training +91-9908107432

176

The List to List control is supported by two Page List properties, one providing the list of source valuesand one providing the list of destination values. As a result, the output of a List to List operation is notan array of text values (such as can be stored in a Value List property), but an array of embeddedpages, identified by one visible text property such as a name.

This article presents a step-by-step procedure for adding a List to List control to a harness, section, orflow action form. For full details on all options, consult the Help system topic.

Suggested ApproachPreparationsIdentify or create these parts of the List-to-List control:

The source property, a Page List property of class Code-Pega-List.

An activity or other processing to populate the source property.

A Single Value property within each embedded page that identifies the page, for display

The target property, also a Page List property, typically part of the work object. (The embeddedpages of the target property are often of the same class as the embedded pages of the sourceproperty, but this is not a requirement.)

Properties that are needed in the target embedded pages.

The source property structure matches those produced by the Obj-Browse, Obj-List-View, and RDB-List methods, but your application can create the source property by any means.

Unlike the Dynamic Select control and AutoComplete control, the List to List control requires thesource property to be populated before the user sees the form containing the control.

Adding the controlTo add a List to List control to a flow action, harness, or section rule:

1. Open the rule form. Select List to List from the Advanced controlgroup.

2. Drag the List to List icon to a cell on the form, and drop it. The cellmay change size to accommodate the large control; you can adjustthe size later.

3. Click the magnifying glass icon at the upper right of the cell to openthe Cell Properties panel.

4. No changes are needed on the Field tab of the CellProperties panel. On the Presentation tab, confirm that theFormat is ListToList.

5. Click the magnifying glass to the right of the Format field toopen the Params pop-up window.

6. Complete the Params window. Identify the source property,the target property, and the text property to appear in thesource lists. Include double-quotes around property referencesif they contain a period character.

Optionally, enter two captions, to appear above the two lists.

Page 10: Pega Online Training +91-9908107432

177

Select Copy all properties if, when a user selects an item, the system is to copy all propertieson the embedded source page, creating a page with identical properties on a new embedded pagewith the target property. Alternatively, you can define a from-to mapping and control which propertiesare copied.

By default, the left list displays at most 200 values, even if the source property contains morethan 200 embedded pages. By default, there is no limit on the number of pages that a user can add tothe target property. You can change either limit through parameter settings.

7. Click Save to close the Params window.

8. Optionally, complete other values on the Presentation tab and Conditions tab of the Cell Propertiespanel.

9. Click Apply to apply the changes you made to the Cell Properties panel and Parameters window.Click OK to close the Cell Properties panel.

10. Save the rule form.

11. Test. Ensure that your application populates the source property before the work object form (orflow action form) appears.

A sample activityThis one-step activity creates a page SafetyEquipment of class Code-Pega-List. (Identify this page onthe Pages & Classes tab of the Activity form.)

Page 11: Pega Online Training +91-9908107432

178

When executed, the clipboard contains a page for each piece of safety equipment.

After a user submits the flow action form, Process Commander copies pages from the source propertyto the target page. Six selections appear as embedded pages to property pyWorkPage.Entrants.

3) Adding attachments to work objects.

Because many applications prompt users to attach files such as correspondence to work objects,there are several standard flow actions that create work object attachments. For example, thestandard Work-.AddAttachments flow action enables users to upload a single file and select acategory for it while Work-.AddMultipleAttachments enables user to select multiple files and choose acategory for each.

Page 12: Pega Online Training +91-9908107432

179

Using Activities to attach a file.

Summary of activity stepsActivities that create the attachment objects and link them to work objects include the following generalsteps:

1. Create a page for the work object attachment (Data-WorkAttach-File class).2. Put the file on the attachment page.3. Save the attachment page (Obj-Save method).4. Create a link object (Link-Attachment class) that connects the attachment to the work object

with the Link-Objects method.

4) How to create activities that run multiple connectors in parallelBy default, a connector takes control of the requestor session until it returns a response to the

connector activity. However, when the RunInParallel parameter is selected, the connector runs as a

child requester and the activity, the parent requestor, retains control of the session. The activity can

then call another connector with a subsequent task to accomplish, and the second connector does not

have to wait for the first connector to return a response before it can start its task.

Connector activities that run connectors in parallel should do the following:

1. Because each connector needs its own copy of the step page, create a separate step page for

each connector, even if they share the same applies to class. Each child requestor (connector)

makes a copy of the step page and then returns the results in its copy. Therefore, if the activity

runs each connector on the same step page, the results from the connector that finishes last

overwrite the results from the other connectors.

2. For each connector that runs in parallel, invoke the appropriate Connect-* method with the

RunInParallel parameter selected. (For SOAP connectors, use Connect-SOAP; for JMS

connectors, use Connect-JMS; and so on.)

3. After the last Connect-* step, invoke the Connect-Wait method. This method tells Process

Commander how long to wait for all the child requestors (connectors) to return their responses.

This step should use a transition to check the step status before continuing to the next step.

4. After the Connect-Wait step, invoke the Page-Merge-Into method to copy the returned valuesfrom all the step pages into the appropriate page.

Page 13: Pega Online Training +91-9908107432

180

5) How to include an image or link as a report columnHow to include an image orlink as a report column

Create or edit a list or summary view rule. For a list view, open the Display Fields tab. For a summary view, open the DrillDown tab and

choose Detailed View. Locate the property that you would like to display as an image or with a link. In the HTML Property field of the property row, choose reporting_image or reporting_link from

the dropdown list.

Click the Display Formats icon ( ) located to the right of the HTML Property field.

In the Value fields, enter the

ImageSourceName (reporting_image HTML property only) - name and location of the image

file to display in the report

ActivityName - the name of the activity that is called when the image or link is clicked.

ActivityClassName - the class name of the activity

Target - the name of the window. In addition, the following values can be used:

_blank - the HTML is loaded into a new, unnamed window

_parent - the HTML is loaded into the current frame's parent. If the frame has noparent, this value acts like the value "_self"

_self - the current document is replaced with the specified HTML

_top - the HTML replaces any framesets that may be loaded. If there are no framesetsdefined, this value acts like the value "_self"

Note: You can specify the size and other characteristics of the display using the remaining parameters

Page 14: Pega Online Training +91-9908107432

181

.

6) How to rename Rule-Set?

Select Tools > Rule Management > Copy / Move Ruleset. Select the rule-set and give new name and save.

7) JavaScript and Client-Side validation in Pega.You can make use of client-side scripts as follows::

1. Create and text a JavaScript script. Include the validation that you want to do.

2. Create a text file rule (Rule-File-Text rule type) with "js" as the final key part. Upload theJavaScript file to the rule. Having the body of the script in a versioned rule file is beneficial.

3. On the Harness rule form, update the Scripts and Styles tab to specify the text file rulecontaining the script.

4. Update the HTML Property rule associated with the specific field. Attach an event such asOnChange or OnSubmit.

8) Rule Availability

FinalUse the Availability value of Final to signal that this rule is the final version and should not bechanged. If the Availability of a rule is set to Final, that means that you may use this version of theRule, but you cannot save it into the same RuleSet, or a different RuleSet, unless you change itsname. Normally, if you wish to change a rule in a locked RuleSet version (the activity “Display”), youwould perform a “Save As” of that Rule into your application RuleSet, with the same name, and makeyour changes. If the rule is marked Final, however, you may only do a “Save As” and copy it with adifferent name (activity “DisplayInvoice”).

No/DraftWhen a rule is marked No/Draft, the system treats it as though it were not present at all; the systemignores the rule and uses other rules. The Not Available label applies to one rule only. When thesystem is gathering all the rules to consider for a rule resolution, any rule marked Not Available issimply discarded.

Page 15: Pega Online Training +91-9908107432

182

This availability is sometimes referred to as the “draft” availability, as it can be used to test “draft”rules before actually putting them into production. You can create a copy of a rule you wish tochange, make the change, and set availability to “No/Draft” in the main system, so the system willignore that rule. You can then check out the rule into your personal RuleSet and change theAvailability to “Yes” to test your change locally. This allows you to verify that the rule displays thebehavior you want, before setting the Availability of the changed rule to “Yes” for all users.

BlockedUnlike rules marked “No,” rules marked Blocked are still considered by rule resolution. If the

rule resolution process completes, and the one rule that is the final result of that process is markedBlocked, then the process returns “not found.”

You can think of Blocked as blocking not just the rule, but the process.

Blocked vs. NoWhen the system is determining which rule to use, the Availability values of BLOCKED vs. NO

will change what rule is chosen.

If there were two versions of the activity DISPLAY:

Acme-.DISPLAY AcmeCo:05-02

Acme-.DISPLAY AcmeCo:05-01

if the 05-02 version of the rule were set to NO, the system would use the 05-01 version. if the 05-02version of the rule were set to BLOCKED, the system would not use the 05-01 version, but wouldreturn “not found.”

WithdrawnOccasionally, you need to delete a rule from an application. If the incorrect rule is stored in anunlocked RuleSet version, you can easily delete it. However, if the application has been moved toother systems, however, or the rule is in a locked RuleSet version, it is no longer possible to changeor delete that rule. Instead, you can withdraw the rule.

1) Where we define the WorkIDPrefix and Status of New W.O?

A: In the pyDefault Model of Work- class. We can override it in our Application Details Tab.

Here we can define different WorkIDPrefix for different class.

2) Pega Portals

PRWeb : Used for Development Purpose. We have developer/Manager/User portal here.

PRDBUtil: Supports installation and upgrade processing.

It has few functions like

Page 16: Pega Online Training +91-9908107432

183

- Testing the data base connections configured in Appln Server.- Upload Application files- Setup organization- Download rule utility logs- Complete the Pega Installation process- Configure JMX settings etc.

PRsysmgmt: For SMA.

Organization: Can have Access group and Rule set.Division: Only Access Group.

3) Rule Resolution Takes pattern inheritance as precedence over direct inheritance. Model chainingdoes the opposite.

4) pzPVStream: The only one column in pc_work by default which stores work object as BLOB.

5) pc_assignment_worklist/workbasket: The table where W.O assignments related info are stored.

Name of BRE in Pega: PegaRules.

Process Commander: It’s an application that provides a highly interactive graphical developmentand execution environment with dashboards for process monitoring also.

3 tier Architecture for Pega.

Client Tier (Dev/Man Portal) -> Appln Server Tier (Rule cache, BRE, DB Roles, Data Dictionary) ->DB Tier.

Declarative rules are fired automatically -> by Agents.

6) If we create a new page by Page-New method, we can provide a model to initialize the propertiesof the method.

7) pzInsKey: Combination of Class name + primary key

8) SendEmailNotificationWithAttachment: Activity that send email with attachment. We have to

give attachment page name in parameter.

Difference between Decision Tree/Table.

- Decision table can be edited in excel.

- Decision trees can have nested if and test on multiple properties.

- Trees can call other decision rules. Table can call only tables.

Application Server1) Creating a JDBC Connection

Page 17: Pega Online Training +91-9908107432

184

Go to Admin Console of Websphere. Give username and password.There is a link under JDBC – Data Sources. You can add a new data source here.

In Tomcat, we have datasource description in context.xml file. We can use them to create resources inweb.xml

The standard function callActivity( ) in the Pega-RULES Utilities library calls an activity, but returnsonly void, not a value result. You can execute an activity in an expression, but only for its side effects.Identify the primary page, the activity, and the parameter page. For example:

@Pega-RULES:Utilities.callActivity(pyWorkPage,MyActivity, tools.getParameterPage());

Agile Software Methodologies

Agile software development is a software development methodologies based on iterative andincremental development, where requirements and solutions evolve through collaborationbetween self-organizing, cross-functional teams.It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative

approach, and encourages rapid and flexible response to change.

Twelve principles underlie the Agile Manifesto, including:[7]

Customer satisfaction by rapid delivery of useful software

Welcome changing requirements, even late in development

Working software is delivered frequently (weeks rather than months)

Working software is the principal measure of progress

Sustainable development, able to maintain a constant pace

Page 18: Pega Online Training +91-9908107432

185

Close, daily co-operation between business people and developers

Face-to-face conversation is the best form of communication (co-location)

Projects are built around motivated individuals, who should be trusted

Continuous attention to technical excellence and good design

Simplicity

Self-organizing teams

Regular adaptation to changing circumstances

SCRUM MethodologiesScrum is an iterative, incremental framework for project management often seen in agile softwaredevelopment, a type of software engineering.

Although the Scrum approach was originally suggested for managing product development projects,its use has focused on the management of software development projects, and it can be used to runsoftware maintenance teams or as a general project/program management approach.

CharacteristicsScrum is a process skeleton that contains sets of practices and predefined roles. The main roles inScrum are[7]:

1. the “ScrumMaster”, who maintains the processes (typically in lieu of a project manager)

2. the “Product Owner”, who represents the stakeholders and the business (Client’s Voice)

3. the “Team”, a cross-functional group who do the actual analysis, design, implementation,testing, etc.

Daily Scrum Meeting. Scrum of Scrums meeting. Story points.

About Direct Capture of ObjectivesDirect Capture of Objectives (DCO) is a suite of features that enable project team members to

directly capture, organize and manage business specifications inside of Process Commander andassociate them with the specific parts of the application that are implementing them.

Designed as an enabling technology suite, it can be used collaboratively and productively by projectteams that include members of the business analyst, user, developer, quality assurance and ITcommunities of your organization. By removing redundancies and disconnects, it helps close gaps inthe development process by fostering a Build for Change mindset that encourages reuse ofapplication assets, automates common project activities, and generates on-demand, up to date,accurate project documents.

DCO is not a methodology in and of itself. It is an agile process that is adaptable to any size projectand can be used in conjunction with any implementation methodology. When applied consistently,DCO saves you time, effort, and budget dollars while improving and maintaining project andapplication quality.

The end result and benefit of using DCO is a clear 360 degree view of your Process Commanderapplication through a project life-cycle.

Page 19: Pega Online Training +91-9908107432

186

Direct Capture tools include:

Application Profiler — captures objectives, use cases, requirements, processes, interfaces,reports, correspondence, and case type relationships; estimates project sizings; documents thecollected information as an application profile document; jump starts application developmentby providing the information as input to the Application Accelerator.

Application Accelerator — jump starts the creation and extension of your application andautomates best practices for application design; consuming information from an applicationprofile, it creates organization and class structures, case type relationships, and draftprocesses and user interface elements so you can see the working application based on thecaptured information.

Application Document wizard — supports rapid and iterative documentation of the applicationas development progresses using your predefined templates and content settings.

Application Use Case — allows business users to describe at an atomic, granular level thesteps required to build an application in business language; stored as business rules andlinked to processes and other application components to provide development and testingdetail and traceability as development progresses.

Application Requirement — allows business users to describe capabilities that the applicationmust fulfill and define success criteria; stored as business rules and linked to other rules toprovide development and testing detail and traceability.

Rational Unified Process (RUP)Pegasystems implementation methodology is based on Rational Unified Process.

The focus is onproject management,

Page 20: Pega Online Training +91-9908107432

187

return on investment,conformance to best practices and compliance requirements,communication with stakeholders,creation of physical artifacts that help ensure project success.

Advantage of RUP.

- Develop software iteratively- Manage Requirements- Use Component based architecture- Visually model software- Verify the Quality- Control changes to software.

Pegasystems' methodology includes the followingphases:

Business Value Assessment phase — Assessreturn on investment, define success criteria,understand high-level requirements. Producesa project plan, scope document, and projectsizing estimate

Conception phase — Analyze the problemdomain, define requirements, establish ascalable architectural foundation, and identifyhigh-risk elements. Produces a requirementsdocument, a high-level design document, testplan, and deployment plan.

Elaboration phase — Design solutions tailored to the business requirements

Construction phase — Iterative development following a build order. Built the application to meetbusiness requirements.

Transition phase — Deploy, validate, test and use.

Typical Interview Questions by Pega PS for Medco Account

Technical Questions

1. What are the various phases in Pega SmartBPM methodology? -http://pdn.pega.com/ba_landing.asp - Go through both approach “Getting Started with PRPCUsing SmartBPM” & “Getting Started with PRPC Using Pega Scrum”.

The SmartBPM implementation methodology (v2) is used within Pegasystems own ProfessionalServices teams — and by partners and others — to organize and run application developmentprojects.

In contrast to many more prescriptive, rigid methodologies, the SmartBPM methodology is anadaptable process framework. The methodology is closest in approach to the popular RationalUnified Process (RUP), and is compatible with Unified Modeling Language (UML) approaches.

Page 21: Pega Online Training +91-9908107432

188

Flexibility allows the team to adapt the methodology to large and small projects. The processes can beright-sized to project needs. Experience shows that the SmartBPM methodology can be followedwithout conflicting with most organization's existing (post-1990, non-waterfall) methodologies andproject management approaches.

Large applications are subdivided into functional slivers of limited scope, to reduce risk and allowbenefits and return-on-investment to start earlier.

Benefits

The list of expected benefits from the methodology may be familiar — they are similar to those claimedby almost every methodology .

However, important differences in Pegasystems' approach help to realize these benefits:

Manage projects in a structured, repeatable fashion

Common terms and language used by all stakeholders

Support iterative, rapid application development

Generated documentation matches current implementation

Promote and encourage reuse

Promote and encourage compliance with industry standards

Manage project risks

Enabling toolsWizards and tools built into Process Commander directly support teams during each phase —

not just during the development (Construction) phase — of their projects.

By capturing even preliminary ideas about system objectives, system participants (actors),assumptions, interaction scenarios or use cases, Process Commander provides value and usefulfoundations very quickly. Information is saved in a single repository — a RuleSet — rather than indisparate formats based on Microsoft Word, Excel, Visio, and other general-purpose tools.

Since these early ideas naturally evolve and change, the internal Process Commanderrepresentation of them can be updated too, providing a project history and avoiding the need to switchtools when "real development" starts.

Page 22: Pega Online Training +91-9908107432

189

As suggested by the diagram, these features of Process Commander (V5.4+) can directly support themethodology:

The Application Profiler, recording application objectives, requirements, use cases and roles

The Application Document wizard

The Enterprise Application Accelerator

Auto testing facilities

The Project Explorer and Project Management Framework

Phases:The methodology identifies five major phases: Pre-inception, Inception, Elaboration,

Construction, and Transition. But as suggested by the diagram, these phases overlap both during asingle iterative development of each "slice" of the application, and they overlap because more thanone slice may be developed at once.

Page 23: Pega Online Training +91-9908107432

190

The Pre-Inception Phase

The Pre-Inception phase is primarily for knowledge transfer and education. The goal is to provide thebusiness participants with terminology that will assist with requirements gathering, objectivedetermination and scope definition.

The Inception Phase

During the Inception Phase the team defines the scope of the sliver being implemented. This phaseproduces three artifacts:

An Application Profile

A project sizing

A high-level project plan

These three deliverables help to define the scope, effort and timelines of the application. The tangibleresult of the Inception phase is an approved Application Proposal.

The Elaboration and Construction PhaseThe Elaboration/Construction phase is focused on the Direct Capture of objectives as well as iterativeconstruction tasks associated with requirements and use cases.

Direct Capture of Objectives (DCO) allows information to be entered once and reused many times —for planning, documentation, and testing. DCO can drastically reduce the effort and elapsed timeotherwise needed to keep documentation up to date.

During this phase, business users participate in periodic reviews of the application as it advances andgrows iteratively, identifying at the earliest moment any divergence in requirements and developmentefforts.

The Enterprise Application Accelerator, Auto Test features, Application Preflight tool, and Auto Testfacilities can be helpful during this phase.

Page 24: Pega Online Training +91-9908107432

191

This phase can be iterated rapidly, without advancing to the Transition phase. Progress and resultscan be assessed often, even biweekly.

The Transition Phase

The Transition phase is used to test and to ensure the quality of the application. Application qualityincludes:

System testing

Interface testing

Performance testing

User acceptance testing (UAT).

Page 25: Pega Online Training +91-9908107432

192

Go-Live

A Go-Live occurs when an application is moved — often just one sliver at a time — into a productionenvironment and business users begin using the application to perform real work.

2. What phases have you worked on in your previous projects? Inception, Elaboration,Construction etc. – Say all & think of some examples of what you did based on theunderstanding from above link.

3. What are the Guardrails in Pega? Mention the guardrails with an explanation of each, some ifnot all. – You can find this easily in PDN / Pega Help.

The Ten Guardrails to Success are design guidelines and recommended best practices for ProcessCommander implementations.

Suggested Approach

Following the fundamental principles promoted in the Ten Guardrails to Success leads to rules-basedapplications that are well designed, straightforward to maintain, and architected to Build forChange™. They are your keys to success with Process Commander.

1. Adopt an Iterative Approach

Define an initial project scope that can be delivered and provide business benefit within 60-90days from design to implementation.

Document five concrete use case scenarios up front and evaluate them at the end to calibratebenefits.

Use your scenarios as story boards and ensure that each delivers a measurable businessbenefit.

Page 26: Pega Online Training +91-9908107432

193

2. Establish a Robust Foundation Design your class structure complying with the recommended class pattern.

It should be understandable, be easy to extend, and utilize the standard work and data classesappropriately.

Use your organization entities as a starting pattern, and then proceed with class groups.

Lead with work objects. Create the class structure and “completed work” objects early.

Position rules correctly by class and/or RuleSet.

Actively use inheritance to prevent rule redundancy.

3. Do nothing that is Hard Use “out of the box” functionality as much as possible, especially in the initial project release.

Avoid creating custom HTML screens or adding buttons.

Always use the “Auto Generated HTML” feature for harness sections and flow actions.

Always use the standard rules, objects, and properties. Reporting, Urgency, Work Status, andother built-in behaviors rely on standard properties.

Never add a property to control typical work or for managing the status or timing of work.

4. Limit Custom Java

Avoid Java steps in activities when standard Process Commander rule types, library functions,or activity methods are available.

Reserve your valuable time and Java skills for implementing things that do not already exist.

5. Build for Change ™

Identify and define 10-100 specific rules that business users own and will maintain.

Activities should not be on this list. Use other rule types for business-maintained logic.

Page 27: Pega Online Training +91-9908107432

194

6. Design Intent-driven Processes

Your application control structure must consist of flows and declarative rules, calling activitiesonly as needed.

Use flow actions to prompt a user for input.

Present fewer than five connector flow actions for any individual assignment. If you need morethan that, you need to redesign the process.

Create activity rules that implement only a single purpose to maximize reuse.

7. Create Easy-to-Read Flows

Your flows must fit on one page and must not contain more than 15 SmartShapes (excludingRouters, Notify shapes and Connectors) per page.

If a flow has more than 15 SmartShapes:

o Create a subflow.

o Use parallel flows to perform additional functions

Page 28: Pega Online Training +91-9908107432

195

8. Monitor Performance Regularly

Evaluate and tune application performance at least weekly using Performance Analyzer (PAL)to check rule and activity efficiency.

Use PAL early to establish benchmarks. Compare these readings to follow on readings; correctapplication as required.

9. Calculate and Edit Declaratively, Not Procedurally Whenever the value of a property is calculated or validated, you must use declarative rules

wherever appropriate.

Create a Declare Expressions rule instead of using a Property-Set method in an activity.

Use a Declare Constraints rule instead of a Validation rule.

Page 29: Pega Online Training +91-9908107432

196

10. Keep Security Object-Oriented, Too

Your security design must be rule-based and role-driven based on who should have access toeach type of work.

Never code security controls in an activity.

Use the standard access roles that ship with Process Commander only as a starting point.

Use RuleSets to segment related work for the purpose of introducing rule changes to thebusiness, not as a security measure.

4. What are the basic Pega classes? Work-, Data- etc. – You can find this easily in PDN / PegaHelp.

A base class is one of twelve standard abstract classes that are immediately below the top class inthe hierarchy. This top class, known as the ultimate base class, is identified by the symbol@baseclass.

The three base classes of greatest interest to application developers are Data-, Assign- and Work-.The base classes are:

Base class DescriptionAssign- Assignment instances, each identifying a step in a workflow that requires human input or work by an

outside organization, person, or system.

Code- Classes that directly reference server program code. Pages belonging to classes derived from the Code-base class exist only temporarily in memory, and are not saved in the PegaRULES database.

Data- Parent class of concrete classes containing reference data, including data for system administration andsecurity.

DCOMSOffice- Reserved.

DocletGenerator- Reserved.

Embed- Defines the structure of pages embedded within other pages. Pages belonging to classes derived from theEmbed- base class cannot be renamed or directly saved.

Page 30: Pega Online Training +91-9908107432

197

History- Append-only instances record the change history of objects in another class.

Index- Secondary access keys defined to provide fast retrieval of other instances.

Link- Instances that record associations between two objects.

Log- Parent of concrete classes containing cumulative logs of important system-wide events.

PegaAccel- Parent of special classes that support the Application Accelerator tool.

Rule- Rule types, for defining applications.

System- Contains operational status information about the entire Process Commander system.

Work- Work objects, covers, and folders.

Custom classes that are immediate child classes of the ultimate base class are known as top-levelclasses. These are different from base classes.

5. Types of classes - Abstract and Concrete, explain about them. – You can find this easily inPDN / Pega Help.

An abstract class is a rule (an instance of the Rule-Obj-Class class) created to support thedefinition of rules, including other classes. Such rules can be inherited by subclasses of theabstract class. Rules with a class as a key part (such as properties, activities, flows, models,and so on) can apply to an abstract class.

In the Class Explorer display, a shape identifies an abstract class. A class that is not abstract is concrete. Unlike abstract classes, concrete classes can have

instances stored in the database. A selection on the Class rule form determines whether a newclass is abstract or concrete.

An abstract class can be a child — a subclass — of a higher abstract class. A dash or minus character (-) as the last character in the class name indicates an abstract

class. For example, the Work-Cover- class is an abstract class, while Work-Cover-General is aconcrete class

A concrete class can have instances stored in the database. In contrast, an abstract classcannot have any instances.

A selection on the Class form determines whether a class is concrete or abstract. On the ClassExplorer display, the shape identifies a concrete class.

For all but a few classes, a dash or minus sign (-) character as the last character in the classname indicates that the class is abstract and can contain other (abstract or concrete) classes.For example, the Rule- class and Work-Cover- class are abstract classes, while Work-Cover-General is a concrete class.

Concrete classes usually appear near or at the bottom (leaf nodes) of the class hierarchy, butmay appear anywhere below the top level.

Page 31: Pega Online Training +91-9908107432

198

6. Kinds of inheritance - Pattern/Direct. which takes precedence and how do you let Direct takeprecedence (by un-checking the checkbox in Class form) – You can find this easily in PDN /Pega Help.

Inheritance is a primary benefit of object oriented technology. Process Commander offers multipletypes of inheritance that can maximize reuse of your rules while allowing localized overriding asappropriate. Also called polymorphism, inheritance allows a rule created for one class (possiblyan abstract class) to be applied to other classes that inherit from it:

Process Commander provides two types of class inheritance, both of which allow rules of ancestorclasses to be inherited:

Directed inheritance — Allows you to name a parent class, choosing a name that's not relatedto the name of this class

Pattern inheritance — The system determines the name of the parent class is based on aninitial portion or substring of the name of the class. Segments of the name are delimited by adash (-) character.

Pattern inheritance:

During rule resolution, pattern inheritance causes a class to inherit rules first from classes thatmatch a prefix of the class name.

Select the Find by name first (Pattern)? check box on the Class rule form to instruct the systemto use pattern inheritance for this class.

The algorithm

For a class using pattern inheritance, the following is a simplified description of the rule resolutionalgorithm:

1) Search each class formed by repeatedly truncating the original class name, stopping if the neededrule is found.

2) If the pattern search finishes without finding a rule, go back to the original class and use directedinheritance to find the parent of the original class.

3) If the parent class identified in step 2 was searched during step 1, skip it and skip to step 5.

4) If the parent class was not previously searched, search it. Stop if the needed rule is found.

5) If not found, determine whether the parent class uses pattern inheritance. If so, repeat thisalgorithm, starting at step 1, with the parent class.

Otherwise, identify the parent of the parent. Continue at step

7. What kinds of Declarative rules used with some e.g. – You can find this easily in PDN / PegaHelp.

Allow for dynamic processing of property values

Do not need to be explicitly called

Declarative rules need / should not be referred from any rule. They are always in force

Page 32: Pega Online Training +91-9908107432

199

Declarative rules will be in force automatically and hence you need not call these rulesexplicitly

Types of Declarative Rules:

Constraints rules (Rule-Declare-Constraints)

Declare Expression rules (Rule-Declare-Expressions)

Declare Index rules (Rule-Declare-Index)

Declare OnChange rules (Rule-Declare-OnChange)

Declare Trigger rules (Rule-Declare-Trigger)

1)Constraints rules :

Create constraints rules to define and enforce comparison relationships among propertyvalues. Constraints rules can provide an automatic form of property validation every time theproperty's value is "touched", in addition to the validation provided by the property rule or othermeans.

The system evaluates constraints automatically each time a property identified in a constraints rule ischanged. This technique is known as forward chaining.

Where referencedNo other rules explicitly reference constraints rules. When you save a constraints rule, ProcessCommander enforces it immediately and thereafter. The system automatically adds a message to anyproperty that is present on the clipboard and fails a constraint

Delegation

After you complete initial development and testing, you can delegate selected constraints rules to linebusiness managers. The Constraints tab of the Constraints form provides managers with access tothe fields most often updated.

Provide bounds(limits) on the value that a property can hold. For example:

Property cannot be negative

Property cannot be greater than a certain value

Can target more than one property in a single constraints rule

2) Declare Expression rules:

Purpose

Use Declare Expression rules to define automatic computations of property values based onexpressions.

Page 33: Pega Online Training +91-9908107432

200

Don't confuse Declare Expression rules with simple expressions. Expressions — a syntax thatincludes constants, function calls, operators, and property references — are used in many situationsin addition to Declare Expression rules.

Forward chaining

Often, Process Commander recomputes target property values automatically each time any of theother input values in the expression change, or when a value for this property is accessed, changed,or using other criteria. This technique is known as forward chaining.

For example, you can declare that a property named Order.TotalPrice is always the sum of:

OrderLine(1).TotalPrice

OrderLine(2).TotalPrice

OrderLine(3).TotalPrice

and so on. You can also declare that OrderLine().TotalPrice is always equal to .Quantity multipliedby.UnitPrice.

Backward chaining

In an activity, the Property-Seek-Value method can access the computational relationships amongproperties in a Declare Expression rule to identify source values needed to compute a missingproperty value. This technique is known as backward chaining.

For example, consider a single Declare Expression rule defining Circumference as 3.1416 timesDiameter with Change Tracking set to Whenever used. This rule can be used in either forward-chaining or backward-chaining mode:

If step 3 of an activity causes the value of Diameter to be set, an updated value for theCircumference property is available at the start of step 4 (forward chaining).

If step 1 of another activity uses the Property-Seek-Value method with Circumference as thetarget, and no value for Circumference is found, the system seeks a value for Diameter(backward chaining).

DelegationAfter you complete initial development and testing, you can delegate selected Declare

Expression rules to line business managers. The Expressions tab of the form provides managersaccess to the fields most often updated.

** For example, we can declare a R-D-E for property called “Area” , so that whenever it’s value isaccessed from clipboard, it’s value is equal to the product of properties, Length and Width. Once theR-D-E is saved for the property “Area”, any change to a Length or Width value, regardless of how itoccurs, causes an immediate recomputation of the value of the Area property.

Page 34: Pega Online Training +91-9908107432

201

3) Declare OnChange rules:

Purpose

Create Declare OnChange rules to run an activity automatically at activity step boundaries(limitations)when the value of a specified property changes. This capability provides a form of automatic forwardchaining.

For example, a Declare OnChange rule can update a year-to-date counter property (an integer) totrack how many times a work object status changed in value. Another Declare OnChange rule cancompute the average dollar amount of work objects entered by a work group, in real time.

For example If you specify more than one property, they all must be on same page. For example, wecan create a declare onchange to call an activity that send a mail to employee when ever either HRAor Basic or SpecialAllowance are changed

Where referenced

No other rules explicitly reference Declare OnChange rules. After you save a Declare OnChange rule,Process Commander immediately thereafter runs it when and as needed

4) Rule-Declare-Index:

Declare Index rule are defined for defining criteria under which Process Commander

automatically maintains index instances for faster access. An index can improve search and

reporting access for properties that cannot be exposed as database columns because they are

embedded within an aggregate property.

8. Function alias. – You can find this easily in PDN / Pega Help.

Use an alias function rule to define prompting for a function rule for users who maintain decision rules.The alias rule provides an optional natural-language description and prompting that supports certainselection lists on decision rule forms.

Page 35: Pega Online Training +91-9908107432

202

Complete and test the function rule itself before defining a function alias rule that references it.

You cannot define an alias for a function rule that returns a complex Java type (that is, a type otherthan a Java.lang.String type or a primitive type such as int).

Where referenced

Alias function rules are useful for functions that managers or less technical developers may usefrequently in decision tree rule, when condition rules, Declare Expression rules, and constraints rules.

9. Utility functions and e.g. of where it is used .This was asked as an example of Reusabilityguardrail, question #2. - – You can find this easily in PDN / Pega Help.

http://pdn.pega.com/DevNet/PRPCv5/kb/25016.aspReusable functions are implemented asinstances of the Rule-Utility-Function rule type You can call these functions in expressionsand activities.Rule-Utility-Function instances, when generated into Java, are public static Java methodswhich are grouped into libraries (Rule-Utility-Library rule type).

10. Kinds of performance tools used. - http://pdn.pega.com/devnet/PRPCv5/kb/24219.asp

PAL:

Use the Performance tool to understand the system resources consumed by processing of a single requestorsession, or the SQL statements sent to the PegaRULES database by the requestor session.

Process Commander always accumulates cumulative resource statistics for the Performance tool. Use the toolto display these statistics, and to identify incremental resources (in the delta rows) consumed by yourprocessing. Because this feature displays existing data, its use does not degrade processing.

The Performance tool is sometimes known as PAL.

11. Question on how to copy rules from one ruleset to another? Mention the Ruleset maintenancewizard and specify how you do it. Have list views, get list of rules in each, check if any rules arechecked out etc. Please take a look at the steps in this wizard. (This question was asked inmost of his interviews) -> Check all the items under Tools -> Rule Maintenance

Copy a Version of a RuleSet to another RuleSet name

To copy the contents of a RuleSet version to another RuleSet name:

1. Select Tools > Rule Management > Copy/Move RuleSet.

a. Move from the left box to the central box the RuleSet version you want to copy (theRule Management wizard allows you to copy versions, but not full RuleSets). Select theCopy radio button.

Page 36: Pega Online Training +91-9908107432

203

b. On the right side of the form, specify the name and version of the RuleSet you wish tocopy to. Specify whether source rules are to overwrite any existing rules in the targetRuleSet.

c. Click Next. A review form appears. If all is as you want, click Next.d. When the process is complete a report will appear. You can review the list of rules that

were copied and those that were skipped. You can export this summary for furtherreview. When you are finished, click Done.

12. Can a work user access the clipboard and if so what can he/she see?

-> It’s based on the role / privilege. Find out the role / privilege associated for clipboard.

13. Data-Party classes? Gov, Div, Org etc. – You can find this easily in PDN / Pega Help.

Work party data classes

You can use data classes derived from the Data-Party class to organize yourrole and work party data into meaningful categories. Using sub-classes enablesyou to produce reports based on their classes. You can also associate eachclass with a model that defines the initial properties you want to include whenyou design the PartyDisplay section rule. The system is delivered with fivestandard Data-Party sub-classes as follows, which include example definitionsfor each:

Data-Party-Com — Business organizations

Page 37: Pega Online Training +91-9908107432

204

Data-Party-Gov — Government organizations

Data-Party-Operator— Process Commander users (who have Operator IDs)

Data-Party-Org — Nonprofit organizations

Data-Party-Person — Parties who are not Process Commander users

You can create your own sub-class and an associated model.

14. What is used for a non numeric subscript? Value group/page group – Go through the propertyrule details.

Value group/page group – Go through the property rule details.Page Group and Value Group members/properties are retrieved/identified by using non

numeric subscript called keysFor Example:Single property –, Page –, Value List –, Page List--, Value List—, Page Group –

Address()

Phone street

city Page

Zip

Address(1) Address(2)

Phone(1) street street Page

city city List

Phone(2) Zip Zip

Address(Home) Address(Work)

Phone(Home) street street Page

city city Group

Phone(Work) Zip Zip

Page 38: Pega Online Training +91-9908107432

205

15. Agent calls an activity to start a flow. There's an error and activity doesn't start, what could bethe possible reasons and how will you debug?

Check if the activity's 'Authenticate' checkbox has been checked. Agents areunauthenticated/guest users. Also check Pega logs.

16. Which frameworks have you worked on? CPM is used in this project.

17. Question on Smart Dispute how Q&A kind of questions have been done in SD?

18. Done any CTI integration? CTI will be used for a future phase.

19. What is REST? Protocol used in HTTP. Please read on general REST features.

REST stands for Representational State Transfer. (It is sometimes spelled "ReST".) It relies on astateless, client-server, cacheable communications protocol -- and in virtually all cases, the HTTPprotocol is used.

REST is an architecture style for designing networked applications. The idea is that, rather than usingcomplex mechanisms such as CORBA, RPC or SOAP to connect between machines, simple HTTP isused to make calls between machines.

In many ways, the World Wide Web itself, based on HTTP, can be viewed as a REST-basedarchitecture.

RESTful applications use HTTP requests to post data (create and/or update), read data (e.g., makequeries), and delete data. Thus, REST uses HTTP for all four CRUD (Create/Read/Update/Delete)operations.

REST is a lightweight alternative to mechanisms like RPC (Remote Procedure Calls) and WebServices (SOAP, WSDL, et al.). Later, we will see how much more simple REST is.

Despite being simple, REST is fully-featured; there's basically nothing you can do in WebServices that can't be done with a RESTful architecture.

REST is not a "standard". There will never be a W3C recommendataion for REST, for example. Andwhile there are REST programming frameworks, working with REST is so simple that you can often"roll your own" with standard library features in languages like Perl, Java, or C#.

2. REST as Lightweight Web ServicesAs a programming approach, REST is a lightweight alternative to Web Services and RPC.

Much like Web Services, a REST service is:

Platform-independent (you don't care if the server is Unix, the client is a Mac, or anything else),

Language-independent (C# can talk to Java, etc.),

Standards-based (runs on top of HTTP), and

Can easily be used in the presence of firewalls.

Like Web Services, REST offers no built-in security features, encryption, session management, QoSguarantees, etc. But also as with Web Services, these can be added by building on top of HTTP:

For security, username/password tokens are often used.

For encryption, REST can be used on top of HTTPS (secure sockets).

Page 39: Pega Online Training +91-9908107432

206

... etc.

One thing that is not part of a good REST design is cookies: The "ST" in "REST" stands for "StateTransfer", and indeed, in a good REST design operations are self-contained, and each requestcarries with it (transfers) all the information (state) that the server needs in order to complete it.

3. How Simple is REST?Let's take a simple web service as an example: querying a phonebook application for the details of agiven user. All we have is the user's ID.

Using Web Services and SOAP, the request would look something like this:

<?xml version="1.0"?><soap:Envelopexmlns:soap="http://www.w3.org/2001/12/soap-envelope"soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"><soap:body pb="http://www.acme.com/phonebook"><pb:GetUserDetails><pb:UserID>12345</pb:UserID>

</pb:GetUserDetails></soap:Body>

</soap:Envelope>

(The details are not important; this is just an example.) The entire shebang now has to be sent (usingan HTTP POST request) to the server. The result is probably an XML file, but it will be embedded, asthe "payload", inside a SOAP response envelope.

And with REST? The query will probably look like this:

http://www.acme.com/phonebook/UserDetails/12345

Note that this isn't the request body -- it's just a URL. This URL is sent to the server using a simplerGET request, and the HTTP reply is the raw result data -- not embedded inside anything, just the datayou need in a way you can directly use.

It's easy to see why Web Services are often used with libraries that create the SOAP/HTTPrequest and send it over, and then parse the SOAP response.

With REST, a simple network connection is all you need. You can even test the API directly,using your browser.

Still, REST libraries (for simplifying things) do exist, and we will discuss some of these later.Note how the URL's "method" part is not called "GetUserDetails", but simply "UserDetails". It is acommon convention in REST design to use nouns rather than verbs to denote simple resources.

The letter analogyA nice analogy for REST vs. SOAP is mailing a letter: with SOAP, you're using an envelope; withREST, it's a postcard. Postcards are easier to handle (by the receiver), waste less paper (i.e.,consume less bandwidth), and have a short content. (Of course, REST requests aren't really limited inlength, esp. if they use POST rather than GET.)

4. More Complex REST RequestsThe previous section included a simple example for a REST request -- with a single parameter.

REST can easily handle more complex requests, including multiple parameters. In most cases, you'lljust use HTTP GET parameters in the URL.

Page 40: Pega Online Training +91-9908107432

207

For example:

http://www.acme.com/phonebook/UserDetails?firstName=John&lastName=Doe

If you need to pass long parameters, or binary ones, you'd normally use HTTP POST requests, andinclude the parameters in the POST body.

As a rule, GET requests should be for read-only queries; they should not change the state of theserver and its data. For creation, updating, and deleting data, use POST requests. (POST can also beused for read-only queries, as noted above, when complex parameters are required.)

In a way, this web page (like most others) can be viewed as offering services via a REST API;you use a GET request to read data, and a POST request to post a comment -- where moreand longer parameters are required.

While REST services might use XML in their responses (as one way of organizing structured data),REST requests rarely use XML. As shown above, in most cases, request parameters are simple, andthere is no need for the overhead of XML.

One advantage of using XML is type safety. However, in a stateless system like REST, youshould always verify the validity of your input, XML or otherwise!

20. How do you use XMLs in Pega? Obj, Parse etc.

Parse XML:Use Parse XML rules with services and connectors to map data from an XML text messageinto clipboard property values. Each Parse XML rule contains an array of parsing instructionsthat let Process Commander interpret an incoming XML document or message.

The incoming message may arrive using an e-mail protocol or by SOAP over HTTP protocol.The message may be a request for service or a reply from a connector.

Use the Application Explorer to access parse XML rules that apply to the work types in yourapplication. Use the Rules by Type Explorer to list all parse XML rules available to you.XML Stream:

Use this method to save the contents of an XML Stream rule after stream processingcompletes as the value of a Single Value property. The property value can then be mapped asoutput and conveyed to an external system.

The target property value is the XML text from an XML Stream rule (Rule-Obj-XML rule type),after stream processing. Stream processing evaluates directives and clipboard references.

Parameters

This method has three parameters:

Parameter DescriptionPropertyName Identify a Single Value target property to receive the value produced by stream

processing.

If the property is on the step page, precede the property name with a period.

If this property is on a different page, include the page name in the reference and

Page 41: Pega Online Training +91-9908107432

208

ensure that this page appears on the Pages & Classes tab of the Activity form.XMLStream Enter the Stream Name key part of an XML Stream rule to process.

XMLType Enter the third key part of an XML Stream rule to process.

Cautions

You can't use this method for a property that is also the target property of a DeclareExpression rule. You can't save the Activity form if such a conflict is detected.

Don't attempt to set the value of a property that has a name starting with pz;changes to such properties are reserved.

Use the standard activity Work-.UpdateStatus — not this method — to change thevalue of a work object status (pyStatusWork property).

21. UI development what all do you need to do? Skins, portals, flow actions, sections, harnesses.Mention the Application Skin wizard and other wizards used in UI development.

About Flow Action rulesNew Form Help Setup Action

Security Pages & Classes HTML History More...

Purpose

A flow action rule controls how users interact with work object forms to complete assignments. Afterselecting one flow action, users may fill in a section of the form to complete (perform) the assignment.

Where referenced

In a flow rule, developers can associate flow actions with connectors (arrows) and with assignmenttasks. At runtime, the flow actions associated with an assignment determine the choices available tousers as they perform the assignment.

Controls

Containers

Basic

Page 42: Pega Online Training +91-9908107432

209

Advanced

Short Descriptions

Choose the wording for the Short Description field carefully, so that it is meaningful in context to applicationusers who must select one action from the list. Starting each Short Description text with an action verb such as"Approve", "Reject", "Send", or "Transfer" is often helpful to users. This is known as intent-driven processing.

On Perform work object forms presented with the default action section, the form area createdby a flow action normally appears in yellow, headed by an action list:

The text in the ShortDescription field appears as user-visible text in the action selection list.

Two other formats are supported. See Presenting flow actions — Comparing three approaches.

Access

Use the Application Explorer or User Interface slice ( ) to access the flow action rules that apply tothe work types in your application. Use the Rules by Type Explorer to list all the flow action rulesavailable to you.

DelegationAfter initial development and testing, selected flow action rules can be maintained by line businessmanagers rather than by application developers. The Form tab of the form provides managers accessto the fields most often updated.

About Harness rulesNew Layout Scripts and Styles Pages & Classes

HTML Display Options History More...

Purpose

Use harness rules to define the appearance and processing of work object forms used in yourapplication to create work objects and process assignments.

Like section rules, HTML rules, property rules, and others, harness rules define the structure,appearance, and behavior of the forms used in applications to create and update work objects andassignments.

Process Commander includes more than a dozen standard harness forms for entering, reviewing,updating, and processing work objects and assignments. Your application can override the standardrules to extend and tailor them to specific needs.

Before creating or editing harness, section or flow action forms, set the Skin preference (in the RunProcess area of the General Preferences group) to the skin that application users are expected to use.This provides the closest approximation during development of the runtime look and feel of the form.

Beginning with V5.5, you can use harness rules to define composite portals, as well as workobject forms. For this advanced special use, see How to create a composite portal.

Page 43: Pega Online Training +91-9908107432

210

Controls

Layout Column Repeat

Row RepeatTabbedRepeat

Basic

Advanced

Applications without work object forms

Work object forms defined by harness rules are typical, but not required, elements of a ProcessCommander application. Some business process management applications use an external portal orexternal system and call Process Commander services to create work objects, advance them througha flow, perform flow actions, and so on. The Process Engine API is a collection of standard activitiesthat apply to the Work- base class to support such headless applications.

Where referenced

Each flow rule that creates a new work object identifies a harness rule to capture initial informationabout that work object.

Standard activities that apply to the Work- class look (using rule resolution) for harness rules withspecific names, such as New, Perform, and Review. To display a work object form defined by aharness rule, call the standard @baseclass.Show-Harness activity in your activity.

User interaction with work object forms

For basic information about using work object forms defined by harness rules from an applicationuser perspective, see Using work object forms.

Rule forms

Beginning with V5.5, a few rule forms are defined through harness and section rules. Thiscapability is reserved. If your application includes custom rule types, use the Form Builder tool, notharness rules, to define forms.

Access

Use the User Interface slice ( ) or Application Explorer to access the harness rules that apply to the worktypes in your application. Use the Rules by Type Explorer to list all the harness rules available to you.

Page 44: Pega Online Training +91-9908107432

211

Category

Harness rules are instances of the Rule-HTML-Harness class. They are part of the User Interface category

About Portal rulesNew Skins Tabs Spaces

Custom Options History More...

Purpose

Use portal rules to create a custom portal layout for a group of users. You can determine:

The portal type — Developer, composite portal (V5.5+) or older legacy types For composite portals, the harness rules that define each space CSS styles for the portal window, reports, and work object forms For legacy User portals, the gadgets, workspaces and workspace labels

Contrasting composite portals and legacy User portals

Introduced with V5.5, composite portals are defined by harness rules and section rules.Unlike legacy user portals, composite portals when appropriately configured can operate withboth Internet Explorer 6/7 browsers and Mozilla Firefox 2+ browsers. Composite portals arerecommended for new development. The parts — known as spaces — of a composite portalare defined on the Spaces tab.

Introduced with V5.1, traditional portals include the standard WorkUser and WorkManagerportals, which operate only with Internet Explorer 6/7. Traditional portals operate in V5.5 as inearlier releases. Traditional user portals are built from gadgets — special HTML rules — ratherthan harness and section rules. Gadgets are referenced on the Options, Tabs, and Customtabs. Through activities and HTML rules, you can create additional gadgets for traditionalportals, and determine their appearance and behavior. See How to customize User portallayout and behavior.

Access

Use the Rules by Type Explorer to list all portal rules available to you.

Where referencedPortal rules are referenced in the Settings tab of the access group form. Users associated with thataccess group see the corresponding portal layout.

CategoryPortal rules are part of the User Interface category. A portal rule is an instance of the Rule-Portal rule type.

Standard Portal rules

Your system contains a few standard portal rules. Use the Rules by Type Explorer to see a complete list of thestandard and custom rules available to you.

You cannot alter the standard portal rules. To tailor the User, Manager, WorkManager or WorkUser portal, copythe standard rule into an application RuleSet and alter your copy. The Developer portal rule is final.

Page 45: Pega Online Training +91-9908107432

212

Recommended portal rules

Owner Purpose

Developer Supports the Developer portal. Recommended. See Developer portal basics.

Select Allow rule check out? on the Security tab of the Operator ID instance for operators who use this portal.

Manager Composite portal for managers and supervisors. Introduced in V5.5. Similar in capabilities to the traditionalWorkManager portal, introduced in V5.2.

User Composite portal for workers. Introduced in V5.5. Supports mulitple open work objects; otherwise similar incapabilities to the traditional WorkUser portal, introduced in V5.2. Supports full localization. See User portalbasics.

Other standard portal rulesOwner PurposeTabbedWorkSample Sample traditional portal with Type (on the Skins tab) of Custom.

Traditional portal rules

These portals support special situations and provide backward compatibility.

Owner PurposeWorkManager Traditional. Supports managers and supervisors, who can use the Monitor Activity workspace and

the Scan Station tool. Supports full localization and IE 6/7, but not FireFox. See User portal basics.

You can override this standard portal with another (in an application RuleSet with the same name)using the Application Skin wizard. See About the Application Skin wizard.

WorkUser Traditional. Accesses the Process Work layout only, for application users who are not managers.Supports full localization and IE 6/7, but not FireFox. See User portal basics.

You can override this standard portal with another (in an application RuleSet with the same name)using the Application Skin wizard. See About the Application Skin wizard.

SysAdminDD Supports administrators, providing access to the Version 4.2 Administer and Manage Rulesworkspaces.

About Portal rules

How to create a composite portalShow all

A composite portal is a user portal defined by a set of harness rules and section rules. Comparedwith the fixed-layout portals WorkManager and WorkUser, composite portals provide additionalflexibility in appearance, user interactivity, and functional capabilities.

Version 5.5 includes two composite portals as working examples:

User — For application users. Supports log off, find work, enter new work, news, show fullprofile, recent work, and multiple work object forms, using the Multiple Document Interface(MDI) form of the Work Area View control.

Manager— For line managers and supervisors. Provides all the facilities of the User portal plusadditional facilities similar to the traditional WorkManager portal: a process dashboard with 4charts, Monitor Activity reports, and access to the worklists and workbaskets associated with awork group.

Page 46: Pega Online Training +91-9908107432

213

Step 1. PlanA composite portal provides users or managers with specific functions and capabilities.

The portal consists of multiple spaces, each defined by a harness rule with a specific arrangement ofpanels (forming a panel set). Panels within a panel set are identified by position as Top, Bottom, Left,Right, and Center; most panel sets contain a subset of these five. Each panel set can present asection rule that at runtime delivers capabilities.

Navigation from space to space is typically provided by a dynamic menu, buttons, or links.

Plan the purpose and panels of each space. Consider the size of each panel and how well it cansupport the intended functions. If you plan to offer a dynamic menu to allow switching among spaces,identify the panel that is to contain the menu. See Harness rules — Adding a dynamic menu.

Step 2. Create an application skin

Process Commander contains two standard skin rules CompositeBrand and MetalBrandrecommended for composite portals. These rules are final, but you can copy either (using a newname) to use as a starting point for your application's skin rule. Use the Style Viewer to review thestyle names and style presentation for these or any other skin rules. See About the Style Viewer tool.

As a best practice, create at least an initial version of the application skin rules using the ApplicationSkin wizard before you develop other parts of the user interface, such as the portal, work object formsand flow action forms. You can evolve and refine the skin later by rerunning the Application Skinwizard. See About the Application Skin wizard.

Then, select Edit > Preferences... and access the General preferences group. Update the Skin field inthe Run Process Group to identify this skin. This allows you to see a presentation of compositeharness, section, and flow action rules that is closer to the runtime presentation that users willexperience. CSS styles in a skin control not only colors and fonts, but also field widths and heights,margins, and padding. See Developer Portal basics — Setting Preferences.

Step 3. Create a harness rule for each spaceCreate a harness rule for each space.

1. In most cases, set the Applies To class to a work class, such as the class group of theapplication, or by convention to the Data-Portal class.

2. On the Layout tab, click the down-arrow ( ) at the right end of the Layout control group

( ) and select the Panel Set control ( ). Select a panel layout that is appropriate forthe space, in terms of arrangement and sizes of panels. See Harness rules — Adding a PanelSet control.

3. Save the harness rule.

If your portal is to have multiple spaces, ensure that each space offers a mechanism to switch toothers. Use OnClick="pega.desktop.showSpace('Sname')" where Sname is the name of the spaceto change spaces. Users can switch spaces using links, buttons, or a MenuBar control. See Harnessrules — Adding a Menubar control.

Step 4. Add sections to the harness rulesAdd a section to each panel of the harness rules.

Page 47: Pega Online Training +91-9908107432

214

You can use any of the standard sections listed below, which replicate many of the functions of thegadgets used in standard V5.4 portals. You can also refine and evolve these sections in anapplication RuleSet version.

Certain sections require parameters. See Section form — Completing the Parameters tab and PegaDeveloper Network article PRKB-25448 How to use parameters in section rules.

Step 5. Complete the portal rule1. Create a portal rule.

2. On the Skins tab, set the Type to Composite.3. On the Skins tab, identify the application skin you developed.4. Complete the Spaces tab. Link each space to a harness rule created in an earlier step. Identify

one space as the default space. Enter a distinct name for each space. One space must benamed Work.

See About Portal rules.

Step 6. Adjust access groups and application rules as necessaryMost composite portals use the standard section @baseclass.NewWork to allow users to enter newwork objects. At runtime, this section allows users to identify the application — not a work pool withinan application — to which the new work object belongs. To support this capability:

Each access group should identify a composite portal in the Default Portal field (on the Settingstab. Leave the Secondary Portal Layouts array blank or list alternate composite portals only.Do not mix traditional and composite portals in one access group.

Leave the Work Pools array (on the Layout tab of the Access Group form) blank. Update the Work Types area on the Details tab of the application rule. Identify each work type,

a name, and a work object prefix. (The prefix value you enter here supercedes any prefix set inthe model.)

Step 7. Test and evolveSave all rules.

1. Select Edit > My Profile > Access Group.

2. On the Settings tab of your own Access Group form, add the portal rule into the SecondaryPortal Layouts area. Save.

3. Select File > Open > Portal > (portal) to open the composite portal.

4. Test and evolve.

Available standard sectionsThe following standard sections are designed for composite portals. All are in @baseclass. Some arevery easy to customize and adapt. Together, these can provide your composite portals withcapabilities very similar to the gadgets used in the older WorkUser and WorkManager portals, butthese section rules are easier to evolve. Review the Parameters tab of each section to tailor theappearance and behavior of the section.

Section Description

DashboardReportsContains a two-by-two layout with an interactive chart in each cell, using the Chart control. SeeHarness, Section, and Flow Action rules — Adding a Chart.

FindWorkAllows users or managers. to search for work

Page 48: Pega Online Training +91-9908107432

215

objects. Results are always limited to those work typesthat belong to the currently selected application.

The DisplayOption parameter has three values:

Advanced — default, includes the search barand supports Lucen-based full-text searh aswell as work "Entered by me", "Resolved byme" and other choices as shown..

Basic — search by work object ID only

Classic — matches the gadget in the WorkUser portal

Optionally, can allow users access to full-text search of work objects.

MyDelegatedRules Presents a list of rules delegated to this user as links, arranged horizontally or in a vertical list.When clicked, each link opens the appropriate version of the associated rule.

Logoff

Presents a Log off button or Log Off link, depending on the value of the LogOffDisplay sectionparameter.

Use this section only directly in a panel of a panel set. Do not use this section in an IAC form.Do not use this section as an included section within other sections, unless you can provide acustom JavaScript that targets the top level.

NewsDisplays the text of the Data-Broadcast message (if any) associated with the operator's currentorganization unit. Using the Edit button, the operator can update this message. See AboutBroadcast data instances.

NewWork

Starts entry of a new work object form. Complete the DisplayOption parameter to control thepresentation of starting flows: as a select list, menu option, labeled buttons, or links. Buttons orlinks can be presented horizontally or in a vertical list.

If a user has access to two or more applications, work object entry can occur only for one at atime. The user selects an application from those listed in the user's access groups. (Each accessgroup identifies a single application.)

The set of work objects that a user can enter depends on the currently selected application, thelist of work types on the Details tab of the associated application rule, and privileges required (ifany) by the Security area of the Process tab of the starter flow rule.

MonitorActivityProvides links to 20+ standard reports and charts for managers, similar to the initial presentationof the Monitor Activity workspace in the WorkManager portal.

ProfileA simple section that presents the user's name, portal layout, current application, access group,and other facts.

RecentWork Contains an advanced control that lists work objects recently updated by this operator.

SearchField Allows users to find work objects using full-text search, when configured. See How to enable andcontrol the full text search facility.

Workbaskets Displays a drop-down list of the workbaskets available to this user. When a user selects aworkbasket, the assignments in the workbasket appear.

Worklist Contains a ListView control linked to the standard list view rule Assign-WorkList.ListViewEmbed.See Harness, Section, and Flow Action forms — Adding a ListView control.

WUNavigationProvides the capabilities of the RecentWork, FindWork, NewWork, Profile, and News in a verticalpresentation, with added space to improve the presentation.

User portal basics

Page 49: Pega Online Training +91-9908107432

216

About Section rulesNew Layout Parameters Pages & Classes

HTML History More...

Purpose

Use section rules in conjunction with harness rules to define the appearance of work object forms,rule forms, or composite portals. A section rule defines the appearance and contents of one horizontalportion of a form. Harness rules define complete forms that support all user interactions that create,update, and resolve work objects.

Process Commander contains dozens of standard harness and section rules. You can copy and tailorthese standard forms to meet your application needs.

Controls

Layout Column RepeatRowRepeat

TabbedRepeat

Basic

Advanced

Where referenced

Rules of the following types can reference a section rule:

Harness rules

Other section rules

List view and summary view rules, as the contents of a pop-up Smart Info window.

Paragraph rules, as the contents of a pop-up Smart Info window.

Access

Use the User Interface slice ( ) or Application Explorer to the access section rules that apply to the worktypes in your application. Use the Rules by Type Explorer to list all the section rules available to you.

Development

For section rules that use the SmartFrames format, you can maintain the section rule directly from the Harnessrule form (as well as from the Section rule form).

Page 50: Pega Online Training +91-9908107432

217

Category

Section rules are instances of the Rule-HTML-Section class. They are part of the User Interface category.

About Skin rulesNew Styles History More...

Purpose

Use skin rules to identify a collection of CSS styles to be used in a portal. Separate style collectionsapply to the workspace, work object forms, and reporting.

Where referencedSkin rules are referenced in the Skins tab of the Portal form. Users associated with the portal rule(through an access group data instance) are presented the corresponding portal layout.

To support application testing while using the Developer portal, you can also reference a skin rulein the Run Process In group of the General preferences. If not blank, this skin overrides — for testsand previews only — the skin identified in the portal.

Wizard

You can define a skin rule for User portals through the text file rules, binary file rules (for images) andthe Skin rule form, or create the major colors, fonts, and other visual elements through a guidedworkflow. See About the Application Skin wizard.

Access

Use the Rules by Type Explorer to list all skin rules available to you.

Category

Skin rules appear are part of the User Interface category. A skin rule is an instance of the Rule-PortalSkin rule type.

About the Application Skin wizard

Show all

The Application Skin wizard (sometimes referred to as a "branding" wizard) enables you to quicklydevelop and put into production a skin rule that reflects your corporate or departmental standards.

A skin comprises a set of Cascading Style Sheet (CSS) files stored in your application. The wizardcontains a wide range of functions and controls that let you create and edit these files. You candesign the color schemes, images, text, and sizing of the interface components that comprise yourUser portals, reports, and work forms. The wizard helps you reduce or eliminate manual CSS coding.

To start the wizard, select Application > New > Skin from the Developer portal menu.

Skins produced from this wizard are not suitable for the Developer portal. Use these skins only withUser portals.

When you create a skin, you associate it with a user or manager portal rule so that it can be appliedacross the interface components in your application. When users log onto the system, the name ofthe portal rule assigned to their access groups is available. The system identifies the skin associatedwith the portal rule. You specify the portal rule in the Default Portal Layout field in the users' accessgroup rule form.

Page 51: Pega Online Training +91-9908107432

218

The wizard defines an application skin (Rule-PortalSkin rule type) and its associated CSS stylesheet text files (Rule-File-Text rule type). The skin references images as binary file rules (Rule-File-Binary rule type) and is linked to portal rules (Rule-Portal rule type).

The wizard and composite portals

As of V5.5, you can build composite portals that reference panel sets using harness rules and sectionrules. Unlike traditional user portals, which used special HTML rules in a pre-defined structure, youcan configure composite portals in a variety of layouts. These portals are supported by InternetExplorer 6/7 and Mozilla Firefox 2+ browsers. The expanded capabilities of the wizard are designedto take advantage of this flexible approach to UI design.

To present composite harness, section, and flow action rules that resemble what users will see atruntime, select Edit > Preferences > General Preferences and update the Skin field in the RunProcess Group of your own Developer portal preferences to identify this skin. See Developer Portalbasics — Setting Preferences.

You can also use the wizard to develop skins for traditional portals. Steps 8A through 8D containadditional design elements that apply to traditional portals only.

You can reapply the Application Skin wizard to the skin rule that it created in an earlier run to makeadjustments as often as needed.

Before you begin

Colors and fonts

Choose colors and fonts in advance. Using any graphics program, identify the RGB Hex code for thecolors you plan to use. Choose only fonts that are present on both your own workstation and on allapplication users' workstations.

Use only a limited number of colors and fonts. The colorful examples in this Help System aredesigned to highlight the impact of specific styles and elements and do not represent good design.

Images

If your portals include custom images for headers, tabs, or workspace backgrounds, create theimage files with any graphics program. Process Commander associates graphics images with binaryfile rules. Upload each image into a binary file rules in your application RuleSet.When you create a binary file rule for use with the the Application Skin wizard, set the App Name towebwb. On the Main tab, set the Relative Path to images. Valid file types are GIF, JPG, and PNG.

After you have created these binary file rules, you can select them for use as background images or

logos from within the wizard. Clicking the magnifying glass icon ( ) to the right of an image fieldopens the Image Catalog. Only images belonging to RuleSet versions in your application appear.

When you select an image, the appropriate height and width fields (if any) auto-populate with thatimage's dimensions. There are no size limitations for images. You cannot change the height or widthof an image itself using the wizard — only the height and width of the container in which it is displayedsuch as the left and right sections of tabs.

Starting and using the wizard

Verify that all rules that you are modifying, including the skin, style sheet, and portal are checkedin.

Select Application > New > Skin. The wizard presents this series of steps in the navigation panel:

Page 52: Pega Online Training +91-9908107432

219

Step 1 identifies the name and RuleSet version of the skin rule and other associated rules tobe created.

Step 2 displays the Quick Create feature enabling you to, in one step, create default fonts, andthe main and accent colors for your portals, work forms, and reports. You can also add a topheader logo for traditional portals.

Step 3 defines general appearance of most UI elements including background, fonts, and links.It also defines the appearance of the panels built into a harness rules (used for compositeportal types), and enables you to add custom styles.

Steps 4A through 4E define the appearance of smart and custom layouts, as well as bar, tab,accordion, and repeating (tab, row, and column) layouts.

Steps 5A and 5B define the appearance of menus and grids.

Steps 6A through 6C define the appearance of labels, buttons, and error sections.

Steps 7A and 7B define report components including title bars, columns, and headers.

Steps 8A through 8D define the appearance of UI elements that are unique to traditional (non-composite) user portal rules.

NavigationYou can open any step without proceeding through them sequentially. Click directly on a step in thenavigation panel to open its screen. A check mark appears next to the step when you go to anotherstep. Alternatively, use the Next >> and << Back buttons to navigate.

Some steps contain a set of collapsed sections. You can expand them all by selecting the expand

button ( ) at the top- right corner of the wizard screen.As you work with the wizard, click Preview to open in a new window a rendering of most UI elementsas configured so far. By default, they are displayed individually as used in composite portals, workforms, or reports.

Some elements do not display in preview mode. In those cases, save the skin to a composite-typeportal and open the section to review the changes (specify the skin in the Developer's portalpreferences section).To view the rendering on a standard Pega portal, open a separate window by clicking PreviewTraditional Portal in the preview window.

Creating an application skinWhen you save your work for the first time by clicking Finish or Save, the wizard creates a

skin rule and six CSS text files referenced by the skin. Optionally, two traditional portal rules(WorkUser and WorkManager) are copied into your application and are associated with the skin.Once saved, you can re-open a skin in the wizard at any time to modify it. The Application Skin wizarddoes not create a work object for processing and resolution.

After you complete your work and deploy the skin, confirm that the RuleSet containing the new skinrule appears in the RuleSet list of application users who are to use the new portals. If the skin iscreated in a new RuleSet, verify that the portal rule using the skin is specified in the user accessgroup. Have application users test the resulting portals to ensure that all clickable elements and otherimportant information are easily located.

Page 53: Pega Online Training +91-9908107432

220

Standard Skin rules

Your system contains seven standard skin rules, with availability set to final ( ). You can copy them(using a new name) and alter the copy.

To review the appearance styles definied in a skin, select Tools > Style Viewer. Select User for theBaseline Style field, Work for the Style Type, and the CSS skin you want to review

Name DescriptionBasic

Classic Styles initially released with Version 4.1 in May 2004, for traditional portals.

CompositeBrand Recommended. Lighter styles for composite portals, introduced with V5.5.

Developer Recommended. Metallic look with compact work object styles, initially released with Version 5.3 in 2007.Referenced in the standard portal rule Developer.

Metal Metallic look, initially released with Version 4.2 SP5 in November 2005, for traditional portals.

MetalBrand Metallic styles for composite portals, introduced with V5.5.

StandardBrand Recommended. Gray and blue styles for he traditional portals. Introduced with V5.5.

User Metallic look with compact work object styles, initially released with Version 5.3 in 2007. Referenced in the traditionalportal rules WorkUser and WorkManager.

22. Ever used a Collection? What is it used for?

23. Types of correspondence? email, phone, phone text

Correspondence

1) Correspondence is the Process Commander term for outgoing e-mail messages, printed letters, orfacsimile transmissions produced by the system and its users. These are typically associated with onework object or a cover or folder and may consist of text, images, or both.

2) A correspondence rule is an instance of the Rule-Obj-Corr rule type.

3) Correspondence rules are part of the Process category

Correspondence Types

Four standard correspondence type rules are installed with your Process Commander system.

1) Fax : For outgoing letters to be sent by fax transmission through the Correspondence Output Server.

2) Mail : For outgoing postal letters (handled by the Correspondence Output Server) to be printed. Storesthe correspondence body as an instance of the Data-Corr-Letter class, and the address in the Data-Address-Postal class.

Page 54: Pega Online Training +91-9908107432

221

3) PhoneText : For short outgoing text messages to be sent to a beeper (pager) or digital cell phonesthat support the Short Message Service.

4) Email For outgoing e-mail messages, where the body of the message is stored in an instance of theData-Corr-Email class and the addresses are stored as instances of the Data-Address- Email class.

Where referenced

Rules of three other rule types can reference correspondence rules:

1) Flow rules, using Notify tasks

2) Flow action rules, indirectly through activities identified on the Action tab

3) Activities

24. How do you use Break Points in Tracers?

Breakpoints are, as the name implies, points in which the execution of an activity is halted for variousreasons. This might be, for example, to check how data evolves within a loop. Breakpoints may be setin specific steps for this tracing.

Figure 5. Setting a breakpoint

As shown in Figure 5, an activity can be selected, among all the accesible classes, and a breakpointcan be set on any step. Also, a breakpoint for "all" steps can be set.

To resume the execution, just click the Continue button. It will be automatically resumed in an hour.

25. Methods used in saving to DB?RDB-saveOBJ-save

Page 55: Pega Online Training +91-9908107432

222

26. Rules that will be created using Application Accelerator.27. Agents - question on Agent scheduler, recurring and periodic settings28. Use of Broadcast option in Correspondence.

To Send mail to all work parties.

29. Have you integrated the Pega project with multiple legacy systems in the backend and otherPega applications? Explain your experience.

30. Knowledge of Correspondence feature? What are some Correspondences you have workedwith in the past?

Pega Framework Questions

31. What are some Pega Frameworks you have used? (Mention those that you have knowledge ofeven though you haven’t worked with them directly in a project)

32. Have you worked with CPM-HC? (Mention even if you have just worked with CPM. Alsomention if you have knowledge of those frameworks and haven’t worked with it actually. Youcan mention you have done some POCs in the lab etc.)

33. Have you worked with CMF (Care Management Framework)? (Don’t say you have worked withCMF if you haven’t, because client knows CMF is very new and not many projects havehappened on CMF. You can say you have knowledge of CMF)

34. CPM-HCa. What are the advantages of using CPM-HC?b. What is CTI? How is it useful? (Computer Telephony Integration).

Non-Technical Questions (Typically asked by Medco Managers)

35. Team Dynamics:

a. How will you resolve problems in your team and between teams? Question on teamdynamics.

b. How will you cope up working in a multiple vendor environment? How would youcollaborate with consultants from other vendors?

c. This project involves taking over work from the existing vendor. How would you workwith them collaboratively even when the environment is a little hostile and they arereluctant to share information?

36. Onsite-Offshore Pega Project Experience:

d. Have you worked in onsite-offshore projects involving Pega earlier?

e. What are some things that you feel worked well with offshoring and what are somethings that didn’t work well – how would you change things that didn’t work well?

f. We are looking for leads at onsite who can get things done by the offshore team. Doyou think you can handle it?

37. What are some things that you would do when you have to take-over an in-flight project fromanother vendor?