Home  >  Blog  >   PEGA  > 

Pega Interview Questions and Answers

Pega is a popular and growing field with numerous career opportunities. If you are planning to appear for a Pega-related job interview, studying Pega interview questions can help you prepare better. By going through the below-listed frequently asked Pega interview questions, you can better understand what to expect during the interview.

Rating: 4.6

If you're looking for

 Interview Questions for Experienced or Freshers, you are at the right place. There are a lot of opportunities from many reputed companies in the world. According to research, Pega has a market share of about 1.4%.

So, You still have the opportunity to move ahead in your career in Pega Development. Mindmajix offers Advanced Pega Interview Questions 2023 that help you in cracking your interview & acquire a dream career as Pega Developer.

Pega vs Appian

Pega BPM Appian BPM
Developing applications without hard-coding
Work automation of enterprise with data management
Latest Version Pega - 7.2 Appian - 18.1
Supported OS Windows, Linux, Mac, Web-Based.
Windows, Windows Mobile, Android, iPhone, Mac, Web-Based
Integrations Supported Data Collection Systems and Various CRMs Compatible Datasheets
Customer Types Medium and large business Small, medium, and large businesses.

We have categorized Pega Interview Questions - 2023 (Updated) into 2 levels they are

Frequently Asked Pega Interview Questions

  1. What is the difference between activity and utility?
  2. Where assignments will be stored in the Pega rules database?
  3. What is the difference between Edit validate and Edit Input rules?
  4. Where work objects will be stored?
  5. How to send multiple correspondences at a time?
  6. What are StepStatusGood, StepStatusFail rules?
  7. How to make any rule a favorite to your manager?
  8. How to call an Activity from JavaScript?
  9. How to import rules using PZinsky?
  10. How a user’s ruleset list is formed ( the logic )?

Basic Pega Interview Questions and Answers

1. 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.

2. What is the difference between Edit validate and Edit Input rules?

  • Edit Validate: Use the 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 convert user-entered data into the required format. For example, if the user enters the date MM/DD/YYYY format, the edit input rule covers this date into DD-MMM-YYYY (required format). Again we need to write java code for this transformation.

3. Where assignments will be stored in the Pega rules database?

  • Work List-related assignments are stored in pc_assign_worklist.
  • Workbasket-related assignments are stored in pc_assign_workbasket.
If you want to enrich your career and become a professional in Pega, then visit Mindmajix - a global online training platform: "Pega Training" This course will help you to achieve excellence in this domain. 

4. 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.

5. 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.

 MindMajix YouTube Channel

6. What are StepStatusGood, StepStatusFail rules?

StepStatusGood is when the condition defined in @baseclass, this when the rule checks whether the value of the pxMethodStatus property is “Good”.
StepStatusFail is a when the condition defined in @baseclass, this when rule checks whether the value of the pxMethodStatus property is “Fail”.

7. How to make any rule a favorite to your manager?

Delegate the rule to the manager.

8. 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 it in tracer by clicking the page name in the step method column.

9. 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.

Explore Pega Tutorial For Beginners 

10. What is the 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.

11. 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 a 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.

12. 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

13. 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.

PAL Features

  • 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.

14. How to connect to different Pega applications?


15. 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.

16. 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.

17. How to see the values of the local variables of the activity?

Using log-message.

18. 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.

Visit here to learn Pega Training in Hyderabad

Advanced Pega interview questions and answers

19. Default data table where the instance of the class is a 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.
Visit here to learn: What is Pega Frameworks

20. 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.

21. Notify

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.

22. ticket: Explain any scenario you 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.

23. A table used to add a note


24. Default activity used to create a work object

There is more than one like Add, CreateWork, and New.

25. Different types of flows. Explain in scenario-based where you used and worked

A spin-off, Split-Join, and Split for each.

Visit here to learn Pega Online Training in Chennai

26. 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 rules 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.

27. How to call an Activity from JavaScript?

HashStringMapactivityKeys = new HashStringMap();
activityKeys.putString(“pxObjClass”, “Rule-Obj-Activity”);
activityKeys.putString(“pyClassName”, workclass);
activityKeys.putString(“pyActivityName”, “HistoryAndAttachments” );
tools.doActivity(activityKeys , workpage, tools.getParameterPage() );

28. How to end the work object in the activity (a method used to kill the work object)

Using javascript.

29. How to call an activity from java, javascript?

Or you can use osafeURL to call an activity

Using Java:

sHashStringMapactivityKeys = new HashStringMap();
activityKeys.putString(“pxObjClass”, “Rule-Obj-Activity”);
activityKeys.putString(“pyClassName”, workclass);
activityKeys.putString(“pyActivityName”, “HistoryAndAttachments” );
tools.doActivity(activityKeys , workpage, tools.getParameterPage() );

30. How to pass parameters to the activity using java, JavaScript?

pyActivity=GHC-HPlan-CS-Work.ABC&CSR=” + CSR.

31. How can I pass the page as the parameter to the activity using Java, JavaScript?

Using Java you can, maybe using java scripts you can, I not sure

32. How to get a property value from the clipboard using the Java step?

ClipboardPageworkpage = tools.findPage(pagename);
String  propername = workpage.getProperty(“.pxResults.Risk”).toString();
String  propertyname= tools.findPage(“WorkListPage”).getProperty(“.pxResults.Risk”).toString();

33. How to restrict the harness, section to a particular user

Using the circumstances or using different access groups and privileges
List different functions used to call an activity from javascript.

window.open (urlToRun,”_self”);
openUrlInSpace (urlToRun,””);

34. 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 at the top of the list,

  1. Requestor - (Data-Admin-Requestor class) — Usually this adds the RuleSets named Pega-RULES, and Pega-IntSvcs and a version or version prefix for these
  2. Division - As referenced in the Operator-ID instance
  3. Organization - As referenced in the Operator-ID instance
  4. Access Group: As referenced in the Operator-ID instance
  5. Ruleset Versions - Prerequisite RuleSets and Versions to those already compiled
  6. 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.

35. How to connect external java application without using connect-java

SOAP or JMS or  IAC s

36. 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 the 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.

37. Privileges usage…

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.

38. Decision/fork usage… Scenarios 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

39. How to expose the column in the blob… of the database

Using the Modify Database Schema wizard.

Join our newsletter

Stay updated with our newsletter, packed with Tutorials, Interview Questions, How-to's, Tips & Tricks, Latest Trends & Updates, and more ➤ Straight to your inbox!

Course Schedule
Pega TrainingAug 05 to Aug 20
Pega TrainingAug 08 to Aug 23
Pega TrainingAug 12 to Aug 27
Pega TrainingAug 15 to Aug 30
Last updated: 04 August 2023
About Author
Remy Sharp
Ravindra Savaram

Ravindra Savaram is a Content Lead at Mindmajix.com. His passion lies in writing articles on the most popular IT platforms including Machine learning, DevOps, Data Science, Artificial Intelligence, RPA, Deep Learning, and so on. You can stay up to date on all these technologies by following him on LinkedIn and Twitter.

Recommended Courses

1 /11