If you're looking for Pega 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 2021 that help you in cracking your interview & acquire a dream career as Pega Developer.
|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.|
|Explore Appian Technical Interview Questions|
|Types of Pega Interview Questions|
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.
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.
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.
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.
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.
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”.
Delegate the rule to the manager.
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.
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|
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.
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
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.
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.
Using SOAP, HTTP, JMS, MQ.
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
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.
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.
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.
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.
There is more than one like Add, CreateWork, and New.
A spin-off, Split-Join, and Split for each.
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.
HashStringMapactivityKeys = new HashStringMap(); activityKeys.putString(“pxObjClass”, “Rule-Obj-Activity”); activityKeys.putString(“pyClassName”, workclass); activityKeys.putString(“pyActivityName”, “HistoryAndAttachments” ); tools.doActivity(activityKeys , workpage, tools.getParameterPage() );
Or you can use osafeURL to call an activity
sHashStringMapactivityKeys = new HashStringMap(); activityKeys.putString(“pxObjClass”, “Rule-Obj-Activity”); activityKeys.putString(“pyClassName”, workclass); 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
ClipboardPageworkpage = tools.findPage(pagename); String propername = workpage.getProperty(“.pxResults.Risk”).toString(); Or String propertyname= tools.findPage(“WorkListPage”).getProperty(“.pxResults.Risk”).toString();
Using the circumstances or using different access groups and privileges
window.open (urlToRun,”_self”); openUrlInSpace (urlToRun,””);
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,
SOAP or JMS or IAC s
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.
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.
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
Using the Modify Database Schema wizard.
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.