If you’re looking for PEGA Questions and whether you’re experienced or fresher & don’t know what kind of questions will be asked in PEGA job interview, then go through the below Real-Time 200 Top PEGA Interview Questions and Answers to crack your job interview.
Cover all topics of SLA, CSA, CSSA, SOAP, flows, case management, agents, activity/activities, rule resolution, circumstancing in Pega. These questions and answers are also for developers, project managers, lead system architects, prpc testing, prpc developer, admins, senior system architect
List of PEGA Interview Questions and Answers:-
What is Pega and Why Pega?
Pega is a popular BPM Tool which majorly concerned in Customer engagement and digital process automation. Pega eliminates coding, simplifies the process by making use of inbuilt functionalities, and mainly stands for reusing the existing rules and modifying accordingly.
Brief about Pega?
Pega is a platform where user can develop applications, integrate with external system and implement mobility, manage case life cycle, decision management can be done, implement DevOps and Robotic Automation, extensive User Interface Design, Reporting, etc Pega built on Java and the latest version is Pega 8.2 also it stands for Build for Change.
What are the Certifications available for Developers in Pega?
CSA – Certified System Architect Basic level of certification as entry-level for developer CSSA – Certified Senior System Architect Expert in building, judging, leading the team with good technical aspects
LSA – Lead System Architect Leader of development who is thorough with all the functionalities and implements accordingly.
What are the Developer Tools in Pega?
Designer Studio and Pega Express.
What are the Debugging tools available in Pega?
Tracer, Clipboard, SMA, and PLA.
What id DataPage and what is its scope?
Data Page is a Single Page or Page list where it stores the data that system needs to populate work item properties for its calculation or for other processes. Thread – Collection of Pages Requestor – Collection of Threads Node – It associates with multiple requestors.
Name different types of requestors?
Browser requestor – Starts with letter ‘H’ Batch requestor – Starts with letter ‘B’ Application requestor – Starts with the letter ‘A Portal requestor – Starts with letter ‘P’.
What is Portal and where it will be configured?
Portal is an Interface that appears for the user (Developer / End User) and the portal can be configured in Access Group. Ex: Developer portal, manager portal, user portal, admin portal.
What is reports and why it is used for?
Report is a rule in Pega, where it mainly used by managers to review and verify the data and also to visualize the overall progress. List view and Summary view are the popular views in Pega.
What are the different types of layouts available?
Column layout, portal layout, grid layout, dynamic layout.
Different between Abstract and Concrete Class?
Abstract – It’s a rule created to support the definition of the rule including other classes, it cannot be instantiated and end with ‘-‘
Concrete – It can have the instances stored in the database.
What are the different layers in architecture?
PRPC Shared Product, Enterprise Shared Product Layer, Generalised Application Layer and Organisational & specialized application layer.
What are the types of Inheritance?
Directed Inheritance – Allow users to specify a parent class (must not relate to the name of the class)
Pattern Inheritance – It searches based on the pattern defined in a class structure.
What is Workgroup, Worklist and Workbasket?
Workgroup – Its collection of workbasket and maintained by a manager who can allocate work to the users associated with Workgroup.
Worklist – It belongs to an operator and he can access the cases based on his priority.
Workbasket – It related to an organization via Workgroup and it holds the cases which do not belong to unique operator id.
How to associate an Operator with Workbasket?
Workgroup – by associating a workbasket monitored by manager-operator rule – Defining a workbasket in operator id rule form.
What are types of flows?
Straight through flow, Process flow, Screen flow, Starter flow, and Sub flow.
How to restrict a flow to particular user?
By using privileges and when conditions under the process tab of the flow instance.
What are flow action and its types?
Flow action specifies the choices that users have when performing an assigned work object Connection flow action and local flow action are the two types.
What is SLA and what are the terms associated with it?
Service level can define the timeline to process work object by executing activities Goal, Deadline, and Passed Deadline are the terms associated with it.
What are the different types of SLA?
Process level – It defines the SLA for the overall case life cycle
Assignment level – It defines the SLA for a particular assignment associated with a particular user.
What are the types of joins available in reports?
Inner Join – It is used to join two tables with matching data Left
Outer Join – It fetches all columns from applies to class and associated column which is having values from joined class
Right Outer Join – Vice versa of Left Outer Join
What are Agents and name the running mode?
Agent is an internal background process operating on a server on a periodic basis Legacy, Standard, and Advanced Agents are running modes.
What are the major differences for Obj and RDB Methods?
Obj – Preferable for Pega Internal DB Tables Used to perform operations on a single table at a time Can BLOB (pzPvStream) column results as well Pega automatically write SQL queries
RDB – Preferable for External Tables Used to perform the operation on multiple tables at a time BLOB (pzPvStream) Column values cannot be retrieved We need to define query using Connect – Sql rule and use it.
What are px, py and pz keys?
px and Pz are read-only keys in Pega which are created while processing ex: pxObjClass, pxCreateDateTime, pzInsKey, pxRequestor py is editable key ex: pyid, pyWorkBasket.
What are Local Variable and Parameter Variable?
Local Variable – It is strictly particular to one activity/Data transform and it cannot be taken forward.
Parameter Variable – It associate the value of a property and we can pass the parameter value to calling rule and utilize it.
What is Activity and mention different types of it?
Activity is a rule where it follows a series of instructions given by a sequence of steps in terms of methods. Connector, Routing, Trigger, Utility, Validation, Notify, OnChange, Parent Activity, and Assign are the various types used in Pega.
What is the difference between Exit-Activity and Activity-End Methods?
Exit – Activity: It exits the calling activity and control returns to the called activity
Activity – End: It Stops executing all the calling/called activities.
What is Locking in Pega and describe it types?
Locking is acquiring control over a work object before proceeding to perform any action on it and to ensure only a single user to perform actions on a work object at a time. Default Locking: Only one user can work on the work object at a time. Optimistic Locking: This is an enhanced feature introduced in Pega 7, where multiple operators work on the same object at a time.
Which are the possible ways to Handle Errors in Connect – Soap rule?
- Using Faults tab in Connect – Soap rule
- Using Error handle flow in Connect – Soap rule Service Tab
- Transition Step
What are the benefit of using Declare Index rule?
a) It simplifies the search by introducing index values to the aggregated properties
b) It helps in exposing aggregate properties
c) Finally converts complex algorithm to simple feasible solution
How tracer can be utilized for a Remote requestor in Pega?
By making use of Remote Tracer Functionality available in tracer and hence tracing the different requestor sessions available
Which are the Rule Availability in Pega?
Available: It is ready to run at the time of rule execution.
Not Available: It is not available during run time.
Blocked: It restricts the rule resolution to not execute the rule at run time, by returning ‘Rule Not Found’ exception as well as throws error.
Final: this functionality to indicate that the rule cannot be modified further, however it can be changed in the same ruleset higher version.
Withdrawn: It withdraws a rule from its current version and it’s all lower versions, however, if the same rule present at different Ruleset versions will be executed at run time.
Name some of the Pega OOTB Activities that are generally used?
Notify, NotifyAll, New, Work-.AddCovered, AddCoveredWork, Work-.Addwork, Work-. Add, NewCovered, ToCreateOperator, ToWorkBasket, ToWorklist, Work-.NewDefaults, Assign- .NewDefaults, CorrNew, NewDefaults.
Define Primary page and its benefits?
Primary page is a page associated with the rules applies to class and it holds the property values & pairs, the same can be utilized in various places by referring it.
What are the major functionality difference between Clipboard and Database?
Clipboard: It serves as a primary temporary memory for multiple requestors.
Database: It is the permanent memory where the data can be persisted to make use at later point of time (Obj and RDB methods are used to interact with DB from Pega)
Which are all the pages available in Clipboard at run time for the user?
User Pages: Its top-level clipboard page created by the user by making use of activity methods such as Page-New, also it can be editable by the user.
Data Pages: It is generated by executing the declarative rules and the content appears as read-only to the users.
System Pages: It holds Thread Page, Process Page, Requestor Page, Application Page, Operator Page, Organisation Page, etc.
What is harness rule and define its types?
It supports the display of work object forms during the run time for the application users.
Perform Harness: It supports the user’s completion of Assignments associated with the.
Review Harness: It previews the work objects in read-only display mode.
New Harness: It refers to the initial creation of the objects and supports initial entry.
Confirm Harness: It will accept a text note describing a user’s reasoning about a recently completed assignment.
What are Services and Connectors in Pega?
Service: It’s kind of response given to an incoming request.
Connector: It’s kind of approaching the other system for the response by giving the necessary request inputs (MQ, SQL, JAVA, JSM, HTTP, JCA, EJB, DOTNET, SOAP are the implementation types available)
Name some Obj Method and its benefits?
Obj-Browse: Similar to Internet search engine browsing and fetching results based on Class and filter conditions.
Obj-Open: It used to open the instance stored in the Internal and External table, similar to opening the search instances from browsing results.
Obj-Save: It’s to save the clipboard page to Pega internal/external DB table.
Obj-Save-Cancel: Used to cancel the uncommitted Obi-Save instances on a particular page.
Obj-Delete: it’s deleting the instance from the DB table, can be deleted immediately, or can be deferred for later point of deletion.
How Parse – XML is different from XML-Stream?
In Connect –Soap Configuration,
XML Stream is used to converting the mapped property values into XML format as request.
Parse-XML is used to convert the XML format of the response from an external system into property values to be mapped to the clipboard.
Where can a user find the local variable values in Pega?
- By defining the log message method and can be viewed in tracer after defining the local variable in the activity.
- By selecting the checkbox Local Variable checkbox in tracer.
What are Listeners and describe its types?
It’s a PRPC background process that waits for arriving message in the port and are defined by Data ObjectsMQ Listeners (Data-Admin-Connect-MQListener) Email Listener (Data-Admin-Connect-EmailListener) File Listener (Data-Admin-Connect-FileListener) JMS Listener (Data-Admin-Connect-JMSListener)
Define Section and mention where can it be referenced?
It is a portion/area of a standard work object form that is placed in a harness form. We can embed a section inside a section, also we can insert a harness inside a section using Tab layout form Section can be referred to in Paragraph rules, Flow Action rules, Other Sections, and Harness rules.
What is Rule Resolution in Pega?
It’s the Pega Internal search algorithm used to find the best appropriate rule at run time rule execution
What is Validation and describe its types?
Validation is a kind of verification method in Pega to validate the fields and its associated values Client-Side Validation: It’s like field and property-level validation and user get Warning/Errors before submitting the form Server Side Validation: It validates the input fields after submitting the user form to the server
What are Declarative rules and mention various types of it?
It populates the outcome by declarative processing
Declare Expression: Evaluates the expression to get the outcome
Declare OnChange: Computes the property value on change of specific property values
Declare Trigger: It process automatically by running activity when an instance of a particular class are created/updated/deleted in DB
Declare Index: It improves search and reporting access for properties.
Declare Constraint: It imposes validation for a property when it is altered.
Forward Chaining: It modifies the target property value based on the associated property value change
Backward Chaining: It makes use of the property-seek-value method to find the missing properties by using Goal seek technique
What is KeyStore in Pega?
It is a file that holds security certificates that supports outbound email security and web service security.
How can we map the class to a DB Table in Pega?
By making use of DB Table Class Mapping Wizard
What actually happens when locking a work object in Pega?
- Control initiates an entry in the pr_sys_locks table
- Finally pxLockHandle holds the lock object (i.e., pxLockHandle = pxObjClass + Lock key array) Note: When different requestor tries to obtain a lock on same object, then insert query fails and throws error.
Describe about Duplicate Case Search in Pega?
It’s a functionality to find out the duplicate cases in Pega by using the inbuilt features. Smart Shape to be used – Duplicate Search Rule to be modified – Case Match (To define Must match and Weigh match conditions) and pyDefaultCaseMatch.
What is the difference between Page -Validate and Property-Validate methods?
The page-validate method is used to validate all the properties present on a page. If a page has embedded pages, this method works recursively to validate all the properties. This method consumes a lot of system resources and takes more time. If you want to validate specific properties use the Obj-Validate method with a Rule-Obj-Validate rule.
A property-validate method is used to impose restrictions on property value. Use Edit validate rule along with Property-Validate method to impose restrictions. You can validate multiple properties using the Property-Validate method.
What is the difference between Edit validate and Edit Input rules?
Edit Validate: Use edit validate rule to validate the property value using java code. Edit validate rules can be used property-validate, Rule-Obj-Validate and Property rules.
Edit Input: Edit input rules converts user-entered data into the required format. For example is the user enters date MM/DD/YYYY format, edit input rule coverts this date into DD-MMM-YYYY (required format). Again we need to write java code for this transformation.
Where assignments will be stored in Pega rules database?
Work List related assignments are stored in pc_assign_worklist.
Workbasket related assignments are stored in pc_assign_workbasket.
Where work objects will be stored?
Work Objects are stored in the pc_work table by default. however, if you want to store the work objects in a user-created table, follow the below-mentioned steps.
Create a schema similar to the pc_work table. (The best thing is to copy the pc_work schema and modify the table name and constraints name if any)
Change the class group mapping (Data-Admin-DB-Table) to the newly created table.
If I have 3 different work objects in my application, how to store them in three different tables?
Open/Create the Data-Admin-DB-Table instance for each class and mention the table name. By doing this the individual work objects will be stored in the new table you mentioned in the Data-Admin-DB-Table instance. This is a best practice if there too many object instances for each class.
What is StepStatusGood, StepStatusFail rules?
StepStatusGood is a when the condition defined in @baseclass, this when rule checks whether the value of the pxMethodStatus property is “Good”.
StepStatusFail is when the condition defined in @baseclass, this when rule checks whether the value of the pxMethodStatus property is “Fail”.
How to make any rule as a favorite to your manager?
Delegate the rule to the manager.
Where can I see the parameter values in the clipboard ( values ..) I am passing one activity to others?
No, it’s not possible in the clipboard, but you can see in tracer by clicking page name which in step method column.
How to import rules using PZinsky
Open the rule, from that pick the pzinskey, go to prdbutil and using the pzinskey export the rule Import that zips file where you want.
Difference between activity and utility?
An activity is an instance of the Rule-Obj-Activity rule type. An activity is the fundamental sequential processing unit of the Process Commander system.
The shape in a Visio flow diagram references an activity that updates a work object but does not require user interaction and input. Your system includes standard activities for utility tasks, and you can create additional ones.
Each utility task references an activity with an Activity Type of Utility ss from utility shape we can call activity but vise versa not possible.
Difference between obj-open and obj-open-by-handled
Obj-Open: we will get multiple records from a table based on the criteria from the specified class. Or Opens an instance of a given class
OBJ-open-handle: here we have had to pass the pzInskey as an instance handle, this method will open only one record at the time. Or Open object by the handle to the pzInsKey value
The handle of an instance is a unique key, in an internal format, assembled by the system that identifies an instance in the PegaRULES database. It may differ from the visible key generally used to identify instances. (Every instance has a unique handle, but more than one instance may share the same visible key.) For rule instances, the handle includes system-generated identifying values (including the create date and time) that make it unique.
Use the Obj-Open-By-Handle method only if you can determine the unique handle that permanently identifies which instance to open. Otherwise, use the Obj-Open method.
Inheritance concept in the Pega (rules, class)
Rules: inheritance that can maximize the reuse of your rules while allowing localized overriding as appropriate. Also called polymorphism, inheritance allows a rule created for one class (possibly an abstract class) to be applied to other classes that inherit from it.
Class inheritance searches for rules from a concrete, lower class, up the class hierarchy to find available rules.
Two types of class inheritance — directed inheritance and pattern inheritances
Performance of our work in the pega is measured using?
DBTrace: DBrace is a feature in the Performance Analysis Tool (PAL) that creates a detailed log of calls to the PegaRULES database. DBTrace displays SQL statements sent to the database and the time spent for each operation.
PAL: This data is stored in “PAL counters” or “PAL readings.” PAL stands for Performance Analyzer and is a collection of counters and timer readings, stored in the requestor, that an application developer could use to analyze performance issues in a system.
- Add Reading
- Add Reading with Clipboard Size
- Reset Data
- Save Data
- Start DBTrace
- DBTrace Options
- Start Profiler
- Show Graph
- My Alerts
Alerts: During application processing, Process Commander writes to the performance alert log a sequence of text entries called alert messages that identify mainly performance-related issues or errors. The performance alert log is usually named PegaRULES-ALERT-YYYY-MMM-DD log.
AES: Exceptions are processed in a similar way as alerts. When a Process Commander server generates exceptions they are sent by SOAP to the AES system. The system parses the exceptions and stores the records in the pegaam_exception table in the AES database. Based upon how often an exception occurs and the system events that triggered those exceptions, AES aggregates these records into work objects called AES exception items. These items are written to the AES database in the pegaam_exception_work table.
How to connect to different pega applications?
Using SOAP, HTTP, JMS, MQ.
How to store the instance of the class in a specific database?
Creating the separate DB table for that working class within the DB, or map to external DB and further saves will go to that DB
Difference between obj-list, rdb-list?
Obj-list: Retrieve to a page, read-only, a selected set of properties Important fields Obj-List
RequestType: The Type of the browse; allows different processing or sets of properties to be defined. Defaults to Standard. Key-part to the Rule-RDB-SQL instance.
Access: An indication of the database package used to access this table, from the INI file (currently ODBC). Key-part to the Rule-RDB-SQL instance.
ClassName: The object class on which the browser is performed.
Rdb-list: To Retrieve external Relational Database List.
Important fields in RDB-List
PageName: Page Name indicating where the results will be put
ObjClass: The object Class to List. When used with the RuleObjList parameter, this is the class of the list to use.
How to see the values of the local variables of the activity?
How can I store the instance of the class in the database?
Creating the separate DB table for that working class within the DB, or map to external DB and further saves will go to that DB.
Default data table where the instance of the class is store (how it will search ) pc_work
Workbasket assignments are stored in a single pr_assign_workbasket table.
Worklist assignments are stored in a single pr_assign_worklist table.
The Work- base class is mapped to the pc_work table, a table with columns that represent all the work object properties that need to be exposed to flow processing to function correctly. Map your work object classes to either the pc_work stable or another table that has the same columns.
The Database class is mapped to the pr_data table. Map your data classes to either the pr_data table or another table that has the same columns.
All Rule related data will be stored in pr4_pegarules. The pr_other table is the last resort or default destination for saved instances that belong to a class that is not mapped to any other tables.
In Routing activity what is the default property used to route the object
pxRouteTo=Param.AssignTo =” workbasket name” for work basket .s
For work list:
pirouette =Param.Worklist=”true” &&Param.AssignTo =” pxRequestor.pyUserIdentifier” for work list.
When you want to configure your flow to automatically send notification messages about assignments, connect a notify shape to the assignment. A notify shape identifies a notify activity.
ticket: explain any scenario u used
Use the Ticket shape ( ) to mark the starting point for exceptions that may arise at any point in the flow, such as a cancellation. The ticket is a label for a point in a flow, much like a programming “GOTO” destination.
table used to add a note
Default activity used to create work object
There is more than one like Add, CreateWork, and New.
Different type of flows. Explain in scenario-based where u used and worked
A spin-off, Split-Join, and Split for each.
How to send multiple correspondences at a time?
Preflight: Starts the Application Preflight tool, which reports warning conditions on the rules in your Application RuleSets. These may indicate guardrail compliance issues, potential performance issues, accessibility status, or other notable conditions.
– Application Preflight tool to list each rule in an application that contains a warning message. Warning messages suggest that the rule is at variance with guardrails and other best practices. You can also check for browser compatibility of visual elements.
you can extend the set of warnings with a custom activity named Rule-ZZZZ.CheckForCustomWarnings, where Rule-ZZZZ is a rule type.
Warnings are maintained as instances of the Index-Warning class and saved in the pr_index_warnings database table.
The standard decision tree rule Embed-Warning.pxWarningDetails controls whether warnings of a specific type are reported in the Application Preflight tool. By default, all are reported; you can override this decision tree rule to choose which to omit. This decision tree tests the property pxWarningType, which can have values indicating the source of the warning, such as:
=> Java – an activity contains a Java step
=> API 02 – an activity uses the Version 3 PublicAPI
=> WriteNow – An activity step includes a method with an immediate database writes operation rather than a Commit method.
HashStringMapactivityKeys = new HashStringMap();
activityKeys.putString(“pyActivityName”, “HistoryAndAttachments” );
tools.doActivity(activityKeys , workpage, tools.getParameterPage() );
How to end the work object in the activity (a method used to kill the work object)
Or you can use osafeURL to call an activity
sHashStringMapactivityKeys = new HashStringMap();
activityKeys.putString(“pyActivityName”, “HistoryAndAttachments” );
tools.doActivity(activityKeys , workpage, tools.getParameterPage() );
pyActivity=GHC-HPlan-CS-Work.ABC&CSR=” + CSR.
Using Java you can, maybe using java scripts you can, I not sure
How to get a property value from the clipboard using Java step?
ClipboardPageworkpage = tools.findPage(pagename);
String propername = workpage.getProperty(“.pxResults.Risk”).toString();
String propertyname= tools.findPage(“WorkListPage”).getProperty(“.pxResults.Risk”).toString();
How to restrict the harness, section to a particular user
Using the circumstances or using different access groups and privileges
How a user’s ruleset list is formed ( the logic )?
The system adds entries it finds from the following sources in the order listed. The system adds entries it finds from these sources in the top of the list,
Requestor : (Data-Admin-Requestor class) — Usually this adds the RuleSets named Pega-RULES, and Pega-IntSvcs and a version or version prefix for these
Division – As referenced in the Operator-ID instance
Organization – As referenced in the Operator-ID instance
Access Group: As referenced in the Operator-ID instance
Ruleset Versions – Prerequisite RuleSets and Versions to those already compiled
Operator ID: If this user has the ability to check out rules, the personal RuleSet (named the same as the Operator ID key) is added last. Also called a private ruleset.
How to connect external java application without using connect-java
SOAP or JMS or IAC s
Spinoff // split join explain
Spin-off shape ( ) onto the flow
When a work object advancing through a flow reaches the Spin-off shape, Process Commander starts execution of a different flow, using the current or a different work object. Processing in the current flow rule continues in parallel, without waiting for the other flow to complete.
the Split/Join shape ( ) onto the flow
Use the Split-Join shape to require that multiple subflows of your flow be completed before the current flow continues execution. This allows subflows to execute asynchronously, in parallel. For example, see the standard flow Work-.ParallelWork.
Split-ForEach shape ( ) to any locations
The Split-ForEach task provides a form of searching or enumeration over the pages in a property. Use a Split-ForEach shape to iterate over the pages of a Page List or Page Group property. For each page, you can conditionally start a flow execution for the work object.
A privilege is an application-specific access control element associated with a class and access role.
A privilege rule is an instance of a Rule-Access-Privilege rule type.
Using privilege rules in an application is optional, but they can offer finer control over access than access roles alone.
Decision/fork usage… Scenarios Decision:
Decision: Use the Decision task ( ) to reference a map value rule, decision table rule, decision tree rule or a Boolean expression that when evaluated produces a value that is the basis of branching in the flow.
At runtime, the system evaluates the decision rule based on inputs from the flow and the work object and chooses one of the outgoing connectors based on the result. No user interaction or input is required.
Fork: Use the fork shape ( ) to represent a point where the flow execution chooses one of a few different paths (connectors) based on tests on the work object. At runtime, the system evaluates the conditions on each outgoing connector, starting with the connector assigned the highest likelihood
How to expose the column in the blob… of the database
Using the Modify Database Schema wizard.
What is a Work Group? What is the primary function of a Work Group from a business perspective?
A workgroup is a logical collection of operators having a common supervisor i,e. a workgroup can identify a user who is a supervisor and a set of workers and workbaskets that report to that supervisor.
Use – For the supervisor of a workgroup, the My Group area of the Process Workspace provides quick access to the work lists and workbaskets associated with the group (In the workbasket tab of workbasket data instances we enter the name of a workgroup that uses the workbasket. This field determines which workbaskets appear in the View Queue list on the My Group area of the Process Work workspace for managers). Also, workgroups facilitate for better monitoring and reporting of tasks on the Monitor Activity workspace.
What is skimming explain?
It collect the highest version of the every rule in the ruleset and copies them into new major version of that ruleset on the same system.
EX: If we are skimming loan appl:05-06-07, the only options like 06-01-01 and 07-01-01, but we can not skim to 05-07-08 and so on.
What are different methods used in activities?
Page-New, Page-Remove, Obj-open,Obj-List, Obj-Save, RDB-Save,RDB-List,RDB-Delete etc..
Different types of classes that PRPC support?
We have different types of Standard Classes will be available which are,
@baseclass is Ultimate base class, And Its Child Classes are work-, Data-, Rule-, Assign-, History-, etc. Pega always Support 2 types of classes which are Abstract Classes And Concrete Classes
Abstract Classes are ends with ‘-‘ and abstract Classes cannot create any work object instances
Concrete Classes will Does not ends with -, And Abstract Classes will create Workobject instances
Explain about Work Object?
A work object is the primary unit of work completion in an application, and the primary collection of data that a flow operates on.
As an application is used, work objects are created, updated, and eventually closed (resolved).
Every work object has a unique ID (property pyID), an urgency value, and a status (property pyStatusWork).
Explain about Work Object ID?
A work object ID is the permanent, external identifier of a work object.
If we don’t specify a prefix (on the Details tab of the application rule), the Work-.GenerateID activity uses W- as the prefix and no suffix. The Work-Cover-.GenerateID activity uses C- as the default prefix. Conventionally, the F- prefix is used to identify folder work objects.
Where we determine the prefix and suffix of of the Work Object ID?
The prefix and suffix are determined by a model rule pyDefault for the work type or the class corresponding to the class group. The model is referenced on the Process tab of the flow rule that creates the work object.
How to call one activity from another activity:
They are two types:
a) Call: If we call one activity to another activity by using call, it will execute the called activity and return back to calling activity then execute the remaining steps in a calling activity.
b) Branch: If we call one activity to another activity by using Branch, it will execute the called activity and calling activity then it will not execute the remaining steps after branch.
How do you associate an operator with a workbasket?
Each operator may have a list of workbaskets that they can view. Normally users can fetch assignments directly from any workbasket defined for their own organizational unit. However, if the roles are specified in the roles array on the workbasket tab of the workbasket data instance, the operator must possess at least one access role that matches an access role in the Roles array.
Diff b/n file listener and connect file?
File listener used to import data from a file.
Connect file defines the name and location of an output file created by ur application.
what is local action?
when action is finished work object returns to same assignment.
what is WSDL file?
it is web services description language.it is written in XML format.
Difference between Decision Table and Decision Tree:
- The logic Implemented in Decision Table is if, else if condition.
- In Decision Table, if first condition is true, it will not check the remaining conditions/if first condition is false , then only it will check next condition.
- For simply logics, we can go for Decision table.
- The logic implemented in Decision Tree is if, if condition’s.
- In a Decision Tree, if first condition is true or false, it will check the al condition’s and it will return results.
- For simple logics, we can go for Decision Tree.
What Is The Difference Between Listview And Summaryview ?
A summary view rule defines a two-level report display, presenting summary counts, totals or averages to be displayed initially, and allowing users to click a row to drill down to supporting detail for that row.
Summary view rules support interactive charts, trend reports, and the use of AJAX for pop-up Smart-Info windows.
A summary view rule is an instance of the Rule-Obj-SummaryView rule type. This rule type is part of the Reports category.
A list view rule, an instance of the Rule-Obj-ListView rule type, defines a report. Users can personalize the list view reports easily and interact with them.
Use the Report wizard to define list view reports and link them to our portal.
What Is Paging In A Listview?
To divide the ListView in to different pages and set the number of records to be displayed in a page.
What are SLAs used for? How do you configure an SLA?
SLAs are rules in PRPC that indicate the expected or targeted turnaround time for the assignment, or time-to-resolve for the work object. Each service level rule defines one to three-time intervals, known as goals, deadlines, and late intervals. Late intervals are repeated.
Service level rules can be associated with assignments in a flow and with the entire flow. For example, we can set a goal of 2 hours to process an assignment and a deadline of 4 hours. (The time interval starts when the assignment is created, not when a user begins processing the assignment.)
For assignments, the service level rule is referenced in the Assignment Properties panel of the assigned task.
For the overall work object, the service level rule is identified in the standard property .pySLAName, typically set up through a model for the class. (The default value is the default service level.)
** The Pega-ProCom agent detects service levels not achieved — unmet goals or deadlines — promptly. If an assignment is not completed before the time limit, the system can automatically notify one or more parties, escalate the assignment, cancel the entire flow, and so on.
What do you mean by Case Management in PEGA? When do you use folders?
Case Management involves managing work that, for processing and reporting purposes, differs from classic BPM work objects. Cases may involve:
1. Less rigid structure.
2. More flexibility in the order of tasks or which tasks are needed.
3. Interrelationships with other work.
4. Process Commander facilities supporting sophisticated case management include covers, folders, and case type rules.
5. Case Management design is governed by the Case Type Definitions gadget, which is used to configure the following case type and work processing configurations. Using the gadget, you can:
6. Construct covering relationships and build new case types using a standard tree gadget.
7. Add entirely new case types: Creates Class and Case Type rules provides standard starting flow for the new case type.
8. Reuse existing cases and work types.
Manage various aspects of work processing, including:
Attachments Categories(and automatic attachments when work objects are created).
Automatic and conditional instantiation of covered items when a new cover(case) is created.
Mapping roles to object access for your various case and work types.
What do you mean by exposing a property? Did you use any SQL tools or does Pega provide some means to expose columns?
A Single Value property that is visible as a column in a database table is said to be exposed. Only exposed properties can be used for the record selection operations in the list view and summary view rules.
In PEGA we can use the ‘Modify Database Schema’ wizard to expose properties. Also, the database administrator can cause a property previously-stored only inside the Storage Stream column to become a separate exposed column using SQL tools such as TOAD.
** Aggregate properties, properties within an embedded page, and properties that are not exposed are contained in a specially formatted Storage Stream or BLOB column. Most Pega Rules database tables contain a Storage Stream column named pzPVStream.
** Exposing too many properties in a table may speed reporting and searching operations, but make the insert and update operations slower. The tradeoff and relative impact depend on hardware and software and no general guidelines exist.
How to connect with external data base:
Whenever we want to connect with external data base, first we need to create the data base.
Whenever we create the database, we need to provide the JDBC URL name, user name, and password.
Once we created the database, we need to create a database class. In a database class, we need to create the required properties.
After the creation of a database class, we need to create the database table. At the time of creating a database table, we need to provide the database name, database table name, and schema name.
We need to create the connect SQL. In a connect SQL rule, if we want to fetch multiple records then we need to write the query in the browse tab.
If we want to fetch a single record then we need to write the query in the open tab.
If we want to save the data into the database then we need to write the query in the save tab.
Create activities by using RDB-Methods.
What is Access Group and Access roles and difference between them?
Access groups make a set of RuleSet versions available to requestors. Use an access role name to convey permissions (capabilities) to a user or a group of users. Access roles can be referenced in requestor instances, Operator ID instances, in access group instances, in activities, and in queries.
What is a harness in Pega?
Harnesses in Pega is used to define the look and processing of user forms in any application that is necessary for the creation of work items and the processing of assignments.
How to create a work object in Pega?
The steps to create work objects in Pega are-
- Add a button such as a section or a header.
- Expand the cell property within the button and click on the action tab.
- To the button, add an action set.
- Add focus class as well as flow name to the button.
- Catch the present work object ID with “Param.prevRecordkey”.
- Using “Obj-Open-By-Handle”, open the case
- Using Page-Copy, copy the data from pagers.
What is case management in Pega?
Case Management in Pega allows an organization to quickly model and take care of multifarious case logic, without writing any programming codes.
What is PRPC in Pega?
PRPC or PegaRULES Process Commander is a core component of the Pega software product created by Pegasystems Inc (PEGA).
What is an assignment in Pega?
An assignment in Pega is a break in the flow and it denotes the need for an external system or a person to act on a work object so that the flow can resume.
What is ruleset in Pega?
A RuleSet in Pega is a collection of rules of business that defines an instance. The ruleset is an essential subset of PegaRULES that is necessary to reference instances in the database.
How to create workbasket in Pega?
The steps to create a workbasket in Pega are-
- Click on Record
- Select Workbasket under the Organization category.
- Right-click on Create.
- Indicate a name to identify the workbasket instance.
- Assign a name to convey the purpose and content to the users.
What is parallel processing in Pega?
Parallel processing has various levels in Pega. The system-level allows every user to operate such as a process on one or multiple nodes in Java Virtual Machine. At the business process level, the Split-Join, Spinoff, and Split For Each shape ensure parallel processing. In a single user session, the external systems connections work are parallel to each other.
How to open an exercise system in Pega?
You can open an exercise system in Pega using a to the Pega 7 designer studio that opens in a new window.
Explain case management in Pega?
Case management in Pega enables a user to adapt to the unpredictable, event-driven or automatic changes in a case and its processes. It pools real-time adaptation with unique solutions for every case to suit ad-hoc additions. It also saves the case as a template for the future application. The advantages of
Pega case management are–
- Improve the processes of case management with holistic support.
- Increase the efficacy of case-flow for automatic and dynamic response.
- Ensures consistency and removes errors with context-based and real-time management.
- Lessen time, costs and effort needed to implement case management.
What is an activity in PEGA?
An activity in Pega is a basic sequential processing unit of Process Commander system that contains a sequence of steps with a method or an instruction.
Explains the difference between activity and utility in Pega?
In Pega, an activity indicates a sequence of automated business logic that follows the rule of Rule-Obj-Activity while Utility is a type of use of an activity that refers to a shape in the Pega flow.
What is SLA in Pega?
Service Level Agreement rules or SLA in Pega is an important feature that defines the intervals of time between deadlines and goals, in order to set a standard to resolve work in the application.
How to trace SLA in Pega?
The steps to trace SLA in Pega are–
- Terminate the agent.
- Delay it.
- Initiate the agent.
- Delay it again.
- In the requestors, select the delayed requestor and click on the tracer.
- Send this case to a particular assignment containing the SLA within 60 seconds.
What is work-pool in Pega?
A working pool in Pega is a collection of the work objects, both open and resolved, as well as the work- classes that a user is able to enter in an application, determined by the system from a list of class groups.
Describe the Access group in Pega?
An access group in Pega is an example of Data-Admin-Operator-AccessGroup class that creates a set of RuleSet for the requestors. The developer defines access groups and assigns them to different users.
In Pega 8.1 what are the new components added for application development?
From app dev point of view, couple of new features added in 8.1
We can use role-based workspaces
Developers now have the capability to review complete project highlights on a single page
Effective management of reusable component
What do you mean by work-space or studio?
It is an environment that provides specific tools and features
What are the various workspace supported in the latest release?
There are four types
- App Studio
- Dev Studio
- Admin Studio
- Prediction Studio
Can you use Pega Express in 8.1?
The App Studio is nothing but former Pega Express
A system admin complained that he is not able to access the admin studio? What could be the potential reason?
To access Admin Studio, one should have the following Privileges
Like we used to switch portal, similarly, is there any way to switch studio as such?
Yes. In the header of the workspace, we need to click the Switch Studio menu.
How can you show the relevant record?
We can show it by right clicking the relevant record management tab for a specific class in the App Explorer.
What is Prediction studio?
It is the studio thru which one can build machine-learning models for adaptive, predictive, and text analytics.
How many types of portals does PRPC can provide? Where will you specify the portals that u have created?
Composite portals, Fixed portals, Custom portals, mobile portals
After creating a portal it will specify in the Access group Settings tab, then it will access to the particular user.
Explain Different types of harness that u have used ?
We have number of standard harness will be available in pega, but most commonly used are new, perform, review, conform, Tabbed, perform screen flow, Tree Navigation
If I want to restrict a user to perform on a particular flow action, how can I achieve it?
we can specify the privileges or when conditions in Security tab of the flow action
How can u expose a property ? What is a linked property ?
By using the modified Database schema or optimize for reporting option
Modifying database Schema- Select Database Select Table-à View Columns Select Columns Give Database username& password and then Click Generate
Optimize reporting means right-click on the property and select the optimize for reporting
Mention about the flow types ?
Process flows, Screen flows, Subflow’s, Straight through process flows.
In my screen flow I have 4 assignments. When I am at the 3rd assignment, I want to route it to a different user. How can it be done ?
No, it is not possible to route the assignment in the middle of the screen flow…Suppose if you want to route the entire Screen flow will be the route to different user.. u can give the router in Start shape of the screen flow
Use of entry checkbox in screen flow ?
Suppose u can specify the entry point checkbox in the assignment that shape allows as a start point in the flow.. means for which assignment shapes u can check this checkbox that assignments only display in the output, then u can use the breadcrumbs and navigate any screen.
What are all the different types of scope that declare scope provide ?
Node, Thread, Requestor
Advantages and limitations of declare page ?
The main Advantage of the Declare pages is, It prevents the multiple DB hits, Suppose is there multiple requestors in that node whenever first user login into the application then load activity will be fired and create a declare page and then loaded the data in that page, requestors who can on that node show this declare page and use the data on that page.
The Disadvantages are its read-only to the requestors, and can not add the additional data and can’t delete the specific data.
Diff b/w declare page and regular pages ?
Declare pages are created through declarative rules, Declare_ keyword must be specified while creating a declare page, Declare pages are read-only pages, These pages Cant delete ,update directly.
User pages are created through page new method in an activity, these pages can be updated, deleted directly, these pages automatically deleted once logout from the system.
Diff types of declarative rules present?
Declare Expressions, Declare Constraints, Declare On change, Declare trigger, Declare Index.
How do u specify if expression triggers f/w or b/w chaining ?
In the Chain tracking tab.
How b/w chaining process works in Pega ? (Goal Seek)
It will searches the first on dependency network After checking the dependency the execution Starts from Lower expression to higher expression. In Activity u can use goal-seek-property to find the missing value of the property.
What type of Reporting features are provided by Pega?
A. List View and Summary View
How to call a list view from an Activity?
In an activity, the Obj-List-View can execute a list view rule.
What is Paging in a list view?
To divide the List View in to different pages and set the number of records to be displayed in a page.
What is exposing a property?
Exposing a property means to make a property as a separate independent column so that it can be used in sql queries and as a criteria in reporting.
How to expose a single value property?
Process Commander stores the values of all aggregate properties and some Single Value properties in a BLOB column (the Storage Stream) usually in a compressed form. Such properties cannot support selection in the list view and summary view reports and can slow retrieval and processing in other operations
- Select Tools > Database > Modify Database Schema.
- A list of databases identified in Database data instances appears. Select a database and click Next .
- A list of tables in the selected database appears from Database Table instances. Select a table.
- Click Explore Columns .
- The resulting List of Classes window displays the number of rows in the table, the number of columns in the table, and a list of the classes assigned to that table. The Properties Set to Be Visible value counts the properties for which the Column Inclusion value is Required or Recommended. This Column Inclusion value is advisory and does not indicate whether the property is exposed — corresponds to a column. The Count column shows the total count of properties in this class plus those its parent classes.
- To see the columns currently defined in this table, click the numeric link labeled Number of columns in this table.
- The List of Database Columns window shows the column name, column data type, and column width in bytes for each column in the table.
How to expose aggregate property?
Declare Index rule is a better approach:-
Create a concrete class derived from the Index- base class.
Create Single Value properties in the new class to hold values of the embedded values.
Create a Declare Index rule with the appropriate embedded Page Context value that copies the embedded values into a new Index- instance.
Save the Declare Index rule. It executes immediately, adding and deleting instances of the new class.
Expose database columns corresponding to the Index- class.
Reference the Index- properties in the list view rule.
Can we refer the property without exposing in Reports?
We can refer the properties in Display tab without exposing.
But we can’t refer the property without exposing in Criteria fields of the Content tab.
What is the activity responsible for getting the data in List View?
What the class of getContent Activity?
How to customize the getContent Activity?
Step1: Create Activity in Our Class and create the New page
Step2: write a query and store in variable.
Step3: call the listview as Call Rule-Obj-ListView
Step4: Write another activity in Embed-ListParams
Step5: create the parameter. This parameter gets the SQL query from previous activity
Step6: write Java method The java code in this method is
Get the page from pyContentPage if the page already exists. If the page is not available it creates the new ContentPage.
In this code get the SQL query from the above parameter and pass this query and above created ContentPage as parameters to this tools.getDatabase().executeRDB(query, page name) method.
How do we get the data from the two different tables?
Using Join tab in Reports
How do we fetch the data from two different tables with out using two different tables?
Write a database View. In this view logically combine the Two different tables.
Create a class for this logically combined Table.
Write the ListView. Applies to class is a class of the Combined table. So we can refer to the properties of both the tables in the list view.
What is the use of HTML property in ListView?
HTML Property rules appear in list view and summary view rules to define the appearance of values in reports.
Consider this scenario: I need to generate a list view report of all the work objects created on a particular date and then I need to include this list view in a section. How this can be done?
Select .px Create Date Time ( an exposed property ) under criteria and give the value you are looking for.
To include it in a section, check the embedded checkbox and customize the HTML of the section. In that, we need to access the list view in a JSP tag or In section, Property is Display As ListView.
What is the difference between List View and Obj-List?
List view is generally used for complex queries where sorting is required and also we can retrieve less information using Paging.
Explain in brief the configuration of a list view?
List view (an instance of Rule-Obj-ListView ) is used to define a custom report or personal version of a report.
A list view can be configured as follows:-
- Applies to class of list view will be taken as the database table map for the search criteria.
- Display fields tab is used to depict the fields that are displayed along with category and to enable/disable sorting
- The content tab is used to depict the criteria, fields to be retrieved, key of each row (if selected) and Report source (Page name where the values should be saved and the activity to be called)
- In organize tab we specify to enable/disable paging, page size, mode, alignment etc.
- We can also configure additional buttons and their fragments here.
- The format tab is used to depict the formatting of the list (like even/odd coloring) and details on single click etc.
The list view can be accessed from an activity or HTML as follows:-
- Call Rule-Obj-ListView.ShowView activity with the class name and list view name as parameters
- A list view can be used for complex retrievals from the database by not specifying the display, format, and Organize table.
- PyAction, in that case, would perform instead of a refresh.
Explain in brief about the configuration of a summary view?
Summary views are used to create reports which are grouped by certain criteria and can be later drilled down.
A Summary view can be configured as follows:
Applies to a class of summary view will be taken as the database table map for the search criteria
The category is used to know under which tab the report should come.
Criteria are used in the where class (this can be asked to the user by enabling prompt user)
Group by and field functions (like count) are used for initial display. If we have more than one group by
it is Displayed one after another on clicking +
Drill down fields are used to display the fields when we click on the assignment.
The format is used to tell how to format the display and charts can also be used.
The summary view can be accessed from an activity or HTML as follows:
Call Rule-Obj-ListView.ShowView activity with the class name and summary view name as parameters
Diff b/w list Obj-list-view results and obj-browse ?
We can retrieve instances from multiple classes by using the obj-list-view, In obj-browse we can retrieve only Single Class Instances.
1) Diff types of log files available in PRPC?
2) Log level settings?
3) How do you track and analyze all your warnings?
Application Pre-flight tool
What is an Agent?
An agent is an internal background process operating on the server that runs activities on a periodic basis.
Agents route work according to the rules in our application.
Agents also perform system tasks such as sending e-mail notifications about assignments and outgoing correspondence, generating updated indexes for the full-text search feature, synchronizing caches across nodes in a multiple node system, and so on.
How do we create an Agent?
New a SysAdmin a Agents
Rule Set name is the Agent name
Agent is instance of Rule-Agent-Quiee.
Do we need to create Agent Schedule?
No. Agent schedules cannot be created manually.
The Agent Manager on our Process Commander system generates at least one agent schedule instance for each agents rule.
By default, the Agent Manager checks for new or updated agents rule once every ten minutes.
After we create an agents rule, the Agent Manager generates one Agent Schedule instance for each node running on your Process Commander system the next time it checks for new agents rules.
Do we need to migrate Agent Schedule to other environment?
What are the Agent running time intervals?
Each agent activity runs individually on its own interval schedule, as a separate requestor thread.
Periodic — The agent runs the activity and then “sleeps” for the number of seconds entered in the Interval column.
Recurring — The agent runs the activity based on a specified calendar schedule (for example, every Monday at 5:00 P.M.).
What are the Agent Running modes?
Queue mode indicates whether the agent uses the agent queue capability to process items from the agent queue. This feature allows the agent to temporarily skip over items that fail — for example, because a needed resource is locked — and try again later to process the item later.
Standard — Specifies that this agent processes items from an agent queue and that it relies on the system to provide object locking and other transactional support.
Advanced — Specifies that this agent uses custom queuing
Legacy — specifies that this is an agent that was created in a version prior to V5.4 and has not yet been updated. This option is not available for agents created in V5.4 or later.
What is the use of referring Access Group in Agents?
Agent activity calls another activity. This called activity may not appear in agent rule set. So setup of the Rule set list and Roles by providing Access group in security Tab.
Select the access group to use for the legacy and advanced agents listed in this rule. This field is ignored for agents with a type of Standard.
How do we Troubleshoot or Trace an Agent?
1. < env name=”agent/enable” value=”true” />
Verify above tag in prconfig file. Value of the above tag is true or false.
2. In Agent Schedule, schedule tab verify the check box Enable this agent is Checked or Not. And also verify the Enabled? Check box is checked or Not.
3. Same thing also check in Agents Rule.
In Tracer, we can trace the particular operator or particular Agent.
In prsysmgmt portal, In Agent Management select the particular Agent and Delay the Agent and then run the Tracer.
We can use the Agent Management link in the System Management Application to monitor and control agent processing.
The agent runs on different nodes, selects the particular node, and run the Tracer.
What are the Agents for SLA and Correspondence?
The agents in the Pega-ProCom RuleSet process e-mail, service level rules, and assignments, archive work objects, and so on.
The agents in this rule provide the following types of processing:
Processing service-level events and escalation
Applying a flow action to assignments in bulk
Sending out e-mail correspondence
Archiving and purging work objects, attachments, and history
Retrieving PDF files from the PegaDISTRIBUTION Manager
Running tests defined through the optional Automatic Testing facility
Checking incoming e-mail
The activity System-Queue-ServiceLevel.ProcessEvents supports service level processing for both assignments and work objects.
The activity Data-Corr-.Send supports outgoing e-mail if your system contains one or more Email Account data instances with a second key part of Notify.
Who will create Data-Agent-Queue?
The Agent Manager is a master agent that gathers and caches the agent configuration information set for our system when Process Commander starts. Then, at a regularly scheduled interval, it determines whether any new agents rules were created during the last period. If there are new agents rules, the Agent Manager adds them to its list of agents and generates agent schedule data instances for them for each node.
What are the Standard Agents?
our system includes three standard agents rules. Because these agents rules are in locked RuleSets, we cannot modify them. To change the configuration settings for the agents listed in these rules, update the agent schedules generated from the agents rule.
Five agents in the Pega-IntSvcs RuleSet process queued service and connector requests and perform maintenance for PegaDISTRIBUTION MANAGER (formerly called Correspondence Output Server, or COS).
The agents in the Pega-ProCom RuleSet process e-mail, service level rules, and assignments, archive work objects, and so on. The agents in this rule provide the following types of processing:
Processing service-level events and escalation
Applying a flow action to assignments in bulk
Sending out e-mail correspondence
Archiving and purging work objects, attachments, and history
Retrieving PDF files from the PegaDISTRIBUTION Manager
Checking incoming e-mail (deprecated in V5.3)
The agents in the Pega-RULES RuleSet perform general system housecleaning and periodic processing. The agents in this rule provide the following processing:
Rule Usage Snapshot
Static Content Cleaner
System Work Indexer
What is the use of Data-Agent-Queue?
When you need to modify the behavior of an agent listed in an agents rule in a locked RuleSet (any of the standard Process Commander agents rules, for example) you do so by editing one or more of the generated
A service level rule is an instance of the Rule-Obj-ServiceLevel type. Each service level rule defines one to three-time intervals, known as goals, deadlines, and late intervals, that indicate the expected or targeted turnaround time for the assignment, or time-to-resolve for the work object.
The goal time is the smallest time interval, the deadline time is a longer interval, and the late interval defines post-deadline times. Each time interval is in days, hours, minutes, and seconds.
What are the types of SLA? Where they can be defined?
Service level rules can be associated with a work object or an assignment.
For assignments, the service level rule is referenced in the Assignment Properties panel of the assignment task.
For the overall work object, the service level rule is identified in the standard property .pySLAName, typically set up through a model for the class. (The default value is the default service level.)
How do we do Escalation?
Escalation refers to any processing within a Process Commander application that causes high-priority work objects to become visible to users and managers and to be processed sooner rather than later.
The numeric property known as urgency determines the order that assignments for that work object appear on worklists. Escalation recalculates the urgency value to reflect its age, impending due date, or explicit management inputs.
Escalation can occur through a service level rule associated with the flow and through background processing by the Pega-ProCom agent.
What are SLA’s, how are they different from Agents?
A service level rule is an instance of the Rule-Obj-ServiceLevel type. The service
level can define a goal and deadline times for processing an assignment and can
execute activities if the goal or the deadline is not met. This assignment-level service
level is distinct from any service level associated with the entire flow.
At runtime, an internal countdown clock (measuring the completion of the assignment
against the goal and deadline times computed from the service level rule) starts when the assignment task is created.
An agent is a background internal requestor operating on the server. These requestors can
periodically monitor conditions and perform processing as necessary.
Most agents are defined by an Agent Queue rule (Rule-Agent-Queue), which includes a
list of the activities they perform.
How to implement SLA’s? It is possible to define an SLA for the entire work object? If yes, how?
SLA’s are always associated with an assignment. Just drag an SLA shape and provide an instance of Rule-Obj-ServiceLevel.
Yes, SLA can be defined for the entire work object by defining it in the model.
The property for this is pySLAName.
How to restrict a flow to particular users?
By using privileges and when conditions under process tab of the flow instance.
What are the types of Flow Actions?
A flow action rule controls how users interact with work object forms to complete assignments.
Each flow action is defined by an instance of the Rule-Obj-FlowAction rule type.
Flow actions are of two types:
Connector flow actions appear as lines on Visio presentation in the Diagram tab of a flow rule. A line exits from an assignment shape and ends at the next task in the flow. At runtime, users choose a connector flow action, complete the assignment, and advances the work object along with the connector to the next task.
A local flow action, when selected at runtime, causes the assignment to remain open and on the current user’s worklist. Local flow actions are recorded in the Assignment Properties panel and are not visible on the Visio flow diagram.
A local flow action permits users at runtime to update, but not complete, an assignment. Local flow actions always are optional. Users may perform none, one, or multiple local flow actions, or repeat a local flow action multiple times.
At runtime, users choose a connector flow action, complete the assignment, and advances the work object along with the connector to the next task.
Explain about Pre Activity?
At runtime, the system runs this activity before it does other processing for this flow action. This activity is not visible on the Visio flow diagram. This activity executes only once, the first time a user selects this flow action for this assignment.
Explain about Post Activity?
Activity to run after other successful processing of this flow action.
For screen flow rules By default, when this flow action appears as a step in a screen flow rule, and the user at runtime clicks away to a different step in the screen flow rule, this activity rule does not run. To cause this activity to execute when the user clicks away to a different step, select the Post Action on Click Away? checkbox on the Assignment shape properties panel.
Explain about Local Flow Action?
A local flow action permits users at runtime to update, but not complete, an assignment. Like connector flow actions, local flow actions are referenced inside an assignment task in a flow.
At runtime, users can select local flow actions to update assignment or work object properties, change the assignee, and so on but do not complete the assignment. If a service level rule is associated with the assignment, the service level continues to run.
Local flow actions always are optional. Users may perform none, one, or multiple local flow actions, or repeat a local flow action multiple times.
On the Action tab of the Flow Action form, we can mark a flow action rule as local, or connector, or both.
How Rule-Edit-Validate is different from Rule-Obj-Validate?
Edit Validate is to validate a single property at a time but obj validate rules are used to validate all the properties in a single go. Obj-Validate method is used for this purpose.
How one single property can be represented in different forms on a screen?
By using HTML Properties at the section level, not at the property level.
Consider this scenario : I have a property of type decimal, I need to restrict it to two decimal places only. How easily this can be done?
By using a qualifier “pyDecimal Precision” under Qualifiers tab.
How to implement dynamic select and smart prompt? What’s the major difference between them?
Implementation of Dynamic Select:
In properties panel select Display As is DynamicSelect.
Write Activity for generating Dynamic Select.
By using Show-Page method display the data in XML format.
Dynamic Select is a drop-down from which we can only select a value.
Smart prompts acts both as a text box and a dropdown.
Smart prompts are implemented by using ISNS_FIELDTYPE, ISNS_CLASS, ISNS_DATANODE.
What is the difference b/w Page and Page List property, how are they Implemented?
Page property refers to a particular class and is used to access the property of that class.
Page List Property also refers to a particular class, but it’s a collection of individual pages of the same class which can be accessed through numeric indexes.
What is HTML Property?
HTML Property rules are instances of the Rule-HTML-Property class. They are part of the Property category.
Use HTML Property rules to control how properties appear on work object forms, correspondence, and other HTML forms, for both displays and for accepting user input.
For properties of mode Single Value, an HTML Property rule may be identified in the Display Property field of the Property rule form.
HTML Property rules also may appear in the list view and summary view rules to define the appearance of values in reports, and in harness, section, and flow action rules that define work object forms.
Explain about Special Properties?
Standard properties means all the properties in the Pega-RULES, Pega-IntSvcs, Pega-WB, and Pega-ProCom RuleSets have names start with px, py, or pz.
These three prefixes are reserved. We cannot create new properties with such names. We can override these standard properties with a custom property of the same name (without changing the mode or Type).
Px: Identifies properties that are special, meaning that the values cannot be input by user input on an HTML form.
Py: Properties with names that start with py are not special, meaning that values can be input by users on an HTML form.
Pz: Properties with names that start with pz support internal system processing. Users cannot directly manipulate pz properties. our application may examine these values but do not set them. The meaning of values may change with new product releases.
Validation rule is used to validate the value against some other value. Once the validation fails the system add an error message to that field in the clipboard.
What types of validations are there?
Client Side Validations
Server Side Validations
Define what are the Methods we have used for validations?
Obj-Validate–we can refer this method in Activities and inflow actions at the Validate Rule field.
Edit-Validate—- we can refer this in property form at edit-validate field and in activities through property-validate method.
Note: I think Obj-Validate is used for Server Side Validation and Edit-Validate is used for Client Side Validation.
How do you add custom message to the Property when it fails the Validation.
For this we have to use theProperty.addMessage(“your message”) tag.
Message is set to the property and the checked in the clipboard also , the messages got set successfully. But the message is not displayed beside the field in the screen. Why..?
If the property has a html property, the tag
Define the operation of Activity-End method?
Use the Activity-End method to cause the system to End the current activity and all calling activities.
Ex: if Alpha calls Beta, which calls Gamma, which calls Delta, which performs the Activity-End method, all four activities are ended.
Define about Exit-Activity method?
The Exit-Activity method ends the current activity and returns control to the calling activity.
Define about Page-Copy method?
Page-Copy method is used to copy the contents of a source clipboard page to a new or previously created destination clipboard page. The source page is not altered.
After this method completes, the destination page contains properties copied from the source page and can contain additional properties from a model.
Define about Page-New method?
The Page-New method is used to create a page on the clipboard. The new page may be a top-level page or an embedded page.
We can identify a model to initialize the newly created page. The model can set values for one or more properties.
Define about Page-Remove method?
Page-Remove method is used to delete one or more pages from the clipboard. The contents of the database are not affected.
Define about Page-Set-Messages method?
Use the Page-Set-Messages method to add a message to a clipboard page. Like a message associated with a property, a message associated with a page normally prevents the page from being saved into the database.
Define about Property-Set-Message?
Property-Set-Message method is used to associate a text message with a property or a step page. The system reads the appropriate property and adds the message to the page. We can provide the entire literal text of the message, or reference a message rule key that in turn contains message text. (Rule-Message rule type).
Define about Property-Map-DecisionTable method?
Use the Property-Map-DecisionTable method to evaluate a decision table rule and save the result as the value of a property.
Define about Property-Map-DecisionTree method?
The Property-Map-DecisionTree method is used to evaluate a decision tree rule (Rule-Declare-DecisionTree rule type) and store the result as the value of a property.
Define about Property-Map-Value?
The Property-Map-Value method evaluates a one-dimensional map value (Rule-Obj-MapValue rule type) defined in the parameter. The method sets the result as a value for a Single Value property.
The related method Property-Map-ValuePair works similarly for two-dimensional map values.
Define about Property-Remove method?
Property-Remove method is used to delete a property or properties and its associated value from the step page or another specified page. This does not affect the property rule, its definition.
Define about Property-Set method?
Property-Set method is used to set the value of one or more specified properties.
Define about Show-HTML method?
The Show-HTML method is used to cause the activity to process an HTML rule and send the resulting HTML to a user for display by Internet Explorer. This may involve the interpretation of JSP tags (or the older directives), which can access the clipboard to obtain property values, or can insert other HTML rules, and so on.
Define about Show-Page method?
The Show-Page method is used to send an XML representation of the step page to a user’s Internet Explorer browser session, as an aid to debugging.
Note: Use Show-Page and Show-Property only for debugging.
Define what is the difference between Call and Branch?
The Call instruction calls the another specified activity and execute it. When that activity completes, control returns to the calling activity.
Use the Branch instruction to find another specified activity and branch to it without a return.
When the system executes a Branch step, control transfers to another activity found through rule resolution.
Execution of the original activity pauses.
When the branched activity ends, the processing of the current activity also ends.
No steps after the Branch step are executed.
Define about Obj-List Method?
Obj-List method is used to retrieve data to the clipboard as an array of embedded pages.
This method creates one embedded page for each instance retrieved.
The Obj-List-View method often produce more efficient SQL statements and provides better performance than the Obj-List method.
Define about Obj-Browse method?
Obj-Browse method is used to search instances of one class and copy the entire instances, or specified properties, to the clipboard as an array of embedded pages.
Only properties exposed as columns can be used as selection criteria. However, values of properties that are not exposed as columns, including embedded properties, can be returned.
Define about Obj-List-View method?
Obj-List-View method is used to execute the retrieval and sorting operations, but not the formatting and display processing, of a list view rule.
The system uses rule resolution to find the list view rule and executes it, but does not produce any HTML output display.
Define about Obj-Open method?
Obj-Open method is used to open an instance stored in the PegaRULES database or in an external database linked to an external class, and save it as a clipboard page.
The system uses the specified class and key fields to find and open the object and place its data into the specified step page. The system searches up the class hierarchy as appropriate to find the instance. If it finds the specified step page, the system clears any data that is on it and reuses the page. If no existing page has a name matching the specified step page, the system creates a new page.
Define about Obj-Open-By-Handle method?
Use the Obj-Open-By-Handle method only if we can determine the unique handle that permanently identifies which instance to open. Otherwise, use the Obj-Open method.
Define about Obj-Delete method?
Obj-Delete method is used to delete a database instance corresponding to a clipboard page and optionally to delete the clipboard page too. We can cause the deletion to occur immediately, or until execution of a Commit method.
This method can operate on objects of both internal classes (corresponding to rows in a table in the PegaRULES database) and external classes (corresponding to rows in an external relational database).
The Obj-Delete method uses the class of the page to obtain the appropriate Rule-Obj-Class instance. It uses the table name, key fields, and other aspects of the class rule to mark the instance for deletion.
We can reverse or cancel a previously executed Obj-Delete method by using the Obj-Save-Cancel method.
Define about Obj-Save method?
Obj-Save method is used to save a clipboard page to the PegaRULES database or if the page belongs to an external class save a clipboard page to an external database.
The Obj-Save method uses properties on the page to derive the internal key under which it will be saved.
This method can create a new database instance or overwrite a previous instance with that key.
We cannot save a page that is locked by another requestor.
We cannot save a page that our session does not hold a lock on (if the page belongs to a lockable class), unless the object is new, never yet saved.
We cannot save pages of any class derived from the Codebase class or the Embed- base class. Such pages exist only on the clipboard.
Define about Commit method?
Commit method is used to commit all uncommitted database changes. This method writes all the instances specified by one or more earlier Obj-Save methods to the PegaRULES database (for internal classes) and to external databases (for external classes).
Define about Obj-Validate method?
Obj-Validate method is used to apply a validate rule (Rule-Obj-Validate rule type) for the object identified on the primary page or step page.
A validate rule (Rule-Obj-Validate rule type) can call edit to validate rules (Rule-Edit-Validate rule type).
Define about Obj-Sort method?
Obj-Sort method is used to sort the clipboard pages that are the values of a property of mode Page List.
We can specify one or more properties to sort on, and whether the sort sequence is ascending or descending for each sort level.
Use Connect SQL rules and RDB methods only with an external database. Do not use Connect SQL rules or RDB methods for the PegaRULES database(s). Because not all properties in the PegaRULES databases are distinct database columns, use the Obj-Open and Obj-Save methods, not the RDB- methods, with the PegaRULES database to prevent loss of data.
Define about RDB-List method?
RDB-List method is used to retrieve rows from an external relational database and place the results as embedded pages in a specified step page of classCode-Pega-List.
This method references a Connect SQL rule instance and executes SQL statements stored in the Browse tab of that rule instance. The search can do anything we can specify in a SQL statement, such as a SELECT WHEREstatement. Any constraints on the returned data are in the SQL.
Define about RDB-Open method?
RDB-Open method is used to retrieve a single row (record) of data from an external relational database and add the retrieved data into a specified clipboard page as property names and values.
Use this method in conjunction with a Connect SQL rule that contains SQLSELECT or EXECUTE statements in the Open tab. Define the SQL statements so that the database returns exactly one row.
Define about RDB-Save method?
RDB-Save method is used to save the contents of a clipboard page into a row of a relational database. The system saves the properties on the specified step page to the specified table in the database.
This method operates in conjunction with a Connect SQL rule that contains SQL statements such as INSERT, UPDATE, and CREATE statements on the Save tab.
What are SLA’s, how are they different from Agents?
A service level rule is an instance of the Rule-Obj-ServiceLevel type. The service level can define a goal and a deadline times for processing an assignment and can execute activities if the goal or the deadline is not met.
This assignment-level service level is distinct from any service level associated with the entire flow.
At runtime, an internal countdown clock (measuring the completion of the assignment against the goal and deadline times computed from the service level rule) starts when the assignment task is created.
An agent is a background internal requestor operating on the server. These requestors can periodically monitor conditions and perform processing as necessary.
Most agents are defined by an Agent Queue rule (Rule-Agent-Queue), which includes a list of the activities they perform.
What is volatile variable?
The volatile keyword is a type qualifier used to declare that an object can be modified in the program by something such as the operating system, the hardware, or a concurrently executing thread.
This means every time the variable is requested inside the program, each time the value is read from the source memory location(hard drive, devices.etc). normal variables are stored in the virtual memory of the processor. They are synced with source memory location only twice. Once during first read and second termination write.
This is useful when the variable is used as a control condition in multi-threaded or RT applications.
How many access groups can be associated to an operator at once ?
Only one access group at a time , but one operator will have multiple access group in their operator id instance.
What is a production rule set ? How will it be helpful ?
In the production rulesets area we can provide rulesets, rules in this rulesets will be unlocked in production, the end users directly will change these rules as per requirement, this is called rule delegation.
What is the default access role used by developers ?
Pega rules SysAdmin4