Professional Documents
Culture Documents
Manapega Interview Questions
Manapega Interview Questions
Manapega Interview Questions
Obj-Save-Cancel Rollback
This is going to rollback(ERASE) the latest This methods rolls back (Erases) entire differ
uncommitted obj-Save. Queue, all the obj-Save methods, executed
so far, gets erased.
7. When do we need to use Commit, Write now option in the Obj-Save/Obj-Delete activity.
A. When the activity is NOT part of WO (Transactional) processing, then we need above
options, else not needed.
8. What is the option “Allow direct invocation from the client or a service” ?when we use it?
A. When we call activity from Services, Agents, Connectors, HTML controls, we need to
select this option.
10. What is the Different between Activity Types, Activity & Utility?
A. Activity type Activity can be called from other activities and HTML rules. Whereas utility
can be called from Utility shape.
The main difference is Utility can use only back ground processing methods. We cannot
use front end methods like Show-HTML, Show-Page, Show-Harness, Show-Property
etc….
Select to require that only authenticated requestors can start this activity, generally the
activity which part of security rule and create in class Code-Security.
12. Suppose when we save multiple records of data let’s say 100, suppose if record 59 is failed
for some reason. How to ensure to revert all the records saved so far to be reverted.
13. What is the Difference between, “Continue Whens”, “Skip Whens” at activity pre or post
conditions?
A.
Continue Whens : When a condition is satisfied, it will execute next when condition. If there
are is not when condition after the current condition, then step will get executed.
Skip Whens : When a condition is satisfied, It ignore the execution of next when conditions,
proceeds executing the step.
15. When we have OOTB when rule StepStatusGood, Why do we need again another when rule
StepStatusFail?
A. It’s not only two Status for Step, we have Warn, GoodWarn etc…
16. I want to update the value of px-properties using Activity, how to active this?
A. We can use a method Property-Set-Special. We can update pxProperties.
A. Class key is Unique ID of an instance, which is defined in the class rule form. For a given
class, we can have more than class key, is possible.
pzInsKey is Unique Primary of an instance. An instance will have one and only one
pzInsKey.
A. Write Now can not release the lock, whereas commit releases the lock.
21. Can we pass local variables from one rule to other rule?
A. No. only params can be passed.
Done.
If we try obj-Open, if lock is already acquired on case, this will halt the program by
throwing error message.
But Obj-Refresh-And-Lock will not halt the program, as given above, that’s what we
call exception handling, during locking.
Activity
1. Creating User Defined, activities a best practice of development?
A. No, We need to avoid creating our own activity, whenever it is possible.
9. When do we need to use Commit, Write now option in the Obj-Save/Obj-Delete activity.
A. When the activity is NOT part of WO (Transactional) processing, then we need above
options, else not needed.
10. What is the option “Allow direct invocation from the client or a service” ? when we use it?
A. When we call activity from Services, Agents, Connectors, HTML controls, we need to select
this option.
12. What is the Different between Activity Types, Activity & Utility?
A. Activity type Activity can be called from other activities and HTML rules. Whereas utility can
be called from Utility shape.
The main difference is Utility can use only back ground processing methods. We cannot
use front end methods like Show-HTML, Show-Page, Show-Harness, Show-Property
etc….
Select to require that only authenticated requestors can start this activity, generally the
activity which part of security rule and create in class Code-Security.
14. Suppose when we save multiple records of data let’s say 100, suppose if record 59 is failed
for some reason. How to ensure to revert all the records saved so far to be reverted.
15. What is the Difference between, “Continue Whens”, “Skip Whens” at activity pre or post
conditions?
A.
Continue Whens : When a condition is satisfied, it will execute next when condition. If there
are is not when condition after the current condition, then step will get executed.
Skip Whens : When a condition is satisfied, It ignore the execution of next when conditions,
proceeds executing the step.
17. When we have OOTB when rule StepStatusGood, Why do we need again another when rule
StepStatusFail?
A. It’s not only two Status for Step, we have Warn, GoodWarn etc…
18. I want to update the value of px-properties using Activity, how to active this?
A. We can use a method Property-Set-Special. We can update pxProperties.
A. Class key is Unique ID of an instance, which is defined in the class rule form. For a given
class, we can have more than class key, is possible.
pzInsKey is Unique Primary of an instance. An instance will have one and only one
pzInsKey.
23. Can we pass local variables from one rule to other rule?
A. No. only params can be passed.
Method—
Utility Activity cannot display html
The reason being , Utility activity is for Background processing during transaction.
Done.
26. What is Obj-Refresh-And-Lock Or how to do exception handling to ignore locked cases while
obj-Open?
If we try obj-Open, if lock is already acquired on case, this will halt the program by
throwing error message.
But Obj-Refresh-And-Lock will not halt the program, as given above, that’s what we
call exception handling, during locking.
Standalong activity.
If we run above activity , what tables will have data?
T2,T4.
Done
Standalong activity.
If we run above activity , what is the order of inserting data into tables
T2,T4, T1, T3
Done.
Standalong activity.
If we run above activity , what tables will have data
T2,T4, T3
Done.
Agents
1. What is the purpose of mentioning access Group for Advanced Agent.
A. Agent when it wakes up, the activity which we call in the agent rule form will be picked
from the rule sets which are associated with the mentioned access group related
application.
2. When we don’t mention any access group for the advanced agent then what is the access
group PRPC going to use?
Using Admin Studio, or We can open agent schedule rule , un check “Enable” check box.
5. We have a standard agent , which is running on 4 nodes. The agent has a schedule defined
like Every Day , IST time zone, 7 AM.
The 4 servers are there at different location, INDIA, USA, JAPAN, AUSTRALIA.
A. After the agent is deployed, we need to update agent schedule rule on each server to
respective time zone.
Requirement is, we want this agent on single node to run at 9 AM Monday, 10 AM Tuesday,
11 AM Wednesday and so on….
Skimming :- Is a process of Copying rules from lower versions to next higher minor or major version.
Two Types :
Skimming creates rules for a major or minor RuleSet version by copying selected rules of
Examples
Major: Skimming rules in 06-05-01 through 06-09-25 into 07-01-01
Major Skim
During a major skim, rules with Availability of 'Yes', 'Blocked', and 'Final' are carried
forward. Rules with availability of 'No' (not available) or 'Withdrawn' are filtered out.
Blocked rules are carried forward because a Blocked rule can block rules in other rulesets,
and that relationship should be maintained if it exists.
Minor Skim
A. We block a rule to not get the rule picked during rule resolution process.
Let’s say business wants to drop off a rule’s execution in production. The rule is there in version 01,
02, 03, 04.
We need to create the above rule in version 5 (Availability = Blocked) and then movie.
Going fwd this rule will not be picked by PC, during rule resolution process.
--
After the above is done, let’s say we are skimming from version 01 to 05, if blocked rule is filtered,
version 04 will get moved. The issue is going to be , the rule will still run in production which
business do not want it to run.
To avoid such situation PRPC always carried blocked rules to next minor or major version while
skimming.
A. We need to update application rule form , the respective rule set for it’s minor or major version.
Application Validation:
For example:
Activtiy1 , Activity 2
Activity1
Call Activity2
Application Validation:
Activity1
Call Activity2
Done.
2. At each level we have Data and Int (Derives from Data- and Int-)
3. Under work classes , we have case types (Derives from Class Group)
Done.
Farm-FarmersI-Insurancework(Class Group)
Class is an instance class of WO(s), which derives from Work- or sub classes.
A class Group which is referenced at Access Group’s advanced tab will be treated as Work
pool.
Work pool is Work class + case types to gather defines work pool.
5. Which inheritance of the classes takes first Priority? How to override it to not give first
priority.
A. Pattern Inheritance is first priority when below option is selected.
If we uncheck the above check box, direct inheritance will take first priority.
Done.
Yes, we can call activities of type “Route”. For example toWorkLsit or toWorkbasket.
Now, the return values of Decision tree should be OperatorID’s or WorkBasket names.
Done.
Work table pzInsKey column value will be there in above table with in a column
pxRefObjectKey
Work table pyID column value will be there in above table,with in a column
pxRefObjectInsName
8. How to override to pick the assignment from work basket first instead of Work list.
Go to operator profile and choose below option
Done.
9. While routing assignment to operator, we would like auto reroute the assignment to other
work list or work basket, if the operator is on Leave. How to achieve this?
At run time PC , auto re routes the assignment to substitute operator or Work queue when in case
operator is on leave.
To get this done, while routing we need to one option “Check availability”
Done.
2. You are writing an activity at Child case1, how to copy the data of Child case2.
A. We should open the childcase2 on a temp page and use it.
3. How to update Data from Parent to Child during Processing of Parent case.
A. We need to open the child case, on to temp page, update Parent case data to temp
page, lock and Save it.
B. PRPC has an OOTB flow shape for the same. “Update Case”
Under pyWorkPage of Parent case, we have “pxCoveredInsKey”. Which will have all it’s child
cases, pzInsKeys.
This pxCoveredInsKeys is an OOTB value list property.
Done.
6. We are designing child case1, write an activity to fetch other child case(s) data.
7. We want to update data from parent to child at the time of a child case is getting created.
Two ways
1. Data Propagation : Copying data from parent to child ,while child is getting created.
pxCoveredCount 2
9. How do you know , how many child cases are open , under parent case? Which are
yet to be resolved?
10. How do you know weather all child cases are resolved or not?
We need to write when condition like
pxCoveredCountOpen = 0.
OR
When case reaches wait shape, PC pushes that into a work queue, Deferred@pega.com
To get access to the above work basket, we can add it to operators Work Group.
Or we can add operators into Work Basket by updating it’s rule form
14. How to assign the value of a Property at parent case which is SUM of Properties of multiple
child cases? We have a requirement like below?
Done.
CASETYPE
1. What is the name of Case Type rule get’s created when we create a case type
A. pyDefault
2. What is the Flow That gets executed when we run case type , which creates WO
A. pyStartCase
4. What are the rules that gets executed when we run a case type
A. Case Type pyStatysCase (Flow) pzInitializeStage (Activity) GetFirstStage (Activity)
5. How to move from one stage to other stage by leaving in between stages.
We can use ootb flow shape or call ootb activity “Change Stage” “pxChangeStage”.
By default Change stage will move the case to “
6.
Two Types
1. Default Locking (Only One user can edit the case) : Lock gets acquired, when an operator
Opens the Case.
2. Optimistic Locking (Multiple Users can edit the case) : Lock will be acquired inly when an
action is performed and gets release after action completed. That means multiple operators
can open and edit the case at same time, But only one can submit at a given moment,
If two people at same time “Lock issue”.
8. Another Question is
Two operator opened Customer details assignment, filling form
III. Operator 1 has filled the Form at 7:30 AM and click on submit
IV. Operator 2 has filled the form at 7:35 and click on submit
Now what happens to operator 2, submit action and data submitted by Operator 2?
9. What is table where Pega Stores the last generated WO Number for a given prefix?
A. PC_Data_UniqueID (pyPrefix, pyLastServeredID)
10. What is the flow creates WO, when we run case type.
A. pyStartCase
Call pzGetFirstStage
Circumstance
1. We have a rule “CustomerDetailsForm” in version 01-01-01. It has been circumstanced and
date qualified with data range Dec 01 TO Dec 30. Use is access CustomerDetailsForm on Jan
01. Where user meets circumstance condition. Now which instance will be picked by process
commander?
A. Base instance, as date is not qualified though circumstance condition is met.
2. Data types has data, where do you use Data Types in application,
why we go for data type, when do you use Data Type? (OR) Why
the Data Type concept came into the picture when you have an
external db (SQL DB)?
A. If we want to define some reference data which we want to
populate into dropdown, auto complete etc… we need data
types. These are like reference tables.
3. You have a section of large data, for loading that section it will
takes time for complete section. So that we need to give
permission to user to edit section what ever is loaded page. How
do you do it ?
A. We can use Privileges to give permission. In the section we can
use the function OperatorhasPrevilege for visibility.
4. In Page list you need to insert a page how u will insert? And how
the rest pages index will get updated ?
A. We can user <APPEND> Key Word like.
Page-Copy
Copy From = temppage
Copyinto :Customer.Addresses(<APPEND>)
Data Transform
1. How to call an activity from Data Transform?
A. We can use Below functions
1. CallActivity(Pagename,ActivityName)
2. pxExecuteAnActivity(Pagename,ActivityName)
2. What is the difference between Append to & Append and Map to?
A. Both are for copying pages from one page list to other page list.
Call Rule-Obj-Report-Definition.pxRetreiveReportData
A.
1. When this option is selected, process commander check from the same name DTF in
the parent class.
2. If Parent class has same name DTF continue Else Step 8
3. At Parent class again check for “Grand parent Data Transform”
4. If Grand Parent class has same name DTF continue Else Step 8
5. This process of check will continue up to Base Class.
6. Now, the execution of DTFs starts from base class to till bottom current class.
Execution is from TOP to Bottom.
7. The last DTF gets executed is “Current Class”. DONE
8. When there is not Parent class DTF, only current class gets executed and done.
Data Types
Out of all the above 3, only account_transaction table gets impacted , by updates or
insert.
As we perform the transactions, the tables that gets impacted are TRASACTION
TABLES ,where as during transaction or during some other processing, other tables gets
utilized by application – this tables are reference or static tables.
Transaction Tables – For every business transaction, table gets inserted or updated.
Reference Table – During transaction this tables data will be utilized but this tables
will not get inserted or updated.
---
DONE.
Data Page
1. What is Aggregate Data Source in Data page?
3. If we do not mention any refresh strategy, when the D page does gets removed from server.
A. 24 hours.
7. How to call Data Page Asynchronously? What is the difference between Referring DPage
name to call it & using Load-Datapage Method to call it.
A. We can call Dpage Asynchronously, by using the method “Load-DataPage”.Refering page
is going make the processing Synchronous.
This Makes the Data page to be called at activity step and, activity will proceed forward
with next steps, without waiting for D page to be loaded. This is Asynchronous
Behaviour.
Generally we use Pool ID when we have more than one Load-DataPage methods are being
used as shown below
At the connect-wait, PC collects pool ID ‘P1’ and when all Load-Datapage methods of P1 pool
Id, gets completed, Connect-Wait gets released.
Done.
We have Evaluate all rows option available We don’t have evaluate all rows available.
Declare Expression
1.
A = B+C
A is target property
Declare expression gets executed whenever there is a change in source property values. This is
called “Forward Chaining”.
Done.
FYI
We used to have change tracking tab in declare expression before Pega 8.2 version. From 8.2
onwards it has been removed for below reason. Still we can access it.
Done.
Declare On change
1. What should be the activity type when we call it from declare on change
A. OnChange
2. What we do using declare expression, the same can be done in declare on change as well.
Then why we need declare expression as a separate?
A. Declare on change is only forward chaining, whereas declare expression has backward
chaining is also possible.
Declare on change can do, what a declare expression does, only in case of Forward
chaining manner but, a declare expression’s backward chaining cannot be done by
declare on change rule.
3. Can we do property-set (in the Onchange activity) of same property(s) which are involved in
declare on change rule? What happens if we do it?
A. The processing or execution of activity go into INFINITE LOOP.
File Listeners
1. How to Trace File Listener related activities?
A. Using Admin studio we can select the listener and trace option is there.
2. What is the Access Group on which listener and it’s service rules runs.
A. Access Group mention in Service Package.
Flow Actions
1. How to hide Default action buttons submit, save , cancel of flow actions
A. Go to action tab, and choose the option of “Hide Default action Section Buttons”.
3. How to Hide a flow action from Specific Operator like manager or user?
4. What is the OOTB activity that runs, on click of submit, which completes the assignment.
A. FinishAssignment.
A. Screen flow we cannot use any advanced shapes except split for each.
Process Flow
A1 SubProcessA2(Routedto – User1)
Subflow
A2(Routed to – Manager1)
Both have logged in , trying to open the assignment, will they be able to parallel work on it?
Or not? What is the reason?
Call NewFromFlow
FlowName
Class Group Name
A.
1. From activity : Call New, Call NewFromFlow, Call Add or AddWork, Call svcAddWorkObject
4. From Services CallsvcAddWorkObject (We use this activity when we create cases during a service
reuest).
2. What is the Difference between Sub process (Spin OFF), Split Join, Split for each?
Harness
1. What is the difference between section and harness
A. Section is to design UI, sections holds controls mapped to properties.
B. Harness is container of Section, which defines the appears of UI, and processing.
6. What is the OOTB section which loads flow action into perform harness
FlowActionHTML_Simple.
7. What is the OOTB section which loads Submit, save, cancel buttons into assignment?
pyCaseActionAreaButtons.
A. Pattern Inheritance
A. Because PC, want’s to check for the rules in User Defined classes first (Application,
Div., Org) and then OOTB classes in direct inheritance.
5. Can we have more than one direct parent chosen for a class?
A. NO. ONLY One.
Product Rule
1. What is Exclude NON-Versioned Rules?
A. Selecting this options, PC ignores taking Data instances into Product File.
When we have delegated rule in Production rule sets, we need to choose this option
because, production rule sets are unlocked even in production environment , allowing the
business to modify the rules.
It is the process of allowing business to access the business rule and modify from their
portals.
Delegated rule , we create in Production rule set Product rule sets are left unlocked.
Done.
4. If I want to move only ONE Rule out of N number of rules available in a rule set, how to
achieve this?
A. We need to take the pzInsKey of the rule and mention in the Product rule, no need
to mention RS, Lower and higher versions.
Report Definition
1. How to get Charts enabled in Report Definition Rule. By Default it is not enable.
A. We must have at least one SUMMARY column in Select clause.
Go to charts
Drag and drop country code and country name on x and y axis
Launch Manager
3. We have a requirement to fetch data from a table, and generate and excel or PDF
document, attach to email and en email should be sent to some operator(s).
This should be a back ground task , which should happened every day 7 AM.
Go to manager portal
Done.
Report Definition
5. How to get Charts enabled in Report Definition Rule. By Default it is not enable.
B. We must have at least one SUMMARY column in Select clause.
Done.
Launch Manager
Go to all reports
7. We have a requirement to fetch data from a table, and generate and excel or PDF
document, attach to email and en email should be sent to some operator(s).
This should be a back ground task , which should happened every day 7 AM.
Go to manager portal
Done.
Requestors
We can access any login requestor using admin studio
Done.
Rest Integration
1. In case of REST, We do not create Data conversion rules like, Converting from clipboard
to JSON or JSON to Clipboard. Then, How pega internally performs this?
A.
While consuming rest service, we are not required to create Steaming and Parse rules
for JSON. These techniques are OOTB implemented and available.
SOAP REST
It supports XML Data Structure. It supports XML Data Structure, JSON, TEXT,
HTML, etc…
Description about the service and be generated We provide End point HTTP URL, Model request
as WSDL Document, WSDL URL has to be and response.
provided to Requestors
SOAP data transformer HTTP, SMTP etc.. REST transfers only on HTTP
Heavy Weight of its Data Structure Light Weight of its Data Structure
There is no methods classification Methods classification is provided like GET,
POST, PUT and DELETE
Rule Resolution
1. What is the Difference between Available and Final?
In both cases PRPC picks the same rule and processes it.
If the availability is available , rule will be processed, also it can be copied from one rule set
to another rules.
If Highest version is not available, process commander pick the previous version from SAME
class.
If highest version is withdrawn, process commander ignores all version of current class and
proceeds to take from Parent class.
4. We have a rule there in V4, 3 and 2. V4 is available and V3 is Not available. When requesting
for this rule which version will be picked?
ANSWER : V4
6. Why ‘Blocked’ is checked after the filtering, why not included at the initial stages of filtering?
Every rule has to be process, by taking from cached. Weather to process or not should be
decided after cache.
Let’s say at initial stages itself if blocked is looked up, PRPC stops Rule resolution for this
rule. Thus it will not verify the cache at. Which is violating the rule resolution cache
mechanism.
Here, Let’s say OP1 and OP2 are requesting for above Rule R1.
Consider the above situation of Blocked is being added at the beginning of algorithm.
When Op1 requests, PRPC collects all the rules and when blocked encountered, it stops
processing it.
So for better optimization, blocked is being verified after taking from cache.
That means for the first time it collects all rule, places blocked into cache, stops processing.
Second time onwards, no need to collect all rule, just directly take blocked from cache and
stop processing. Which Is improving the performance.
Sections
Sections
1. What is the best practice of creating sections in Work class or Data Class.
Create sections in Data classes and use them into work class by using different page
reference.
One disadvantage with this approach is, we need to make sure that the reference page
must be created on clipboard by the time sections loads.
This is by default not possible. But we can achieve this by using an OOTB section
pxLocalAction
Save.
Done.
Send Email
2. What are the different rules to create for out bound email integration?
A. Email Account, Send Email automation shape used, Correspondence, etc…
SLA
1. What are the Time intervals defined in SLA? How the calculations happens?
A. 3 time intervals
By default SLA times gets start calculating, the moment assignment is created.
Example :
Done.
During the off business days, SLA will get paused automatically.
Done.
System will compare Current Data time with above property. Both are marching then SLA
starts calculating.
5. We have a flow with 3 assignments. At each assignment I want an Sla to define below time
intervals? But I do not want you to create 3 SLA, should be achieved only by using one SLA.
three assignments
This can be achieved by passing data time prop at goal and dead line time intervals instead
of hard coding.
At each assignment this pre processing DTF, will set different values retrieving the values
from a Table or Decision table or Decision Tree.
Done.
At Goal, deadline and passed deadline we can define any of the below escalations.
Call Flow à We can call another flow, Object moves from current assignment to another flow
assignment.
Advance Flow àIt moves from current flow action to next level.
Done.
Urgency
Urgency Means Priority of a task. Urgency value ranges from 0 to 100 where 0 is min and 100 is max.
As time intervals breaches, Urgencies gets incremented, adding current urgency value to previous
urgency values.
1. Default urgency
2. Initial Urgency
3. Goal
4. Deadline
5. Passed deadline urgency.
Done.
Initial Urgency = 15
Assignment create at 8 AM
When case reaches assignment of above SLA , Urgency = Default + Initial = 10 + 15 = 25 (8AM)
When Deadline is breached (10 AM) ,Uregency = Default + Initial + Goal +Deadline = 10+15+20 +35 =
80
When Passed deadline breaches (1 PM) , Urgency = Default + Initial + Goal +Deadline +Passed
deadline = 10+15+20 +35 + 60= Round to 100.
Done.
*when two tasks have same highest urgency , now, the next parameter “Age of Task”.
Done.
Types of SLA
9. How many types of SLA
4 types :
1. Assignment Level SLA means , SLA will be called on Assignment shape and applicable
upto assignment.
2. Flow Level SLA
Done.
Done.
10. We have a case with Case level SLA and Assignment SLA?
Case SLA Overrides the Assignment SLA. Ultimately Assignment SLA also 2 hours.
Done.
This validation is specific to one flow action on Validation happens at all different places
which we call it. wherever we use property because validation is
applied on property.
We implement using OOTB functions We have to write Java Code
4. Rule edit has Java code, Java Code runs on server side. Then How do you say Rule-Edit
validate is client side Validation?
A. The Java code of rule edit validate gets executed by an AJAX calling from HTML or JAVA
SCRIPT of Screen. That why even though the execution happens on server side, but on
refresh of UI, AJAX calling will be done, thus we see results on client side itself.
Validation happens at all different places Validation happens at all different places
wherever we use property. wherever we use property because validation is
applied on property.
We implement using OOTB functions We have to write Java Code
There in no need to call declare constraint, it This edit validate rule have to explicitly called
gets automatically executed wherever we use on property.
properties.
1. What is Simulations in Connectors, Data page? OrWe want the Connector to return some
test response if in case the activities service is DOWN (404) [OR] We want to create a
connect-SOAP functionality where we know request, response prop but the service is not yet
ready from the providers, in this we do not want to wait for the service provide to provide us
WSDL URL, instead we should complete our Connector development and display some test
data. How to achieve this?
A. We can Use simulations at connector or Data page, to assign some test data to the
response page.
2. Where do you configure the End point URLS (which you pass while using connectors) of
service rules in your application.
A. We are configuring in DSS (Dynamic System Settings).
Run — Execute the connector synchronously; the next step of the activity containing
the Connect-SOAP method does not execute until the connector response is
received.
Run in Parallel — This connector is to run in parallel as a child requestor of the
current requestor. If selected, use the Connect-Wait method later in the current or a
follow-on activity to access results from the connector. Do not select this value if the
Connect SOAP rule supports compensating actions.
Queue — Add this connector request to a queue, defined by a Connect Request
Processor data instance, for background processing by the Pega-
IntSvcsProcessConnectQueue agent. This mode works only if the Request
Processor field on the Service tab of the SOAP Service rule identifies a Data-Admin-
5. Where would you define END POINT URL which we passing while consuming any service.