0% found this document useful (0 votes)
99 views12 pages

Pega #Pega Notes #Interview Topics

The document explains data pages, their scopes, sources, and management in Pega. Data pages are shared pages that cache frequently accessed data to improve performance. They can be created from various sources and configured with different scopes and refresh settings.

Uploaded by

Srinu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
99 views12 pages

Pega #Pega Notes #Interview Topics

The document explains data pages, their scopes, sources, and management in Pega. Data pages are shared pages that cache frequently accessed data to improve performance. They can be created from various sources and configured with different scopes and refresh settings.

Uploaded by

Srinu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

1.

Explain about Data Pages and scopes


Data page is a shared / cached page on servers’ clipboard. We use data pages when the data is common data and constant data
which is frequently been accessed in the application. It can be created under Data Model Category., Data Page is instance Class is
Rule-Declare-Pages.
D-pages
Data Page Can be available in one of two structures.

1. Page: If this is the data page to hold single instance


2. Page List: if this is the data page which holds multiple instances.

Modes
Read only: - These Data Pages gets created on clipboard under ‘Data Pages”.

These cannot be updated or deleted.

Editable Modes: - These Data Pages gets created on clipboard under “User Pages”., These can be updated or deleted

Scopes
• Thread: A thread scope of data page is accessible for sharing with in a single WO multiple times.
• Requestor: This scope of data page is accessible for sharing with in a single requestor session among multiple WO’s but not
with other requestors.
• Node: This scope of data page is accessible among multiple requestors who logon to same node but not with requestors of
another node.

In Data Page Load Managements tab under


1.Clear data page is used to delete forced on clipboard, and background run OOTB Activity is FlushDeclartiveDataPage.
2. Refresh Strategy
3.Reload if older than Day, Hour, Second
2. Data page sources.
Below are the sources of data page
1. Activity
2. Data transform
3. Report Definition
4. Look up: To fetch single record from the table.
5. Connector: for integrations purpose.
6. Robotic process automation
7. Robotic desktop automation.
Advantages of Data Page

• 1. The number hits to data base reduced from N to 1


• 2. number page on clipboard reduced from N to 1
• 3. number of times sources executes reduced from N to 1
• 4. time taken to load in UI is reduced.
• 5. Overall performance of application is improved.
Details about Data Page
• Data page is Shared (cached) page on server’s clipboard.
• Data page is instance of Class Rule-Declare-Pages
• It can be created under Data Model Category
• Data Page name must start with D_ or Declare_
• Data Pages were called as Declare Pages before Pega 7 version

3. What is Report Definition and its real-life example?

Report definition is used to fetch data from tables and display the data in table or charts format.
Real life example: If amazon application developed using pega, we can use report definition to fetch all the returned items into a
report to analyse the monthly returns data. It can be created under Report Category., Report Definition is instance Class is Rule-Obj-
Report-Definition.
1.1 Report Definition Continuation.
A. Reporting can be done on Exposed columns. Reporting on BLOB brings down the performance of Application. (To performs Joins, both
tables should have common data columns).
For Example, Work Class and Worklist Class. 1. pyID of Worktable= pxrefobjectinsname 2. pzInskey of worktable= pxrefobjectkey.
**They are four types Report Definition.
a. Class Joins (Two or More table can be joined): - Created a report to fetch data from work table and worklist tables by Class Joins.
b. Association (Two table can be Joined its reusable Join): - Association rule defined Joins b/w two classes. This rule can be reused for
Joins. *** Association rule can be directly referenced in the select clause or where clause by its name. Let’s impl above report using
association Joins. -> For this we need to create association rule which defines Joins b/w work class and work list tables. PRPC provides
OOTB association for the Same “pxWorklistAssignments”.
C. Index Joins (Joins can be done on index table): - Indexing in pega can be done for Embedded properties like page list. When we Optimize
Page list properties, PRPC create a dedicated tables for Page list. This table each row corresponds to one index page to page list.
1 Index Class (derives from OOTB class Index-) 1. Properties 2. Declare index 3. Perform joins b/w work and page list index class
D. Sub-Report: - A sub report is a report that is called by another report to provide data. Sub reports enable you to reference results
from any report definition in the main report.

4. Decision table and Decision tree differences.


It can be created under Decision Category., Decision tables is instance Class is Rule-Declare-Decisiontables.
It can be created under Decision Category., Decision Tree is instance Class is Rule-Declare-DecisionTree.
Decision Table Decision Tree
This has the logic if else if, else if and so on else. This has the logic of if, if, if and so on else.
Decision table we can call other decision rule by using We can call other decision rule by selecting the
functions like pxEvaluateDecisionTable, option “allow selection of call decision option”
pxEvaluateDecisionTree, ObtainValue. under the configuration tab of decision tree.
We can set /return multiple properties values by There is no such option available in decision tree.
selecting the option “Evaluate all rows” under the
results tab.
For all the conditions in decision table, the properties In decision tree we can use different, different
used are fixed and same. properties for different conditions.
We can use expression builder and functions. We cannot use expression builder.

5. What is Case types & Case life Cycles with Examples?

A Case Type defines work object life cycle to have


1. Stages: It’s collection of processes
2. Process: It’s a flow and collection of steps
3. Step: It’s a flow step.
Case Life cycle going to start at Start Stage and gets completed to Resolution Stage.

When We create a case, it may create below rules.

1. Case Type Class (Belongs to Class Group)


2. Flows.
3. Case Type
4. Properties, Sections, Flow Actions
5. Data Transform
6. Work Party
7. pyStartCase

Case Management:
Case Management is a technique of designing or defining the case life cycle to have multiple work object been created.

In Case Manager we have one Parent Case (Cover Case) and remaining are children (covered cases).

1. What is Data propagation?


Data propagation is Copying the data from parent into child case at the time the child case is getting created.
We can define the data propagation under setting tab of Parent case Type. For Child Case Is Data Propagation Option Not Available
Here, we can set single properties or create data transform and call it there.

2. How to access parent case data to child and child to parent


If we want to assign data from parent case to child case, we can use data propagation.

If we want to access data from child to parent, then we have to open parent case by obj-open or open-by-handle and update it back
to work table.

On Parent Case

pxCoveredcount Property hold the value of “Number of Child Cases created”.

pxCoveredCountOpen = The number of child cases which are yet to get resolved.

* Under pyWorkPage of Parent Case we have an OOTB Value List property, pxcoveredInsKeys

1. This property holds the pzInsKeys of All children.

While Processing parent case, if we want to read the pzInsKeys of child cases, those will be available on Value List
pyWorkPage.pxCoveredInsKeys.

• What is Locking in Case Managements? There is Two Types of Locking

1. Default locking: The moment a case is opened, lock will get acquired.
2. Optimistic locking: This allows more than one user to open a case at a time. Lock will not be quired on open but it gets acquired
when an action is been performed on the case like submit.
Lock table is PR_SYS_LOCKS.

1.What are Differences between Edit Validate & Constraints & Obj Validate.
**It can be created under Data Model Category., Edit Validate is instance Class is Rule-edit-Validate.
** It can be created under Decision Category., Declare Constraints is instance Class is Rule-Declare-Constraints.
** It can be created under Process Category., Obj Validate is instance Class is Rule-Obj-Validate.
Edit Validate Constraint Obj Validate
One property can be validated Multiple properties can be validated Multiple properties can be validated
This gets executed where ever we use This gets executed where ever we use This is specific the Screen / flow
property. property. action on which we call it.
This is Client-side validation This is Client-side validation This is Server-side validation
This has to be explicitly called on There is no need to call this, This has to be explicitly called on flow
property automatically called internally when action or activity
we use properties.
This is not a dependent validation This is dependency validation This can be dependent / independent
validation.
This required java coding. This one-use functions This one uses functions.

3. What is the difference b/w Screen Flow & Process Flow?


Sub Flow: - This is similar to process flow except it is not the starter flow but it has been invoked from a process flow.

Process Flow Screen Flow


It Create a work Object It Cannot Create Work Object (By Defaults)
For every assignment we see submit button, means For every assignment we get next, back and finish
when an assignment is completed, we cannot navigate buttons available accordingly. We can navigate
back. between assignments.
Flow action can be called on assignment shape Flow action can be called, on assignment shape
outward connector. Here we can call multiple flow itself. Only one flow action per assignment is
actions per assignment. possible.
Harness can be called, per each assignment. • Harness can be called on start shape of
screen flow that means for all assignments
in screen flow same harness.

• Routing option is available on assignment • Routing option available on Start shape of


shape. screen flow.
Each assignment can be routed to different • That means all assignments in screen flow
operator using assignment shape. gets routing to one single work list or work
basket.
• All assignment must be worked on only by
one operator.

4. What are Type of Flow There are two Type of Flow.


Flow Action: - It is process rule, which allows us to perform an action on assignment and it moves the case from current assignment to next level
in the flow, by completing the current assignment. It can be created under Process Category., Flow Action is instance Class is Rule-Obj-Flow
Action.

Local Action: - It allows us to perform an action on the assignment but still WO will be there on same assignment and assignment will not be
completed. Example: - Pop Up Windows, Attaching documents to WO. ** When We Create Local Action make sure go to Action Tab Change into
Local Action.

Local Action Can be called from, 1. A control Events. 2. Assignments Shape. 3. Diagram tab of Work Flow 4. Case Type Rule.

** If we call local action on assignment or Flow or Case type, we can access that using Action drop down of Work Object Form

5. What are the Split Join, Sub Process, Spin Off, Split for Each.

Split join: - Using this flow shape we can call multiple sub flows. All these sub flows gets executed parallel. Once all the sub flow are
completed, process flow can be resumed. ** When we select ‘Join Any’, Process flow can be resumed when any of the sub flows completed.
2.** When we select ‘Join Some’ process flow can be resumes when any of the sub flows completed with a when condition met.
Split For Each: - Using this flow shape we can call one sub flow. 1.This flow shape takes the Page List a parameter to it and executes the sub
flow N number of times where N = number of pages in page list.
Spin Off: - This option is available in sub process shape, when selected, both process flow and sub flow will run parallel. This is called
asynchronous processing.
Sub Process: Using this shape we can call only one sub flow where the process flow will wait for sub flow to be completed. Once
sub flow is completed process flow can resume its execution.
6. What is Circumstance?
Circumstance is creating multiple variants of a single rule with conditions.
Two types of circumstance
1. Single property circumstance: The condition involves only one property
2. Multi property circumstance: The condition involves multiple properties
We need to create two other rules for multi property circumstance
1.Circumstance template Rules. It can be created under Technical Category., Circumstance template is instance Class is Rule-
Circumstance-template.
2. Circumstance Definition rules. It can be created under Technical Category., Circumstance Definition is instance Class is Rule-
Circumstance-definition.

7. Declarative rules explain


Declarative rules get executed automatically without calling. Below are the declarative rules.
1.Constraints
2.Declare expression: This is used to assign a target property when source properties or inputs properties value changes. It can
be created under Decision Category., Declare Expression is instance Class is Rule-Declare-Expression.

Forward Chaining: - Whenever input properties are changing the target property value gets automatically updated. This is called “Forward
Chaining”. ** In declare expression under “change Tracking” Tab we have dropdown option “Whenever input change” This is defaults option
Expression.
Backward Chaining: - In Declare Expression under “Change Tracking Tab” In dropdown if we select option. “Whenever used” It works as
backward chaining. *** Whenever used depends on target property usage. “N” number of times target property is used then “N” times
expression will be executed.
Now expression will be executed every time target property is used. This is “Backward Chaining”.
3.Declare on change: The Purpose of Declare on Changes is to Executes Activities automatically whenever there is a change in property
value. It can be created under Decision Category., Declare on Change is instance Class is Rule-Declare-On change.

4.Decalre tigger: Declare trigger rule gets executed declaratively when an Obj Method gets executed on Rule base tables. This gets auto
executed when DB table Action performed. . It can be created under Decision Category., Declare tigger is instance Class is Rule-Declare-Tigger

5.Decalre Index: Indexing Improves the performance of application when running the reports. It can be created under SysAdmin Category.,
Declare Index is instance Class is Rule-Declare-Index.

** If we want use any properties in Report rules, we need to optimize those properties.
Unlike normal properties, when we optimize page list properties PRPC will create below Rules.
1.Index Class which gets Derived from the OOTB class ‘INDEX’. This index class is been mapped to an index table.
2.Declare index rule which maintains the mapping b/w Data table and index table.
6.Declare Pages (Data Pages)

8. What is Harness.

Harness is a UI rule. Harness Holds Sections. Harness defines appearance and processing of Work Object Forms or Portals.

Every User Interface that gets loaded in PRPC, is be defined or created using Harness rule Type. It can be created under User
Interface Category., Harness is instance Class is Rule-HMTL-Harness

Harness in a Work Object life cycle, PRPC uses difference OOTB harness for work object form New-Perform-confirm.

1. New: - This is responsible for Creating Work Object on click of Done Button. This is Editable harness.
2. Perform: This harness gets loaded at every assignment. This is responsible for performing an assignment. This harness loads Flow
Action and Submit buttons. This is Editable harness.
3. Confirm: This harness gets loaded when there is no assignment to perform. This is read only harness. This can be used to display the
summary of WO Data.
4. Review: This is read only harness. To review the work object data and re assign it for modifications. This is for system internal usage.
Any user defined harness which is read only, will treated as Review Harness.

9.What is Routing?

Routing: Assigning work to an operator is called Routing. An Assignment can be particular operator by means of Routing.

Routing option is available under. 1.Assignment shape properties in Process Flow. 2. Start shape Properties in Screen Flow.

Two Types of Assignments based on Routing. 1. Work List Assignment. 2. Work Basket Assignment.

1.Work List Assignment: When an assignment is created and routed to single Operator. It will be created as an instance Assign-Worklist. The
assignment gets stored into PC_ASSIGN_WORKLIST table. The OOTB activity that gets executed is “toworklist”

2.Work Basket or Queue Assignment: Multiple operators will have access to basket. All of them can see the tasks in basket and only one pick
and work on task at a given time. Assignment is instance of class Assign-Workbasket. The assignment gets stored into PC_ASSIGN_WORKBASKET
table. The OOTB activity that gets executed is “toworkbasket”.

Here the below columns are important


pxAssignedOperaotrID: These columns hold the operator ID of operator to whom the assignment is routed. In case work basket this column
holds basket name in work basket table.

pxRefObjectInsName: This column value is = pyID of Work Table

pxRefObjectInsKey: This column value is = pzInsKey of Work Table

10.What is Data Transform?

Data transform can be used to assign values to properties, assign one page data to another page, copy pages from one page list to another page
list.

We can call data transforms from


1. Data transform using Apply Data transform option.
2. Activity using the method “Apply-Data Transform”
3. Flow action under action tab as pre-processing and post processing.
1.1 What is the difference b/w Append to & Append Map to?
A. Both are for copying pages from one page list to another page list
If both page list to same class, then use “Append to”
If both page list refers to different classes, then use “Append Map to”.
1.2 How to call decision table & decision tree from a DTF?
A. pxEvaluateDecisiontable (Page Name, Declare Rule Name).
pxEvaluateDecisiontree (Page Name, Declare Rule Name)
ObtainValue (Page Name, Declare Rule Name)
1.3 How to call an Activity from data transform?
A. We can use Below Functions.
1.Callactivity (Page Name, Activity Name)
2.pxExecuteAnactivity (Page Name, Activity Name)
10. What is Web Services?
Web Services: Web Service is a program, used to expose some data to third party requestors.

Web services can be used to establish connection between two applications over web, in order to exchange Data.

When we are working with service. We have two systems.

1. Consumer or Requestor (Just sends a request and receives response)


2. Provider or Service Provider or Producer (Where actual service program is built)

Using web Services two application can communicate on web using different Protocols like SOAP, REST, MQ, HTTP, etc... When communicate
one application is going to request for data from other application.

The application which requests for Data is called as consumer and the app which responds is called as Provider.1. Consumer is going to send
Request whereas Provider is going to Respond.

PRPC application can be a requestor or provider. (Being PRPC application a requestor/ Consumer we need to create CONNECT rules like
Connect-SOAP, Connect-REST, Connect-MQ etc…) (Being PRPC application as a provider/Respond we need to create SERVICE rules like
SERVICE-SOAP, SERVICE-REST, SERVICE-MQ etc…)

Understanding SOAP Protocol:

SOAP protocol supports XML Data structure. While using SOAP, being a consumer or provider, we must have to implement below two
techniques

1. Converting from Clipboard to XML (XML Streaming) For this in Pega We have to Create XMLStream Rule.
2. Converting from XML to Clipboard (Parsing XML) We have to create ParseXML rule.

While Working with Web Services of SOAP Protocol,

1. As a consumer we have to create Connector Rules (connect SOAP Rule)


2. As a provider we have to create Service Rule. (Service SOAP Rule)

To locate the service, we need END POINT URL. While Working with Building of SOAP service, once service is create we need to generate
WSDL URL and provide it Requestor.

WSDL: Web Service Description Language. This document contains details about web service (SOAP Service)

Details Are: 1. End Point URL, 2. Request Parameters,3. Response Data Structure,4. Authentication Details.

Providing WSDL URL to requestor’s means, providing all the Meta Data about service.

After we build SOAP service, we need to generate WSDL URL.

To work with building a SOAP service, we need to create below rules.


1. Service Package 2. Classes 3. Properties 4. Data Type (Table) 5. Service SOAP 6. XML Stream 7. Parse XML
8. Activity to perform Processing 9. Work Integration.
All these rules, can be create in Integration Rule Sets and Under Integration Classes. For services, we need to create under Work
Integration Layer. All these rules get automatically created by an OOTB Service wizard
The Navigate of Configure view- integration-services-Services wizard.
1.1 What is Stateless & Stateful in Service Packages?
Stateless: Means the session ID gets created by services. It can recognize the follow up request. EX: Gmail
Stateful: Means No session ID gets created. Every request will be created as a new request. EX: Google

11. What is SLA (Service Level Agreement)

SLA can be created under Process Category. Service level agreement defines the goal, deadline and passed deadline time intervals, urgencies
and escalations. SLA can be created and applied on an assignment or on a work object. SLA there is two types of SLA Available

1.Assignment level SLA: - When an SLA is Applied on assignment shape then it is said to be Assignment’s level SLA. Here SLA is applicable only
to one assignment on which we call it. ***(To apply SLA on an Assignment, go to assignment Service properties level = SLA rule Name)

2.WO Level SLA: - When an SLA is Applied on WO. It is said to level SLA.WO level SLA can be applied by assigning the property. WO Level SLA
will be applicable in the work flow.

SLA Defines three-time intervals for a task to get completed also It defines the Urgency (Priory).

SLA Time intervals are 1. Goal Time 2. Deadline Time 3. Passed Deadline Time

1.Goal Time: - Goal Time start calculating immediately once the assignment gets created on which we apply the SLA.

2.Deadline Time: - Deadline Time start calculating immediately once the assignment gets created on which we apply the SLA.

3.Passed Deadline Time: - It Starts Calculating from the time deadline is completed.

Urgency: - Urgency defines the priority of an assignments. Urgency value ranges from 0-100 where 0 is minimum and 100 is maximum.

There are 5 types of Urgency available.

1.Default Urgency: - Which can be assigned to the OOTB property pxUrgencyWorkClass in the pydefault Data transform.

2.Initial Urgency: - which can be defined in SLA rule Form. Once the task is created Initial Urgency. Value = Default Urgency +Initial Urgency.

3.Goal Urgency: - Once the Goal time is completed. Urgency = Default Urgency +Initial Urgency + Goal Urgency.

4.Deadline Urgency: - Once the Deadline time is completed. Urgency = Default Urgency +Initial Urgency + Goal Urgency+ Deadline Urgency.

5.Passed Deadline Urgency: - Once the Passed Deadline Time is Completed. Urgency = Default Urgency +Initial Urgency + Goal Urgency+
Deadline Urgency+ Passed Deadline Urgency.

We can add more than one escalation at a given time interval. At dead line and passed deadline the same type of escalations can be defined.

All these escalations gets executed in Back ground upload goal , deadline and passed deadline times breaches.

Below are escalations

1. Apply Data Transform: Calling DTF


2. Run Activity: Calling Activity.
3. Call flow: Flow which is called will be executed.
4. Transfer: Assignment gets auto rerouted to work list or work queue accordingly.
5. Notify Assignee: Email will be sent to assigned operator.
6. Notify Manager: Email will be sent to reporting manager or current assignee.
7. Notify Party: Email will be sent to work party.

SLA Can be initiated

1. Once assignment is ready (Default): Once assignment is created SLA starts running.
2. Dynamically Defined by Property: We can use a Date time property, once this property value is matching with current server time
then SAL will get start running.
3. Time Delay: we Mention

12.What is Data Type?

Data Type is Just like a Table which will have Data Storage. Make sure that Your Data Types create under Data Classes. Data Types Must be
derived from OOTB class “Data- “. Data Type classes are Concrete Classes, which “Does Not belong to class group”. Does Not belong to class
group: - This means the classes will not fall under inheritance path of Class Group. This are Global to multiple different class groups.

When We create a Data Type PRPC automatically Creates Below Components and Rules.
1. It is going to create a Concrete Class Under Data Class.
2. Properties (Which are like columns of table)
3. Physical (Dedicated) table gets created in Rule Base.
4. Data base Table mapping rules gets created.
5. Data Pages (List Type Pages, Page Type and Savable)
6. Report Definition

13.What is Activity and Methods?

A. Activity is a rule which is used to implements business logic. It can be created under Technical Category., Activity is instance Class is Rule-
Obj-Activity.

Method: - Method is something which is already having predefined business logic written in Java Code. PRPC provides many different methods,
those can be accessed under Method Dropdown in an activity rule.

Obj-Browse: - This method is used to fetch multiple instances from a table. Data Structure is Page List and Data is Read only.

Obj-Open: - This methods can be used to fetch single Record from tables on Class Key.

Obj-open-By-Handle: - This method is used to fetch single Record from tables on Primary Key (pzInsKey).

Obj-Save: - This method can be used to insert or update an instance into Tables.

Obj-Delete: - To delete instances from table.

Obj-Delete-By-Handle: To delete based on Primary Key (pzInsKey).

Commit method: commits the entire differ queue items respective table or tables. Commit method releases lock

Write Now: It is an immediate commit operator which is being done only on one table. This option in obj-save cannot release the lock.
Rollback method erases or rolls back entire differ queue items means all the obj-saves done in a thread. The roll back will not have any impact
after the commit is executed.
Obj-save-cancel: erases or rolls back only the latest un committed obj-save.
This method will not have any impact after the commit is executed.

1.1 How to see Param value?


A. Parameter we cannot see on clipboard. We only see on Tracer. Parameter page name “Unnamed”
1.2 How to pass parameter page from one rule to another?
A. By selecting the option “Pass Current parameter Page”.
1.3 What is the Difference b/w Class key & PzInskey?
A. Class Key: - this is unique ID of an instance which is defined in the class rule forms. For given class, we have more than class key, is
Possible.
pzInsKey: - is unique primary of an instance. An instance will have one and only one pzInskey.
1.4 What is the Difference b/w Primary and step Page?
A. * Primary Page is the page on which a rule run.
*** Step Page is the one which we mention at the specific steps. We didn’t mention step page it take a Direct
“RunRecordPrimaryPage” in Tracer.
1.5 Where can see local variable defined on the rules?
A. We can see local variable on tracer, On a page local variable.
***To see this, we need to choose an option on tracer settings, local variables.
14.What is Difference B/w Standard Agents & Advanced Agents?

Advanced Agents Standard Agents


Agent Will woke up by Master agent System Pulse at schedule Agent Will woke up by Master agent System Pulse at schedule
Time Time
Agent When wake up, it directly executes agent activity. When agent wakes up, it looks up PR_SYS_QUEUE table, for an
item with status Scheduled.
Agent activity gets executed only once per wake up. Once activity Agent activity gets executed 0 – N number of times per wake up.
is completed, agent will go to sleep. If the queue has 10 items activity will be executed 10 times.

We need to write both business and transaction logic. We are required to write only business logic. Transaction logic
will be taken care by Process commander.

This mode of agent is recommended for non-transactional This mode of agent is for transactional processing.
processing
This agent will get sopped when an exception occurs. This agent is going to update the queue item status to “Broken-
Process” if an item processing fails…
It is going proceed processing remaining items after current
item.
Agent gets executed on the access group mentioned in agent rule Agent activity gets executed on Requestor’s access group who
form. had kept the queue item in queue table.
If we do not mention any access group, it runs on guest access
group

15. What are the difference between SOAP & REST?


SOAP REST
It supports XML Data Structure. It supports XML Data Structure, JSON, TEXT, HTML, etc…
Description about the service and be generated as WSDL Document, We provide End point HTTP URL, Model request and response.
WSDL URL has to be 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

16. What are the difference between Comparison/differences between Obj and RDB methods for Internal and External DB tables.
Obj Methods RDB Methods
Obj Methods will work on Rule base tables as well as external DB tables. RDB work on Rule base tables as well as external DB tables, but it can
fetch only Exposed columns.
Obj Methods can fetch the content saved inside BLOB column. RDB methods can NOT fetch content available inside BLOB, it can
retrieve BLOB as BLOB.
Obj-open-by-Handle, OBJ-Delete-by-Handle can be used on Internal Obj-open-by-Handle, OBJ-Delete-by-Handle can NOT be used on
tables. External tables.
When using Obj methods class and table is mapping is must. When using RDB methos.
• If we are writing query like
SELECT vinid, company, model, make year FROM {Class:
Hano-Data-vinvalidation}
WHERE vinid = '{Asis: MyServicePage.Request.Input.VIN}'

Class name in place of Table name.

Here Class and Table mapping is must.

• If we are writing query like


SELECT vinid, company, model, make year FROM public.
Vinvalidation
WHERE vinid = '{Asis: MyServicePage.Request.Input.VIN}'

Direct Schema name and table.

Here Class and Table mapping is NOT Required.

That means FOR RDB methods Class Table mapping is


optional, that depends on how you write the queries.

Obj Methods Auto Generates the Queries and that too those are RDB methods, we need to write queries in connect SQL rules.
optimized w.r.to Process Commander.
When using OBJ methods, Query gets generated at run time, converted When using RDB methods, Queries are Direct Queries hits the DB.
to post Query then it hits the DB.
When we use the direct tables name in Connect SQL rule.
Obj Methods cannot Execute Stored Procedures. RDB-List can call Stored Procedure.
OBJ Supports only Inner Joins.
RDB supports All Joins.
1.1 Can we run a report definition on external table?
A. yes, as long as we have class and table mapping is there.
• What is the limitation w.r.to joins while using report definition in internal or external tables?
A. RD supports only inner and full joins but not Outer.

*What are the reasons pega has RDB methods, when we can use Obj Methods for external tables as well.

A. The two main reasons are

1. In a connect SQL we can writes joins among multiple tables, where it supports all joins like inner, outer, full joins.

2. We can call stored procedures using connect SQL tab, Browse tab.

1.2 Working with External Database integration?

To work with External DB integration, we need to follow below steps.


1. Create a Database in DB environment (local or remote), define required privileges.
2. Create a Table, defined require privileges.
3. Get the connection details of DB from DBA.
4. Create a Database rule in PRPC, to connect to external DB.
5. Create a Data class, properties and define keys.
6. Create a Database table rule, map the above class to External Table.
7. Use Obj or RDB Methods to access the data from external Tables.
8. When using Obj Methods, no need to create Connect-SQL rules.
9. When using RDB methods, we have to Create Connect-SQL rules, and write our own SQL queries.

Below are the RDB methods that PRPC Provides.

1. RDB-List (Return pxResutls)


2. RDB-Open (Return single Instance Page)
3. RDB-Delete (Deletes instances from table)

RDB-Save (Creates or Updates instance of table)

1.2 How to create a DB, Tables & define Privileges using Postgres SQL Environment?

Requirement: Create an External Database ‘primextdb’. Create a table ‘vindetails’. Column VIN is Primary Key.
Make a connection between PRPC environment and above DB and its tables.

17.What is Email integration?

Two types of Integration

1. In Bound: When an email is received, PRPC read the email content and process the data.
2. Out Bound: Sending an email notification being trigger from a mail box by Process commander. Mail box can be, Gmail, Hot mail,
Yahoo, outlook etc…

SendEmailNotification @baseclass

To work with Out Bound Email Integration, we need to know the below inputs.1. From Email Address 2. SMTP Host of the From Email Box.
3. Password of From Email Address. 4.To Email/Emails.

Correspondence: - A correspondence rule is an instance of the class


Rule-Obj-Corr. It can be created under process category. It can be used to create the messages for Email Body. This can be assigned to a
property by using the method Property-Set-Corr.

DSS (Dynamic System Settings): - DSS entries allows us to maintain different values for Different application server environments by allowing
us to change the values without check in and check out.
18. What is Agents?
Agent is internal background process or requestor, which is gets associated with 1) Schedule 2) Activity 3) Access Group 4) Mode.
Agents wakes up at the sc he dul e time and exe cute s its associated activity. When an agent wakeup, it will run on the associated
access group. PRPC has a predefined master agent ‘System Pulse’, which wakes up all the user created agents at their schedule time.
** Agent is an instance of Rule-Agent-Queue Whereas agent schedule is an instance of Data-Agent-Queue.
Modes Of Agent: - There are 3 differences modes available.
1. Legacy: - This mode is been deprecated from PRPC version 5.4
2.Advanced: - a) When an advanced wakes up at schedule time it will directly executes agent activity without bothering about Agent
Queue Items. B) Usually, we will create advanced without applying AQM (Auto Queue Management) and these agents will be
configured to run on Single Node. C)In an advanced Agent Work Object locking and Transactional Commit must be taken care by our
self.
3.Standard agent: - Standard agent will be applied with AQM
AQM (Auto Queue Management): - This programmed is responsible for instructing the agent weather r to executed associated agent activity
or not. When the Queue Items are there, standard agent will execute agent activity else it will not execute activity thus go to sleep.

Queue Items can be put into agent queue table PR_SYS_QUEUES by using the method/activity. Queue-For-Agent/QueueForAgent.

When the standard agent wake it will execute the agent activity ‘N’ number of times (with status=scheduled) where ‘N’ is the number of
Queue Items in the PR_SYS_QUEUS table.

A queue is associated with the below status values.

1.Scheduled: - This is initial status when a queue is been inserted into the table and which gets process by agent during next run.
2. Now-Processing: - This means that the Queue is picked by agent and is being processed.

3. Broken-Queue: - When Queue items fails in its processing, the status will be updated to Broken-Queue.

19. What is Rule Resolution?


Rule Resolution: It is an internal algorithm which runs every time when a rule is been requested by a requestor. It decides whether to
process the rule or prevent the rule.

The criteria for processing or preventing the rule are below

1.Cache 2. Rule set Versions 3. Circumstance 4. Inheritance 5. Rule Authorization 6. Rule availability

Rule Availability are 5 types

Available: Current class, highest version is available, the rule will get picked, processed and presented to requestor.

Not Available: Current class, highest version is NOT available, the rule is ignored for higher version, Process commander has picked the rule
of previous version of same class, processed and presented to requestor.

Final: Current class, highest version is FINAL, the rule will get picked, processed and presented to requestor.

Withdrawn: Current class, highest version is WITHDRAWN, the rule is ignored for higher version, and all previous version of current class.
Process commander has picked the rule from parent class

Blocked: Rule will not be processed at all.


Rule Authorization: When a requestor requests for a rule, process commander runs rule authorization as part of rule resolution.

PRPC tried to identify


i) the rule set of the rule
ii) from ruleset, it identifies which application this rule set belongs to.
iii) Next, it looks to, the access group of application.
iv) Then finally it checks the current requestors access group is matching with above access group or not. If so, then operator
authorized to access the rule, else not.

You might also like