PEGA MATERIAL http://pdnworld.blogspot.com/2014/01/what-is-agent-in-pega.html
Pega PRPC topic to learn top 10 usabulity Guardrials top 10 Guardrials to Success What Module have u worked in your project? What is your CLASS STRUCTURE What is framework layer what is division layer in ur project What is organization layer in ur project? How many flows u have work and what are flow names What is ur application version How do u get work daily How do u report to manager Hw many sprints in ur project What all environments have u worked what is ur application name Have u worked on INTEGRATIONS If yes, ask him to explain completely What Module have u worked in your project? What is your CLASS STRUCTURE What is framework layer what is division layer in ur project What is organization layer in ur project? How many flows u have work and what are flow names What is ur application version How do u get work daily How do u report to manager Hw many sprints in ur project What all environments have u worked what is ur application name Have u worked on INTEGRATIONS If yes, ask him to explain completely Introduction to PRPC Ø Using Process Commander and PRPC Developer Portal Basics Ø Architecture Ø Common Rule Types Ø Examining Rules Using PRPC (Class, Class Group, Rule Sets etc) Ø Understanding work and data class structures Ø Understanding Properties Ø Process Flows (Flow types, Shapes ) Ø Interface overview (Harness, Section etc ) Ø Rule Set and Security Overview Ø Using the Clipboard and tracer Ø Implementing PRPC Ø Building Class Structure Ø Creating Property and Model Rules Ø Creating Flow Rules Page 1
PEGA MATERIAL Ø Building the Interface Ø Enhancing the Interface Ø An overview of Declarative rules Ø Validation Ø Using decision rules Ø Using Activities Ø Asg work Ø Integrating PRPC Applications Ø Connecting to an External Relational Database Ø Documenting and Saving your Work PEGA Hands On Ø Class Structure And Rule set Design Ø Environmental Setup Ø Application Profile, Application Accelerators Ø Building Primary Business Flows Ø Deg the Data Classes and Data Class Models Ø Building Secondary Business Flows and Exception Flows Ø Implementing Decisions, Validations etc… Ø Execution of flows and Unit testing and PAL Reports Ø Documenting and Packaging the rules. ===================================================================================== BPM :Is a Business Process Management, Which is used to Maintain The Organizational Work Flows To obtain or to get a Quality Work Or good Productivity. Every BPM System Runs or incorporates Based On 1.Planning 2.Degs 3.Building 4.Operating 5.Maintaining Process Commander s Smart BPM Through The Below rules 1.Flows 2.Assignments 3.Decision 4.Routing
Page 2
PEGA MATERIAL By Using BPM will improve the Operational efficiency, cost saving and will stream line operations and process BRE: (Business Rule Engine) :Which is used to separate the Business rules from the application or to share The Business rules Across the application. PEGA: Pega is a combination of BPM and BRE
PEGA=BPM+BRE PEGA Systems empowers business to easily automate and change their business process through BPM Software.
PRPC = Pega Rules Process Commander
Generally ,PRPC application Provides life cycle management through 6 Functional Capabilities(6R’S) 1.Receive 2.Route 3.Report 4.Research Report 5.Respond 6.Resolve
Receive
Research
Route
Resolve
(Create Work) (Resolve Work)
Respond
(Process Work) Business Rules Business rules whether stated implicitly or explicitly contains all your organization business knowledge. A collection of your organization business policies, constraints, Computations, reasoning capabilities etc Business Rules Engine
Page 3
PEGA MATERIAL A business rules engine is a software component that allows business rules to be recorded in a non-procedural, non-programming form, and uses advanced software techniques to compute the consequences and results of rules. The PegaRULES component of PegaRULES Process Commander provides a powerful rules engine ing business process management, and other applications through services.Developed in Java, highly scalable and reliable, PegaRULES s declarative rules, multithreaded execution and a large number of industry interfacing and standards. The business rules engine can be embedded or called from another system using Service JSR94 rules. PegaRULES database The rules, transactions, and other data ing a Process Commander system are stored in one or more Oracle, IBM DB2 or Microsoft SQL Server databases. The database that contains the rules — all the instances of concrete classes derived from the Rule-base class — is known as the PegaRULES database. This database is also sometimes identified as the rulebase, but it contains more than rules.
Q. What is PEGA? Pega is the software for customer centricity. Many of the world’s leading organizations use Pega to drive revenue growth, improve customer experience, and enhance operational efficiency. Pega’s unified offering is recognized by industry analysts as a leader in CRM, BPM, case management and business rules. Pega’s software complements existing systems and offers a wide range of industry applications designed to accelerate time to market. Q. What is PEGA PRPC or What is PRPC? PRPC (PegaRULES Process Commander) is a software product created, licensed, and marketed by Pega systems Inc (PEGA). PRPC is the core component of Pega systems “SmartBPM” suit of BPM (Business Process Management) solutions. PegaRULES Process Commander comes essentially as two discreet entities, PegaRULES : Core Java-based/Object-Oriented Rules Engine. Process Commander : Layers of pre-configured rules that provide a solid foundation on which to perform development and customization. Incorporating both of the following components, PRPC addresses simple to complex business challenges: Page 4
PEGA MATERIAL BPM Procedural processing through a -interactive BPM / BPMS(BPM Suite) tool. BRE Declarative “On-Change” processing through an event-driven tool. The advantages that PRPC offers from a Business perspective are as follows: Software platform enabling businesses the opportunity to migrate all their disparate, diverse, and often complex business rules onto one platform. Ability to streamline, automate, and document business processes. Consolidate multi-stream processes into one system. Through service connectors (such as SOAP, MQ, active file listening) connect to existing enterprise applications. data between systems and have such information parsed, extracted, and interpreted. The advantages that PRPC offers from a Developer perspective are as follows: Development can be achieved in small iterative-based parts Development is contained within heavily graphic-driven ‘Rule Forms’ that are version and Ruleset controlled. All run-time Java code is compiled and executed by the system at run-time. Changes or new configurations can be tested in real-time, even on production systems without affecting other s or processes. Ultimately PRPC is a software platform that allows businesses the opportunity to migrate all their disparate, diverse and often complex business rules, practices and processes into one platform. The platform offers the possibility of streamlining, automating and documenting business processes in a way that can truly allow consolidation of multi-stream processing into one system. Through PRPC’s myriad service connection capabilities (such as SOAP, MQ, active file listening on directories etc…), it is possible to connect already existing enterprise applications to PRPC and to the platform messages, data or information and have such information parsed, extracted and interpreted for use either within driven processes, or even system-driven events. So, what does that really mean? Think of PRPC as a box of sophisticated Lego. You are provided with a number of building blocks that enable you to quickly and easily build an application to suite the requirements of your business. The Lego blocks (or Rules as Pega systems calls them) represent different parts of your application. There are rules for screens, decisions, correspondence, interfacing to external systems, etc. You can take these rules and put them together to design and build your solution. This also means that it is very simple and easy to change your solution to suit the ever changing requirements of the business – you simply change the lego bricks around!! Q. What is Rule Engine or What is BRE (Business Rule Engine)? A business rules engine (BRE) is a software component that allows non-programmers to add or change business logic in a business process management (BPM) system. A business rule is a statement that describes a business policy or procedure. Business logic describes the sequence of operations that is associated with data in a database to carry out the rule. Page 5
PEGA MATERIAL A business rules engine works by separating execution code for business rules from the rest of the business process management system. This allows the end to change business rules without having to ask a programmer BPM development for help. When a change is made, the engine will evaluate the change’s effect on other rules in the system and flag the if there is a conflict. According to authors Alex Berson and Larry Dubov, a complete business rules engine will include the following: Business Rule Repository – A database for storing the business rules as defined by the business s. Business Rule Editor – An intuitive interface that allows business s to define, design, document and edit business rules. Reporting Component – An intuitive interface that allows business s to query and report existing rules. Rules Engine Execution Core – The actual programming code that enforces the rules. How does PEGA do? As industrialization and productivity continue to increase, the unit of opening skills obtaining traction in India and elsewhere, is to work with Pega. PRPC or PEGA Rules Process controller is not a language or compiler etc. It’s a Business Process Management tool, also developed in Java, and uses OOP and java thoughts. Since we don’t have to build the system of the mark, unlike regular programming, PEGA is now trending big time. It’s super active, adaptable and extensible. We compose the Business Process Flow and determine the functionality. For example, Order Management System, Call Center Management, Finance, Healthcare, etc. Basically, anything that owns a Business flow PEGA has other products, but they seem to be known for their technology permit, the creation of an automatic business process management tool. What are PEGA use cases? Application Profiler: An Application Profile is an output from the Application Profiler, an assisting DCO development tool that works on iterative approach to obtain legit processing details for the application you plan on building. Profiles are created by the collaborative resolution of business analysts, lead architects, and other project team who define primary design and process requirements. On an average, it takes 2-3 days of devoted energy to build and complete a profile. Classes that are mapped to the PegaRULES database are known as internal classes. Concrete classes that correspond to rows of an external database are known as external classes. Application Lists Rule-Sets and Access Group lists Application. We can have more than one Access Group for a particular Operator ID. These Access Group can have different Applications/Work Pools with them. Therefore with one Operator, we can switch work pools as well as Applications.
Page 6
PEGA MATERIAL RULE: System Architect modify and create Object Instance that are saved to the database known as Rules. Rule is an instance of a class (what is a rule). A Rule is a single instance of a class derived from the Rule-base-bclass. Example : Rule-obj-Property is a Rule type and a property named Name is Rule. Rules are building blocks of applications A Rule type is a concrete class derived from Rule-base class A Rule is a named object that defines the behavior of part of an application. Rules are stored as XML Documents ,which are written to the Rules Repository Database. At runtime, the XML documents are ed and converted to java code for execution. Rule Types are the type of these instructions e.g. Flow rule, Send Email etc. Rules in an application are the instances of these rule types. Rule is instance of a class, rule gets stored into table(which table ?), for which the class is stored. what is Rule ? Rule is instance of a class --> Rule gets stored into table---->(which table )---> rule is instance of a class right, it means the rules gets stored into a table for which the instance class is mapped to.
in PRPC the instance classes will have
mapped with DB Tables. Ex : for Property is a rule, the instance class of a property is Rule-obj-property. for Data Transform instance class is Rule-obj-model. pxObjClass
= Holds Instance Class name of a Rule.
Q) A class is mapped to which table ? ANS) Test Connection in the class rule form. Q) Any Rule in Pega that gets Stored in Rule base Table will have unique Primary Key is "PzInsKey".
in PRPC if you click any hyperlink it Open any Rule PRPC uses it's
"pzInsKey" by performing 0bj-Open-By-Handle and the respective table. (01.Pega Interview Session Day-1- Pega Training 919652532753) Q)Operator : to get the values from the operator table "Data--Operator-ID"+ Operator.pyReportTo (Manager) "Data--Operator-ID"+Manager.pyReportTo (Senor Manager) Q) write an generic Activity to update the label of any rule in PRPC ?
Page 7
PEGA MATERIAL Method is: Obj-Open-By-Handle (three parameters ) --- This is main method..by this we can delete. but if others are working on the rule
we use this below
Param.Instanceclass + Param.RuleClass + Param.Rulename Q) write a generic activity to Delete the Property from PRPC? Method is : obj-Delete-By-Handle Q) what are the main columns that one should know in PRPC ? pzInsKey ----> Primary Key pzPVStream ---> Holds all the data of rule or transaction (Work Object) pxCreateDateTime ---> with work object (the time work object is created/ with Rule --> the time rule is created) pxUpdateDateTime --> pxCreateOperator pxUpdateOperator pxObjClass --> Instance class Q) i have a flow in production with 4 assignments, one assignment should removed. i have in-flight cases which should use the deleted assignment after the new release. ? possible ways : 1. circumstance 2. tickets 3. decision tape also. the Condition property for either of the above is based on pxCreateDateTime . (02.Pega Interview Session Day-2- Pega Training - 919652532753) Q) Name any one of the OOTB parameters in PEGA, which should be never be part of Declare Expression ? pxCreateDateTime. Q)How to Restrict a property such that it should never be used in declarative rules A)Property advanced tab- check Option "can not be a declarative target" Q)
how to unlock a RuleSet version, when you donot have a ?
A) pyVersionSecure (XML page )should be false pyversion -->should be blank technical steps : (update rules using Activity ) Rule-Ruleset-version Table has two COlumns " pyVersion" and "pyVersionSecure". should be updated to empty and false. Q) how to delete a class from PRPC ? A) class is instance of a Rule-obj-class , so if you remove the an entry of the class it should be remove ... Q) what is Dual inheritance in PEGA ? can you give an example ?
Page 8
PEGA MATERIAL A)at a time a class having direct + patterns inheritance make class to have multiple inheritance is called dual inheritance. a single class having at a time direct inheritace parent and pattern parent. Q) if child work object is information is stored in parent table like pcWork ? under which column we can see work object information/ or there is any embedded pages in pzpVStream Column? A) Parent children gets stored in separated rows. by same table. Q) Dynamic System etting vs System Settings? Q) how to call a decision table from decision tree ? A)configuration of decision tree "allow selection of call decision option ". Q) Spinoff will be useful when you want to initiate/start another flow parallel without stopping the current flow. the current flow or main flow which has spinoff as sub process proceeds to the next assignment in the flow and spinoff flow will get initiated to the work item ? A) spinoff is available in sub process shape. selecting spinoff option makes process flow asynchronous ie.. process will not wait for the sub flow to get completed. Q) what is the importance of lock on obj-method? Q) how to create a temporary work object ? also explain technically ? A) select to indicate that this flow creates s temporary work item. A temporary work item is created and resolved by a single operator or by straight forward processing and is never saved in a database. use this option in appropriate settings , as report ,history and attachments features are not available for temporary cases. the fallowing restriction are apply : Temporary class do not have case ID. Temporary cases cannot of a cover. History additions performed on such objects do not cause a flow to fail, but not have no effect. Q)can a screen flow is starter flow in application ? yes , we can create a activity in the activity call OOTB activity "New From Flow" and the parameter "Flow name and Flow Class name" Q) diff between obj and RDb Methods ? Obj for internal Rule base tables. RDB for External tables. obj cannot executess stored procedures , RDB can executes stored procedures using obj we can implements s , RDB can have s Q) when we run the report definition rule from an activity ?
Page 9
PEGA MATERIAL A) call Rule-Obj-ReportDefinition.pxRetriveReportData( Page name, Report Class, Report Name); Q)what are the possible ways to call an activities in PEGA ? A) Q) what are the ways to call an activity from another activity ? A) you can call call-branch (what is) you can use Queue (what is) Q) what is the diff between call and branch ? A) Q) how to call activity from a Data transform or Data Table? A) Q)what are editable mode in data pages ? can a node level data pages are editable A) Q)what is the purpose of keyed page access data pages ? A)this option is available only for list type data pages. in the page list pages one or more properties can be mentioned as keys. while we this key the matching page data will be retrieved. these keys can be ed when the data page is called only at property level but not form dropdown or repeating layout or activity. Q) how to parameter to data page when it is referred in an activity ? A) D_Datapage[Param1.Value1,Param2.Value2] Q)where can we see the editable data pages on Clipboard ? A) under pages Q)call a decision table from the data transform ? A) @DecisionTable:ObtainValue(tools.myStepPage,"StageCode",true). Q) when to s from diff countries triggers(both GMT and IST format saves) change both formats as one format as GMT (because DB people issuing same problem)? A) formatdatetime() ---- function Q)when in PRPC portal, the credentials we are providing Authentication or Authorization ? A) authentication : Authorization:
Page 10
PEGA MATERIAL
Q) tell me any three rules (when we are configuring them ) without class and Ruleset? A) system rule, Data instances without versioning Q)what is a linked property ? where will you access that Property ?and what is useful with that ? A) Q) if suppose i have three different classes (A,B,C) mapped to 3 different tables, now my question is A table has "Customer Name" Data B table has "Phone number " Data C table has "Address " Data
then finally you have both B and C data
into Table ? A)we need to create index for phone number and address page List. when we save customer data automatically index tables gets updated. Q)append to and append map to (common questions recently in every interview)? A)This Option is available data transform. append is for loop, Q) what is the use of Interaction in Tracer? A) Q) how many ways we can check in & check Out rules in pega platform ? A)rule form , Bluk check in & check out, in clipboard "MyCheckedoutRools".
Page 11
PEGA MATERIAL Q)A parent case has the ability for a to generate up to 5 parallel sub/child cases. those child cases can update values on the parent case ? A) we need to use calculation tab of the parent case type rule. Q)how will you manage, and what are the considerations of this data propagation challenge ? there should not be any declarative target properties used in this make sure by the time child is instantiated the respective source properties must have values assigned. Q) Bus, Tire, seat ,ingers---how do we create these classes ? A) Bus (Page) , Tire (List) , Seats (List) ingers(List) Q) two page list we have --need to move the data from one pagelist to other page list based on some condition ? A) Activity -----> precondition, loop, Page copy Data Transform ---> Condition, Loop, AppendTo Q)need to copy data at one stage in child to parent how u will do ? A) Q) what is organization class structure and different types of layers ? A) Org-Div-Unit (WOrk) {Implementation Class Group} ---> Framework Class Group Org-FW-DivFW-Work {Framework class Group} --> work-COverAt Org, Implementation, Framework we have Data and Integration Layers--> Data- and IntOrg, Div, Unit (Work) -- Insurance (Work Type or Case Type) {Belongs to Class group} Org, Div, Unit (Work)--- Loan (Work Type or Case Type) {Belongs to Class group} Org, Div, Unit (Work)--- Banking (Work Type or Case Type) {Belongs to Class group} Data Classes are does not belongs to class group Q) what are the different mechanism to initiate case ? (what are different options will be given to s to create at runtime) ? Portal --->create menu (Case Type or flow) Case type --> pyStartCase Flow --> Create a new work object selected on the flow Runtime we can activities to create a case : Add, AddWork New , NewFromFlow
Page 12
PEGA MATERIAL Email Intonation , Agents for listeners. Q) Suppose in a screenflow, you are having 4 assignements, all the assignements should be completed with in 2 hours, can we implement this or not ? if yes , how will you design this ? A) in the Screen Flow /sub Flow on process tab we can call SLA Q)how can we trace someone's work in production Environment ? A) For Technically : to SMA --> Choose the Requester Name--> Remote Trace. For Poduction :but in Business it is not possible, the the logs File. Q)what is WSDL file ? and Difference between WSDL and Endpoint URL ? A)WSDL : web service description Language WSDL contains meta data. it describes the service , ..ie what are Request parameters, methods ,what is the endpoint URL and request and response parameters. and its xml Data structure. WSDL URL : WSDL Url Points to Location of WSDL Document. Endpoint URL : Endpoint URL is location where your service is Deployed. Q) What is XSD ? A) XSD will have the meta Description of the service. Q) how will you implement security features in SOAP ? A) Q)which agent Process SLA Rules ? ans: pega-ProCom Ruleset Agent Instance willl have an agent "Service Level Agenet" Q) there is a concept of SoftLocking ? what is this ? A: the Locking you perform using Obj-Open and Obj-Open-By-Handle Q) in ECS(Enterprise Class Structure) when do we use framework layer and when do we use Organization Layer ? A)Organization Layer and Framework Layer both will be accessible at all the class group. But FW layer is reusable application with which can be deployed on multiple pega application Servers. Q) we have a Data page it is getting populated from external table , then how do we configure load mechanism ? how would you know when to refresh the data page ie.. whenever the data in external tables changes how come PRPC Data pages gets refreshed . ? A. source mechanism --> Connector pzFlushDataPage Q) what are different ways to expose a property ?
Page 13
PEGA MATERIAL
Right click on property and optimize for reporting. (other way)
modify the schema of table run column population job
Q) what is associations and criteria and report s in RD ? A. class s : class s requires a common matching column between classes. Association : when there are no matching in the two classes. Q)what are different types of s ? A): Class s , Index s , Associate s Q)what is entry checkbox in screen flow? Q) what is the difference between data transform and activity ? using Data Transform we can run Obj Methods(Tables), Connector and Service methods. Data Transform Purely for Property Set (i e.. single, page , page list ..property) Operations. Q)what are the difference between Declare Trigger and Declare Onchange ? in What scenario you will explain what explain ? A) Trigger monitors a table and gets fired when DB Insert , delete, update operations being perform by Obj-Methods. OnChange : get fired whenever the property values get changed. Q) what is cover and covered? cover is parent case and covered is child case. Q) how to move from 4Th stage to 1St stage ? what is the activity ? A) we need to use change stage utility. Activity is pxChangeStage. Q) how d we create work object for child cases ? A) On Parent case type Rule, Instantiation option. Automatically installation : by system when
parent case stars (when Condition)
all Conditions related to other children or parent case (both on the status)
Manual installation :
we can use createcases smart shape.
Q) how to connect external Database. ? A) we need to create a Data--DB-NameRule. JNDI Connection Pool or JDBC URL Q) how to map an external table to the class ? A: we need to create Data--DB-TableRule
Page 14
PEGA MATERIAL DbName, Schema , and Table Name and do test connection. Q)what are the types of parameters in Data page ? A):
parameters
keyed page access--- keyed page access is available only to list type Data Page and it available to call only on property.
Q) Scope of Data page ? A) Thread Scope -- > data page will shared with in the work object. Requestor ---> Data page can be shared with in requester session among multiple work objects Node Scope. ---> can be shared among multiple requester who logon to same node. Q) when Data page will get created if we choose thread as scope in Data page ? Every time we create a new case when we have new thread opened Q)what happen when data page get updated but our Data page scope is thread ? A) from the next case onwards new data gets loaded. Each time we create a case
the latest data will available, for each case Data page gets
loaded with latest data with DB. Q) when the page will be removed, if the data page scope is thread ? A) refreshed for each Thread. Q)what is edit mode in data page ? A) there are two modes available Editable --> editable pages gets created on Clipboard under pages. Read only --> read only data pages under Data page. editable can be updated or deleted , these Data pages will not available at node level. Q) can we call a connector directly from Data page ? A) yes , we have connector option available in Data page Source. Q) when lookup option will available as source of data page ? A) For Data page of Type page , lookup option is available. Q)where willl you perform exception handling in Data page ? A)post load processing. we can call an activity and here we can handle any exceptions. Q) when will you go for standard and when will you go for advanced agent ?
Page 15
PEGA MATERIAL A)we have three mode of agents standard agent--> is for transactional processing ie.. it involves case processing. legacy agent --> advanced agent --> is for non-transactional processing means there is no work object processing is available. Q) what is Agent Queue ? why we need this ? A. when we are working agents, if we want process or execute agent activity multiple times/ wake up then this is possible through Queuing. here Queue means PR_SYS_QUEUE table. for each queue item in this table agent activity will be executed once. the Queue items with status "Scheduled" will be picked . while processing the queue item status gets updated into " Now Processing". if something fails during processing Queue status is broken processing . Broken process items can be re-queued . when we re-queue the items the status gets updated to "Scheduled". Q)what is the access group significance of access group in agents rule form? A:
at what access level the agent activity should be executed will be decided by
agents access group in case of advanced agents. Standard agents runs on the access group of requester who put the agent queue item. for standard agent the access group of requester overrides the access group in the agent rule form. Q)what will happen if you are not mentioning the access group in advance agent? if no access group specified in Agent rule Form, then advanced agent runs on guest access group. Q) how can you change the schedule of an agent in production ? Agent Schedule is the Data Instance of the class Data-Agent-Queue. we can directly open Agent Schedule rule and we can update the "Schedule" Q) i need to update all work objects daily, what kind of agent i need to select and why ? if you have a queue then Standard agent. No Queue then Advance Agent. Q) how performance is better when we used report definition compared with Activities ? Activity : when we create it is a defined . it may have bad coding. it may not be compatible with PRPC existing transactional model.
Page 16
PEGA MATERIAL Report Definition : it executes OOTB Activity rule pxRetriveReport Data to fetch the Data. this OOTB Activity is written fallowing the best practices of pega and it will not disturb the PRPC transactional model. Q) if you want to 10 tables, how to implement this using RPT rule. it should not impact application performance. A) we need to create a DB View and write report for this view. Q) if we want to share the data between two pega application ? (insurance and other is Claims) A) we have to use web services. Q) how many types of reports? A) List type Reports, summary /aggregate type (charts, Circles, Bar) Report, Sub-Reports. Q) getContent Activity ? A) This is OOTB Activity gets executed when we run list view. Q)Get Next Action ? / Get Next work /Get most Urgent ? A)the next assignment that have to work on. get most urgent is OOTB functionality which bring the urgent assignment to work on. by default it brings the assignment from work list. Q) in the Production rule from what is Individual instances to include ? A)here we can query the DB records and include their pzInskey. then Data instances will be moved. Q) what is "Exclude non-versioned rule" in product rule ? A)There are rules associated with rule sets but non with versions. when we select this check box, these rules will not be included in the product package. Ex : work basket, work group, Access group, Operator etc... Q) we have deployed in application, and applicaiton is running , after sometime you get a requirement to modify only one of the rule which we have already moved. how to achieve this ? A) we need to get
the pzInsKey of the rule Instance and include it in product
Rule, then package it. when we deploy this only one instance will be deployed into production. Q) we have made some changes and successfully tested in Dev, QA, , UAT and Production also after deployments.
Page 17
PEGA MATERIAL but when the business starts the latest code changes giving a technical issue which has broken application functionality and entire is stopped ? how do we handle. A) Q) in Activity suppose i have existing 10000 customers have common salary now i want to increase their salary dynamically at a time ? A) obj-Browse(page List) Loop (For page List) obj-open Property-set Obj-save commit;
---> by these steps we can update the values of employees
Q) what is the order of rule-resolution ? and can u tell some rule types donot undergo rule resolution ? A) rule cache (if rule available) not blocked authorized process and present Rule. if cache not available ---> collect all rules matching name and Type ignore not applicable Ruleset hierarchy, ignore withdrawn ignore not in applicable class hierarchy rank by Ruleset class circumstance find the best rule and keep in the cache. Data instance like OpID, Access group, work group, work basket, ...etc will not go through the rule resolution process. because these instance will not be associated with Ruleset versions, Availability and circumstance. Q) An application testing phase working fine and in production environment becomes slow ..what may be reson ? A) Load on the server can be more
Page 18
PEGA MATERIAL queries may result in huge returns of data Log file size may be huge on the server (Regularly back up log files from Linux or other Servers) Network issues Q) Difference between Exit-Activity and Activity-End ? A) Exit-Activity: ends the execution of current activity (like function return) Activity-End: ends the execution of all the chain of activity in the calling process Q) what is the main Diff between standard Agent and Advanced Agent ? A) Standard Agent
Advanced Agent
1. this is recommended for transactional
1. this is for Non-Transactional
purpose...ie...case processing
Processing .ie.. does not involve case processing . Ex : email , Archival DB
2. Standard used OOTB AQM
2. Advanced Agent will not use, we want to go Queuing. we need to design customer Queue mechanism.
3. standard agent runs on requesters
3. Advanced agent runs on the access
access group, whoever puts the item in
group specified in agents rule form.
agent Queue. 4. Standard Agent runs activity N
4. Advanced agent executes, agent
number time/ wake up where N is no of
Activity only one time for wakeup.
queue items 5. Activity Associated with standard
5. Advanced agent activity can be there
agent should be there in Work Object
in any class.
class 6. Standard agent can be on Multi Node
6. Advanced agent is recommended to
Environment
run on one node even though we have multiple nodes.
Q) what is AQM ? is AQM s standard agent only or Advanced Agent as well?
Page 19
PEGA MATERIAL A) OOTB AQM being used by standard Agent. if we apply AQM with Advanced agent, we need to implement our own Queue management. Q) Define Assignment Level SLA ? Work Object Level SLA ? A) Assignment Level SLA is only for one particular assignment on which we apply it. Work Object SLA is applicable throughout the case processing till it gets resolved. Q) i have one work object based on some condition. i want to route work object or to worklist or work basket...? how many ways we can achieve this...? if i want give the condition in single assignment itself how it is possible ? A) we need to write a custom route activity, which calls to worklist or to workbasket activities based on pre-conditions. Q) declarative rules in pega ? A. Q) diff between Rule_obj_Validate and Rule_Edit_validate ? A) validate
Edit validate
1. this is server side validate
1.this is client side validation
2.here we use functions
2. here we need to write java code
3. we can validate multiple properties
3. we can validate only one property
4. this validation specific to flow action
4. this is property level validation, any screen we use this property, it will be validated.
5. we can call this in activity using Obj-
5. we can call this using Property-
validate method
validate method. and also we can use page-validate
6.
6.
Q) difference between constrain and Rule_obj_validate ? A) Validate
constraint
Page 20
PEGA MATERIAL 1. this is the server side validation
1. this is the client side validation
2. this validation specific to flow Action
2. where ever we use property throughout our application constraint will get executed.
3. we call this in activity using Obj-
3. there is no need to call this, it gets
validate method
executed automatically.
Can we start a flow using activity and what is that method which is to be used? A) Yes, Flow-New method is used to start a new flow. Can we resolve an work object using activity? A) by using call generate ID and Call Add work to resolve the work object. Can we use Rdb-Save along with commit, if yes then why? if not yes then why? A) Yes, commit is used to save the data permanent in the DB. what is skimming explain? A) It collect the highest version of the every rule in the ruleset and copies them into new major version of that ruleset on the same system. EX: If we are skimming loan appl:05-06-07, the only options like 06-01-01 and 07-01-01, but we can not skim to 05-07-08 and so on. What is Access Group and Access roles and difference between them? A) Access groups make a set of RuleSet versions available to requestors. Use an access role name to convey permissions (capabilities) to a or a group of s. Access roles can be referenced in requestor instances, Operator ID instances, in access group instances, in activities, and in queries. what is Covers folder and object and differences among them? A) Cover is work object that is parent to one or more related work objects. One work party is present in the cover work object and also present in the covered work objects associated with the covers. Folder is work object in concrete class that inherits from the work-Folder-class. A folder object holds a collection of one or more other work objects providing access for reporting. What is SLA? where we use SLA? A) A service level rule is an instance of the Rule-Obj-Service Level rule type. Each service level rule defines one or two time intervals, known as goals and deadlines that indicate the expected or targeted time for the assignment, or time-to-resolve for the work object. If an assignment isn't completed before the time limit, the system can automatically raise the assignment, and cancel the entire flow, and so on How many requestor types are there and what are they? A) Application, Batch, Browser, Portal.
Backward chaining and forward chaining? Page 21
PEGA MATERIAL A) Forward Chaining: It provides the automatic calculations of the property value by executing the declarative rule, when any one of the input property value is changed. EX: If the Area property depends on the Length and Width property, then forward chaining causes the Area property recomputed each time either Length/Width value changes. Backward Chaining: It provides the automatic calculations of a property value by executing the declarative rule, when a value is needed for property rather than whenever inputs change. EX: If the Area property depends on the Length and Width property, then backward chaining causes the Area property recomputed each time the Area property is required. Diff b/n file listener and connect file? A) File listener used to import data from a file. Connect file defines the name and location of an output file created by ur application. what is local action? A) when action is finished work object returns to same assignment. what is WSDL file? A) it is web services description language.it is written in XML format. what is data-,work-,rule- classes? A) Rule- base class is the abstract class of the rule classes. It defines how an organization uses that application and run the business. Work- is the super class to all the classes that defines work objects. Data- is an abstract class that contains static data. Data- do not repeat the information stored in the other databases. such type of information can be accessed from the process commander system with connectors.
Virtusa Tell me abt ur project and roles and responsibilities? Declarative rules? Rule-Declare-Expressions, Rule-Declare-Index, Rule-Declare-Trigger, Rule-Declare-OnChange Rule-Declare-Constraints Declare on change? A) it is the instance of Rule-Declare-OnChange rule types. it is used to run an activity automatically at activity step limits whenever the specify property value is changed. this capability provides automatic forward chaining. EX: we can create a declare OnChange rule to send an email to emp whenever HRA,TA,PF is changed. we can define RDO rules property inside the embedded page. we need to specify page name and class name in the pages and classes tab. Declare pages? Page 22
PEGA MATERIAL A) it is the instance of Rule-Declare-Pages rule type. it is used to define the content of clipboard page that is available in read only mode for multiple requestors in ur application. the name of the declare page starts with Declare_. what is rule resolution? A) It is a mechanism to decide which rule need to be executed at run time. Work process of rule resolution? A)@ match the class hierarchy. @ filter by Ruleset list and availability. @ filter based on time @ Qualify on circumstance @ enforces access roles and privileges @ executing the survivor rule. What is circumstance? A) Circumstance is the optional condition and enhancement of rule resolution alg. diff variations of the rules within the same version created for diff flavors suit for different situation. circumstance works during the rule resolution, at run time system first find the rules based on class hierarchy then searches for a rules the requestors session needs, it compares the values of rule set, version, availability to determine which rule executed. call, branch? A) call Activity: the call activity instructs the current activity to find and run another activity using rule resolution. After the called activity completes the calling activity processing. the called activity can use its parameter page. the main advantage of call activity is reuse. Branch Activity: it is similar to call method. Branch activity refers to the another activity. the execution of the original activity ends the execution of the branched activity completed without return.. Diff b/w Obj-validate & Property-validate? A) ( obj-validate is we can do validations for multiple properties of a single work object) ( property-validate is only one property we can do validations for single work object) Mphasis What is Access Group? A) Access Group controls the security basing on the job functions. It is instance of Data-Operator-Access Group. Various aspects that can be controlled through access group are default and available types of works( also called as work pools ) , Primary RuleSets ( Access Control to RuleSets), Assigned roles, Portal layout What is Work list, Work basket? A) work list is a outstanding assignment waiting for a to perform them. work basket is a instance of Data--Workbasket class. Work object progress through a flow execution, the system creates assignment. Assignment may be created either with individual or work basket. what is parallel processing in pega? Page 23
PEGA MATERIAL A) running a parallel sub flow to the main flow or calling a service through integration shapes and at the same time processing a job..... what is Agent? A) Agents are internal background process operating on the server to run an activities. Agents are asynchronous and independent. They also perform system tasks such as sending email notifications and synchronizing caches across nodes. Activities they call run individually on their own scheduled and one activity doesn't have to finish another activity
How to integrate with SOAP (or) how to create a connect SOAP? A) service pkg, service soap, activity. what is diff b\n RDB,OBJ methods? A) Obj method can be used to fetch the data from Blob columns but RDB methods can only help to fetch the data from exposed columns RDB methods are faster than OBJ methods in of response time Normally we use OBJ methods for pega tables and RDB methods to fetch the data from external database what is exact difference between step page and page new(both will create the pages)? A) Step page defines the page context on which a method is going to be executed. step page does not creates a page..while page-new is used to create page what is exactly obj-browse and obj-list(why it is deprecated) A) obj-browse allows you to filter the data instead of fetching all the data...thus lesser memory consumption... deprecated means...pega does not recommends using it..but to previous version application they have kept it How to move code from development server to test server? A) create a new instance for product category, in that category we have to provide rule sets and rule set versions create zip file and moves to test server. when will we go for may start and authenticate? A) If calling an activity from any other activity may start check box is optional. if the activity getting called for the form submission then may start in need to be checked. Authentication is the process of determining the identity of or requestor. proper authentication is required for the activity to get start for the corresponding operator. Activity will not triggered when the authentication is checked. Describe Property-set method? A) set the value of one or more property values. it contains property name and property value. Diff between Obj-open & Obj-browse ? A) obj-open is used to open single value in the blob column. obj-browse is used to open more than one value in the clipboard page/external system Page 24
PEGA MATERIAL What is flow-action? A) it is the instance of Rule-Obj-Flow Action rule type. it is the one category in UI specifies the choices to performing assigned work object. Local FA: if action is finished, work object returns to same level. Connector FA: if action is finished, work object moves to next level. What is d use of Primary page? A) the primary page is nothing but a clipboard page. primary page is nothing but a step page in activity. it refers in . to display the property.. Why u need class group? A) we need to add one or more class groups to create the work pools in which associated in the access group to create the work objects. • What is SLA and how do u know whether it is working or nor? A) it is the instance of Rule-Obj-Servicelevel rule type.it can be added to assignment or work object.each SL defines one or more time intervals like Goal and dead line that indicates expected or targeted time for the assignment and time to resolve for work object. Within the clipboard we have to findout whether the pyGoalproperty and pyDeadlinepropety properties are empty then SL not working. Differentiate constraint vs validation.? A) Constraint is a declarative rule which gets called automatically whenever invalid value entered by the and show the error message according to ur logic, unlike constraint validation is not a declarative rule ad u need to call it from say flow actions/activity etc...it's also used for validation. what is use of guardrails? A) guardrails guide u, how to code any application in best way using pega. What are the agents? A) Agents are internal background process operating on the server to run an activity. these are asynchronous and independent. These are 2 type rule agent queue, data-agent-queue What is cover and covered objects? A) Cover is Work Object that is parent to one or more work objects. the covered WO are Children in Parent-Child relationship. one work party is present in the cover work object that is also present in the covered WO associated with the covers. Have you used spin-off shapes in your application, if so what is the case? A) The work object processing in the current flow in parallel without waiting in the other flow to continue. What are the types of log files we have? A) Pega logs: these are also called as system logs. message was created since the server starts recently. Alert log: it contains only alerts and s performance related monitoring. Tell me about the locking concept in PRPC? Page 25
PEGA MATERIAL A) Lock should be held on the work object in order to save/update/delete the content in the db. What is DWA (Direct Web Access)? A) DWA is any one access the World wide web and email to process an assignment on a one time basis.this feature extends the scope ur appl to empls througout the enterprise. What are PEGA Guardrails? A) Adopt iterative approach Establish Robust foundation Do nothing that is hard Limit custom java Built for change Design intend on driven process Create easy to read flow Monitor performance regularly Calculate and edit declaratively not by procedurally Keep security object oriented What is the diff b/n Decision Table and decision tree? A) D Tree is used to check multiple properties D Table is used to check only one property. What is Declare expression? A) It helps the automatic calculations of the property value based on the changes of the other property value. What is order of execution in Decision Table and decision tree? A) D tree used the order of if-then-else logic. D table used to making decisions against same data element. Rule resolution algorithm? A) It is a mechanism to decide which rule need to be executed. Explain about DCO? A) Direct Capture Object is an appl dev tools which includes, Application profiler wizard, Appl Accelerator, Appl Doc Wizard, Appl use cases, Appl requirements. How do you remove the work objects? A) By using obj-delete method we can delete wo. Do you have any idea about the AES? A) Autonomic Event Services is a process commander application that monitors, retrieves and organize the alert data from one or more clustered process commander system throughout the enterprise. AES provides the charts, reports information about the events. What are the rules which are not rule resolved?? A) withdrawn rule is not rule resolved. Page 26
PEGA MATERIAL What is the major difference between the Cover and Folder A) Cover is a work object that are parent to one or more related work objects. Folder is concrete class that is inherited from work-folder- class. Folder holds the collection of one or more other work objects. What is Difference between screen flow and process flow? A) screen flow is for UI improvement..while process flow is for business logic execution..so both have diff purpose. In screen flow we can't create a WO, in process flow we can create a WO. in Screen flow we have next, previous options are available in process flow not available. How do you provide SLA for the work-object? A) within the assignment level we will provide the SLA. If you have work experience on Soap Service. What are the rules required for Soap Service? A) Service Package, Service SOAP, Activity About the debugging tools like Clipboard, Tracer etc? A) Tracer: it is a tool that checks the individual requestors session, tracking the execution of rules. you can set the breakpoints to set the results of an action and review the property value. Clipboard: transferring the data between the application and database is clipboard. process commander keeps XML based structure called pages and page contains property value pairs. What is the need of exposing a property? A) need to add a property one of the column in DB. What is the difference between harness & section? A) Harness: Use Harness rule to define appearance and processing of wok object forms used in ur app to create WO and process Assignments. Harness rule define the complete forms that all interactions that create, update and resolve the WO. Section: A section rule defines the appearance and contents of the form. What is SLA’s & what are the types of SLA’s. where we can put these? A) It is the instance of Rule-Obj-Service Level Rule type. It can be added to Assignment and work object. Service level contains 2 time intervals Goal and Deadline. it indicates the expected time for the assignment and time to resolve the WO. Which inheritance is mandatory? direct Or pattern? A) both are mandatory depends on requirement we will use both. we will give first preference to Directed. It should not be left blank.
Page 27
PEGA MATERIAL
Data tables Like :
System Architect
1.Oracle 2.Microsoft SQL Server 3.RBM DB2
Rules
4.UDB
XML
Java
BLOB: BINARY LARGE OBJECT
Rules
Repository PRPC s : Portal :
Work Work Manager Business Architect System Architect System Web based Application is called as Portal.
Types Of Portals :
1.Work Portal 2. Work Manager Portal 3.Developer Portal 4. Portal
Roles Of Portals – Association :
Page 28
PEGA MATERIAL Work
Work
Work Manager
Work Manager
Business Architect
Developer
System Architect
System Process Commander s a three level Organizational Hierarchy Consisting Of
Work Object: It Is a Primary Unit Of Work In an application and the primary collection of Data That a flow Operates On
Work Object Contain : 1.Work Object ID (py ID) 2.Status (py status work) 3.Urgency (py Urgency) Rules In PRPC :
1.Properties 2.Section 3.Harness 4.Flow Action 5.Activity 6.Decision Rules 7.Declarative Rules 8.Reports etc……
CLASS STRUCTURES Class contains the rule by which objects behave. Define rules such as properties, activities, flows, HTML forms, etc. available to other subordinate classes. Classes are organized into a hierarchy in which lower classes inherit from upper classes. A class is an instance of a rule-obj-class rule. CLASS : class defines the scope of applicability of the rule. class does not contain the rules
rather it determines how the rules are stored in Ruleset . if you create a class in organization level we have a more scope than the rule which is created under implementation class. A Class is an instance of the Rule-obj-class rule type. Class is a Container Of Multiple rules OR Class is a Combination / Set of rules such As
Page 29
PEGA MATERIAL Properties, Sections, Harness, Activities, Flows, Reports etc….. TYPES OF CLASSES :
We have two types of Classes. They are
1.Abstract Class 2. Concrete Class 1. Abstract Class : An abstract class is a rule (an instance of the Rule-Obj-Class class) created to the definition of rules in PRPC. Such rules can be inherited by subclasses of the abstract class. Any abstract class name in PRPC usually ends with the symbol ‘-‘, For example Data-.Work- are abstract classes in PRPC. Whenever we create a first abstract class its parent class should be @baseclass For second abstract class the parent class will be the first abstract class and so on. Abstract classes cannot be instantiated. Class A Var t; A a = new A(); a.t; @baseclass-MyClass1-Myclass2
Abstract Classes can contain any rule type Cannot contain instances Great for reuse.
2. Concrete Class:
A Class that is not abstract is a concrete class. Concrete classes DO NOT end with a ‘-‘. Whenever we create a first concrete class its parent class should be ‘Work-‘. For second concrete class the parent class will be the it’s class group. Concrete classes hold persistent objects, known as instances Names must not end with a dash (-) Names should define the type of work being performed.
Abstract Class Abstract Classes are not Allowed to create work object
Concrete Class Concrete Classes are allows to create the work objects
Abstract Class ends with “-“ Abstract Classes can be reused Abstract classes cannot be instantiated.
Concrete Class does not end with "-" Concrete class cannot be reused Can be.
Page 30
PEGA MATERIAL
Q) Class, Rule Types, Validations ? A) Class: class defines the scope of applicability of the rule. class does not contain the rules rather it determines how the rules are stored in Ruleset . if you create a class in organization level we have a more scope than the rule which is created under implementation class.
abstract class -- abstract class cannot be instantiated. concrete class --- concrete class can be instantiated
Using profiler tool: Application processing data includes. Business processes. Use cases. Requirements. Reports. Correspondence. Interfaces. Work process data using a flexible, visible, interactive mapping tool. Create sizing views for development purposes. Create sizing estimates for development efforts. Apply parallel teams to add and clean project details and them in a single profile. Create iterative on-demand known looking work-based suggestions. Prime the Application Accelerator by data of the profile to create a unique application, an extra application based on the current framework, or size of an application. Starting a Profile: Profiles can be created and be maintained by s who have access to the Designer Studio. Notes: Don’t run that Profiler using the operator ID
[email protected] or operators who accept the path group Pega Rules: s. Click next on your current application in the portal header to display the Application menu and choose an option. New Application > Application Profile starts a profile. New Application > Profiles in progress present some list of profiles in progress and a list of profiles you hold, to modify security. Click a row to open a profile. Click New Application Profile to start a profile. Alternatively, we can open a profile of the Tools menu from the Application arrival page level. Tools > All Wizards display a list of open and fixed wizard objects within your system. Click a row to display a profile. That option is useful if we want to find Application Profiles that must already be chosen or created with others.
Page 31
PEGA MATERIAL Navigating the Profiler: If the Profiler starts, a Profile ID prefixed with AP, allotted and presented in the header from the profile window. A set of input tabs present on the left side of the screen, a sketch entry window pops up in center of the screen, an Actions list and help icon on the right side of the header. The Application Overview Window: The modal window is the first input screen that gets displayed when we start a profile. It can be updated at any time by choosing from the Actions list. Also, here, we enter information about the type of application, the project, its business purposes, and information. This screen needs to complete before we enter information into the process tabs. The Processing Tabs: Located on the left side of the profiler, the handle step we go through, help us obtain information in the profile. Processes: Set work types and their starting flows, map the high-level business rules that flow in a Discovery Map. Integration: List interfaces to external methods, the application, will both connect to or be called from, as a service. Reports: List the detail for reports or the calculated number of reports to be generated during the project. Correspondence: Lists the detail for correspondence or the calculated number of correspondence records to create during the project. Assumptions: Takes a list of project-related premise that is included in the profile document. Roles: List project associates and their roles to identify the expected needed to complete the project. Associates are listed as Internal Resources or External Consultants.
what is a Property in Pega PRPC ? A Property provides labels/addresses for values that can be associated with a class.
Property is a type of rule, an instance of the Rule-Obj-Property rule type. Properties are defined in Work- class hierarchy to hold data. For instances contained in the database, a property corresponds to a database column. The term property also applies to the labels for values contained in most clipboard pages
@base class : is the super class for all the classes and immediate base classes are Work_, System_, Data _, Embed _, Assign_, History _, etc……
Page 32
PEGA MATERIAL
Organization
---
Data--Organization
Division
---
Data--OrgDivision
Organizational Unit
---
Data--OrgUnit
Access Group
---
Data--Operator-AccessGroup
OperatorID
---
Data--Operator-ID
Class Group
---
Data--DB-ClassGroup
Database table
---
Data--DB-Table
Ruleset
---
Rule-Ruleset-Name
Application
---
Rule-Application
Class
---
Rule-Obj-Class
Harness
---
Rule-HTML-Harness
Section
---
Rule-HTML-Section
Flow
---
Rule-Obj-Flow
Property
---
Rule-Obj-Property
When
---
Rule-Obj-When
Map
---
Rule-Obj-MapValue
Decision Tree
---
Rule-Declare-Decision Tree
Decision Table
---
Rule-Declare-Decision Table
Application: PegaSample -> Application Design -> Application. Give first version as 01.01.01 Built-in application = PegaRULES. Application Rulesets =
:01-01 (major and minor version)
Page 33
PEGA MATERIAL Operator: Operator is Nothing But System Work Group: Combination of Multiple Operators, Generally Each Workgroup will have a Manager Work List: Outstanding (not Complete) items Which Are Assigned to a Single s. Work Basket: Outstanding (not complete ) items which are assigned to a group of s. Work Pool :
Different Work types are grouped into one class group. and the class group
is added to a into this access group, then the will have an access to work on all work types of that class group.. That type of Class Group are Called as Work Pool. Q) what is the different between Access Group , Class Group and Work Group ? An access group is an instance of the Data--Operator-Access Group class. Access groups make a set of Ruleset versions available to requested operators. Developers define access groups and associate an access group with each (each Data-Operator-ID instance). Typically, multiple s are associated with or belong to one access group. The access group associated with a affects access control by determining: The portal layout that a sees first after logging in. The local customization Ruleset name and Ruleset version. These usually are defaulted when this creates a new rule instance. The application rule for this . Optionally, the access roles available to this . The access group associated with a affects access control by determining PegaSample -> New -> Security -> Access Group. Access group name =
: Developer or
: manager A class group : It Is a Combination Of Concrete Classes that share a common key format in a single database table. The name of the class group is a prefix of the names of the member classes. This is the first concrete class in the class structure. It s the creation of work objects. The work classes are concrete classes inherit from it. It normally groups the classes to be stored in a single Database table, with a unique ID which is normally pyID. It also serves as the role of work-pool.
Page 34
PEGA MATERIAL Class groups are commonly used to cause the system to store instances of similar or related work item concrete classes together in one relational database table. This is known as a work pool. Work pools are referenced in access group instances. Class groups correspond to tables in the PegaRULES database, not tables for external classes. Each external class has a corresponding unique database table instance (Data--DB-Table class) and so cannot be part of a class group. The Clone a Class Group landing page tab, on the Data Model — Classes and Properties landing page, lets you duplicate the structure of a class group. A work group Combination of Multiple Operators, Generally Each Workgroup will have a Manager, is an instance of the Data--Workgroup class. A work group can identify a who is a supervisor, and a set of workers and workbaskets that report to that supervisor. For the supervisor of a work group, the My Group area of the Process Work space provides quick access to the work lists and workbaskets associated with the group. Work groups are a primary unit of summarization in standard management reports on the Monitor Activity workspace. An Operator ID data instance (Data--Operator-ID class) usually identifies a work group to which a belongs. If left blank, that operator can enter work items but not access a worklist or workbaskets. Work group information is not related to the three-level organizational hierarchy consisting of unit, division, and organization. Work group hip does not affect a 's Ruleset list. Base classes. Organization -> DataDivision -> DataUnit -> DataRuleset -> (Rule-) Advantage of Ruleset
Access control Migration Rule resolution rule version
Page 35
PEGA MATERIAL Interface vs Abstract class vs Concrete class JAVA ? 1. Interface Interface is a blueprint for your class that can be used to implement a class ( abstract or not); the point is interface cannot have any concrete methods. Concrete methods are those methods which have some code inside them; in one word - implemented. What your interface can have is static and method signatures. The example below shall help you understand how to write an interface. public interface Brain{ public static final int number = 1; public void talk( String name ); public abstract void doProgramming(); } 2. Abstract class Abstract classes are a bit different from interfaces. These are also used to create blueprints for concrete classes but abstract classes may have implemented methods. But to qualify as an abstract class, it must have at least one abstract method. Abstract classes can implement one or more interfaces and can extend one abstract class at most. There is a logical reason to this design which we will talk about later in this post. Here is an example of Abstract class creation. public abstract class Car{ public static final int wheels = 4; String turn( String direction ){ System.out.println( "Turning" + direction ); } public abstract void startWithSound( String sound ); public abstract void shutdown( ); } The declaration rules are as follows: A class can be an abstract class without having any methods inside it. But if it has any methods inside it, it must have at least one abstract method. This rule does not apply to static methods. As abstract classes can have both abstract and non abstract methods, hence the abstract modifier is necessary here ( unlike in interface where only abstract methods are allowed ). Static are allowed. Abstract classes can extend other at most one abstract or concrete class and implement several interfaces. Any class that does not implement all the abstract methods of its super class has to be an abstract class itself. 3. Concrete class Concrete classes are the usual stuff that every java programmer has come across for sure. It is like the final implementation of a blueprint in case you are extending it some
Page 36
PEGA MATERIAL abstract super class. A concrete class is complete in itself and can extend and can be extended by any class. public class Rocket{ public static final int astronauts = 4; String turn( String direction ){ System.out.println( "Turning" + direction ); } public abstract void startWithSound( String sound ){ System.out.println( "Engines on " + sound + "!!"); } public abstract void shutdown( ){ System.out.println( "Ignitions off !!" ); } } Q) what is the difference between Class and Ruleset ? Class: we have different kind of data and we are classifying them by using data types like integer, text, data etc. These data types are pega inbuilt. They all are single data type definitions. What about if want to define his own data type? So simply for understanding purpose we can say that a class is a defined data type. In pega data is divided in to so many types in short Work Type, Rule Type, Data Type and and related instances are called as "is a rule", "is a WO", "is a data instance". because of pega flexible implementations we can perform more operations on each instance by creating rules under the related class or parent classes. primary use of class is reusability, scalability. A class groups a collection of rules or other objects. Each class defines capabilities (rules that include properties, activities, and HTML forms) that are available to other, subordinate classes, or to instances of the class. Classes are organized into a hierarchy, where the system searches the class hierarchy from the current class upwards when looking for a rule to apply.
The class identifies the scope of the rule. You specify the class of a rule in the Apply to field. The class you select determines how extensively you can use the rule — within one case type, or across case types. A class organizes rules within an application. The position of a class within the class hierarchy determines the reusability of the rules in that class.
Page 37
PEGA MATERIAL Ruleset: The Rule is the container of the rule. primary use of the Ruleset is deployment and security. Creates for identify, store, and manage the set of rules and uses for development, deployment and reusability. Pega are "A Ruleset is a container or an organizational construct used to identify, store, and manage a set of rules. The primary function of a Ruleset is to group rules together for distribution. A Ruleset identifies, stores, and manages the set of rules that define an application or a major portion of an application. A Ruleset contains rule instances, which are divided into Ruleset versions to version management. A Ruleset is identified in the system by the Ruleset name. The Ruleset is the container for the rule. The Ruleset identifies, stores, and manages the set of rules that define an application or a major portion of an application. Ruleset version : 01-01-01 (Major , Minor, Patch). (Operator-Access group-Application-Ruleset) Application Ruleset : which contains the implementation, Organization, and integration Ruleset. Production Ruleset : (can be added in Application Rule from and in the access group). Production Ruleset are responsible for delegating the business rules like decision table, correspondence to the business s. the Production RuleSet will have at least one Ruleset version is Unlocked. branch Ruleset : Branch RuleSet allows multiple teams to update the rule in parallel. Later we can merge the Branch Ruleset into the original Ruleset with all the changes after resolving the conflicts are prior to approvals. personal Ruleset : personal Ruleset is a temporary Ruleset created with OperatorID name. when the Operator checkout the rule PRPC copies the rule from original Ruleset to Personal Ruleset allowing the operator to make the changes. Once checkout Ruleset goes into Personal Ruleset and Rule Resolution gives most Priority to checkout version. Ruleset Validations : Application Validation: if the Application validation is used, Rules in the Ruleset can Reference all rules in the RuleSets defined in the same application or Ruleset can belonging to all built-on application. Rules in the Ruleset cannot reference rules outside of current application stack or above the defining application. Ruleset Validation: What is a Class in PEGA | PRPC ? A class groups a collection of rules or other objects. Each class defines capabilities(rules that include properties, activities, and HTML forms) that are available to other, subordinate classes, or to instances of the class. Classes are organized into a hierarchy, where the system searches the class hierarchy from the current class
Page 38
PEGA MATERIAL upwards when looking for a rule to apply. A class is an instance of a Rule-Obj-Class rule. Types Of Classes Abstract Class An abstract class is a rule (an instance of the Rule-Obj-Class class) created to the definition of rules in PRPC. Such rules can be inherited by subclasses of the abstract class. Any abstract class name in PRPC usually ends with the symbol ‘-‘, For example, Data.Work- are abstract classes in PRPC. Whenever we create a first abstract class its parent class should be @baseclass. For second abstract class, the parent class will be the first abstract class and so on. Abstract classes cannot be instantiated. An abstract class is a class that is declared abstract—it may or may not include abstract methods(methods without body). as well as concrete methods (regular methods with body). A normal class(non-abstract class) cannot have abstract methods. Abstract classes cannot be instantiated, but they can be sub classed. An abstract class may have static fields and static methods. When an abstract class is sub classed, the subclass usually provides implementations for all of the abstract methods in its parent class. However, if it does not, then the subclass must also be declared abstract. An abstract method is a method that is declared without an implementation (without braces and followed by a semicolon), like this: abstract void sum(int a, int b); Consider using abstract classes if any of these statements apply to your situation: You want to share code among several closely related classes. You expect that classes that extend your abstract class have many common methods or fields or require access modifiers other than public (such as protected and private). You want to declare non-static or non-final fields. This enables you to define methods that can access and modify the state of the object to which they belong. A class derived from the abstract class must implement all those methods that are declared as abstract in the parent class. Abstract class cannot be instantiated which means you cannot create the object of it. To use this class, you need to create another class that extends this class and provides the implementation of abstract methods, then you can use the object of that child class to call non-abstract methods of parent class as well as implemented methods If a child does not implement all the abstract methods of abstract parent class, then the child class must need to be declared abstract as well. Concrete Class A Class that is not abstract is a concrete class. Concrete classes DO NOT end with a ‘-‘. Whenever we create a first concrete class its parent class should be ‘Work-‘. For second concrete class the parent class will be its class group. A concrete class is a class that has an implementation for all of its methods that were inherited from abstract or implemented via interfaces.
Page 39
PEGA MATERIAL It also does not define any abstract methods of its own. This means that an instance of the class can be created/allocated with the new keyword without having to implement any methods first. Therefore it can be inferred that any class that is not an abstract class or interface is a concrete class. Inheritance Implementation Class : "Amazon -IN -OnlineSales-Work-PurchageRequest" Framework Class : "Amazon -FW -OnlineSalesFW-Work-PurchageRequest" There are two types of inheritance: Class Inheritance Ruleset Inheritance Ruleset version Inheritance Pattern inheritance — It is an optional feature we can set up for a class in the Rule-Obj-Class rule, affects the first steps in the rule resolution algorithm. This approach is sometimes called “dual” inheritance. During rule resolution, pattern inheritance causes a class to inherit rules first from classes that match a prefix of the class name. Ex : Pega uses pattern inheritance to check the flow rule available in the class path. it means first check "Amazon - IN-OnlineSales-Work-PurchageRequest" if the Rule is not found " Amazon -IN -OnlineSales-Work-" class if it not found again, then it check " Amazon -IN -OnlineSales-" checking Continues Process. until "Amazon" Directed inheritance — Allows us to name a parent class, choosing a name that’s not related to the name of this class. you can specify a direct inheritance class in the class rule form Class "Amazon-IN-OnlineSales-Work-PurchageRequest" can directly inherit from the framework class "Amazon -FW -OnlineSalesFW-Work-PurchageRequest" Well in Pega PRPC, there are two types of inheritance: Directed Inheritance Pattern Inheritance Pattern Inheritance is Inheritance on naming convention, where as Directed inheritance is external or advanced inheritance. Pattern Inheritance is given preference above Directed Inheritance. As per Pega, if PRPC needs to find RULES (reusable components), which a particular class can use or have access to, first they search through the pattern inheritance. Which is nothing but, the naming convention followed to name a particular RULE in Pega. If PRPC do not find the RULE through the pattern inheritance, it will search the RULE in Directed inheritance. For example, While naming a RULE in Pega, we use Org-Sub-Work-ClassName, This means, Class Name is inherited from Org-Sub-Work class as well as it is part of Work-Cover-. Short Description
| |
Name
Page 40
PEGA MATERIAL Class Name Work (Default Work Pool) HRServices Namespace Top Level Class Cover classes Work classes @baseclass
| | | | | | |
Org-Sub-Work-Class Name Org-Sub-Work Org-Sub Org Work-CoverWork@baseclass
If PRPC, needs to search for a RULE for Class Name, it will first search in Org-Sub-Work, if it is not found, then the search will be made in Org-Sub, if the RULE is not found there as well, it will search in Org. Once, it is not found, PRPC will start searching in Work-Cover-; Not found, next match in Work-. If not found in Work-, it has to be there declared in @baseclass, else it will mark it as not present. What is Class Structure in PEGA ? Class Structure design is an integral part of every Pega application. Deg a scalable, extensible enterprise class structures from the beginning of your project will help avoid costly re-factoring. The enterprise class structure enables PRPC applications to co-exist with each other and with customer or Pega built frameworks. The enterprise class structure is also the foundation for enterprise reuse. Asset reuse is integral to the long-term success of BPM within the organization, and ultimately, the reusability requirements drive the selection of your class hierarchy design.
Page 41
PEGA MATERIAL
Layer Definition: PRPC Base Product Layer: The PRPC Base Product Layer consists of the Pega-4 Rulesets and its classes & rules. Loaded as a part of the PRPC platform install, this layer contains all rules necessary for workflow processing and other areas of Process Commander. While the Pega-4 Rulesets are locked, rules that apply to many of the Pega classes (Work-, Embed-, Data-, @baseclass, etc.) can be defined in application Rulesets to enterprise-wide reuse. Enterprise Reuse and Divisional Reuse Organizational Layers: The Enterprise Reuse and Divisional Reuse Organizational Layers is where extensions to the work and data classes exist. This may include enterprise wide or division wide business logic (standard properties, flows, decision tables, models, SLA rules, etc.), data classes (such as generated class structures for connector request/response messages) as well as other extensions exist.
Page 42
PEGA MATERIAL The classes within the Divisional Reuse layer inherit from their counterparts in the Enterprise Reuse layer; the classes of the Enterprise Reuse layer inherit directly from the Work- and Data- classes. Framework Layer: The Framework Layer stores base rules/processes/components for a given application. A customer built framework (CBF) serves as the basis for N number of deployments throughout the enterprise. A CBF must be able to stand on its own. Therefore, this layer contains all rules necessary to implement its functionality. While there will be a class group and its mapping to a database table for testing purposes, the actual mapping of the application to production database table occurs on the Implementation layer. Organization specific logic, processes and rules must be placed on the Implementation layer as well, only default edits, values, and application structures have their home in the CBF layer. This layer can also be used to extend any features present in a Pega based framework for a particular organization. Implementation Layer: The Implementation layer contains the rules necessary to implement a Pega built framework or Customer Built Framework (CBF). This layer contains all specialization rules as well as the application class group(s) of the framework for the organization and division that it belongs to. The layer also contains flow shells and/or service activities used to start their generalized counterparts in the Framework layer. The EAA now creates an Enterprise Class Structure consisting of a CBF on the Framework layer and organizational implementation classes on the Implementation layer. Class Structure and Reusability: A robust class structure is the foundation of reuse throughout your application. The PRPC recommended class structure design pattern offers flexibility in your design and provides for more level of reuse. The class structure provides the first and most important layer of reuse in PRPC due to its precedents in the rule resolution algorithm. The class structure provides you with a hierarchy in which rules can be placed. The higher a rule is in the hierarchy, the more potential reuse there is. The key to a good class structure is that there are enough layers and classes to hold the most fundamental levels of reuse but not too many that it becomes cumbersome to navigate and unclear as to the intent. Class Structure and Security:
Page 43
PEGA MATERIAL Class Structures also help in applying security controls across the organization. It can be achieved by defining access role objects which map access roles to certain classes. s having those roles can then Open/modify/delete instances of that particular class. Then assign these roles to the s who you want to be able to access the functionalities defined via those classes. PRPC Enterprise Class structure generates four layers , they are:
Organization Layer Division Layer Framework Layer Implementation Layer
The Organization Layer The organization layer exists at the very top of our enterprise class structure. This layer is intended to hold all rules that apply corporate wide. The Division Layer The division layer exists to hold all the rules for a logical grouping within that business. Most often, this is based on the line of business, but it is not restricted to that and instead could be regions, brands, or departments. The key is to identify if these rules span across different processes within the business. The Framework Layer The framework layer is all about the process. This is what empowers an organization to achieve the majority of their reuse. Processes within an organization are often very similar between the different divisions. By placing this common process in a framework, we just have to build it once for all the different applications within that organization. The Implementation Layer The implementation layer is where it all comes together. This layer is the application that a leverages to perform their tasks. You can think of it as the ‘glue’ that holds together the rules from the framework, organization and division layers. Class Structures and Hierarchy The Pega rule hierarchy begins at the top class @baseclass which is extended by several base classes:
Rule- concrete subclasses hold rules Data- concrete subclasses hold data Assign- assignments i.e. steps of the workflow Code- references in-memory server code Embed- outlines structure of pages embedded in pages When determining whether a data instance should derive from Data- or Embed- if the class will never be a top-level page or a saved object (as opposed to being a saving an object with embedded objects) then define the instance under Embed History- stores the history of objects Index- secondary access keys to improve retrieval performance
Page 44
PEGA MATERIAL
Link- records relationships/associations between objects Log- for logging system events PegaAccel- s the Application Accelerator tool System- for system settings and status Work- work objects, covers and folders
Classes and Class Groups/Work Pools Classes in Pega are a way of grouping rules and providing structure. Classes can be: abstract: groups reusable rules and is an instance of Rule-Obj-Class (name always ends in a hyphen e.g. MyClass-) concrete: can be instantiated and inherits rules from parent classes Class groups are used to define work pools (a collection of work types or classes). They map to a physical database table and contain a unique identifier which links to the table's primary key. All class groups must directly inherit from Work The Work- class provides several key features for work pools: rules for class groups and work objects e.g. pyStatus, pyDefault, New sample rules e.g. SLA Units of Work All work classes inherit from the base class Work-. There are three main subclasses of Work-: Work-Object Work-Cover Work-FolderAll work classes contain a unique ID pyID which is usually in the form - e.g. AA-10. The pyID prefix is defined in the pyDefault model of the work class with the property .pyWorkIDPrefix. The current work object is stored on the clipboard under .pyWorkPage. Questions commonly asked about the generated class structure ? Why do non-work classes, like Org-, inherit from Work- or Work-Cover Because of rule resolution, inheriting from Work- or Work-Cover- on those levels allows for increased sharing of case-management-related or work-related assets across multiple applications. For example, if a company creates two top-level classes for some reason (such as when two organizations do not currently work with each other and they want to develop applications independently), the applications can still share work-related assets. Why does the Org Ruleset have the OrgInt Ruleset as a prerequisite (required) Ruleset?
Page 45
PEGA MATERIAL So that business logic rules in the Org Ruleset have the ability to reference integrationrelated rules and classes stored in the OrgInt Ruleset. Why doesn't the Application Accelerator generate MyCo-FW-FrameworkName1Data- to directly inherit from MyCo-Data-? Why doesn't the generated MyCo-FWFrameworkName1-Int- directly inherit from MyCo-Int-? Or for the rest of the Dataand Int- classes? It is rare to want the system to use class inheritance to reuse a data asset (for example, to reuse data classes from MyCo-Data- for data classes in MyCo-Div1-Implementation1-Data-). However, if your application requires extending from the organizational layers' Data- or Intclasses, modify the class rule for the framework or implementation class to set the needed directed parent class. what is the difference between data class and work class ? If you want the class to represent a Data Model, you create a class that directly inherit the "Data-" parent class, so this becomes a "Data Class". It's job is to be a data model for whatever data you want to represent in PRPC. Usually a Data Class is not instantiated, and it is used more as a template in the Work Class for containing data that is pertinent to the work to be resolved. If you want the class to perform some work or some case, then you will need to directly inherit the "Work" class as a parent. This makes the class you are creating a "Work Class". It's job is to be instantiated as a Work Object or a Case Object to contain data related to the work it is doing. Basically, the difference is what they do. In summary, a Data Class is a template for Data Model, and a Work Class represent a work type or case type for instantiating and resolving work Work Class - Contains the rules that describe how to process a case, such as processed, date element and interfaces. Data Class - Contains the rules that describe the data objects used in application, such as a customer or collection of order items. Class Group: This is the first concrete class in the class structure. It s the creation of work objects. The work classes are concrete classes inherit from it. It normally groups the classes to be stored in a single Database table, with a unique ID which is normally pyID. It also serves as the role of work pool. Creating Class PegaSample -> New -> Sys -> Class. Give the class name. Rule-set and save. Give info in History. Version, rule-set etc. save it.
Page 46
PEGA MATERIAL 0If Class is class group, select it and give its parent class as Work1If Class is class type, select it and give its parent class as Work-Object-Now, select the work pool in access group as the class group Mapping pc_work table with class group (Work pool) The class group created is default mapped with pr_other table in database (where PegaRules are present). We manually map the class group with pc_work table. e.g : More-retail-purchase-work (class group) -> new -> sys -> Database Table. Give class name as: More-Retail-Purchase-Work and save. In the form: Defining work pool in Access Group Define the work pool in Access group -> the class group Creating Data classes: Data- (Direct inheritance with @baseclass)
More-Data- (Pattern inheritance with More- class)
More-Data-Items (Concrete class and doesn’t belong to class group) Click right on More- -> new -> Sys classes. First create abstract class More-Data-, give parent class as Data-Save it. Then create class More-Data-Items Similar as above. See the below pic. Property : A property is an instance of the Rule-Obj-Property rules type. Property defines and labels a value that can be associated with a class. For instances contained in the database, a property often corresponds to a relational database column. Property Modes :
Page 47
PEGA MATERIAL
Creating Properties: For common properties, like here in more departmental store, we have customer name, and email-id as common for all departments and hence we will create these properties at More- Right click more-> new -> Data model -> Property
Class Form :
General
External Mapping
Advanced
History
@base Class
Work-
Infy-
Work-Object
Infy-IT-
Infy-IT-
Infy – IT – - Work
Infy – IT – - Work - Helpdesk
Page 48
PEGA MATERIAL INHERITANCE :
It enables to you access rules from parent class to child class.
Process Commander s Two types of Inheritances. Pattern Inheritance the name of the parent class is a Prefix Portion of name of the class . Directed Inheritance allows naming a class choosing a name that’s not related to its parent’s name. Classes should have pattern Inheritance. Classes must have Directed Inheritance. Direct Inheritance is indicated with “ Pattern Inheritance is indicated “--------“ Direct Inheritance will reach the chain of @base class Inheritance is indicated on Class Rule Form Class Inheritance Find my name First (Pattern) Parent Class (Directs) PATTERN INHERITANCE Determines which part of the organization owns an object. ( Rule- / Work- / Data- ) Determines database operations at runtime + design time since it identifies the DBTable of a concrete class. Rule lookup begins here DIRECT INHERITANCE Determines the behavior of an object. ( Rule- / Work- / Data- ) Determines what rules are acquired from EnterpriseFW / SolutionsFW / PegaBase layers. Rule lookup resumes here if no suitable candidates are found in the pattern inheritance. there are two types of inheritance: Directed Inheritance Pattern Inheritance Pattern Inheritance is Inheritance on naming convention, where as Directed inheritance is external or advanced inheritance. Pattern Inheritance is given preference above Directed Inheritance. As per Pega, if PRPC needs to find RULES (reusable components) which a particular class can use or have access to, first they search through the pattern inheritance. Which is nothing but, the naming convention followed to name a particular RULE in Pega. If PRPC do not find the RULE through the pattern inheritance, it will search the RULE in Directed inheritance.
Page 49
PEGA MATERIAL Pattern inheritance, it is an optional feature we can use for a class in the Rule-Obj-Class rule During rule resolution, pattern inheritance causes a class to inherit rules first from classes that match a prefix of the class name. Pattern inheritance follows the pattern of the names and dashes in the class name to define inheritance. Directed inheritance allows the to specify or direct from what classes the current class may inherit. Directed inheritance classes do not have to have a name which includes the “pattern parent prefix” of the current class. For example, While naming a RULE in Pega, we use Org-Sub-Work-Class Name, This means, Class Name is inherited from Org-Sub-Work class as well as it is part of WorkCover-. If we see the inheritance of this class, This will show as:
Short Description
|
Class Name Work (Default Work Pool) HRServices Namespace Top Level Class Cover classes Work classes @baseclass
| | | | | | |
Name Org-Sub-Work-ClassName Org-Sub-Work Org-Sub Org Work-CoverWork@baseclass
Ruleset : Set Of Rules is nothing but a Rules Set. (http://myknowpega.com/) Ruleset Usage :-
Access Control Deployment Rule Versioning Rule Resolution
Ruleset Contains Ruleset Name and Ruleset Version Ruleset Name accepts max 32 Characters, and no Spaces. Ruleset Version : 01-01-01 Ruleset Name : IT Helpdesk Ruleset Version : 01-
Major
01 - 01
Minor
Path
Page 50
PEGA MATERIAL A Ruleset name is an instance of the Rule-Ruleset-Name rule type. Each Ruleset defines a major subset of rules in the PegaRULES database, because every instance of every rule type references or "belongs to" a Ruleset. A Ruleset name is a major aspect in: Access control Grouping interrelated rule Managing the rules Rule resolution and versioning Moving applications — sets of rules — from one Process Commander system to another. The term Ruleset sometimes refers to the name instance and sometimes informally refers to the contents of that Ruleset — all the instances of Rule- classes associated with that Ruleset.
The Rule- .pyRuleset property, present in every rule instance, records the Ruleset name to which the instance belongs. Process Commander itself consists of several standard Rulesets
Ruleset Name rules are part of the Sys category. A Ruleset rule is an instance of the Rule-Ruleset-Name class. a Ruleset stores a related group of business rules. It’s what you deploy in your production environment or ship to a customer. Rulesets provide security, version control, and the ability to deploy your application in (or move it to) a different Process Commander environment. You must create a Ruleset before you can build an application. Ruleset has 2 parts – Ruleset Name & Ruleset Version Rule-Ruleset-Name – Which defines the Ruleset name and other characteristics It should contain Maximum 64 characters Ex . Policy Rule-Ruleset-Version – which defines the Ruleset Version. It has 3 parts separated by a hyphen – Major, Minor & Patch Ex. 01-05-07 Select — > Application > Structure To view a list of Rulesets in your application (including those your application is built on) and a list of prerequisites for each Ruleset.
Page 51
PEGA MATERIAL Steps to Create a new Ruleset Version: -Go To Application -Select New -Select Rule -Select Sys -Select Ruleset Version The term Ruleset sometimes refers to the name instance and sometimes informally refers to the contents of that Ruleset — all the instances of Rule- classes associated with that Ruleset.
The Rule-.pyRuleset property, present in every rule instance, records the Ruleset name to which the instance belongs. Process Commander itself consists of several standard Rulesets Ruleset Name rules are part of the Sys category. A Ruleset rule is an instance of the Rule-Ruleset-Name class. Pega Standard Rulesets : 1.Pega – Procom
s business Process Management
2.Pega – Intsvcs
3.Pega – WB
s Portal Infrastructure
4.Pega Rules
s rule Engine and rule Reduction.
Services
Rule Resolution : Locating right rule at right time during the execution. rule resolution is a search algorithm used to find the most appropriate instance of a rule to execute in any situation.
rule resolution occurs whenever a rule is needed to accomplish processing of a case. as you create applications the choices you make when defining the values for the key part of a rule are based on how you want the rule to be found by rule resolution.
Page 52
PEGA MATERIAL rule resolution applies to most rules that are instances of a classes derived from abstract rule- based classes. the following are examples of instances of rules derived from the abstract Rule-based class.
Case Types (Rule-Obj-Case Type) Properties (Rule-Obj-Property) UI rules such as Sections (Rule-HTML-Section) and Harness (Rule-HTML-Harness) Ruleset Names (Rule-Ruleset-Names) Ruleset Versions (Rule-Ruleset-Version)
Ruleset Does not applies to rules that are instances of a classes derived from any other abstract base class such as Data- , System-, Work-. the fallowing are examples of instances of rules derived from the abstract System- base class. Operator ID (Data--Operator-ID) Email Listeners (Data--Connect-Email Listeners) Operator's Favorites (System--My Rule) The Rule Check-in Process (Work-Rule Check) We Have 6 Steps available in Rule Resolution. Rule resolution follows multiple steps or stages to determine which one rule is the result to execute. Beginning with a large set of possible rules for the situation, the rule resolution process selects the best available rule, using the following process.
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Check the rule cache. If the rule is present in the cache, go to Step 8. Choose all instances with correct purpose Discard rules where Availability = No/Draft Discard inapplicable Rulesets and Versions Discard all candidates not defined on a class in the “ancestor tree” Rank remaining candidates by: Class, Ruleset, Circumstance, Circumstance Date, date/time; remove all that are withdrawn or hidden by other withdrawn candidates Discard all choices that occur in the ranked list after the first “default” rule Set the cache Find best instance (and check to make sure there is not a duplicate) Check that Availability does not show BLOCKED Security – that the is authorized to see the rule
Circum Stance : Different Variants of a rule within same version can be created with different flavors to suite for different Situations.
Page 53
PEGA MATERIAL Rule Resolution Searches Rulesets in the order they appear in the s Profile list Rulesets searched in the following orders 1. Personal Ruleset 2. Production Ruleset 3. Ruleset listed on the application rule 4. Pega–procom, pega-Intsvcs, pega-WB, pegaRules, Rule Availability : We Have 5 Types of Rule Availabilities .They Are 1.Availability (Yes) Rule always available for Rule Reduction. 7Version
6Version
2.Final 3.No
Particular Version not available, lower version available.
4.Block
No more uses (nothing but a Deleted Rule)
5.With Drawn
we don’t see on child, but we can see in parent (lower version)
Ruleset Type : All pega Rulesets should be Address as "Required Ruleset " to Our Application Ruleset them any Rule in the predefined Rulesets can be used in our applicaitons. 1. Application Ruleset (When we add Application Rule Form) 2. Production Ruleset (Which we will add in the application Rule form and also w can in Access Group under Advance Tab) 3. Branch Ruleset 4. Shared Ruleset 5. Personal Ruleset
Ruleset Locking :- Ruleset Versions ca n be locked to prevent new rules from being added and existing rules from being updated or deleted. All rules must be checked in before Ruleset is locked. must be created to be able to unlock the version. Reusability In PEGA The PRPC recommended class Structure design pattern offers a flexibility in our design and provides more levels of reuse. PRPC contains mainly 4 Layers
Page 54
PEGA MATERIAL 1.PRPC shared Product layer 2.Enterprise shared Product layer 3.Generalized application layer 4.Specilized application layer 1.PRPC Shared Product Layer : The PRPC shared product layer represents the out of the Box (OOTB) Process commander classes such as work-,work-object-,work-folder-,work-cover,and Data-. 2.Enterprise Shared Product Layer: The Enterprise shared product layer is a library of extension to the PRPC base functionality .you should always include this layer. It is rare, but this layer may be omitted in some very small one-off application. 3.Generalized Application Layer : TheGeneralized application layer represents a generic basic application to use as a framework for application instances .Here you will define most of the rules for your base applications. 4.Oraganizational And Specialized Application Layer :The Organizational and specialized application layer represents an organizational application instance .Here We will be implementing the generic application. PEGA GUARDIALS PRPC System Provides 10 PEGA Guardials. They are 1.Adopt an iterative approach 2.Establish a Robust Foundation. 3.Do nothing that is Hard
(use OOTB rules)
4.Limit custom Java
try to avoid java
5.Build for Change 6.Design intent driven process 7.Create Easy to read flows
(use 15 flows max)
8.Monitor performance Regularly (PAL) 9.Calculate and Edit Declaratively ,not Procedurally
Page 55
PEGA MATERIAL 10.Keep Security object oriented too. 1.Adopt an itrativeapproach : Define an initial project scope that can be delivered and provides business benefit within 6090 days from design to implementation. 2.Establish a Robust Foundation : Design your class structure with the recommended class pattern It should be understandable, be easy to extend
3.Do Nothing that is Hard : Use OOTB rules as much as possible. 4.Limit Custom Java : Avoid java steps in Activitys ,when standard process commander rule types, library functions or activity methods are available. 5.Build For Change : Identify and define 10 to 100 specific rules that business s own and will maintain.
Activity Should not be on that list.
6.Design Intent Driven Process : Your application control Structure must consist of flows and declarative rules, calling activity only as needed. 7.Create Easy to Read Flows : Your flows must fit on one page and must not contain 15 smart shapes.
If Flows has more than 15 smart shapes a) Create a Sub flow b) Use Parallel flows
8.Monitor Performance Regularly :
Page 56
PEGA MATERIAL Use PAL tool to monitor performance Regularly from Performance tool bar. 9.Calculate And Edit Declaratively, not Procedurally : Use Declarative Rules to do the Calculations automatically a).Use Declare Expressions instead of Property set method b). Use Declare Constraints instead of Validation 10.Keep Security Object Oriented Too :
Never code Security Controls in an Activity
Use the Standard access roles that shifts with process commander only as as a Starting points.
DATA MODELLING Data Model :
For Each and every application data is important.
In our pega all data related rules will maintain at Data model category
In this Data Model we have 8 types of Pega Rules .They are 1.Data Page 2.Data Transform 3.Edit Input 4.Edit Validate 5.Field Value 6.Property 7.Property Alias 8.Property Qualifier
Property : Property is a variable, which is used to holds the data, which application, property is an instance of Rule-obj-property Rule type Properties are divided into 3 categories ,they are 1. Value Level 2. Page Level 3. Java Object A gain these 3 categories are classified into 11 modes of properties ,they are
Page 57
PEGA MATERIAL 1. Single Value
7.Java Object
2. Value List
8.Java Object List
3. Value Group
9.Java Object Group
4. Page Value
10.Java Property
5. Page List
11.Java Property List
6. Page Group
Type
Single
Array
Group Value Group
Value Mode
Single Value
Value List
Page Modes
Page
Page List
Java Object
JavaObject & Java Proprty
Java Objectlist Java Propertylist
Page Group Java Object Group
All Property modes will have below types. 1. Text
6. Decimal
2. Integer
7.Date Time
3. Identifier
8.Date
4.
9.Time Of Day
5. Double
10.True Or False
Property modes are used to determine how the system represents the Property Data Properties with a mode other than single Value are known as Aggregate Property Value Mode : Value Mode identifies the properties that can have none, one or multiple strings as the value. 1. Single Value :- select a single value to create a property that can contain a single text string value. 2. Value List :- A value list mode is an ordered ,indexed list of strings ,some times called as an Array. 3. Value Group :- A value Group mode contains one or multiple strings in unordered manner. and each identified by a unique text index value.
Page 58
PEGA MATERIAL Page Mode :Page mode identifies properties for which the value has a single or multiple page structure 1. Page :- page is a data structure that contains Name –Value Pairs 2. Page List :- A Page List mode Property is a data structure consisting of an Ordered Listof zero or more embedded pages each identified by an integer index . 3. Page Group :- A page Group is a data structure consisting of an unordered set of pages each identified by string index value. Java Object Mode & Java Property Modes :-Java Object Mode contains a reference to an instance of a Java Object 1. Java Object : java Object is selected to indicate that this property holds on the clipboard a reference to instance of a java object 2. Java Object List : Select a java object list to indicate that this property can contain an array of java object. 3. Java Object Group : Java Object Group is selected to indicate that this property can contain an unordered group of reference to instance of Java Objects. 4. Java Property :A property runs provides a name and characteristics for data in an object 5. Java Property List : s the process commander java pages feature that enables your application to interact with java objects as they were pages and properties on the clipboard.
Address Road *
Phone
Value
Page
City * Zip* Value List
Phone (1) Phone (2)
Address(1) Page
Road *
List Value Group
Phone (home)
City* zip* Address (home)
Phone (work)
Page Group
Address (2) Road * City* zip*
Address (work) Road* Road* City*z ip*
City*
Page 59
PEGA MATERIAL Using Prompt in Property we can define optional table edit for Single Value,Valuelist and Value Group Properties by enumerating the values that the property can assume are identifying a place where a list of values available at runtime. There are 6 types of Table edits. They are 1. None : No table edit apply 2. Local List : Values are enumerated in this tab (TELLS) 3. Field Value : Values corresponded to Field Value rules 4. Class key Value : Values correspond to the first key parts of a known other class. 5. Remote List : Values are enumerated as elements of a list or Group with in a single process commander object. 6. Prompt List : Values are enumerated as with a local list, but for each internal value a different localized value appears on input or output. PRPC Standard Properties :
PRPC Standard Properties are Prefixed either with px,(or) py (or) pz
Px(Read Only) :-- Computated Properties that s can see on a form but can’t directory enter or change (such as px create Date Time) to alter this values activity can use a step method called Property-Set-Special method Py(Read/Write) :-- Properties that can enter or changed via direct input (Such as pyDescription) Pz(For internal usage ) :-- Properties that are reserved for internal use (Such as PzInskey) s can’t see, enter or change these Property EDIT INPUT An Edit input Rule Provides a conversion Facility . Use Edit input rules to convert data entered by a from a format that your application doesn’t use into another format. Edit Input rules perform Conversions, not Validations,This Rule type doesn’t cause any respond to a about the validity of the input rule.
Use Validate rules and edit Validate rules are one Validation.
Page 60
PEGA MATERIAL
Edit input rules referenced by a property, execute automatically only during HTTP request.
Edit Input rules use Java Code for the conversion
Calling an EDIT input rule from an Activity: -- In an Activity we can execute an edit input rule using a function .use a Java step, in the Java code of that step call the Edit input () function. Edit Validate Use the Edit Validate form to define Java Routine that tests the validity of an input Value in an activity that process input. The activity calls the “Property-Validate” method. Field Values Use the Field value to define items in a Selection list, Which is used to Localizationby Overriding an English word or Phrase with an equivalent term in an another Language. Property Alias Create Property Alias rules to Provides an alternative name, more meaningful to s who may be developing or updating function Alias rules. PROPERTY QUALIFIER A Property Qualifier rule can be supplement information in a Property with additional capabilities or restrictions. Property Qualifier rules are referenced in a Property in the Property Qualifier Section of the Property’s Advanced tab. For Ex :---
PyDecimalPrecision
Data Transform Use Data transforms to define how to take Source data Values In General, Data transforms involve both mapping data from a Source to a Target.
Page 61
PEGA MATERIAL Data transform rules can be referenced by another datatranform. In datatranform will have a Action tab,Tragettab,Relationtab,Sourcetab.
Parameters,Pages&class,History Definition
In datatranform mainly we have 14 Action items: 1. Set
8. Otherwise When
2. Remove
9.Otherwise
3. Update Page
10.Append to
4. Apply Datatransform
11.Append and Mapto
5. Sort
12.For Each page in
6. Comment
13.For Each page
7. When
14.Exit Datatranform
DATA PAGES Data Pages are known as Declared pages before pega 7 Version Data pages are referenced as “D_“ (or) “Declare_“ These are dynamically createdpages. By using Data pages will reduce the performance issues.
0 Difference b/w Data pages and Declared Pages ?
Declared Pages Read Only Scope are two types
Data Pages Read and Edit Scope are two types
a).Node
a).Node
b). Thread
b).Thread
Name Starts with
c).Requestor
“Declare_”
Name Starts with “D_”
Page 62
PEGA MATERIAL
New Data Page :
Definition
Load management
Parameters
Pages &classes
Usages
History
List Structure
Page
Data Object type
Object Class Name
Read Only Edit Mode Editable Thread Requestor Node Scope
Data Source If Structure = List
If Structure = Page Connector
Source
Data Transform Report Definition Load Activity
Connector Source
Data Transform Lookup Load Activity
Node : Any Requestorexecuting on the current node can access the pages.
Page 63
PEGA MATERIAL Thread : The Page is Created in a Single Requestor Thread and can be accessed often as needed by processing in that Thread. Later access on another thread causes the database to load a different page, which may have different contents. Even if it is by the same Requestor Requestor: TheRequestor can access the pages loaded across the all threads. Access by separate Requestor creates separate pages, which may have different contents.
Interface Interface is used to list the different HTML rule types that forms the Interface and how they are used. Interface rules are divided into 9 types of rules. 1. Section 2. Harness 3. Flow Action 4. Portal 5. Paragraph 6. Control 7. Navigation 8. Skin 9. Guided Tour Process Commander include Portals and Workobjectformthat allows application to enter, update and resolve work Objects. Harness : Harness Rules are the instances of the rule. Rule-HTML-Harness Class. Harness Rules defines the form Structure and the layout, specifying the Sections that includes in the Harness and Other elements to be added. Harness Rule basically assembles all required sections, fragments and HTML Streams. SHOW-Harnessis a standard activity ,which is used to call a Harness Rules from an activity. Standard Harness : Work Objects are usually displayed in one of 4 Harness types. We have 4 Standard Harness Rules. They are 1. New 2. Perform
Page 64
PEGA MATERIAL 3. Confirm 4. Review NEW : Used to Create New work object is an Optional Perform : Used to Process work assignments, Various Perform Harness available Confirm : Display confirmation of the complition of an assignment Review :Displays the work object in a Read only mode Other Harness Types :-1. 2. 3. 4.
Perform a Screen Flow Tabbed Screen Roopen New Covered
Harness inside a Harness is not Possible Harness into a Section is not Possible Section into a Harness is Possible
Sections : Section is a Portion or area of a standard work object form that incorporated on a Harness form Section may contain other Sections, They are may called as the Subsections. The Apperance,behaviour and contents of a section are defined by a section rule.HTML section rule type. Section rules are instances of the Rule –HTML-Section class Section Rules are referenced in 1. Harness Rules 2. Section 3. Flow Action 4. Paragraph Rules with smart info proper Flow Action : A Flow Action Rule is an instance of the Rule-Obj-Flow Action Class. A Flow Action is a choice available to s as an infirm or final disposition of an assignment they are Processing A Flow Action Rule Controls how s interact with work object Form to complete assignments. There are mainly two types of Flow Actions. They are 1. Connector Flow Action 2. Local Flow Action. Connector Flow Action :
Page 65
PEGA MATERIAL
If a connector shape comes out from an assignment shape called as connector Flow Action. In this Scenario, the work object moves from one assignment to another assignment.
Local Flow Action :The Work Object not moves from one assignment to another assignment the scenario is called as the local action. That means work object does not advanced the flow and work object Flow Action types will define at Action tabin a Flow Action Rule. Flow Actions will hide from one to another by providing security rules at security tab. Flow Action will refer at Sections,Flows.
Section
Harness
Flow Action
Section
Harness Flow Action
Paragraph : A paragraph Rule is the an instance of the Rule-HTML-Paragraph Class. Paragraph Rule Provides Read only text for a call in a Work Object form that can be included bold,italic,coloured text, images and other rich text. Portals : A Portal is a Standard internet explorer based UI For Process commander workers, managers and developers. Portal Rule is an instance of Rule-Portal class Which is used to define Tabs, arrangements and labeling of anchors and features is known Gadgets. We can always Create New Portal layouts by defining new instance of the class RulePortal. Portal Rules are referenced in the setting tab of the Access Group form Standard Portals are 4 types, they are 1. 2. 3. 4.
Developer Portal Manager Portal Work Portal Portal
Skin :-- A Skin Rule is an instance of Rule-Portal Skin Skin Rule is used to define or Specify the Presentation of your Content.
Page 66
PEGA MATERIAL By using this Skin Rule we will present our interface by including boarders, backgrounds, and Layouts etc…… By defining Presentation attributes in the Skin you can separate content from its presentation. A Skin Rule defines A Cascading Sheet Style (CSS) Files ,Stored as text file rules that together determine the colours,fonts,images and layout of portal, Work object etc…… The Skin is Comprise of mixins and Style Formats
Mixins : It Is a reusable typographay,barders ,or background Style or combination of these Styles. Style Format : Which is used to define style format for components such as Dynamics layouts,Controls,such as Buttons and links. Navigation : Use Navigation to construct a multi level XML document to be used in navigation and context menu. Control : Use Controls to Control how Properties are appear on forms correspandance,and other HTML Forms for both display and for accepting input. Controls are often simply referenced to as Controls. FLOWS A Flow is a Fundamental representation of a business Process in Process Commander. It is an instance of the Rule-Obj-Flow Rule type. It define the Sequence of Processing that your application applies to work object A Flow rule govers how Work objects are created ,Progress Through the System and how they resolved. A Flow rule Consist of network of Shapes and Connectors, each with associated parameters and Values. After you Complete and save the flow form click the Run tool bar button to create a new work object with that flow The System Stores the flow diagram in the Pega Rules Databases With the Flow rule
Pr4_Rule_Flow Pega Recommended limiting a flow rule contain maximum 15 Shapes If Flow Shapes executes more than 15 Shapes. Use Sub flows, this process is called as Composition .
FLOW TYPES : There are mainly 4 types of Flows ,They are
Page 67
PEGA MATERIAL 1. 2. 3. 4.
Starter are flow is nothing but process flow Sub flow Screen flow Straight Through flow
Starter Flow : A flow that is a create new work object is Called as a Starter Flow Sub Flow : A flow that is called by another flow is known as a sub flow ,the calling flow is called as parent flow. Processing of sub flow is synchronous i.e. the calling flow execution pause for the duration of the sub flow Screen Flow : A flow Rule that consist only of assignments, decision and meets other criteria is known as a Screen flow . Screen flow can’t be a Starter Flow So we can’t create work object in Screen Flow Advanced Shapes are not available in the Screen Flows.
Straight Through Flow :A flow rule that contains no assignments and so can execute from start to end, without human input is known as the Straight Through flow. FlowShapes : 1. Starter Shape 2. Assignment Shape 3. End Shape 4. Decision Shape 5. Fork Shape 6. Notify Shape 7. Route Shape 8. Connector Shape 9. Spin off Shape 10. Split Shape 11. Split For each Shape 12. Utility Shape 13. Ticket Shape 14. Connector Shape 15. Comment Shape etc… Assignment Shape :- It is a Place Pause to a work object and it requires some input to progress a flow (or) to make flow forward. Utility :- Specifyan activity to run at that point in the flow to perform automated processing without any assignment.
Page 68
PEGA MATERIAL Fork :- Which s automatic Selection of one connector from two or more .It does not Decision Rules. Decision : - Which identifies an activity that can make an automated decision about the process of the work object through this flow. Which based on decision rules Router :- Sends an assignment to a , workbasket, oragen other than the current . Associate a Router task with an assignment shape or assignment task This activity determines which work list or work basket is to contain a assignment. Ticket :- Mark a business exception that might ariase at any point in the flow ,such as cancelization.this act as a like “GOTO” Statement. Spin Off :- This Flow Shape is used to Starts a new flow execution and does not wait for its completion. Split :- This flow sends the work object to two other flows both of which must to complete before the current flow resumes. Split For each :- This Flow Shape is used to performs an operation are test on each element in a repeating group. Work Party : A Work Party is a person,organization,other actor identified in a work object. Who can be the receipt of email or other forms of correspondence. Work Parts are directly not involved into the work object Processing but they are interesting to known the work Progress. Work Party Rules are part of the Process Category. A Work Party Rule is an instance of the Rule-Obj-Work Party type. Type Of Work Partys :These are mainly 5 types of Work Partys are Available. 1. 2. 3. 4. 5.
Data-Party-Com Data-Party-Gov Data-Party-Operator Data-Party-Org Data-Party-Person
Which is used for Business Organization Which is used for Government Organization Which is used for Process Commander s Which is used for Non Profit Organization Which is used for Non Process Commander s
Difference between Split- and split for each? A) Split is sub flow of ur flow is completed before continuing the current flow completed. Split for each is to send a work object through another flow based on the information in the pages of page list and page group.
Page 69
PEGA MATERIAL Decision Rules
Decision Rule are used to design Calculations and Comparison that may cause Processing to continue along one path or another path.
Types of Decision Rules : There are mainly 4 Types of Decision Rules available. They are 1. 2. 3. 4.
Decision Tree Decision Table Decision Map When
At Runtime the System evaluate the decision rule based on inputs from the flow and the work object and chooses one of the outgoing connectors based on the results. No interaction or i/p required for the decision rules
Decision Tree : Decision Tree rule is used to evaluate a complex if then else situations, that involves multiple tests and criteria. Decision Tree rule contain a list of one or more i/p properties and can return a property value as a result. Decision Tree is used to call another decision rules also For an advanced Decision Tree rule complete the i/p tab before the Decision tab. For a basic Decision Tree rule complete the Result tab first To Restrict the results to one of a few constant values, complete the results tab first before the Decision tab. How to Refer a Decision Rules ? : In a Flow Rule ,we can reference a Decision Tree rule in a Decision task indentified by the Decision Shape. In an Activity ,we can evaluate a Decision Tree using the Property-Map-Decision Tree Method A Declare Expression rule can call a Decision Tree rule. Ex :-- If Grant Total
5000 then Return “Unitmanager@I FOCUS.com.”
If else Grant Total
4000then Return “
[email protected].
Otherwise returns “
[email protected].” Decision Table :
Page 70
PEGA MATERIAL Decision Table is used to define a series of Tests Perform on Property values to allow an automated Decision. A Decision Table can capture and Present Business logic in the form of one or more if then else conditions. We can incorporate Decision Table in a flow Rule using the Decision Shape Property-Map-Decision Table Rule is used to execute a rule in the Activity. A Declare Expression rule can call a Decision Table Rule A Decision Table can convert multiple Property values into a range of return values.
Conditions Item Name If Else if
Laptop
Return 30,000
Keyboard
1500
Else if
Monitor
6000
Else if
Mouse
200
Else if
Printer
2000
Otherwise
Null
No Items
Decision Map : A Map Value Rule is used to create a Table of numbers,text,dateranges that converts one or two input Values, such as latitude and longitude numbers, into a calculated result value such as a city name. Use Map Value Rule to record Decision Based on one or two ranges of an input values.
Decision Table
Decision Tree
Decision Table Decision Tree
Page 71
PEGA MATERIAL When : This Rule is an instance of Rule-obj-When A When condition rule evaluates a relationship b/w among one or more property values and r eturn Boolean values Logic Operators are AND,OR,NOT. When Rules are called in the Activity in Precondition Transition.
Declarative Rules Declarative Rules are used to do the automatic processing of the property Values. A Declarative Rule is an instance of Rule-Declare. Declarative Rules need not be called explicitly and need not be run in a Sequential fashion Process Commander can refresh the values automatically each time in the following Scenarios. 1. Any Property Value in an Expression Changes. 2. When data a Property Value is Accessed 3. When data Being shared between is changed. A Per as PRPC is concerned one of the Guardial says that Calculated and Edit Declaratively ,not Procedurally. 1. Use Declare Expression Instance of Property Set Method 2. Use Declare Constraints Instead of Field Validation Method Types Of Declarative Rules : We have mainly five types of Declarative Rules .they are 1. Rule-Declare-Constraints 2. Rule-Declare-Expression 3. Rule-Declare-On Change 4. Rule-Declare-Trigger 5. Rule-Declare-Index Constraints : Constraints is a valid method rule which is used provide a message to ,when if an attempt to exceed the boundary’s of the restriction is made, When page become invalid. Which Provides the boundary on the values that a Property can hold. For Ex : Property can be Negative. Property can’t be greater than certain ValueConstraint Rule :
When
Requires that
.Qty has a value
.Qty
10
Else add message Qty must be less Than 11.to
.Qty Page 72
PEGA MATERIAL
Declare Expression :- An Expression is a Single line of Process commander syntax that allows calculation of a value using arithmetic Operations, logical Operators, Java Operators ,Standard Functions and Properties. Declarative Expression automatically fire whenever input changes Declare Expression Rule:
When Ever input Changes Set
.Grant Total
=Sum of
.Hardware Info.Total
(or) When ever Input Changes Set
= Value of
.Tota l
.Price *.Qty
Forward Chaining : Forward Chaining is a technique Which PRPC uses to calculate a target property value automatically each time when there is a change in the value of the input Property. Ex :-Declarative Networks
Values at Runtime 123.22
Order Total
Order price (all items)
Tax
17.5%
54.95
104.87
49.92
Extended Price 5*10.99
Quality
4*12.48
Price Page 73
PEGA MATERIAL
Backward Chaining :- Backward Chaining (Goal Seeking) is the technique by the PRPC calculate the value of a target property even when the value of an input or parameter property not available. Backward chaining is achieved by means Rule-Declare-Expression and Property – Seek-Value method. The System uses the internal dependency network of Property relationships to the develop interfaces about how to obtain the missing property Values.
Order Total
Order Price
Tax
Extended Price
Quantity
Price
How to decide Forward Chaining /Backward Chaining? The Target Property data Field in the Declare expression decide this in below scenarios. 1. 2. 3. 4. 5.
Whenever input Changes Whenever used If no Value Present When Used If Property is missing Whenever used When applied by a Rule Collection
Forward Chaining Backward Chaining Backward Chaining Backward Chaining Backward Chaining
This target Property data value will define at change tracking tab in Declare expression rule. Declare Expression rule will have both Forward Chaining and Backward Chaining Functionalities.
Page 74
PEGA MATERIAL
Declare- On Change
:
Declare on change Rule can be used to run an activity automatically at activity step boundrys whenever the value of Specific Property Changes. This Capability provides a form of automatic forward chaining
Ex : We can create a Declare on change to call an activity that send a email notification to employess. whenever that organization CEO Changed.
Pages&class ess
Onchange Property Properties to Watch
Histrory
Declare On change Rule Form
1. Conditions When Choose action
Call Activity
When True Run Activity
Params
When False Run Activity
Params
Declare Trigger : Declare Trigger is an instance of Rule-Declare-Triggers A Trigger Rule identifier an activity that runs automatically When ever an object of a object of a particular class is saved in or Deleted or updated in the Data Base
Declare Trigger Rule Form.
Page 75
PEGA MATERIAL Triggers
Pages & Classes
History
Saved
Deleted Committed Save Committed Delete Saved and……
immediately
Rule-Declare-Trigger? A) It identifies an activity to run when an instance of specific class is saved, updated or deleted in the database. this implements a form of forward chaining.
Page 76
PEGA MATERIAL EX: A Declare Trigger rule can execute an activity each time an instance of class is saved with modified ZIP code. The activity might send a email to Sales representative whose area includes new address. DT can implement a form of class history like date, time and other facts. Declare Index : It Is an instance of Rule-Declare-Index Index can improve performance and facilities reporting Create a Declare Index Rule to define Criteria under which process commander automatically maintains index instances for faster access. An index can improve search and Reporting access for Property that can’t be exposed as Database Columns, Because they are embedded an aggregate property. The System saves indexes as an instances of concrete classes delivered from the
Index-base classes To expose aggregate property’s Declare-Index Rule is the better approach . Creating Steps of Declare Index : 1. Create a concrete class which derives from Index-base class 2. Create a Single Value Property’s in the new class, to holds the embedded Values. 3. Create a Declare Index with the appropriate embedded page context value that copys the embedded values into a new Index instance. 4. Save the Declare Index Rule, It executes immediately, adding and deleting instances of the new class. 5. Expose Database Columns corresponding to the Index-Class. 6. Reference the Index Properties on the Report Determination or List View Rule.
Page 77
PEGA MATERIAL Declare Index Rule Form :
Indexes
Pages Indexes
History
Index Class Date Source Page Context Source Page Context Class Index Class to Write Properties For Indexing And Mapping
Source Class Property
Mapping
Index Class Property
Equals
Indexing Conditions When
Enabled Activities
Activity is a series of steps used to accomplish an objective It provides procedural processing functionality in process commanders It is very similar a method in java Indexto even if a Source class property is Blank? Which is listed in technical category Don’t use an activity for calculations or property validations that you can implement as constraints rule or declare expression rules Activities automate processing. Activity rules contain a sequence of structured steps. Each step calls a method rule or contains a control instructions such as call or branch. When are Activities used? 1) For Work Related Functions:1. Updating work object status 2. Routing work to work lists
Page 78
PEGA MATERIAL 3. Creating/processing email(correspondence) 4. Adding work to a cover or folder 5. Processing service level rules 2) For Integration:1. Invokes other connector rules
Queries/Updates Database tables Sends/receives information to/form webservices endpoints
2. Used with service rule to accomplish with service objectives 3. Writing debugging information to log files Standard Activities 1. Work-Update status 2. Work-To cost center manager 3. Work-cover-Add to cover
There are 5 tabs available in activity rule form. 1. Steps 2. Parameters 3. Pages & Classes 4. Security 5. History 1)Steps tab:a) Lable:- At the time of precondition or transition, if we want jump to later steps that are fined based on the lable value b) Loop:- Which is used for iteration purpose for values list, page list and loop ect…. It has five fields.They are 1. For each page:- Option to sequence through all pages of a specified classes. 2. For each embedded page :- Apply a method or instruction to each embedded page in a page list or page group property 3. For each element in a value list:-To repeat the steps for each element in a value list property 4. For each element in a value group:-To repeat the steps for each element in a value group property 5. For Loop:-To repeat the step a number of times determined by the values of integer constants or integer properties
Page 79
PEGA MATERIAL C) Description :-Here we give description or steps for developed identification D) Precondition :-Before executing the methods or steps. If we want to check “when” rule that precondition is used. Different options available for preconditions they are 1. Continue when :-Next when condition is validated 2. Skip Step :- Current step is skipped and control goes to next step 3. Skip whens :-The control goes to the method or instruction referenced in that step 4. Exit Activity :-Control exits the current activity and goes to the calling activity 5. Exit iteration :- For the current iteration the step is skipped and the control goes to next iteration. 6. Jump to later step :-The control goes to the step references e) Transition:-After executing the method or step The transition step also has the same options as preconditions for the transition to take place. f)Step page: Identify the page on which this step is to act In left blank ,the step acts on the primary page of the activity Primary page : A clipboard page loaded with the same class as the activity g) Method :-Different procedures perform on an activitystep are called as method We can review the methods but not alter or add methods These are different from java method 2)Parameters tab:-This tab can be used to the values (parameters) to the activity The variables which are used as the inputs or outputs for the activity Process commanter places parameter names/values on a parameter page We can access this using “param” keyword Ex:-Para.Deptno Fields :Name
Description
Data Type
Reavised
String/text
In/Out
Prompt Default value
Yes/N0
Integer, Boolean, Double,
Page 80
PEGA MATERIAL Decimal, Date, Date time, Time of day, , Java object, Page name Local Variable : Local variables are properties that are used inside an activity and these variables will have only a local scope and it can’t be used outside the declared activity The local variables can also be any one of the mentioned data type Local variables are avalibles on the tracer, local variables are not available on the clipboard
Fields:Name
Description
Data type
If we want to see the local variables only on the tracer, not clipboard In tracer ,go to settings and check the check box of local variables 3. Pages & classes tab: Use the pages & classes tab to identify the step pages used in this activity Pages and classes fields :Page name
class
Name of page
mode
empty/prompt
page belongs to which class
4.Security:Which is used to define activity types and to check the authentication and may start check boxes Fields:May start? Authentication?
Activity type
Activity
Assign
Page 81
PEGA MATERIAL Connect Locate Notify Onchange Route Validate Trigger Utility Assembler Load declarative page
5.Histry tab:Fields :- Full description: Detail about activity
Usage: Use of that activity
Methods Branch:- Use the branch instruction to cause the current activity to find another specified activity and branch to it without a return When the system executes a branch step , control transfers to another activity found through rule resolution Sharing pages b/w original and branch s: The preferred means for ing a single page from one activity to another is to identify the page in the step page field of the calling activity. The second activity receives this page is its primary page If you need to more than one page ,use the indirect page mechanism: 1. In the second activity ,identify an indirect page by the keyword prompt as the mode field in the page&classes tab 2. In steps of second activity, refer to these pages using the syntax prompt page name. No corresponding entry is required in the parameter tab. 3. In the first activity, the additional pages as arguments to the call instruction that invokes the second activity. 4. The value supplied for the prompt page must not be blank and must evaluate to a clipboard page name(toplevel or embedded).The keywords primary, top and parent are not valid with prompt page, the param keyword is valid.
Page 82
PEGA MATERIAL Call:-Use the call instruction to cause the current activity find another specified activity and execute it when that activity completes,control returns to the calling activity. The calling activity can provide input parameters to the called activity or it can share its own parameters page with the called activity an approach known as call-tryreference
Call, Branch, Queue methods with examples and differences between these methods. Call Method:
Use the Call instruction to cause the current activity find another specified activity and execute it. When that activity completes, control returns to the calling activity. The calling activity can provide input parameters to the called activity, or it can share its own parameter page with the called activity, an approach known as call-by-reference. The Call instruction requires an activity name in the Method field, a checkbox for sharing the parameter page, and optionally a variable number of parameters for the called activity. · Activity (in the Method field): dentify the activity you are calling. Type Call followed by a space and the Activity Name key part of an activity. To locate the activity with rule resolution at runtime, the system uses the class of the step page as the initial Applies To key part, and searches the class hierarchy for an activity of that name. If the Step Page field is blank, the system uses the Applies To key part of this activity as the initial Applies To key part. Optionally, you can identify the Applies To key part of the called activity explicitly, using the format: Call Data--Operator-ID.Analyze Call MyCo-Finance-Work-Form990.Validate · current page ? Select to cause the calling activity's parameter page to be ed to (shared with) the called activity, which can alter its contents in any way. Clear to use the array that appears below the checkbox to parameters to the called activity. If you select this box, the parameter page remains available to the calling activity after the return. This capability is sometimes known as call-by-reference. The system uses rule resolution to locate the activity. It then constructs or shares a parameter page, and transfers control to the activity.
Page 83
PEGA MATERIAL The below is the screen for the activity containing called method, This activity calls VTest_PropSet method, The activity for calling method is shown in the next screen below
1.
New page , CallPage1” is created
2.
Company name is set to TCS
3.
Test_PropSet activity is called and Company name is over ridden, set to Accenture
4.
Company name is over ridden with MS.
When you run above activity, the property is set to “MS” on clip board. Branch Method: Use the Branch instruction to cause the current activity to find another specified activity and branch to it without a return. When the system executes a Branch step, control transfers to another activity found through rule resolution. Execution of the original activity pauses. When the branched activity ends, processing of the current activity ends also; no steps after the Branch step are executed. You can parameters to the target activity, or you can share the current activity parameter page with the target activity. · Activity: In the Method field, type the word Branch, a space, and the activity name to branch to. SmartPrompt is available. If the second activity is not in the same class as this activity, and not in the same class as the page identified in the Step Page field, identify the Applies To key part of the second activity also, using the format: Branch Data--Operator-ID.Analyze · current page ? Select to cause the calling activity's parameter page to be ed to (shared with) the called activity, which can alter its contents in any way. Clear to use the array that appears below the checkbox to parameters to the called activity. If you select this box, the parameter page remains available to the calling activity after the return. This capability is sometimes known as call-by-reference. The system uses rule resolution to locate the activity. It then constructs or shares a parameter page, and transfers control to the activity. The below is the screen for the activity containing branched method, Queue Method:
Page 84
PEGA MATERIAL Use the Queue instruction to start asynchronous execution of a second activity. This provides an alternative to the Call instruction, in situations where there is no need to wait for completion of the second activity, or where processing in parallel is feasible and beneficial. This activityQueues Test_PropSet method, when the Queue step is executed , the activity goes to the queued activity and at the same time this activity also executes without witing for queued activity to execute. The execution varies from activity to activity.
Difference between Call, Branch and Queue methods: 1. Call instruction is used to cause the current activity to find another specified activity and execute it. When that activity completes, control returns to the calling activity. and the calling activity continues. 2. Branch instruction is used to cause the current activity to find another specified activity and branch to it without a return. When the system executes a Branch step, control transfers to another activity found through rule resolution. Execution of the original activity pauses. 3. Use the Queue instruction to start asynchronous execution of a second activity. This provides an alternative to the Call instruction, in situations where there is no need to wait for completion of the second activity
As shown in the example above, In the call method, the activity returns to original activity and Companyname is set to “MS” In the branch method, the activity does not returns to original activity and Companyname is set to “Accenture” In the Queue method, the activity returns to original activity with out waiting for queued activity. Sharing Pages b/w calling and Called Activities The preferred means for ing a single page from one activity to another is to identify the page in the step page field of the calling activity. The called activity receives this page as its primary page. If you need to more than one page , use the indirect page mechanism
Page 85
PEGA MATERIAL 1. In the called activity, identify an indirect page by the keyword prompt as the mode field in the pages & classes tab. 2. In steps of the called activity, refer to this pages using the syntax prompt page name. No corresponding entry is required in the parameter tab. 3. In the calling activity , the additional pages as arguments to the call instruction that involves the second activity. 4. The value supplied for the prompt page must not be blank and must evaluate to a clipboard page name(top level or embedded).The keywords primary, top, local and parent are not valid with prompt page ; the param keyword is valid. Activity-End Method:-This method appears in the activities that process commander infrastructure, but is otherwise rarely needed. In ordinary circumstances, use the exitactivity method, not activity-end to return to a calling activity from an internal step of the current activity. 1. End the current activity and all calling activities (by throwing an exception that is caught) 2. Transmit any HTML code previously produced to an interactive . Commit Method: Use this method to commit all uncommitted database changes. This method writes all the instants specified by one or more earlier obj-save methods to the pega rules database(for internal classes) and to external databases(for external classes) This method operates on Thread pages that can operate across multiple instances. After an object instance is saved into the database, it is persistent. Connect-JMS Method:Use this method to send a jms message to an external system using the java message service application programmer interface
Connect-SOAP Method:Use this method to invoke a web service identified in a connect SOAP rule (Ruleconnect-SOAP rule type) End-Validate Method: This method is used only for custom rule types, to end the processing that develops rule references. Use this method as the last step in an activity of activity type validate when the class of the activity is a rule –class and the start-validate method was used as first step.
Page 86
PEGA MATERIAL Exit-Activity Method:This method ends the current activity and returns control to the calling activity. Flow – End Method:Use this method to immediately end a flow execution, prior to reaching a flow-end shape. Flow –New Method:Use this method to start a new flow execution of a known flow rule Obj-List Method: Use this method to retrieve data to the clipboard as an array of embedded pages. This method searches sequentially through instances of the pega rules data base or an external data base and retrieves specified data to pages in the clipboard. It returns either: 1. Complete instances, each as an embedded pages. 2. Selected properties from the instances placed in embedded pages with shortcut characteristics. Shortcut pages contain only partial instance data and so can’t be re-saved to the database This method is often used with a list rule(rule-obj-list rule type) which defines a list of properties Obj-Open Method:Use this method to open an instance stored in the pega rules data base or in an external data base linked to an external class and save it as a clipboard page.
Obj-Open Method parameters:1. 2. 3. 4. 5. 6.
Open class Lock Release on commit Lock info page Property name Property value
Obj-Open-By-Handle method:The handle of an instance is a unique key, in an internal format assembled by the system that identifies an instance in the pega rules data base. It may differ from the visible key generally used to identify instances(every instance has an unique handle but more than one instance may share the same visible key). For rule instances, the handle includes systemgenerated identifying values (including the create data and time) that make it unique.
Page 87
PEGA MATERIAL Use this method only if you can determine the unique handle that permanently identifies which instance to open. Otherwise use the obj-open method Parameters:1. 2. 3. 4.
Instance handle Lock Release on commit Lock info page
Obj-Browse method:Search through and select instances of a class based on tests of values of exposed columns. (or) It is fetching the data directly from blob. Here we can use where conditions based on the conditions it is fetching data from blob memory that where conditions, properties must be the exposed property otherwise it rises the error. Parameters:1. Page name 2. Obj class 3. Max records 4. Read only 5. Logic 6. Label 7. Select 8. Field 9. Condition 10. Value 11. Sort Obj-Refresh-and-Lock Method: Use this method to assure that the contents of the step page are current and a lock is held on the corresponding object. 1. If the object is locked and the lock has not expired, this method has no effect. 2. If the object is not locked, this method acquires a lock and if necessary replaces the step page contents with the current value of an object instance. This is useful if you are not certain whether the contents of the step page are current or whether your requestor session already holds a lock on the page. Obj-Save Method: Use this method to request that the system save a clipboard page to the pega rules data base or(if the page belongs to an external class) an external data base.
Page 88
PEGA MATERIAL This method uses properties on the page to derive the internal key under which it will be saved. This method can create a new database instances or over write a previous instance with that key Obj-Save-Cancel Method:Use this method to cancel the most recent uncommitted obj-save method, so that the instance is not written as part of a later commit operation. You can also use this method to undo an obj-delete that has not yet been committed. Obj-Set-Tickets Method:Use this method in an activity to set(turn on)one or more tickets or reset(turn off) one or more tickets. Obj-Validate Method:Use this method to apply a validation rule (an instance of the rule-obj-validate rule type) for the object identified on the primary page or step page. METHODS FOR PERSISTENT INSTANCES(Obj Methods) Obj-Browse Method: Use the Obj-Browse method to search instances of one class and copy the entire instances, or specified properties, to the clipboard as an array of embedded pages. Only properties exposed as columns can be used as selection criteria. However, values of properties that are not exposed as columns, including embedded properties, can be returned. The Obj-Browse method has five base parameters Page Name: Enter the name of the destination page to contain search results. The system uses Code-Pega-List as the class of this page. ObjClass: Identify a class to search. You can search one concrete class, or all classes in a class group. Within the PegaRULES database, the class can correspond to a database table or to a database view. Max Records: Optional. Enter the maximum number of instances you want returned in the list at runtime. If left blank, the default value is 10,000. GetRowKey: Select to include the primary key in the set of property values returned. Clear to exclude the primary key. RowKey: Optional. Leave blank unless the class in the ObjClass parameter corresponds to an external table. Enter the name of a property in the external table, or an expression involving one or more property names, that specifies the unique key of rows of the external table. ReadOnly: Select to mark the embedded pages for the selected instances as readonly, meaning that later processing by the requestor cannot update or delete data in the page. Leave unselected if you plan to update the embedded pages. Logic: Optional. Enter a boolean statement that defines how the rows of the parameter array are to be combined. Identify rows by the Label field. You can use the operators AND and OR in this statement, and parentheses for grouping. Label: Enter a unique letter or identifier for this row, referenced in the Logic field. Select: Select to return the value of this property on each embedded page. In the resulting SQL statement at runtime, this property is listed in the SELECT list
Page 89
PEGA MATERIAL Field: Enter a property reference. You can specify a Single Value property, a list or group property, or individual elements of a list or group property. Condition: Select a comparison, such as Is Equal or Is Less Than. Select Value Only if the search results are to include the property value, but the property value is not to be used as a selection criterion. Select Is Null to require that the field a have null value. Select Is Not Null to require that the field have a value. If the property is not exposed as a database column, select Value Only. o Value: Enter a constant value, a property reference or other expression for the comparison. Leave blank if the Condition is Value Only, Is Null, Is Not Null, Is True or Is False. If you enter an expression involving function rules, Java, and properties on various clipboard pages, then at runtime the expression is evaluated only once. If you enter a property (that is exposed as a column) that applies to the ObjClass class, the Value value is evaluated for each row. Sort: Select No Sorting, Ascending, or Descending to control the sorting of results by this field The below screen shows the Activity for obj-browse method, o
Obj-Delete Method: Use the Obj-Delete method to delete a database instance corresponding to a clipboard page and optionally to delete the clipboard page too. You can cause the deletion to occur immediately, or (more commonly) defer deletion until a later execution of a Commit method.
Page 90
PEGA MATERIAL
·
This method can operate on objects of both internal classes (corresponding to rows in a table in the PegaRULES database) and external classes (corresponding to rows in an external relational database). This method has two parameters: Remove: If selected, the system deletes the page identified in the Step Page column of this step from your clipboard and marks the corresponding persistent instance for deletion
· ·
Immediate: If selected, the system deletes the database instance immediately (commits this deletion). To delete the database instance immediately from the database, select this box. If this box is cleared, the database instance is deleted by the next Commit operation.
· ·
These situations cause the method status to be Fail or Warn. You cannot delete an instance without locking it first (usually with the Obj-Open method). You cannot delete an instance while it is locked by another requestor The below screen shows the activity containing obj-delete method,
The clipboard page after running the obj-delete method.
Obj-Filter Method:
Page 91
PEGA MATERIAL Use the Obj-Filter method to filter the embedded pages of a results page (such as a CodePega-List page produced by the Obj-List, RDB-List, Obj-List-View or Obj-Browse methods) based on one or more when condition rules. This method has two required parameters and an array parameter ·
Result Class: Select the Applies To key part of one or more when condition rules (Rule-Obj-When) to be used to test each result. Must match or be an ancestor class of the class of the embedded pages in the ListPage page.
· ·
When: Complete at least one row of this array, specifying a when condition rule. ListPage: Name of the results page, of class Code-Pega-List. The below is an example for the activity containing obj-filter method.
The result for the above activity is shown in the clip board page below.
Obj-browse and obj-list difference? A) Obj-methods used to fetch the data from the BLOB columns, but RDB methods can only help to fetch the data from exposed columns. RDB methods are faster than Obj methods in of response time. obj-validate and edit-validate? A) Obj-validate is used to run validate rules on set of properties and representing input. edit-validate is used to test the inputs. Obj-ListView Method: Use the Obj-List-View method to execute the retrieval and sorting operations, but not the formatting and display processing, of a list view rule. · · ·
ObjClass: Select the Applies To key part of a list view rule. This may identify an internal class or class group, or an external class. ListView: Select the Purpose key part of a list view rule Owner: Select the Owner key part of a list view rule
Page 92
PEGA MATERIAL The system uses rule resolution to find the list view rule and executes it, but does not produce any HTML output display. The selection criteria of the list view rule and the sorting requirements The database results are organized into a results page of class Code-PegaList. The name of this page is determined by the Content Page Name field on the Content tab of the List View form, (The Step Page field on the step is ignored.)
Obj-Open Method: Use the Obj-Open method to open an instance stored in the PegaRULES database or in an external database linked to an external class, and save it as a clipboard page. This method has four base parameters plus an array of property names and values. OpenClass: Optional. Identify the concrete class of the instance to be opened. Lock: Select this box to acquire a lock. Lock the instance if you plan to change and save the instance or delete it. ReleaseOnCommit: Select this box if you selected the Lock box and want the system to release the lock when the next Commit method occurs for this instance. LockInfoPage: Optional. As a debugging aid, identify the name of a page to be created by this method to hold the results of the locking attempt, when it fails. PropertyName: Enter in this array the name of each property or properties and the associated values that together make up the key of the instance to be opened. Type a period before the property name. Enter at least one property name. PropertyValue: For the value, specify either a literal value or a property reference.
Page 93
PEGA MATERIAL
Obj-Validate Method: Use this method to apply a validate rule (Rule-Obj-Validate rule type) for the object identified on the primary page or step page. This method has two parameters: Validate: Enter the second key part of a validate rule to apply. Override class: Optional. Enter the name of a class where rule resolution will begin searching for the Validate rule. The below screen shows an activity with obj-validate method, and the clip board page containing the validation message.
Page 94
PEGA MATERIAL
Obj-Sort Method: Use this method to sort the clipboard pages that are the values of a property of mode Page List. You can specify one or more properties to sort on, and whether the sort sequence is ascending or descending for each sort level. · · ·
·
PageListProperty: Enter a property reference that identifies a target property of mode Page List to be sorted. Class: Identify the class of the pages within the Page List property SortProperty: Identify in rows of this array a property reference (starting with a period or a page name) on each page of the Page List property that is the basis of sorting. Each property reference most identify a Single Value mode property or a single text string. Descending: Select to cause the method to sort in descending order for the property. Clear the box to sort in ascending order
Obj-Save Method:
Page 95
PEGA MATERIAL
·
·
Use this method to request that the system save a clipboard page to the PegaRULES database or (if the page belongs to an external class) an external database. The Obj-Save method uses properties on the page to derive the internal key under which it will be saved. This method can create a new database instance or overwrite a previous instance with that key. This method has two parameters: WriteNow: Normally, leave this box cleared. Select the box to cause the system to write this page's data to the database as this method executes. If selected, when the activity executes, the system performs an immediate writethrough (database commit) of the page to the database. Clear the WriteNow checkbox in any activity of type Trigger, Utility, Notify, Assign, or Route, and in situations where you want to mark a page to be saved, but want the system to perform the database commit later. WithErrors: Select this box if the instance is to be saved even when it contains messages, indicating validation errors. These situations cause the method status to be Fail or Warn:
§ You cannot save a page that is locked by another requestor. § You cannot save a page that your session does not hold a lock on (if the page belongs to a lockable class), unless the object is new, never yet saved. § You cannot save pages of any class derived from the Code- base class or the Embed- base class. Such pages exist only on the clipboard. The below screen containing activity is an example for obj-save method, This activity when run saves the Test_ObjBrowse page to the PRPC data base. Obj-Save-Cancel Method: Use this method to cancel the most recent uncommitted Obj-Save method, so that the instance is not written as part of a later Commit operation. You can also use this method to undo an Obj-Delete that has not yet been committed. The page identified in the most recent Obj-Save or Obj-Delete method is removed from the set of pages pending a Commit method. When a later Commit method executes, this page is not included in those committed. The below screen contains the activity for obj-save-cancel method, it cancels save of the page saved by Obj-save method in step 3.
Page-Clear-Messages Method:Use this method to remove all property messages and all page messages from the page identified in the step page column of the current step. Page-Copy Method: Use this method to copy the contents of a source clipboard page to a new or previously crated destination clipboard page. The source page is not altered.
Page 96
PEGA MATERIAL After this method completes, the destination page contains properties copied from the source page and may contain additional properties from the model. Page-New Method: Use this method to create a page on the clipboard The new page may be a top-level page or an embed page You can identify a model to initialize the newly created page. The model can set values for one or more properties. Page-Remove Method:Use this method to delete one or more pages from the clipboard. The contents of the database are not affected. Page-Set –Messages Method: Use this method to add message to clipboard page. Like a message associated with a property, a message associated with a page normally prevents the page from being saved into the database Property-Map-Decision Tree Method:Use this method to evaluate a decision tree rule(rule-declare-decision tree rule type) and store the result as the value of the property. In the diagram tab of a flow rule,the decission shape can reference a decision tree rule.
Parameters:1. 2. 3. 4.
Property name Decision tree name Input Allowing missing properties
Property-Map-Decision Table method:Use this method to evaluate a decision table rule and save the result as the value of a property. Property-Map-Value method: This method evaluates a one-dimensional map value(rule-obj-map value rule type)defined in the parameter. The method sets the results as a value for a single value property. A decision shape can reference a map value rule. The related method property map value pair works similarly for two-dimensional map values
Page 97
PEGA MATERIAL Parameters:1. 2. 3. 4.
Property name Map name Row input Allow missing properties
Property-Map-Value pair method:This method evaluates a two-dimensional map value rule identified in the parameters. It sets the value that results into a specified property. Property-Seek-Value method:Use this method to initiate backward chaining computations the value of a property based on declare expression rules. Property-Set-method:Use this method to set the value of one or more specified properties Property-Validate-method:Use this method in an activity to ensure that a property value meets certain requirements including : 1. Checking performed by an edit validate rule(rule-edit-validate rule type) 2. A requirement that a property have a non-null value
RDB-List method:Use this method to retrieves rows from an external relation database and place the results as embedded pages in a specified step page of class code-pega-list. RDB-Open method:Use this method to retrieve a single row(record) of data from an external relational data base and add the retrieved data into a specified clipboard page as property names and values. RDB-Save method:Use this method to save the contents of a clipboard page into a row of relational database. The system saves the properties on the specified step page to the specified table in the database. Roll back method:-
Page 98
PEGA MATERIAL Use this method to cancel or withdraw any previous uncommitted changes to the pega rule database (and to external databases accessed from an external class)from the current thread.All pending obj-save and obj-delete methods are cancelled. Show-Page method:Use this method to send an XML representation of the step page to a ’s internet explorer browser session as an aid to debugging. Wait method:Use this method to a pause a thread for a specified time interval. This method causes the current thread to wait a specified time interval (at least)before continuing with activity processing.
Debugging Tools Debugging Tools are 3 types they are 1.Clipboard
2.Tracer
3.UI Inspector
Requestor: A person or process authenticating into process commanter called as Requestor. Ex:-guest , an operator or an external system Each requestor is allocated their own clipboard upon authentication.
Clipboard: Clipboard is reserved memory on the server, not the client Each requestor has access to an individual clipboard that contain pages. Which contains of property name/value pairs. This tool is used to view the contents of your clipboard as learning or debugging Used to create, update, delete and modify pages using action menu Quickly start activities and flow using the action menu. What are Clipboard pages? There are mainly two types of clipboard pages they are 1. pages 2. Data pages 3. System managed pages including the requestor page, process page, application page, thread page, operator ID, organization, org division and org unit Use the performance tool to know the size of the clipboard in bytes.
Page 99
PEGA MATERIAL
Pywork page contains the information about current work object.
pages:A page is a top level clipboard page, than an activity creates using any of several methods such as page-new method. Requestor page:The class for the page is code-pega-requestor The Px requestor page is a named top level clipboard page. The system creates these pages at during at . The page contains information about your access roles, Ruleset list and HTTP Protocol parameters.
Process page: The Px process page is a reserved top-level clipboard page known as the process page. This page has a class of code-pega-process This page contains the information from the data--system instant The contents of this page are identical for every requestor on a mode. Ex:-Px system node property identifies the server host name Thread page: Pega rules thread object is a named context of clipboard pages. The Px thread page is a named top level clipboard page sometimes referred to as the thread page. Most processing for a requestor is single threaded The class for the page is code-pega-thread
Embedded page: It is a clipboard page that has the values of a property of mode page. Any page on the clipboard that is not a top-level page is an embedded page. Action menu in clipboard:1. It s : create, update and delete the page 2. It s : To start a flow and execute activity etc…
Thread
Action
Legend
Page 100
PEGA MATERIAL
1. Refresh 2. Refresh current page 3. Find 4. Create page 5. Update page 6. Delete page 7. Execute activity 8. Save page 9. Start flow 10. Analyze clipboard 11. Collect details
Tracer Which is used to trace out activity details to find errors. Tracer and Trace open rules are available a. Trace open rule is used to trace only our activity which is currently running b. Tracer is used to trace all the activities which are all running in that server currents Tracer tool is used the debugging flows, activities, including step-by-step execution, break points and watch variables. Type the keyword shortcut CTRL+T ButtonFunction Connection
Choose a requestor session other than your
own.wait few seconds until tracer connects Options
select which Rulesets rules and events are to
be traced. Break points Watch Save
set or change break points set or change watch variables save tracer output on the work station as an
excel CSV Or XML File
Page 101
PEGA MATERIAL Abbreviate
After clicking play select to reduce the amount
Events?
Board detail retained for each tracer row
of clip
Clear Pause
Erase the displayed events Pause the session being traced at the next
possible Moment Continue
resume processing after a pause button
click or after a break point event. appears only after a pause Save
Save the tracer results in the current
windows into a Text file in comma-separated values format or as More detailed XML file. UI Inspector:UI Inspector tool provides a quick and interactive way for you to identify and inspect a forms underlying harness, section, flow action, styles and property rules as well as the associated HTML and property dependency network. Reports Rule types in the reports category define reports, that the monitor activity work space, the explorer tools and other facilitys. This category includes 3 rule types they are 1. List views 2. Summery view 3. Report definition Any developer can create and maintain these 3 rule types. Manager who creates the reports using Report Wizard and also indirectly creates these type of rules Manager can define reports in 4 categories 1. general work objects 2. covering work objects 3. assignments 4. work object history Developers can define reports on any concrete class derived from the Assign-, data-, history-, index-, log-, rule- or system- base classes
Page 102
PEGA MATERIAL List view: A list view rule is an instance of the rule-obj-list view rule type. list view defines a report. s can personalize list view reports easily and interact with them In an activity the obj-list-view method can execute a list view rule to provide searching and sorting with no display Both developer and manager can create and update list view rules. List reports display lists of data that match the selection criteria Get content activity will use to get the results from the data tab Summery View: Summery view presents the summarized data that matches the selection criteria as an aggregate In summery views, we have Drill down option for individual records to expand the selected work item in the summery report. Interactive charts display the data from a summery report as a pie, bar, column, area, or line chart Reports are implemented can display for manager and s as they requested. Report Definition: Use report definition to generate reports. This rule generates a SQL query against the PRPC database or an external database or against the search index and generates HTML that displays the query results in a wide variety of formats. s can have the options of a range of s interactions with the displayed results, depending on the setting on the report viewer tab. Reports are implemented through list view, summery view and report definition rules which the report wizard generates for you. If you have a system access role we can share the reports. If you want to generate the reports by using the data from two or more tables we need to those tables by using a unique key into a single rule. In list view, summery views, we have a ed tab to combined two or more tables. If we want , two or more tables in report definition we have to use Data Access tab. Report definitions will refer in activities by using pre retrieve report data activity. You can display the results of a report definition rule in a grid layout with in a section, flow action or harness. Case Management A work object is the primary unit of work completion in an application and the primary collection of the data that a flow operates on. As an application is used work objects are created, updated and eventual closed(resolved) Every work object has a unique ID (property pyID) an urgency val status (property py status work) and that contains the default prefix “W-?
Page 103
PEGA MATERIAL Work object ID will create automatically as a work object is created .The standard utility activity named work-generate ID uses the standard properties py work ID prefix and py work ID suffix in its computations. The work object ID is required to contain either a prefix or suffix. For example, the prefix of work object Q-143 is Q. the prefix of work object MORT-763-K4 is MORT. The suffix of work object MORT763-K4 is K4 The work-base class, one of thirteen standard top level abstract classes, is a super class to all the classes that define work objects. A work object is the fundamental unit that records processed work in an application. Ordinary work objects typically belonging to the class derived from the standard abstract class work –object-. A cover object is also a work object in an concrete class that inherits from work-cover. A cover object can consists of many work objects and those work objects are inherited from work-object-class and those work objects are known as covered work objects and the work objects derived from work-cover- is known as the cover work object. A cover work object provides a means to cordinate processing of related work objects. By default, the system prevents the resolution of a cover work object unless all of its “member” covered work objects are resolved. cover work object will maintain the parent child relation ship and those cover objects will contain the prefie ID as “C-“ covers are used to maintain the parent child relation ship. For example if there is a necessity of resolving five work objects to process a request , then we use the concept of covers and covered work objects. The class that is derived from the workcover- is known as the cover work objectand the five work objects related to that cover object are known as the covered work objects. In cover if the covered objects are resolved than the cover objects get resolved automatically. A folder object is a work object in an concrete class that inherits from the work – folder-. A folder object holds a collection of one or more other work objects which themselves may be basic work objects other folders and cover objects. Folder objects will have prefix ID as “F-‘’ The main purpose of folder is to maintain the parent child relationship b/w the folders, covers and covered work objects. For example if we have five work objects that are dependent on each other then we use the concepts of covers and if those work objects are independent than we use the concept of folders. The folders can contain the folders, cover objects are covered objects and those all work objects can be created processed and resolved in the cover itself. In process commander work objectscapture and process evolving information about individual units of work. Covers are intended to coordinate processing on multiple distinct but closely related work objects. Folders provide a structure for more loosely associating multiple related work objects The main differences are:1. Covers can be resolved automatically when all their constituent (“’’) work objects are resolved.
Page 104
PEGA MATERIAL 2. A standard harness rule is available that displays a cover and lists its member work objects. 3. Folders offer a vehicle for keeping track of one or more commonalities among otherwise disparate work objects. 4. One work object may be associated with multiple folders, but only with one cover. 5. of a folder can belongs to different work types which need not belong all in single work pool. 6. The relation b/w folder work object and their content may be many-to-many. Relationship b/w work object, covers and folders
Work object
Cover
Folder
Work object from the cover itself the work objects that are related to the cover are known as covered work Object. These covered work objects are created, processed and resolved with in the cover itself. from the cover we can go to any work object that is covered work object associated with the cover object and we can create process and resolve it. In case of the covers, when all the work objects associated with the cover object get resolved that is the when all the covered objects are resolved then the cover objects will be resolved automatically. Steps for creating a folder objects:-
1. Create a class group and it is derived from the work-. 2. Create a work type in the class group and the work type belongs to the class group and name that work type as folder that inherits from work-folder-.
3. Create a flow for generating folder objects named as folder. 4. While creating the folder object there is an option called view folder contents and by this we can view the folder contents, create the work object and also we can add the work objects, covers and folders to the current folders.
5. Now we can resolve current folder based on the flow designed. Steps for creating cover objects:1. 2. 3. 4.
Create a concrete class named cover that inherits from work-cover-. This class should belong to a class group which is derived from the work-. Create a basic flow for generating the cover object named Co If the cover object is created then it will ask to create any work object associated in it. Here the work object name is work object that is associated with cover.
Page 105
PEGA MATERIAL 5. When all the work objects are resolved then the cover object get resolved automatically. Steps for creating covered work objects:1. Create a concrete class named work object that is derived from work-object-. 2. Create a basic flow for generating the work object. Named work object. 3. Mention the name of the cover class in the process tab of work object flow named work object. 4. Then execute the flow. So that the work object is created by executing the flow. 5. Hence the work object is processed and resolved. work object locking: The purpose of locking items before making changes is to prevent data loss. Locking may be more important in some situations than in others. work object locking is mainly used to prevent others to open the same work object and to prevent them from make the changes. A process commander requestor can lock an open instance if the instance belong to a class that has allow locking?. Selected in the class rule and it has ever been saved and committed to the pega rules database. Locks are retained until a canmid method occurs.
Keys
Locks
History
Lock definition
Lock name
lock caption
locking allow locking? locking
To view object locks held by your own requestor session, select view>system>locks>my locks.
Case management: Access Groups, Work group, Work pool ,Work list, Work basket 1.
Define access group and its functionality?
Page 106
Allow locking ?
PEGA MATERIAL Access Group controls the security basing on the job functions.
It is instance of Data--Operator-AccessGroup. Access Group determines which applications and which parts of those applications a can access. 1. Work pool – what are all work pools the can have 2. Application --- Rulesets – What are all the Rulesets the can access 3. Portal -- What access portal the can see 4. Access Role --- What access role the can have
Various aspects that can be controlled through access group are
a)
default and available types of works( also called as work pools )
b)
Primary Rulesets ( Access Control to Rulesets)
c)
Assigned roles
d)
Portal layout
e) Default Ruleset for making changes ( Default Ruleset whenever the creates/ saves as the rule
2.
Define Work group and its functionality?
A work group is an instance of the Data--WorkGroup class. A work group can identify a who is a supervisor, and a set of workers and workbaskets that report to that supervisor.For the supervisor of a work group, the My Group area of the Process Work space provides quick access to the worklists and workbaskets associated with the group.
3.
What is the difference between Work group and Access Group?
A work group is an instance of the Data--WorkGroup class. A work group can identify a who is a supervisor, together with a set of workers and workbaskets that report to that supervisor.
Page 107
PEGA MATERIAL
An access group is an instance of the Data--Operator-AccessGroup class. Access groups make a set of Ruleset versions available to requestors. Developers define access groups and associate an access group with each (each Data-Operator-ID instance). Typically, multiple s are associated with or belong to one access group. The access group associated with a affects access control by determining: · The portal layout that a sees first after logging in. · The local customization Ruleset name and Ruleset version. These usually are defaulted whenever this creates a new rule instance. · The application rule for this . · Optionally, the access roles available to this .
4.
What is a Work basket and its functionality?
It is an instance of the Data--WorkBasket class. It is a queue of open assignments that are not associated with an operator.A workbasket can be linked to an organization unit, a work group, and a calendar.
5.
How to associate an Operator with a workbasket? In a work group, we can associate an operator with a manager and a work basket.
6.
What is a Work Pool?
The work pool for a is the set of all the work objects (open and resolved) of all the Work- classes that a can enter (in one application). Generally work pool is Class Group specified in Access Group…. is from developer prospective. Class groups are commonly used to cause the system to store instances of similar or related work object concrete classes together in one relational database table. This is known as a work pool. Work pools are referenced in access group instances
Page 108
PEGA MATERIAL Class Groups generally mapped to pc_work table. We can use our own table also similar to pc_work for the clas groups.
7.
What is a Work List?
It is a list of open, outstanding (not complete) assignments assigned for a to perform.
8. What are access roles and how they work at run time? Can we create our own Access Roles? If yes, explain with an example. An access role is an instance of the Rule-Access-Role-Name class .And it is defined as having certain class access rights. A can have one or more access roles , which are listed in Access Groups. Use an access role name to convey permissions (capabilities) to a or a group of s. Access roles can be referenced in requestor instances, Operator ID instances, in access group instances, in activities, and in queries. At , the system assembles a set of roles for a based on information in a 's requestor instance, Operator ID instance, and the associated access group instance. Access roles influence which classes a can view, update, delete, and so on through the Access of Role to Object and Access Deny rule types. Example. Create an instance of Rule-Access-Role-Name. To grant access to a for a particular class create an instance of Rule-Access-Role-Obj. For each of the eight categories in the array, you can enter an Access When rule name, or a numeric value between 1 and 5. If at runtime, the production level of your Process Commander system is not greater than the numeric value, then s with the specified access role can perform the operation (on objects of that class). If an Access When rule evaluates to True at runtime, the s with the specified access role can perform the operation.Production level is set in Data-System.
9.
What is Privilege ?
A privilege allows a with a particular with a particular role to execute certain application functions. associated with Access roles
Page 109
PEGA MATERIAL 10.
What is a portal and how can it be customized for different s?
The Process Commander portals two communities: · The Developer portal provides an integrated work, test, and development environment to application developers. Customization of the Developer portal is typically not necessary and ordinarily limited to menus and skins. · portals managers and s of applications workers, as they enter, update, and resolve work objects. portals may be customized to reflect the terminology, layout, facilities and styles appropriate to each community. This Developer portal provides quick access to dozens of tools, wizards, reports, and other capabilities. The appearance and function of our Process Commander portal depends on information in our access group which references a portal rule (Rule-Portal rule type) We can create our own portals and define new gadgets (instances of Data-Gadget). Data-Gadget contains simple HTML rules.. We can change the Pega Logo as well. Performance Tools When do you evaluate performance? 1. During Development : 1. Accomplished by system architects 2. Common tools used Forms Preflight PAL My alerts 2.During QA/UAT: 1. Accomplished by testers, specific s and others 2. Common process commander tools used Logs(including log analyzer and java garbage collection logs) System management applications(SMA) 3.In production: Accomplished by system architects, project leads or other designed to accomplish this Forms: Warning ICON shown at the top of the form and in the header Warning Text shown at the bottom of the form Warning should be needed and fixed.
Page 110
PEGA MATERIAL 1. May not be a problem at first but will cause a problem eventually. Pre fight: A tool which informs the developer of the following 1. Rule warnings Custom java, HTML, java script etc 2. Performance warning Columns compatibility 3. Browser compatibility Check individual HTML rules(harness, section, flow, action etc)to evaluate which are compatible with internet explorer(6+) and fire fox(2+) google chrome and which are not 4. Accessibility Check individual HTML rules to evaluate which areeasily accessible from the web. Warning by the rule type Slider bar allows you to focus on fewer or more rules in summery view. Open the tool Pega button application tools pre flight
Count of rules with warning displayed graphically Click on hyperlink at bottom for custom warning reports. Click on individual item to see actual warning. Performance Analysis(PAL) 1. Built in tool used to identify resource usage in an application Elapsed time detail 1. total elapsed system server time 2.time spent loading rules(rule I/O) Counts 1.rules requested from data base or cache 2.total number of rules used 2.Always running-can’t be disabled Designed to be extremely “light weight” Minimal impact on application performance.
3.Open the PAL Pega button
system
performance
PAL
Tools will be displayed with total for session and initial reading.
Page 111
PEGA MATERIAL You can clear the data by clicking on reset button. DELTA shows the changes from previous step Continue interaction and adding reading You can evaluate by ing CSV File and modify the spread sheet by adding work object task names
PAL
Database tree
Add Reading
Performance profile
Add reading with clipboard size
Full 26
26
56.53
3.24
Int
Int
Total
PA
#
comt elapsed elapsed elapsed
My Alerts Int
26
26
56.53 3.24 Reset data
Alerts summarized from alert log Open the my alerts window(run
L S ---Run process
2.85
17
rule I/O-------------------- alert
2.85
1,815,835 total bytes
comt Save data17
1,815,835
my alert)
Q
Open portal Rules inspector performance My alerts Alert codes Many alert codes have been created to point out performance issues 1. Document in “alert guide 5.4”available on PDN Most serious alerts are : 1. Any alert which is respectively pointing out the same rule 2. Particular alerts (even one of this can serious) PEGA0004-SQL Queries are inefficient PEGA0017 –Rule caches are too small PEGA0025-Required DB data not Exposed ( BLOB being Accessed PEGA0026-Time to acquire DB connection too long PEGA0027-Too many rows are beg returned from DB
Page 112
PEGA MATERIAL PEGA 0028-Java garbage collection not achieving desired results SLA What is SLA? A service level rule is an instance of the rule-obj-service level type. Each service level rule defines one to three time intervals known as goals, deadlines and late intervalsthat indicate the expected or targeted turn around time for the assignment or time-to-resolve for the work object A developer can associate service level rules with assignments in a flow and with the entire flow. The pega-procom agent detects service levels not achieved-unmet goals or deadlinespromptly. If an assignment is not completed before the time limit, the system can automatically notify one or more parties, escalate the assignment, cancel the entire flow and so on
Integration Mainly we have two types of integration rules, they are 1.services 2.connectors Services are interfaces from other system to PRPC. Standard services that come in with PRPC are 1. Rule-service-COM 2. Rule-service-CORBA 3. Rule-service-DOTNET 4. Rule-service-EJB 5. Rule-service-EMAIL 6. Rule-service-JMS 7. Rule-service-JSR94 8. Rule-service-MQ Connectors are interfaces from PRPC to other systems. Standard connectors that come in with PRPC are 1. Rule-Connect-ejb 2. Rule-Connect-dot net 3. Rule-Connect-SQL 4. Rule-Connect-java 5. Rule-Connect-JMS 6. Rule-Connect-SOAP 7. Rule-Connect-MQ Services: A service receives input from an external system and can respond in some way. For example, a service can reply with data that the external system requested and it can process the incoming data to determine that it needs to create a work object and initiate a work flow. The following is a high-level description of how a service works
Page 113
PEGA MATERIAL 1. An external client or system assembles and delivers a message or request to a process commander service. the message identifies the service package that contains the service rule or method to invoke. 2. The service package locates a service rule 3. The service rule, in turn, invokes the appropriate rules to map the incoming parameters to process commander properties. 4. The service rule invokes an activity. the activity process the input. 5. Properties and completes the task of the services. As mentioned, perhaps, the service extracts data from the process commander. The data mapping for the service rule then maps appropriate values into output properties. 6. The service assembles a response message from the output properties and sends the response.
External system or client Request
Process
response
Service package
commander Service rule
property
property clipboard
Service activity
SOAP:-service rule provides web service to SOAP(simple object access protocol)clients. Service Package: A service begins with a service package data object . A service package is similar to a container class.
Page 114
PEGA MATERIAL A service package represents the service as an application and the service rules represents individual functions or methods in that application 1. Instance of data--service package. 2. Our SOAP service rules are placed in this page. The service package has global configuration settings for all the services that belong to it: 1. The access group that the service rules use when they rule as unauthenticated s. The service rules must belong to one of the Rulesets listed in the access group. 2. Whether the services must run as authenticated s if so,the incoming message from the external client applications must include the name and of a valid process commander operator. 3. Configuration information about the requestor pool when the service rules run as unauthenticated s and session state is stateless. 4. Whether the service is state less or not. If the service is state full specify whether to keep the requestor session open and when to close it in the service rule If the service is state less, the end requestor option in the service rule does not apply.
Service Rule:The service itself is defined by an instance of the appropriate rule-servicesubclass. The service rule handles the details for this kind of request, that is the service rule maps the input parameters into clipboard properties and then calls an activity to process the request. The service rule holds the following types of information 1. Class of the primary clipboard page that the service uses. 2. Name of the primary clipboard page that the service uses 3. Name of the service activity. 4. Information about whether to keep the requestor session open or to close it after the service rule is finished 5. Information about recognizing and reporting exceptions 6. The list of input and output parameters, their data types, and how their values are mapped to and from clipboard pages. 1. A service rule has three key parts: 1. Name of the service package. The service package must exist before, you can create the service rule. 2. Name of the service class. The name is a string; it is not an instance of ruleobj-class.the service package name and service class name are used to group service rules. 3. Name of the service method. This name is a string; it is not an instance of rule-method. The service method name describes what the service rule does. This is only key for an email service rule.
Page 115
PEGA MATERIAL 4. An incoming message must identify the service by specifying all three parts of the name(package, class and method) in the message. A service activity evaluates the property values that are stored on clipboard pages and takes an action. When creating a service rule, designate the service activity by entering its name in the activity name fields on the service tab of the service rule. Connectors: Connectors are the mechanism that process commander uses to send messages to or make requests of external systems and then process the results or response. The following is a high level description of how connectors work: 1. A work object triggers an integrator task in a flow. 2. The integrator task calls the connector activity and es it the appropriate properties from the clipboard. 3. The activity calls the connector. 4. The connector assembles and sends a message or request to the external system. 5. The external system replies to the connector with the data the connector requested. 6. The connector receives the reply, process it, and places the data ads property value pairs on the clipboard. The connector then returns control to the integrator task and the flow resumes.
Process commander
Integrator Task page Activity
clip board Page
Connect rule
Request
response
External service
SOAP:-SOAP connectors are SOAP(simple object access protocol) clients that call web services. SQL:-SQL connectors send complex SQL statements to an external data base.
Page 116
PEGA MATERIAL JMS:-JMS connector send request message to an external system and process response through an intermediate service that hosts java message service middle ware. The connector activity is the mechanism that starts the connect a method in the activity calls the connector rule. For example:- If the connector is a SOAP connector, the activity uses the connectSOAP method to call the connector rule. The connector itself is defined by an instance of a rule-connect-* rule. The connector rule types encapsulate the appropriate logic for communicating with a service of that type. For example:- a SOAP connector holds the URL of the SOAP server. An EJB connector holds information about the EJB container that holds the bean and which of the bean’s jar methods to use. The connector rule holds the following kinds of information: 1. The Ruleset 2. The number and types of output &input parameters. 3. Whether the system communicates with accepts requests from authenticated s only, and, if so, the name and the connector is to use. For example:-if the request is sent via HTTP(HTTP,SOAP and dot net connectors), the connectors rule specifies session and time-out information. Write the exception of the SQL connector, a connector rule has two key parts: 1. Name of the class rule it applies to 2. Service name, which holds the name of the external service or method that it connects to. Connect SQL: Connect SQL rules are instance of the rule-connect-SQL class. They belongs to the integration-connectors category. Connect SQL rules are used when the application needs. To run complex structured query language statements such as or stored procedures to update or extract information from an external database. To configure an SQL connection to an external database, use the following elements along with the connect-SQL rule: 1. An activity that references one or more of four standard methods for operating on relational database-RDA-Open,RDB-List,RDB-Delete and RDBSave. The names of the method matches the names of the tab in the connector rule. An activity that uses RDB-Open to call a connector rule runs the SQL statement on that connectors open tab.
2. A database instance and one or more database tables instances that provide access to the tables or views of the external database. 3. A JDBC library that provides access to the external database software. 4. Special data mapping syntax to associate properties with database columns. There are two types of HTTP Method is GET and POST. “GET” is basically for just getting data where as “POST” may involve anything like storing or updating data or
Page 117
PEGA MATERIAL ordering a product, sending E-mail. A connect HTTP is created which is inherited from integration –connectors. Service tab:-used to identify the external system with which this connectors rule communicates. Endpoint URL:- enter the URL of the external system to which this rule connects. HTTP Method:- select which HTTP method to use to send the string: GET or POST. Request only:-when the HTTP method is set to POST, select to indicate that process commander is to send the message and close the connection without waiting for a response. File Listener A file listener monitors the file directly and calls the file service when files arrive. The file service uses a rule (XML, structure or delimited) to open and read the file, evaluate each input record, divide the records into fields , and then write the fields to the clipboard. The service activity can then process the data- the data to another rule, or start a flow and create a work object based on the data . Both the file listener and the file service have a part in processing files. When the listeners starts, it creates subdirectories in the file directory it is monitoring. When the file that matches the pattern the listener is listening for arrive, the listener moves the files into a subdirectory named work_
and calls the file service. When the file services finishes processing the file, the listener either deletes the file or moves it to the work_
completed subdirectory, depending on how the listener is configured. The listener also creates a reports subdirectory to hold report files that contain the results of the processing.
How to setup a file service(and file listener) Use the file listener form in conjuction with service file rules to import data from a file or files into your process commander system . Use the rules by type explorer to review or create file listener data instance, or click the file listeners link on the resources area of the integration slice. As an alternative to updating this forms directly, you can create a file listener data instance through the service accelerator. The Data--connect-filelistener class contains the file listener data instance. This class is part of the integration-resources category. Use file services to read in and process the data in files. The data files may be exported from another system or created by s as text files in any of a wide variety of formats. Before setting up a file service, determine the following.
Page 118
PEGA MATERIAL 1. The target directory, that is the location of the files to be processed. 2. How the listener identifies the file-should it process every file it finds, only those files with a specific files extension or some other distinguishing characteristics and so an. 3. How the files are arranged is there one record in each file or multiple records in each file, what is the data structure of the records and so on. Note:- that it has access rights, because the listener moves and sometimes renames files, the process commander server must have read and write access to the file system where the input files arrive. that it has these access rights. Create the file listener: The file service must exist before you can create the file listener that the service rule exists, and then complete the following steps: 1. From the integration page , under resources, select file listeners. Then click new. 2. In the new form, enter a descriptive name for the listener. 3. In the file listener form, on the properties tabidentify the locations of the files. that process commander needs read and write access to the directory you specify. If files of various types are located in the directory and the listener should not call the service to process all of them, specify selection criteria with the source name mask field. For example:- if you enter “*.xml” the listener notifies the service about files with.xml extensions only. 4. Specify the file Servicesrule that the listener route the files to in the service package, service class, and service method fields. Set concurrent threads to one and run the listener on a single node only, unless multiple qualifying input files are available at one time(each thread operates on a single file). 5. If the file listener and service must run as an authenticated requestor, specify the credential of a valid operator in the ID and fields. 6. On the process tab specify how frequently the listener the listener should check the directory for files, in seconds. 7. Use the reporting section if you want to keep a record of the results from the file service processing. For example:-perhaps you’d like to keep a record of the IDs of the work object created from the processed files. Specify the page and property where the information is located in the source page name and source property fields.
properties1. Process
error
history
Listener nodes Node name C:
temp files Page 119
Listener properties: Source name mask
source location
PEGA MATERIAL
*,xml 1 Claim files samples File claim class File claim method
Requestor
ID
Diagnostics Remote host
port
STARTUP STATUS Blocked
Properties
error
Process
history
General Polling interval(seconds)
60
Ignore duplicate file names? Lock temporary file names? Reporting Generate report file? Source page name
Py work page Py ID
Source property Target file extension
Page 120 rpt
Persist log-service-file instance?
PEGA MATERIAL
8.optimal on the error tab, specify how many times the file listener and service should attempt to process the same file if there are processing errors and what to do with files that cannot be processed. Save the listener and then returns to the properties tab. Click test connectivity. Do not continue to the next task until you see a success message similar to this one:
Tests connectivity for data--connect-file listener. Claim file sample listener Overall request Good Connectivity test successful List of steps Step
result
Access source location
success
Components tested Description Location
value c: temp files
Page 121
PEGA MATERIAL
Start the listener:Open the system management application (tools>system management) and select the node on which the file listener should run . then go to the listener management page. Click in the list of available listeners, select the listener you just created and click start. when the l istener starts,it creates subdirectories like these in the directory it is monitor
Temp files Report Work _claim file sample listener folder
completed
Test the file service:When you finish creating file service and you have started new listeners, test the configuration as follows 1. Open the file service rule 2. Select run>trace open file 3. Put a file in the input directory and wait for the listener, wake up and check the directory. 4. Watch the tracer as it adds new rows of information. 5. Examine the results and that the file service worked the way you expected it to. Agents What is agent? An agent is an internal background process operating on the server that runs activities on a periodic/recurring basics. These agents can be used to update or route the assignments according to rules in the application. Agent can be used to send email notification, correspondence. Agents are used to perform the task on periodic/recurring basis.
Page 122
PEGA MATERIAL Ex: create set of reports every 15 days. Then activities which generates these reports are called from agents by setting period for it.
How to create agent? Determine the Ruleset where this new agent can be saved. for a Ruleset only one agent rule can be present. Steps:1. Agents belongs to sys category. Right click on agents and click new
Create
new
sys
agent
2.
In the new form we have to enter Ruleset name for which this agent will be defined and version of the Ruleset. 3. Enter the agent activity name, class name and pattern type along with the details below.
Scheduled agents agentname name Agent
pattern periodic
interval (sec) 30
recurring class
activity name
mode standard
enable enable
advanced legacy params param s
max records
auto qu magement
Pattern types in agent:There are two types of pattern: 1. Periodic 2. Recurring
Page 123
PEGA MATERIAL Pattern
interval(sec)
recurring
Advanced
periodic
1.periodic:-periodic means agent will run on specified time in the interval column. Agent manager wakes up this agent as specified in the interval. Ex:-if the interval for an agent to run is 90sec then, in every 90 sec agent manager will wakes up, this agent activity While specifying the interval time in the agent rule we must consider the time taken by the agent activity to complete its task. The interval value should be the largest value possible (the longest time) consistent with the amount of time required for processing the agent task. Also don’t put period agent for the task which will happen only 4 times a day. Just for 4 times in a day checking for every 90sec in waste of resources. 2.Recurring :-
Pattern
Interval(sec)
recurring Activity name .
mode
advanced
standard
params
max records
Enable? Enabled autoquene management
Here, in the recurring we have option to specify when the agent should run. After setting pattern as recurring. We will get an option in the interval as advanced. Clicking on the advance we can set values for recurrences. Recurrence
Start time 7
:
00
:
00
pm
in time zone America/new york
Pattern Daily Weekly Monthly
Every weekly Every
days Ok
cancel
yearly
Page 124
PEGA MATERIAL We can specify start time along with time zone, above screen short shows the option of setting agent daily. In weekly option we can choose specific day of the week to call the agent activity. Monthly gives us the option of setting agent for specific day in the month. Like for first day of the month agent activity will get call. Yearly gives combined option, like every January or first day of January. Modes in the agent:There are three modes in the agents. They are 1. Standard
2. Advanced
3. Legacy
1.Standard : This is the default queue mode setting agents. Standard mode is recommended in PEGA for agents. Standard mode assume that all the transactional processing will be handled by PEGA’S Auto queue management functionalities Agent activity involves only business logic. When agent is standard it wakes up and check in the agent queue that if there are any entries for that agent. If entries are in the queue then it will start processing by calling agent activity and continue doing this process either queue gets empty or max record number v is reached or whichever comes first. Auto queue manager:-
Agent name test
Class .
work
pattern
interval(sec)
periodic
30
activity name Action resolve
params params
mode legacy
max records
enabled? Enabled
auto queue management
This check box is only valid only for standard queue mode agents. This box is checked by default for standard agents, which enables the queue manager. When queue entry is retrieved by the system to perform then, system will lock that entry and resources required to process that entry. In this way we can prevent agent on other node to process the similar entry. System will lock the resources until a commit or rollback occurs.
Page 125
PEGA MATERIAL 1. While processing the queued task if error happens then, as auto queue agent is checked. It will re-queue the task and process it again. 2. If AQM is not present, then the system immediately removes entries from queue. And error happens in that entry, then instead of re- queuing. System removes it from queue. And entry for that queue is lost from the system. So to handle this situation we have write another activity. 3. Best practice is to use AQM.
2.Advanced: In advanced mode, the agent activity needs to handle both transactional and business processing. When the agent “wakes up”, it runs the activity directly, and that activity may either call the agent queue, just do processing without a queue. In this activity we need to take care locking of the resources in case of multi node environments. Here, in the agent activity we have to take care of locking, committing and rollback of the resources. If there is an issue in committing the object the unlike auto queue agent mode we have to handle this manually by writing activity to re-queue the object. Here, in advanced mode use of queue is optional. Queuing in the activity: By calling queue-for-agent method we can queue the task in the agent queue by using activity. We need to below parameters to the method 1. Agent Ruleset 2. Agent name 3. Max attempts 4. Minimum age for processing. 3.Legacy: If we upgraded the application before V 5.4 , then for agent we have this option available. This agent runs as previous agent. It wakes up and directly calls the activity no queue is involved. It assume that all the transcational and business processing will be taken care in the activity. If the queue mode is set to legacy and when we resave the agent rule form to a higher version of the Ruleset; however a warning appears at the bottom of the form as shown below.
Schedule
security
nodes
history Page 126
Scheduled agents
PEGA MATERIAL
Remote trace an agent activity: Open the system management application (SMA) as shown below
Designer studio
system
tools
system management application
application
Click on the agent of agent managements category.
PRPC system management V6.2.2.0 Log off Node Page 127
PEGA MATERIAL |||
H
X
|||||
Select the agent which needs to be traced and delay the agents, by clicking on delay button. In the SMA go to “requestor management ” and select the requestor of the agent and click on the tracer option. Note :- if unable to trace the delayed requestor from SMA then open the tracer tool and find the same requestor id in the remote tracer option and trace the agent activity remotely.
PEGA Testing There are variety of tools, no one is either good or bad. It all depends on what you want to achieve with automation. Here is small analysis I had done couple of years back
UI Look and Feel Testing Based Recognition tool)
-----> Egg Plant (This is a Image
Functional Testing -----> QTP / Ranorex / Test Manager/ Selenium / Rational Functional Tester/ Telerik tool
Unit Test
Interface Testing
---> Pega AUT(For non M applications) ---> SOAP UI (Testing Services)
Testing Management Framework (TMF)from Pega
Page 128
PEGA MATERIAL PEGA Application Testing
Hi folks,( http://truptijethva.blogspot.com/2017/10/testing-pega-application.html) After long time, publish another article on Pega Application testing. Pega application testing needs to take different approach of testing then normal STLC. Pega applications are rule based application having more than 10 k rules. I was worked with pega version 7.2.2. Pegasystems is a leading BPM / Case Management platform provider. As leaders they are at the forefront in offering automated testing capabilities in the BPM space. Testing Pega BPM based applications from the UI is still a challenge however. Pega testing is followed in agile model. Pega is fast growing tool which makes millions of s happy. It is a business process management (BPM) tool which was founded by Alen Trefler. Pega PRPC is an Application Development Product from Pega Systems. To Test Pega Applications one need to know the Testing Management Framework (TMF) from Pega as well as Required knowledge in Manual Testing and Regressive Testing. Using Pega Unit Testing Feature one can test the Flow Rules, Decision Rules, Integrations and Automated Regression Testing. With the help of pega testing we test the pega applications very wisely and deliver as a defect free.It uses concept called PRPC which is a pega rules and process commander. It uses Rules set to design the pega applications. As it is rule based application with large set of rules, automation tester needs to create their own framework for rule implementation. use unit testing or functional approach is more better to reusability purpose. Rules can be implemented as functional validations and we can add modules or component base approach as well for the flow of application. As per research, selenium is best tool for pega testing, but I have used UFT 12.02 for the pega automation. Later on, project move in selenium, but I didn't find much difference in both apart from licence cost of UFT. all technical problem still resides in selenium too, which was happen with UFT. (Reference taken from quora for below content) Pega has different Debugging Tool inbuilt to test the Application .we have different types of testing in pega . Types of Testing :
Flow based Testing – Concentrates on Business flows (E2E), involving multiple roles and interfaces Role based Testing – Testing based on workgroups – Skills, UI etc Rule based Testing – 1. Business Rules - Formulae, delegated rules etc 2. Technical Rules - integration rules etc
Pega Debugging Tools: Page 129
PEGA MATERIAL
Clipboard Tracer Rule Inspector/UI Inspector PLA (PegaRULES Log Analyzer) PAL (Performance Analyzer) AUT (Automated Unit Testing)
(Reference over) For automation perspective- we should go with hybrid -data driven framework with modular approach, which work best for rule implementation with different set of data to all modules. Few challenges in Pega projects like1. control identification for web edits not work proper- down key or keystroke approach needs to write for most of controls 2.Nightly run not work- application sync issues occurs much 3. modules approach required and for that application knowledge must be with you to take the decision for create modules-ing parameters, use parameters etc. 4. due to rule based implementation execution time takes more for end to end flows. 5. keep provision for normal end to end flow execution, rule base validation for module execution, role base validation etc in script itself.
PegaUnit testing (https://community.pega.com/knowledgebase/articles/pegaunittesting) Published February 8, 2017 — Updated October 16, 2017 You can use PegaUnit testing to automate the testing of rules. After you develop rules, you can test them and then convert the test runs to PegaUnit test cases to validate application data by comparing expected output to the actual output returned by running the rules. For example, an executive wants to ensure that a 10% discount is applied to all VIP customers. You can create a test case that verifies that this discount is applied to all VIP customers in the database. If the test does not , the results indicate where the 10% discount is not applied. You can use PegaUnit rule testing on the following types of rules:
Activities Case types Data pages Data transforms Page 130
PEGA MATERIAL
Decision tables Decision trees Flows Strategies When (available beginning with Pega 7.3.1)
You can use one or more data pages, data transforms, or activities to set up the clipboard data before running the rule as part of the test case. You can also use activities to create any required test data such as work or data objects. After you run a PegaUnit test case or test suite, data pages used to set up the test environment are automatically removed. You can also apply additional data transforms or activities to remove other pages or information on the clipboard. You can also use the Execute Tests service, which is run by a continuous integration (CI) tool, to run all the PegaUnit test cases in your application to validate the quality of your code after every build is created. PEGA Automation approach Hey folks, I try here to give you reference for taking automation approach for PEGA automation projects. I have used UFT 12.02 for PEGA 7.2.2 version automation in one of my project. Following are checklist, which can help.
1.
As PEGA application is rule based and flow based application, there were always few set of pages will be used in application. Before deciding framework, dry run the whole application flow for the pages behavior.
2.
As pages, might be limited, we can use object repository approach for the application as size will not grow. For few PEGAcontrols, we need to write descriptive programming as well. Mostly frame related problems occurs for few control identification.
3.
As it is rule based application, may be require to run different set of test with combination of test data to test the rules, but pages remains same. So try use data driven approach while using framework. Keep all the functions generic so with any combination of test data, we can use same functions.
4.
As its having flow based application too, driver script should having provision to calling different functions in sequences to drive the flow. Write module based functions for easy flow driven.
5.
Most of the flow driven by some actions like approve, reject etc., so write function in generic with switch cases to handle the different flow along with data ing approach.
6.
Few scenarios may be having multiple data at same flow, then there should be some provision to handle multiple entry of test data by ing argument in split way.
7.
Few controls are dynamic based on the conditions, so we can handle it using regular expression. for ex., few property values like , \strname1 can handle in as $\strname1, like that.
8.
Controls are similar to rest web applications for PEGA. UFT can identify it properly, there is no additional add ins require.
9. For error handling, we can used on error resume next statement at function level. 10. Facing sync issue for application, which hurdle in night run execution. so increase wait time much to avoid such things.
11. Try to keep all function libary at module levels. 12. Use environment variables for sharing constant value across test suite 13. keep configuration files for easy project path references. 14. keep files references at top level with public variable to access across the test suite for implementing rules. 15. keep generic functions to connect external files, fetching values or rules to implement, export test results etc. 16. while executing UFT , we need to enable add on in internet explore for PEGA.
Page 131
PEGA MATERIAL Implementation and Methodology Overview Pega systems offers two methodologies -- SmartBPM and Pega Scrum -- that you can use to manage application development projects. Both provide an adaptable process framework which is flexible and can be blended without conflict with organization's methods and project management approach. The methodologies are designed to work together with Process Commander's Direct Capture of Objectives capabilities and integrate with Pega systems' Project Management and Test Management frameworks. What is the SmartBPM Methodology? SmartBPM methodology takes an iterative development approach that is structured around four phases and two supplemental activities. It is not a concrete prescriptive process. It is designed to be flexible so your implementation team can adapt it to any size project. Project Initiation Activity — Kicks off project development. The goal of this activity is to prepare, organize, and set the proper expectations for the project initiative to follow. Performed at the beginning of the project, its goal is knowledge transfer and education. This is to provide business participants with terminology that assists them with requirements gathering, objective determination and scope definition. Inception Phase — Defines the scope, captures business requirements and organizes them into projects that result in an approved proposal. The current process is evaluated to identify possible improvements. Projects are broken down into manageable development units called slivers. Requirements, use cases, and work types are captured and entered into the Application Profiler. The development effort is estimated. Elaboration Phase — Builds out the foundation of the proposed implementation using the Application Profile in the Application Accelerator. Requirements, use cases, and work types are expanded to include further details. Process discovery is performed to identify the initial flow of work and interface design. Application standards are established. Testing and migration plans are drafted. Construction Phase — Builds the implementation on the foundation created in the Elaboration phase. Configuration tasks are assigned using an iterative implementation model. Components are unit tested as they are completed and test scripts are developed. Transition Phase — Moves the implementation to the end and testing teams. The focus is on end to end testing and acceptance to ensure the quality of the application and its readiness for migration and deployment to production. Go-Live Activity — Occurs when a completed sliver is launched into a production environment and business s begin to use the live application. Pega Scrum is a good fit for implementations where:
Results must be achieved quickly
Product quality is of the utmost importance
Business wants to be fully engaged throughout the process
Requirements are changing and prioritized constantly Page 132
PEGA MATERIAL
An enterprise commitment to Scrum exists
Teams are enabled and skilled The lifecycle of a Pega Scrum project is designed around the five stages shown below.
Vision Definition — Develops an understanding of the big picture for team , a project roap and high level product backlog. Project Initiation — Determines the scope of the initial project, kicks it off and sets expectations. Enterprise Planning — Designs the infrastructure needed to today's capabilities and future needs as well as the enterprise level class structure that s maximum re-use as implementations are deployed. Release Implementation — Builds the application in sprints using the Scrum approach to software development. Release Retrospective — Evaluates, adjusts, and improves the process to promote continuous process improvement. Important Terminology Application Accelerator — An automated Process Commander tool that uses input from an application profile to create the foundation rules for a new implementation.
Page 133
PEGA MATERIAL Application Profiler — An automated Process Commander tools that creates a high-level scoping document produced that can be used as a project proposal and an application profile that can be consumed by the Appliation Accelerator to create rules. It details work types, requirements, use cases, actors, interfaces and reports/correspondence for an implementation. Atomic Use Case — A subset of a business use case that describes a portion of the process that is performed by a single actor in the process. Corresponds to actions performed by that actor. Business Objectives — Project goals that, when reached, signify a return on business benefit. Business Use Case — Describes the full lifecycle of a process for a single work type. It is broken down into atomic use cases. Requirement — Details a business need; used to that the resulting implementation is what the business needed. Sliver — A subset of a larger project that is developed and implemented as a release. Work Type — A business problem that requires an automated solution that is associated with one business use case and one or more atomic use cases. For example: A claim, loan, or service request.
Understanding the Class structure and RuleSets generated by the Application Accelerator The Application Accelerator generates an initial layered enterprise class structure and multiple Ruleset, based upon the input values you provide (and default values) Generated enterprise class structure Two large diagrams depict the layers and classes in the enterprise class structure generated by the Application Accelerator
Page 134
PEGA MATERIAL
Layers in the generated class structure The layers depicted in the enterprise class structure image are: Layer
Purpose
Enterprise Reuse
For assets that need to be reused on an enterprise-widebasis. Such assets are rules for enterprise-wide business logic (such as standard properties, decision tables, Service Level rules) and enterprise-wide data assets (such as classes and rules for data stored in the system, and classes and rules for access to data in external systems, via connectors). For example, the MyCo enterprise wants to reuse the property that holds an employee's serial number on an enterprise-wide basis, so that the various applications used by that employee across the enterprise can consistently rely on the same serial number property for the same employee.
Divisional Reuse
For assets that need to be reused on a division-widebasis. Such assets are rules for division-wide business logic (such as standard properties, decision tables, Service Level rules) and division-wide data assets (such as classes and rules for data stored in the system, and classes and rules for access to data in external systems, via connectors). For example, a division wants to reuse a service level rule that defines the
Page 135
PEGA MATERIAL expected response time to a customer complaint in all of its applications, so that it can consistently enforce a focus on meeting its customer relationship commitments. Framework
Defines a common work-processing foundationthat is extended by the specific implementations. For example, the MyCo enterprise makes auto loans, and has an auto loan framework that is comprised of all of the assets needed for MyCo's standard auto loan process. Each division of MyCo extends that basic auto loan application to meet their specific divisional needs: the commercial business line division's auto loan application needs to handle loan requests distinct from that of MyCo's personal line division.
Implementation
Defines an implementationof a framework that is customized for a specific division. For example, the commercial business line's auto loan application reuses assets from the commercial business line division layer and from the auto loan framework layer, while the personal line's auto loan application reuses assets from the personal line division layer and the auto loan framework layer.
PRPC Base Product
Consists of the PRPC system's built-in classes and rules necessary for processing cases and other work in PRPC applications, as well as for areas of PRPC itself.
A system architect starts the Application Accelerator, and in the Application Overview window, chooses the application profile the team created. To generate the application structure that s both the framework and the equipment setup sliver, the system architect specifies a framework named OnboardingFW and an implementation named Equipment in the Application Overview window.
Page 136
PEGA MATERIAL
On the Base and RuleSets step of the Application Accelerator, the system architect replaces the displayed default organization and division values with the official ones: GLBX.com and HR, and keeps the default class structure of Standard. The displayed values refresh to reflect the input values:
Clicking Preview displays the enterprise class structure that will be generated by the Application Accelerator given those input values:
Page 137
PEGA MATERIAL
Why do non-work classes, like Org-, inherit from Work- (in 6.1+) or Work-Cover- (in 6.2+) Because of rule resolution, inheriting from Work- or Work-Cover- on those levels allows for increased sharing of case-management-related or work-related assets across multiple applications. For example, if a company creates two top-level classes for some reason (such as when two organizations do not currently work with each other and they want to develop applications independently), the applications can still share work-related assets. Why does the Org RuleSet have the OrgInt RuleSet as a prerequisite (required) RuleSet? So that business logic rules in the Org RuleSet have the ability to reference integration-related rules and classes stored in the OrgInt RuleSet. Direct Capture of Objectives (DCO) Direct Capture of Objectives (DCO) is the set of tools designed to capture and tie business objectives, project goals, requirements, and use cases to actual implementations. Rules and tools include: Page 138
PEGA MATERIAL A. Application Profiler B. Application Accelerator C. Application Document Wizard D. DCO Enablement Wizard E.
Application Use Case rules
F.
Application Requirement rules
DCO 3.2 - What's New Application Profile and Application Accelerator
Application Profile delegation for shared authoring
Option to build only a framework layer
Enhanced framework to build another framework and implementation on top of an existing framework
Improved capabilities for class structure generation and data mapping
Improved management of references between use cases and their respective implementations
A. Application Profiler An Application Profile is an auto-generated Microsoft Word document designed to help you in the information-gathering phase of a project's life cycle. The document is created by the Application Profiler -- an automated tool that guides you through a series of input steps to collect organization, use case, requirements, and other application information to produce a comprehensive and professional looking work-based proposal and sizing estimate for your projects. The profiler s an iterative approach to information gathering that allows you to create, update, and save profiles, and to generate in-process documents as you collect project data during the inception process. From the File menu on the developer portal, select one of these options: o
New > Application Profile to create a new application profile
B. Application Accelerator The Application Accelerator is a Direct Capture tool that speeds the creation of new applications, frameworks, or the extension of an existing application or framework. It guides you though a series of steps to gather and review the information that is used to create the class structure and rules for your application. It s an iterative development approach that allows you to enter, update, and save data until you are ready to create the application. Page 139
PEGA MATERIAL The data transferred from the profile includes:
Application name
Organization
Business objectives
Work types
Requirements
Detailed reports and correspondence
From the resolve screen of the application profile, click Generate this Application. From the File menu on the developer portal, select one of these options: New > Enterprise Application to create a new application The accelerator can be launched from a completed application profile or a menu on the developer portal.
C. Application Document Wizard Application Document wizard allows you to specify reusable document settings and application data content to create professional looking documentation of application assets throughout a project lifecycle or in of your day to day maintenance updates. From the developer portal, select Application > Document. D. DCO Enablement Wizard DCO Enablement wizard allows you to add or update requirements, use cases, actors and work types to an existing application that is either partially DCO enabled or not at all. Page 140
PEGA MATERIAL The wizard is structured to guide you through a series of input steps that prompt you for information about the following elements of your application:
Requirements
Actors
Work Types
Use Cases From the Application menu, select Direct Capture of Objectives > Enable this Application From the File menu, select Open > All Wizards to open an existing enablement instance from a list of open and resolved records.
E. Application Use Case rules Application Use Cases allow business s to describe the processing steps required to build an application in their business language. In a Process Commander application, use cases are atomic. use case that are created and stored as rules in the application. Using Direct Capture tools, use cases are initially specified in the Application Profiler and transferred to the Application Accelerator to create the use case rules. F. Application Requirement rules Application Requirements allow business s to describe requirements for an application in their business language. Requirements are simply an inventory of events, conditions, or functions that need to be satisfied and tracked in a project. For example:
“System needs to have 2-3 seconds screen to screen interaction” is a non-functional requirement tied to the overall application
“First Name should not be longer than 20 characters” is an a business rule requirement tied a specific use case The requirement rule contains the following sections:
Definition tab — describes the requirement; specifies the type and development status Implementation tab — adds and deletes requirement links to application, flow, and use case rules Attachments tab — used to display, add, and delete attachments associated with the requirement such as UML diagrams, Power Point presentations, or other project documents that provide additional details about the requirement
Page 141
PEGA MATERIAL
Methods and instructions by function Methods for entire clipboard pages Page-Change-Class Page-Clear-Messages Page-Copy Page-Merge-Into Page-New Page-Remove Page-Rename Page-Set-Messages Page-Unlock Page-Validate
Flow-related methods Flow-End Flow-New Obj-Set-Tickets TaskStatus-Set History methods History-Add History-List Methods for connectors
Methods for persistent instances Commit Obj-Browse Obj-Delete Obj-Delete-By-Handle Obj-Filter Obj-List Obj-List-View
Connect-dotNet Connect-EJB Connect-File Connect-HTTP Connect-Java Connect-JCA Connect-JMS Connect-MSMQ Page 142
PEGA MATERIAL Obj-Open Obj-Open-by-Handle Obj-Refresh-and-Lock Obj-Save Obj-Save-Cancel Obj-Sort Obj-Validate Rollback
Connect-MQ Connect-SOAP Connect-Wait RDB-Delete RDB-List RDB-Open RDB-Save Structured parsing
Control methods and instructions Activity-Clear-Status Activity-Set-Status Activity-End Activity-List-Add Branching to another activity Calling another activity Collect Exit-Activity Requestor-Stop Thread-Clear Wait Methods for HTML and XML streams Show-HTML Show-Page Show-Property Show-Stream Property methods Apply-Model Obj-Sort Property-Remove Property-Seek-Value Property-Set Property-Set-Corr Property-Set-HTML Property-Set-Messages Property-Set-Stream Property-Set-XML Property-Validate
Apply-Parse-Delimited Apply-Parse-Structured Apply-Parse-XML Map-Structured Parse-Byte-Pos Parse-Char-Pos Parse-Fixed-Binary Parse-Packed-Decimal Text-Infer Text-Normalize Local variables StringBuffer-Append StringBuffer-Insert StringBuffer-Reset Other Assert-No-Invocation Connect-FTP Link-Objects Log-Message Privilege-Check Property-Map-DecisionTable Property-Map-DecisionTree Property-Map-Value Property-Map-ValuePair Queue-for-Agent Queue instruction Advanced Java in activity steps Rule instruction Start-Validate End-Validate Page 143
PEGA MATERIAL
Relating Java to Process Commander The following table may help you relate Process Commander to similar Java . These are analogies, not exact correspondences. Process Commander term
Rule type
Similar Java, XML, or database concepts
expressions
-
Java expressions
models
Rule-Obj-Model
initializers, constructors
activities
Rule-Obj-Activity
public Java instance methods with a void return type
method
Rule-Method
system-supplied stored procedure
properties
Rule-Obj-Property
instance variables
Single Value property
Java String object
rule resolution
Inheritance
property of mode Page List
repeating group
overridden rule
overloaded method
When condition rule
Rule-Obj-When
if statement
decision tree rule
Rule-Declare-DecisionTree nested if statement
Type for Value mode properties
primitive data types. Most Java primitive data types are available as Process Commander Types.
primary page of an activity
this keyword
ultimate base class Value Group property mode
@baseclass
Object class — topmost class HashMap
Page 144
PEGA MATERIAL 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 interaction and input. Your system includes standard activities for utility tasks, and you can create additional ones. Each utility task references an activity with an Activity Type of Utility ss from utility shape we can call activity but vise versa not possible. Difference between obj-open and obj-open-by-handled Obj-Open : we will get multiple records from table based on the criteria from the specified class. Or Opens an instance of a given class OBJ-open-handle: here we have have to the pzInskey as a instance handle, this mehod will open only one record at time. Or Open object by handle to the pzInsKey value The handle of an instance is a unique key, in an internal format, assembled by the system that identifies an instance in the PegaRULES database. It may differ from the visible key generally used to identify instances. (Every instance has a unique handle, but more than one instance may share the same visible key.) For rule instances, the handle includes system-generated identifying values (including the create date and time) that make it unique. Use the Obj-Open-By-Handle method only if you can determine the unique handle that permanently identifies which instance to open. Otherwise, use the Obj-Open method. Inheritance concept in the pega (rules, class) Rules: inheritance that can maximize reuse of your rules while allowing localized overriding as appropriate. Also called polymorphism, inheritance allows a rule created for one class (possibly an abstract class) to be applied to other classes that inherit from it. Class inheritance searches for rules from a concrete, lower class, up the class hierarchy to find available rules. Two types of class inheritance — directed inheritance and pattern inheritances Performance of our work in the pega is measured using? 1. DBTrace: DBTrace 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.
Page 145
PEGA MATERIAL 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. How to connect to different pega applications? Using SOAP, HTTP, JMS, MQ. How to store the instance of the class in a specific database Creating the separate DB table for that work class with in the DB, or map to external db and further saves will go to that DB Difference between obj-list, rdb-list? Obj-list : Retrieve to a page, read-only, a selected set of properties Import ant 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 browse is performed. Rdb-list: To Retrive external Relational Database List. Import tant fields in RDB-List: Page 146
PEGA MATERIAL PageName: Page Name indicating where the results will be put ObjClass: The object Class to List. When used with RuleObjList parameter, this is the class of the list to use. How to see values of the local variables of the activity Using log-message. How to send multiple correspondences at a time Preflight: Starts the Application Preflight tool, which reports warning conditions on the rules in your Application RuleSets. These may indicate guardrail compliance issues, potential performance issues, accessibility status, or other notable conditions. - Application Preflight tool to list each rule in an application that contains a warning message. Warning messages suggest that the rule is at variance with guardrails and other best practices. You can also check for browser compatibility of visual elements. you can extend the set of warnings with a custom activity named Rule-ZZZZ. CheckForCustomWarnings, where Rule-ZZZZ is a rule type. Warnings are maintained as instances of the Index-Warning class and saved in the pr_index_warnings database table. The standard decision tree rule Embed-Warning.pxWarningDetails controls whether warnings of a specific type are reported in the Application Preflight tool. By default, all are reported; you can override this decision tree rule to choose which to omit. This decision tree tests the property pxWarningType, which can have values indicating the source of the warning, such as: => Java — an activity contains a Java step => API 02 — an activity uses the Version 3 PublicAPI => WriteNow — An activity step includes a method with an immediate database write operation rather than a Commit method. Spinoff // split explain? Spin-off shape ( ) onto the flow When a work object advancing through a flow reaches the Spin-off shape, Process Commander starts execution of a different flow, using the current or a different work object. Processing in the current flow rule continues in parallel, without waiting for the other flow to complete. the Split/ shape ( ) onto the flow Use the Split- 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 an 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. Page 147
PEGA MATERIAL
Q. 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 Obj-Validate method with a Rule-Obj-Validate rule. A property-validate method is used to impose restrictions on a property value. Use Edit validate rule along with Property-Validate method to impose restrictions. You can validate multiple properties using Property-Validate method.
Q. What is difference between Edit validate and Edit Input rules? Edit Validate: Use edit validate rule to validate the property value using java code. Edit validate rules can be used property-validate, Rule-Obj-Validate and Property rules.
Edit Input: Edit input rules converts entered data into required format. For example is the enters date MM/DD/YYYY format, edit input rule coverts this date into DD-MMM-YYYY (required format). Again we need to write java code for this transformation.
Q. Where assignments will be stored in pega rules database? Work List related assignments are stored in pc_assign_worklist. Work basket related assignments are stored in pc_assign_workbasket.
Q. Where work objects will be stored? Work Objects are stored in pc_work table by default. however if you want to store the work objects in a created table, follow the below mentioned steps. Create a schema similar to 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--DB-Table) to the newly created table.
Page 148
PEGA MATERIAL Q. If I have 3 different work objects in my application, how to store them in three different tables? Open/Create the Data--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--DBTable instance. This is a best practice if there too many object instances for each class.
Q. What is StepStatusGood, StepStatusFail rules? StepStatusGood is a when condition defined in @baseclass, this when rule checks whether the value of pxMethodStatus property is “Good”. StepStatusFail is a when condition defined in @baseclass, this when rule checks whether the value of pxMethodStatus property is “Fail”.
Q. How to make any rule as a favorite to your manager? Delegate the rule to manager.
Q. Where can i see the paramater values in the clipboard ( values ..) i am ing one activity to other ? No its not possible in clipboard, but you can see in tracer by clicking page name which in step method column.
Q. How to import rules using pzinskey Open the rule, from that pick the pzinskey, go to prdbutil and using the pxinskey export the rule Import that zip file where you want.
Q. 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 interaction and input. Your system includes standard activities for utility tasks, and you can create additional ones. Page 149
PEGA MATERIAL 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.
Q. Difference between obj-open and obj-open-by-handled Obj-Open : we will get multiple records from table based on the criteria from the specified class. Or Opens an instance of a given class OBJ-open-handle: here we have have to the pzInskey as a instance handle, this mehod will open only one record at time. Or Open object by 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.
Q. Inheritance concept in the pega (rules, class) Rules: inheritance that can maximize 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
Q. Performance of our work in the pega is measured using? DBTrace: DBTrace 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.
Page 150
PEGA MATERIAL 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.
Q. How to connect to different pega applications?
Page 151
PEGA MATERIAL Using SOAP, HTTP, JMS, MQ.
Q. How to store the instance of the class in a specific database? Creating the separate DB table for that work class with in the DB, or map to external db and further saves will go to that DB
Q. Difference between obj-list, rdb-list? Obj-list : Retrieve to a page, read-only, a selected set of properties Import ant 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 browse is performed.
Rdb-list: To Retrive external Relational Database List. Import tant fields in RDB-List:
PageName: Page Name indicating where the results will be put
ObjClass: The object Class to List. When used with RuleObjList parameter, this is the class of the list to use.
Q. How to see values of the local variables of the activity?
Page 152
PEGA MATERIAL Using log-message.
Q. How can I store the instance of the class in the data base?
Creating the separate DB table for that work class with in the DB, or map to external db and further saves will go to that DB.
Q. Default data table where the instance of the class are 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 for 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 Data- base 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 insstances that belong to a class that is not mapped to any other tables.
Q. In Routing activity what is the default property used to route the object
pxRouteTo=Param.AssignTo =” work basket name” for work basket .s For work list: pxRouteTo =Param.Worklist=”true” &&Param.AssignTo =” pxRequestor.pyIdentifier” for work list.
Q. Notify Page 153
PEGA MATERIAL
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.
Q. ticket: explain any senarion u used
Use the Ticket shape ( ) to mark the starting point for exceptions that may arise at any point in the flow, such as a cancellation. The ticket is a label for a point in a flow, much like a programming “GOTO” destination.
Q. table used for add note pc_data_workattach.
Q. Default activity used to create work object There is more than one like Add, CreateWork, and New.
Q. Different type of flows. Explain in scenario based where u used and worked Spin-off, Split- and Split for each.
Check Out Pega Tutorials
Q. 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.
Page 154
PEGA MATERIAL – Application Preflight tool to list each rule in an application that contains a warning message. Warning messages suggest that the rule is at variance with guardrails and other best practices. You can also check for browser compatibility of visual elements. you can extend the set of warnings with a custom activity named Rule-ZZZZ.CheckForCustomWarnings, where Rule-ZZZZ is a rule type. Warnings are maintained as instances of the Index-Warning class and saved in the pr_index_warnings database table.
The standard decision tree rule Embed-Warning.pxWarningDetails controls whether warnings of a specific type are reported in the Application Preflight tool. By default, all are reported; you can override this decision tree rule to choose which to omit. This decision tree tests the property pxWarningType, which can have values indicating the source of the warning, such as:
=> Java — an activity contains a Java step => API 02 — an activity uses the Version 3 PublicAPI
=> WriteNow — An activity step includes a method with an immediate database write operation rather than a Commit method.
Q. How to call an Activity from Java Script? HashStringMapactivityKeys = new HashStringMap(); activityKeys.putString(“pxObjClass”, “Rule-Obj-Activity”); activityKeys.putString(“pyClassName”, workclass); activityKeys.putString(“pyActivityName”, “HistoryAndAttachments” ); tools.doActivity(activityKeys , workpage, tools.getParameterPage() );
Q. How to end the workobject in the activity ( method used to kill the work object) Using java script. Page 155
PEGA MATERIAL
Q. How to call an activity from the java, java script ? 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() );
Q. How to parameters to the activity using the java, JavaScript? pyActivity=GHC-HPlan-CS-Work.ABC&CSR=” + CSR.
Q. How can I page as the parameter to the activity using java, JavaScript? Using java you can, may be using java scripts you can , I not sure
Q. How to call an Activity from Java step? HashStringMapactivityKeys = new HashStringMap(); activityKeys.putString(“pxObjClass”, “Rule-Obj-Activity”); activityKeys.putString(“pyClassName”, workclass); activityKeys.putString(“pyActivityName”, “HistoryAndAttachments” ); tools.doActivity(activityKeys , workpage, tools.getParameterPage() );
Q. How to get a property value from clipboard using Java step? Page 156
PEGA MATERIAL ClipboardPageworkpage = tools.findPage(pagename); String propername = workpage.getProperty(“.pxResults.Risk”).toString(); Or String propertyname= tools.findPage(“WorkListPage”).getProperty(“.pxResults.Risk”).toString();
Q. How to restrict the harness, section to particular Using the circumstances or using different access groups and privileges List different functions used to call an activity from java script. window.open (urlToRun,”_self”); openUrlInSpace (urlToRun,””);
Q. How a ’s ruleset list is formed ( the logic )? The system adds entries it finds from following sources in the order listed. The system adds entries it finds from these sources in the top of the list,
Requestor : (Data--Requestor class) — Usually this adds the RuleSets named Pega-RULES, and Pega-IntSvcs and a version or version prefix for these Division — As referenced in the Operator-ID instance Organization — As referenced in the Operator-ID instance Access Group : As referenced in the Operator-ID instance Ruleset Versions — Prerequisite RuleSets and Versions to those already compiled Operator ID : If this has the ability to check out rules, the personal RuleSet (named the same as the Operator ID key) is added last. Also called as private rule set.
Q. How to connect external java application without using connect-java Page 157
PEGA MATERIAL SOAP or JMS or IAC s
Q. Spinoff // split explain Spin-off shape ( ) onto the flow When a work object advancing through a flow reaches the Spin-off shape, Process Commander starts execution of a different flow, using the current or a different work object. Processing in the current flow rule continues in parallel, without waiting for the other flow to complete. the Split/ shape ( ) onto the flow Use the Split- 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 an 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.
Q. 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. Explore Pega Sample Resumes! & Edit, Get Noticed by Top Employers! Now!
Q. Decision / fork usage… Scenarios Decision: Decision: Use the Decision task ( ) to reference a map value rule, decision table rule, decision tree rule or a Boolean expression that when evaluated produces a value that is the basis of branching in the flow. Page 158
PEGA MATERIAL 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 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
Q. How to expose the column in the blob… of the database Using the Modify Database Schema wizard.
1) What is a Work Group? What is the primary function of a Work Group from a business perspective? A workgroup is a logical collection of operators having a common supervisor i,e. a workgroup can identify a who is a supervisor and a set of workers and workbaskets that report to that supervisor.
Use – For the supervisor of a workgroup, the My Group area of the Process Workspace provides quick access to the work lists and workbaskets associated with the group (In the workbasket tab of workbasket data instances we enter the name of a workgroup that uses the workbasket. This field determines which workbaskets appear in the View Queue list on the My Group area of the Process Work workspace for managers). Also, workgroups facilitate for better monitoring and reporting of tasks on the Monitor Activity workspace.
2) What are workbaskets? What is the relationship between a Work Group and Workbasket? Assignments for work objects may be associated either with individual s
(and appear on their work lists) or with a workbasket. All s who are qualified to work on work objects from that work basket may remove an assignment from the workbasket to process the assignment. The “contents” of a workbasket is a set of assignments awaiting processing, ordered in decreasing urgency, similar to the contents of a work list. Few other important things to keep in mind about workbaskets are (If only the specific question is asked then answer as below):
Assignments leave a workbasket in three ways: Page 159
PEGA MATERIAL
s who are qualified can remove an assignment from the workbasket to process the assignment.
An application can automatically route assignments in a workbasket to s based on work schedules, due dates, skills, workloads, and other factors.
Managers can transfer assignments from a workbasket to work lists.
** During execution of a flow, a router task can choose which workbasket is most appropriate to receive a newly created assignment.
** The relationship between workgroups and workbaskets is one-to-many i.e. one workgroup can be associated with multiple workbaskets. (In the workbasket tab of workbasket data instances we enter the name of a workgroup that uses the workbasket. This field determines which workbaskets appear in the View Queue list on the My Group area of the Process Work workspace for managers).
3) How do you associate an operator with a workbasket? Each operator may have a list of workbaskets that they can view. Normally s can fetch assignments directly from any workbasket defined for their own organizational unit. However, if the roles are specified in the roles array on the workbasket tab of the workbasket data instance, the operator must possess at least one access role that matches an access role in the Roles array.
4) What are the primary configurations that you do in an Access Group? The primary purpose of an access group is to make a set of RuleSet versions available to requestors. Also, the access group associated with a affects access control by determining: The portal layout that a sees first after logging in. The local customization RuleSet name and RuleSet version. These usually are defaulted when this creates a new rule instance. Page 160
PEGA MATERIAL The application rule for this . Optionally, the access roles available to this Workpools available to the .
5) What is the difference between a Workpool and a Work Type? Can a workpool belong to another workpool? Can a worktype belong to a work pool? Different work types (classes derived from the Work- base class) are grouped into one class group and when this class group is added to a in his access group, the can work on each work type of each class group added. Class groups so added are called as Work pools. A workpool cannot belong to another work pool. Multiple work types can belong to a work pool
** Class Group – A class group instance causes the system to store the instances corresponding to two or more concrete classes that share a common key format in a single database table. The name of the class group is a prefix of the names of the member classes. Class groups and work pools are basically the same things and class groups added to an access group are called work pools.
6) What do you mean by Case Management in PEGA? When do you use folders? Case Management involves managing work that, for processing and reporting purposes, differs from classic BPM work objects. Cases may involve:
Less rigid structure. More flexibility in the order of tasks or which tasks are needed. Interrelationships with other work. Process Commander facilities ing sophisticated case management include covers, folders, and case type rules. Case Management design is governed by the Case Type Definitions gadget, which is used to configure the following case type and work processing configurations. Using the gadget, you can: Construct covering relationships and build new case types using a standard tree gadget. Add entirely new case types: Creates Class and Case Type rules, provides standard starting flows for the new case type. Reuse existing case and work types.
Page 161
PEGA MATERIAL Manage various aspects of work processing, including:
Service levels
Attachments Categories(and automatic attachments when work objects are created). Automatic and conditional instantiation of covered items when a new cover(case) is created. Mapping roles to object access for your various case and work types.
7) What are declarative rules? Few examples. A declarative rule describes a computational relationship among property values that are expected to be valid “always” or “often” or “as needed”. Declarative rules will be in force automatically and hence you need not call these rules explicitly. The primary benefit of declarative processing is that the system controls when computations are processed. Some examples are :
Constraints rules (Rule-Declare-Constraints rule type) Declare Expression rules (Rule-Declare-Expressions rule type) Declare Index rules (Rule-Declare-Index rule type) Declare OnChange rules (Rule-Declare-OnChange rule type) Declare Trigger rules (Rule-Declare-Trigger rule types)
** Keep in mind the concept of forward chaining and backward chaining and out of the above rules only Declare Expressions can use both FW Chaining as well as BW chaining. Rest all use only forward chaining.
8) From an activity how do you call a decision table? In an activity, you can call a decision table using the Property-Map-Decision Table method. Page 162
PEGA MATERIAL
9) Migration of patches from one environment to another? For Migration of rules from one environment to another we create a ZIP file containing rules from one or more Rulesets. For this, we use a product rule (Rule--Product rule type) or a product patch rule (Rule--Product-Patch rule type) and then import the zip file into the target environment. Also, we can use the export gadget to create the zip file for rulesets.
** The data instances (such as access groups, operator ids etc.) can be included in the product or patch rules.
10) What do you mean by exposing a property? Did you use any SQL tools or does Pega provide some means to expose columns? A Single Value property that is visible as a column in a database table is said to be exposed. Only exposed properties can be used for the record selection operations in list view and summary view rules.
In PEGA we can use the ‘Modify Database Schema’ wizard to expose properties. Also, the database can cause a property previously stored only inside the Storage Stream column to become a separate exposed column using SQL tools such as TOAD.
** Aggregate properties, properties within an embedded page, and properties that are not exposed are contained in a specially formatted Storage Stream or BLOB column. Most Pega Rules database tables contain a Storage Stream column named pzPVStream.
** Exposing too many properties in a table may speed reporting and searching operations, but make the insert and update operations slower. The tradeoff and relative impact depend on hardware and software and no general guidelines exist.
11) What is the concept of database table mapping? Why do we do that? Do you do any additional table to class mapping (apart from the existing mappings) during development? In database table mapping a database table instance associates a class with a relational database table or view, in the PegaRULES database or an external database. This is done to map a class to a database Page 163
PEGA MATERIAL table and thus store the instances of the class in the table. Yes, we have done an additional table to class mappings for several application specific classes during development.
12) What are SLAs used for? How do you configure an SLA? SLAs are rules in PRPC that indicate the expected or targeted turnaround time for the assignment, or time-to-resolve for the work object. Each service level rule defines one to three-time intervals, known as goals, deadlines, and late intervals. Late intervals are repeated.
Service level rules can be associated with assignments in a flow and with the entire flow. For example, we can set a goal of 2 hours to process an assignment and a deadline of 4 hours. (The time interval starts when the assignment is created, not when a begins processing the assignment.)
For assignments, the service level rule is referenced in the Assignment Properties of the assigned task.
For the overall work object, the service level rule is identified in the standard property .pySLAName, typically set up through a model for the class. (The default value is the Default service level.)
** The Pega-ProCom agent detects service levels not achieved — unmet goals or deadlines — promptly. If an assignment is not completed before the time limit, the system can automatically notify one or more parties, escalate the assignment, cancel the entire flow, and so on.
13) Can you call one section from another section? Yes it is possible to call one section from another. A section rule can appear within another section, s and containers within a harness rule, or within a layout cell.
14) Which harness would you use to present the work object to the s only for viewing? Review harness. Review harness is used to display the work objects in display-only mode, with no fields changeable.
Page 164
PEGA MATERIAL
15) What are Work Parties? How do you send correspondence to work parties? Work party is a person, organization, or other actor identified in a work object, who can be the recipient of the email or other forms of correspondence. A work object may identify no work parties, one, or many work parties. The work party role associated with each work party identifies why a party is present and may determine which properties are defined for that party.
A Notify activity, when referenced in a flow, sends out correspondence, such as an email message, when a flow execution creates an assignment. Typically, the system addresses correspondence to a work party identified in the work object and reports progress to that party.
16) In the flow, what is the difference between local and connector flow action? Flow actions specify the choices that has when performing an assigned work object. Flow actions are mainly of two types i.e., connector actions and local actions.
Connector flow actions advance the flow. They are associated with the connector that exists at the assignment, so selecting them causes the flow to advance along with the path.
Local actions allow the to update the work item but don’t advance the flow. After the assignment is committed, the flow remains at the same assignment from which the local action was performed.
17) Have you integrated any external systems with Pega? How do you make a SOAP call? Briefly mention the steps to connect to an external system using SOAP. To make a SOAP call from PRPC we import the wsdl from the external web service and create SOAP connector rules in PRPC to invoke the external web service.
We use the Connector and Metadata Accelerator to generate the connector rules. The Connector and Metadata Accelerator imports information about an external application or system and generates rules and data objects that the PRPC applications can use to communicate with that external system.
Page 165
PEGA MATERIAL Before you use the Connector and Metadata Accelerator to generate connector rules, follow these steps:
1. Identify the RuleSet and version to contain the generated rules — classes, properties, connector rules, activities, and so on. 2. Identify or create the following class rules to use for the generated rules. 3. An abstract class rule — typically one that inherits from the Database class — for the accelerator to use as the container or base for the generated items with the exception of the connector activities. (If you do not create this class before you begin, the accelerator can create one for you.)
4. A concrete class rule for the connector activities. If you plan to call the connector from a flow, choose a class that inherits from the Work- base class, so that the connector activities can be called directly from an Integrator task.
5. Next, start the Connector and Metadata Accelerator and provide the URL to the WSDL document of the Web service that you want to connect to. Complete all the steps on the wizard to generate the connector rules and data mapping rules.
** Also, be familiar with Soap Service rules. You may also get questions on that.
18) Which rules does the Connector Accelerator create while building a connect soap interface? When your Process Commander application uses a SOAP connector to interact with a Web service, you set it up by using the Connector Accelerator. The Connector Accelerator imports the WSDL of the Web service and generates rules as follows:
1. Class and property rules that represent the data model of the external system 2. One connector rule for each operation that you selected 3. One connector activity for each connector rule
19) What are Connect HTTP rules used for and how are they different from connect SOAP rules?
Page 166
PEGA MATERIAL PRPC 5.2 introduces two new integration rule types:
Rule-Connect-HTTP
Rule-Service-HTTP
These rules are used when you want your PRPC application to send XML or string data (regular text) as messages to an external system without having to comply with standards messaging protocols such as SOAP.
The rules currently work very similar to the SOAP rules but, do not create or consume WSDLs, nor can they be generated using the integration wizard. Use these rules instead of custom Java code for making HTTP requests to external systems.
Purpose – The HTTP integration interface s interactions between your Process Commander applications and other systems through HyperText Transport Protocol.
Use HTTP connector rules when you want your Process Commander application to send XML or string data (text) as messages to an external system without the need to comply with messaging standards or protocols like SOAP.
20) How can we achieve reusability in Pega? Typically what kind of rules go in at the enterprise level and what rules would you create at the implementation level? We can achieve reusability in Pega by creating rules which are to be used by different applications within an organization at an enterprise level. Typically rules that are generic and are to be used by multiple applications such as connectors and services go in at the enterprise level and rules which are specific to an application such as flows and activities go in at the application level.
21) What are screen flows and screen tabbed flows
Page 167
PEGA MATERIAL Many computer input procedures are most effectively handled by presenting a with a series of simple forms that each require only one or a few questions to be answered. After submitting a form, a receives with another simple form (with more questions) that may depend on previous answers. At any point, s can backtrack to review, or change, previous answers.
Process Commander can such interactions with screen flows, a flow rule with specific settings.
Three runtime presentations are available to allow s to navigate within a screen flow execution at runtime:
Completed tasks (that are designated as entry points) appear as blue rectangles in a breadcrumbs control. A selects a rectangle to return to that task.
Tabs for both completed and future tasks (that are marked as entry points) appear at the top of the action area. Completed tasks contain with a check mark.
No breadcrumbs control or tabs appear. A can return to a completed task that is marked as an entry point when the button appears.
22) Can you call an integrator from screen flows? No an integrator shape is not allowed in a screen flow.
23) Can you use an unexposed column in criteria of a report? No. However, if the application needs a column corresponding to embedded property values, the values can be copied to the top level or exposed indirectly through instances of an Index- class and then used as criteria of a report.
24) Different types of harnesses available in PRPC.
Page 168
PEGA MATERIAL Ans: Some of the standard harnesses in PRPC are :
New — initial entry (creation) of the object. Perform — s completion of assignments. Review — Display the work objects in display-only mode, with no fields changeable. Confirm — Accept a text note explaining a ’s reasoning about a recently completed assignment. Reopen — reopening a previously resolved work object. Print Review — printing of all the fields.
25) What are Agents and how to configure them? An agent is an internal background process operating on the server that runs activities on a periodic basis. Agents route work according to the rules in your application; they also perform system tasks such as sending email notifications about assignments and outgoing correspondence, generating updated indexes for the full-text search feature, synchronizing caches across nodes in a multiple node systems, and so on.
Agents are defined by Agents rules (Rule-Agent-Queue rule type). Agents are enabled and are scheduled through Agent Queue data instances (Data-Agent-Queue class). The pattern (periodic/recurring) and interval (amount of time, in seconds, that the agent waits before restarting) for the Agent rule is configured in the Agent Queue data instances.
51. What type of Reporting features are provided by Pega? A. List View and Summary View 52. What is the difference between List View and Summary View ? A summary view rule defines a two-level report display, presenting summary counts, totals or averages to be isplayed initially, and allowing s to click a row to drill down to ing detail for that row. Summary view rules interactive charts, trend reports, and the use of AJAX for pop-up Smart Info windows. A summary view rule is an instance of the Rule-Obj-SummaryView rule type. This rule type is part of the Reports category. A list view rule, an instance of the Rule-Obj-ListView rule type, defines a report. s can personalize list view reports easily and interact with them. Page 169
PEGA MATERIAL Use the Report wizard to define list view reports and link them to our portal. 53. How to call a list view from an Activity? In an activity, the Obj-List-View can execute a list view rule. 54. What is Paging in a list view? To divide the List View in to different pages and set the number of records to be displayed in a page. 55. What is exposing a property? Exposing a property means to make a property as a separate independent column so that it can be used in sql queries and as a criteria in reporting. Steps are as follows, 56. How to expose a single value property? Process Commander stores the values of all aggregate properties and some Single Value properties in a BLOB column (the Storage Stream) usually in a compressed form. Such properties cannot selection in list view and summary view reports, and can slow retrieval and processing in other operations 1. Select Tools > Database > Modify Database Schema. 2. A list of databases identified in Database data instances appears. Select a database and click Next . 3. A list of tables in the selected database appears from Database Table instances. Select a table. 4. Click Explore Columns . 5. The resulting List of Classes window displays the number of rows in the table, the number of columns in the table and a list of the classes assigned to that table. The Properties Set to Be Visible value counts the properties for which the Column Inclusion value is Required or Recommended. This Column Inclusion value is advisory, and does not indicate whether the property is exposed — corresponds to a column. The Count column shows the total count of properties in this class plus those its parent classes. 6. To see the columns currently defined in this table, click the numeric link labeled Number of columns in this table. 7. The List of Database Columns window shows the column name, column data type, and column width in bytes for each column in the table. 57. How to expose aggregate property? Declare Index rule is a better approach. 1. Create a concrete class derived from the Index- base class. 2. Create Single Value properties in the new class to hold values of the embedded values. 3. Create a Declare Index rule with the appropriate embedded Page Context value that copies the embedded values into a new Index- instance. 4. Save the Declare Index rule. It executes immediately, adding and deleting instances of the new class. 5. Expose database columns corresponding to the Index- class. 6. Reference the Index- properties in the list view rule. 58. Can we refer the property without exposing in Reports? We can refer the propertys in Display tab without exposing. But we can’t refer the property without exposing in Critera fields of the Content tab. 59. What is the activity responsible for getting the data in List View? getContent Activity Page 170
PEGA MATERIAL 60. What the class of getContent Activity? Embed-ListParams class. 61. Can or have you customize the getContent Activity? Yes 62. How to customize the getContent Activity? Step1: Create Activity in Our Class and create the New page Step2: write a query and store in variable. Step3: call the listview as Call Rule-Obj-ListView Step4: Write the another activity in Embed-ListParams Step5: create the parameter. This parameter get the sql query from previous activity Step6: write Java method The java code in this method is Get the page from pyContentPage if page already exists. If page is not available it creates the new ContentPage. In this code get the sql query from the above parameter and this query and above created ContentPage as parameters to this tools.getDatabase().executeRDB(query, pagename) method. 63. How do we get the data from the two different tables? Using tab in Reports 64. How do we fetch the data from two different tables without using two different tables? Write a database View. In this view logically combine the Two different tables. Create class for this logically combined Table. Write the List View. Applies to class is class of the Combined table. So we can refer the properties of both the tables in list view. 65. What is the use of HTML property in ListView? HTML Property rules appear in list view and summary view rules to define the appearance of values in reports. 66. Consider this scenario: I need to generate a list view report of all the work objects created on a particular date and then I need to include this list view in a section. How this can be done? Select .pxCreateDateTime ( an exposed property ) under criteria and give the value you are looking for. To include it in a section, check the embedded check box and customize the HTML of the section. In that we need to access the list view in a JSP tag or In section Property is DisplayAs ListView. 67. What is the difference between List View and Obj-List? List view is generally used for complex queries where sorting is required and also we can retrieve less information using Paging. 68. Explain in brief the configuration of a list view? List view (an instance of Rule-Obj-ListView ) is used to define a custom report or personal version of a report. A list view can be configured as follows: Page 171
PEGA MATERIAL Applies to class of list view will be taken as the database table map for the search criteria. Display fields tab is used to depict the fields that are displayed along with category and to enable/disable sorting Content tab is used to depict the criteria, fields to be retrieved, key of each row (if selected) and Report source (Page name where the values should be saved and the activity to be called) In organize tab we specify to enable/disable paging, page size, mode, alignment etc. We can also configure additional buttons and their fragments here. Format tab is used to depict the formatting of the list (like even/odd coloring) and details on single click etc. List view can be accessed from an activity or html as follows: A list view can be used for complex retrievals from database by not specifying the display, format and Organize tabl. PyAction in that case would perform instead of refresh. 69. Explain in brief about the configuration of a summary view? Summary views are used to create reports which are grouped by certain criteria and can be later drilled down. A Summary view can be configured as follows: Applies to class of summary view will be taken as the database table map for the search criteria Category is used to know under which tab the report should come. Criteria is used in the where class (this can be asked to by enabling prompt ) Group by and field functions (like count) are used for initial display. If we have more than one group by it is Displayed one after another on clicking + Drill down fields are used to display the fields when we click on the assignment. Format is used to tell how to format the display and charts can also be used. Summary view can be accessed from an activity or html as follows: Call Rule-Obj-ListView.ShowView activity with classname and summary view name as parameters 70. What are the Methods we have used for validations? a. Obj-Validate–we can referred this method in Activities and in flow actions at Validate Rule field. b. Edit-Validate—- we can refer this in property form at edit-validate field and in activities through property-validate method. Note: I think Obj-Validate is used for Server Side Validation and Edit-Validate is used for Client Side Validation. 71. How do you add custom message to the Property when it fails the Validation. For this we have to use theProperty.addMessage(“your message”) tag. 72. Message is set to the property and the checked in the clipboard also , the messages got set successfully. But the message is not displayed beside the field in the screen. Why..? If the property has a html property, the tag
tag must be include 73. Explain the operation of Activity-End method? Page 172
PEGA MATERIAL Use the Activity-End method to cause the system to End the current activity and all calling activities. Ex:if Alpha calls Beta, which calls Gamma, which calls Delta, which performs the Activity-End method, all four activities are ended. 74. Explain about Exit-Activity method? The Exit-Activity method ends the current activity and returns control to the calling activity. 75. Explain about Page-Copy method? Page-Copy method is used to copy the contents of a source clipboard page to a new or previously created destination clipboard page. The source page is not altered. After this method completes, the destination page contains properties copied from the source page, and can contain additional properties from a model. 76. Explain about Page-New method? The Page-New method is used to create a page on the clipboard. The new page may be a top-level page or an embedded page. We can identify a model to initialize the newly created page. The model can set values for one or more properties. 77. Explain about Page-Remove method? Page-Remove method is used to delete one or more pages from the clipboard. The contents of the database are not affected. 78. Explain about Page-Set-Messages method? Use the Page-Set-Messages method to add a message to a clipboard page. Like a message associated with a property, a message associated with a page normally prevents the page from being saved into the database. 79. Explain about Property-Set-Message? Property-Set-Message method is used to associate a text message with a property or a step page. The system reads the appropriate property and adds the message to the page. We can provide the entire literal text of the message, or reference a message rule key that in turn contains message text. (RuleMessage rule type). 80. Explain about Property-Map-DecisionTable method? Use the Property-Map-DecisionTable method to evaluate a decision table rule and save the result as the value of a property. 81. Explain about Property-Map-DecisionTree method? The Property-Map-DecisionTree method is used to evaluate a decision tree rule (Rule-DeclareDecisionTree rule type) and store the result as the value of a property. 82. Explain about Property-Map-Value? The Property-Map-Value method evaluates a one-dimensional map value (Rule-Obj-MapValue rule type) defined in the parameter. The method sets the result as a value for a Single Value property. The related method Property-Map-ValuePair works similarly for two-dimensional map values. 83. Explain about Property-Remove method? Page 173
PEGA MATERIAL Property-Remove method is used to delete a property or properties and its associated value from the step page or another specified page. This does not affect the property rule, its definition. 84. Explain about Property-Set method? Property-Set method is used to set the value of one or more specified properties. 85. Explain about Show-HTML method? The Show-HTML method is used to cause the activity to process an HTML rule and send the resulting HTML to a for display by Internet Explorer. This may involve the interpretation of JSP tags (or the older directives), which can access the clipboard to obtain property values, or can insert other HTML rules, and so on. 86. Explain about Show-Page method? The Show-Page method is used to send an XML representation of the step page to a ’s Internet Explorer browser session, as an aid to debugging. Note: Use Show-Page and Show-Property only for debugging. 87. What is the difference between Call and Branch? The Call instruction calls the another specified activity and execute it. When that activity completes, control returns to the calling activity. Use the Branch instruction to find another specified activity and branch to it without a return. When the system executes a Branch step, control transfers to another activity found through rule resolution. Execution of the original activity pauses. When the branched activity ends, processing of the current activity also ends. No steps after the Branch step are executed. 88. Explain about Obj-List Method? Obj-List method is used to retrieve data to the clipboard as an array of embedded pages. This method creates one embedded page for each instance retrieved. The Obj-List-View method often produce more efficient SQL statements and provide better performance than the Obj-List method. 89. Explain about Obj-Browse method? Obj-Browse method is used to search instances of one class and copy the entire instances, or specified properties, to the clipboard as an array of embedded pages. Only properties exposed as columns can be used as selection criteria. However, values of properties that are not exposed as columns, including embedded properties, can be returned. 90. Explain about Obj-List-View method? Obj-List-View method is used to execute the retrieval and sorting operations, but not the formatting and display processing, of a list view rule. The system uses rule resolution to find the list view rule and executes it, but does not produce any HTML output display. 91. Explain about Obj-Open method? Obj-Open method is used to open an instance stored in the PegaRULES database or in an external database linked to an external class, and save it as a clipboard page. Page 174
PEGA MATERIAL The system uses the specified class and key fields to find and open the object and place its data into the specified step page. The system searches up the class hierarchy as appropriate to find the instance. If it finds the specified step page, the system clears any data that is on it and reuses the page. If no existing page has a name matching the specified step page, the system creates a new page. 92. Explain about Obj-Open-By-Handle method? Use the Obj-Open-By-Handle method only if we can determine the unique handle that permanently identifies which instance to open. Otherwise, use the Obj-Open method. 93. Explain about Obj-Delete method? Obj-Delete method is used to delete a database instance corresponding to a clipboard page and optionally to delete the clipboard page too. We can cause the deletion to occur immediately, or until execution of a Commit method. This method can operate on objects of both internal classes (corresponding to rows in a table in the PegaRULES database) and external classes (corresponding to rows in an external relational database). The Obj-Delete method uses the class of the page to obtain the appropriate Rule-Obj-Class instance. It uses the table name, key fields, and other aspects of the class rule to mark the instance for deletion. We can reverse or cancel a previously executed Obj-Delete method by using the Obj-Save-Cancel method. 94. Explain about Obj-Save method? Obj-Save method is used to save a clipboard page to the PegaRULES database or if the page belongs to an external class save a clipboard page to an external database. The Obj-Save method uses properties on the page to derive the internal key under which it will be saved. This method can create a new database instance or overwrite a previous instance with that key. We cannot save a page that is locked by another requestor. We cannot save a page that our session does not hold a lock on (if the page belongs to a lockable class), unless the object is new, never yet saved. We cannot save pages of any class derived from the Code- base class or the Embed- base class. Such pages exist only on the clipboard. 95. Explain about Commit method? Commit method is used to commit all uncommitted database changes. This method writes all the instances specified by one or more earlier Obj-Save methods to the PegaRULES database (for internal classes) and to external databases (for external classes). 96. Explain about Obj-Validate method? Obj-Validate method is used to apply a validate rule (Rule-Obj-Validate rule type) for the object identified on the primary page or step page. A validate rule (Rule-Obj-Validate rule type) can call edit validate rules (Rule-Edit-Validate rule type). 97. Explain about Obj-Sort method? Obj-Sort method is used to sort the clipboard pages that are the values of a property of mode Page List. We can specify one or more properties to sort on, and whether the sort sequence is ascending or descending for each sort level. Use Connect SQL rules and RDB methods only with an external database. Do not use Connect SQL rules or RDB methods for the PegaRULES database(s). Because not all properties in the PegaRULES databases Page 175
PEGA MATERIAL are distinct database columns, use the Obj-Open and Obj-Save methods, not the RDB- methods, with the PegaRULES database to prevent loss of data. 98. Explain about RDB-List method? RDB-List method is used to retrieve rows from an external relational database and place the results as embedded pages in a specified step page of classCode-Pega-List. This method references a Connect SQL rule instance, and executes SQL statements stored in the Browse tab of that rule instance. The search can do anything we can specify in a SQL statement, such as a SELECT WHEREstatement. Any constraints on the returned data are in the SQL. 99. Explain about RDB-Open method? RDB-Open method is used to retrieve a single row (record) of data from an external relational database and add the retrieved data into a specified clipboard page as property names and values. Use this method in conjunction with a Connect SQL rule that contains SQLSELECT or EXECUTE statements in the Open tab. Define the SQL statements so that the database returns exactly one row. 100. Explain about RDB-Save method? RDB-Save method is used to save the contents of a clipboard page into a row of a relational database. The system saves the properties on the specified step page to the specified table in the database. This method operates in conjunction with a Connect SQL rule that contains SQL statements such as INSERT, UPDATE, and CREATE statements on the Save tab. 101. Do we need to migrate Agent Schedule to other environment? No 102. Do we need to create Agent Schedule? No. Agent schedules cannot be created manually. The Agent Manager on our Process Commander system generate at least one agent schedule instance for each agents rule. By default, the Agent Manager checks for new or updated agents rule once every ten minutes. After we create an agents rule, the Agent Manager generates one Agent Schedule instance for each node running on your Process Commander system the next time it checks for new agents rules. 103. Who will create Data-Agent-Queue? The Agent Manager is a master agent that gathers and caches the agent configuration information set for our system when Process Commander starts. Then, at a regularly scheduled interval, it determines whether any new agents rules were created during the last period. If there are new agents rules, the Agent Manager adds them to its list of agents and generates agent schedule data instances for them for each node. 104. What is the use of Data-Agent-Queue? When you need to modify the behavior of an agent listed in an agents rule in a locked RuleSet (any of the standard Process Commander agents rules, for example) you do so by editing one or more of the generated A service level rule is an instance of the Rule-Obj-ServiceLevel type. Each service level rule defines one to three time intervals, known as goals, deadlines, and late intervals, that indicate the expected or targeted turnaround time for the assignment, or time-to-resolve for the work object. Page 176
PEGA MATERIAL The goal time is the smallest time interval, the deadline time is a longer interval, and the late interval defines post-deadline times. Each time interval is in days, hours, minutes, and seconds. 105. What are the types of SLA? Where they can be defined? Service level rules can be associated with a work object or an assignment. For assignments, the service level rule is referenced in the Assignment Properties of the assignment task. For the overall work object, the service level rule is identified in the standard property .pySLAName, typically set up through a model for the class. (The default value is the Default service level.) 106. How do we do Escalation? Escalation refers to any processing within a Process Commander application that causes high-priority work objects to become visible to s and managers and to be processed sooner rather than later. The numeric property known as urgency determines the order that assignments for that work object appear on worklists. Escalation recalculates the urgency value to reflect its age, impending due date, or explicit management inputs. Escalation can occur through a service level rule associated with the flow and through background processing by the Pega-ProCom agent. 107. What are SLA’s, how are they different from Agents? A service level rule is an instance of the Rule-Obj-ServiceLevel type. The service level can define a goal and a deadline times for processing an assignment, and can execute activities if the goal or the deadline is not met. This assignment-level service level is distinct from any service level associated with the entire flow. At runtime, an internal countdown clock (measuring the completion of the assignment against the goal and deadline times computed from the service level rule) starts when the assignment task is created. An agent is a background internal requestor operating on the server. These requestors can periodically monitor conditions and perform processing as necessary. Most agents are defined by an Agent Queue rule (Rule-Agent-Queue), which includes a list of the activities they perform. 108. How to implement SLA’s? Is is possible to define a SLA for the entire work object? If yes, how? SLA’s are always associated with an assignment. Just drag a SLA shape and provide an instance of Rule-Obj-ServiceLevel. Yes, SLA can be defined for the entire workobject by defining it in the model. The property for this is pySLAName. 109. How to restrict a flow to particular s? By using privileges and when conditions under process tab of the flow instance. 1. What are the types of Flow Actions? A flow action rule controls how s interact with work object forms to complete assignments. Each flow action is defined by an instance of the Rule-Obj-FlowAction rule type. Flow actions are of two types: Connector flow actions appear as lines on Visio presentation in the Diagram tab of a flow rule. A line exits from an assignment shape and ends at the next task in the flow. At runtime, s choose a Page 177
PEGA MATERIAL connector flow action, complete the assignment, and advances the work object along the connector to the next task. A local flow action, when selected at runtime, causes the assignment to remain open and on the current ’s work list. Local flow actions are recorded in the Assignment Properties and are not visible on the Visio flow diagram. A local flow action permits s at runtime to update, but not complete, an assignment. Local flow actions always are optional. s may perform none, one, or multiple local flow actions, or repeat a local flow action multiple times. At runtime, s choose a connector flow action, complete the assignment, and advances the work object along the connector to the next task. 110. Explain about Pre Activity? At runtime, the system runs this activity before it does other processing for this flow action. This activity is not visible on the Visio flow diagram. This activity executes only once, the first time a selects this flow action for this assignment. 111. Explain about Post Activity? Activity to run after other successful processing of this flow action. For screen flow rules By default, when this flow action appears as a step in a screen flow rule, and the at runtime clicks away to a different step in the screen flow rule, this activity rule does not run. To cause this activity to execute when the clicks away to a different step, select the Post Action on Click Away? check box on the Assignment shape properties . 112. Explain about Local Flow Action? A local flow action permits s at runtime to update, but not complete, an assignment. Like connector flow actions, local flow actions are referenced inside an assignment task in a flow. At runtime, s can select local flow actions to update assignment or work object properties, change the assignee, and so on but do not complete the assignment. If a service level rule is associated with the assignment, the service level continues to run. Local flow actions always are optional. s may perform none, one, or multiple local flow actions, or repeat a local flow action multiple times. On the Action tab of the Flow Action form, we can mark a flow action rule as local, or connector, or both. 113. How Rule-Edit-Validate is different from Rule-Obj-Validate? Edit Validate is to validate a single property at a time but obj validate rules are used to validate all the properties in a single go. Obj-Validate method is used for this purpose. 114. How one single property can be represented in different forms on a screen? By using HTML Properties at the section level, not at the property level. 115. Consider this scenario : I have a property of type decimal, I need to restrict it to two decimal places only. How easily this can be done? By using a qualifier “pyDecimal Precision” under Qualifiers tab. 116. How to implement dynamic select and smart prompt? What’s the major difference between them? Implementation of Dynamic Select: Page 178
PEGA MATERIAL In properties select Display As is DynamicSelect. Write Activity for generating Dynamic Select. By using Show-Page method display the data in XML format. Dynamic Select is a drop down from which we can only select a value. Smart prompts acts both as a text box and a drop down. Smart prompts are implemented by using ISNS_FIELDTYPE, ISNS_CLASS, ISNS_DATANODE. 117. What is the difference b/w Page and Page List property, how are they Implemented? Page property refers to a particular class and is used to access the property of that class. Page List Property also refers to a particular class, but it’s a collection of individual pages of the same class which can be accessed through numeric indexes. 118. HTML Property rules are instances of the Rule-HTML-Property class. They are part of the Property category. Use HTML Property rules to control how properties appear on work object forms, correspondence, and other HTML forms, for both display and for accepting input. For properties of mode Single Value an HTML Property rule may be identified in the Display Property field of the Property rule form. HTML Property rules also may appear in list view and summary view rules to define the appearance of values in reports, and in harness, section, and flow action rules that define work object forms. 119. Explain about Special Properties? Standard properties means all the properties in the Pega-RULES, Pega-IntSvcs, Pega-WB, and PegaProCom RuleSets have names start with px, py, or pz. These three prefixes are reserved. We cannot create new properties with such names. We can override these standard properties with a custom property of the same name (without changing the mode or Type). Px: Identifies properties that are special, meaning that the values cannot be input by input on an HTML form. Py: Properties with names that start with py are not special, meaning that values can be input by s on an HTML form. Pz: Properties with names that start with pz internal system processing. s cannot directly manipulate pz properties. our application may examine these values, but do not set them. The meaning of values may change with new product releases. Interview Questions On VALIDATIONS In PEGA Validation rule is used to validate the value against the some other value. Once the validation fails the system add error message to that field in clipboard. 120. What types of validations are there? a. Client Side Validations b. Server Side Validations How to Call a db stored procedure from Pega We can query database tables using Rdb-list, Rdb-browse, Rdb-open, Obj-Open, Obj-Browse, Obj-list. Well are these built-in Pega activities successful in executing stored procedures? Yes ofcourse we can execute stored procedures from Pega. Page 179
PEGA MATERIAL Use Obj-List like this. In the browse tab you have to code as below if the stored procedure name is “func1″ with one parameter “Param1″ then the line goes like this, you can add up to as many parameters you want. For example a param to get the result of stored procedure execution. CALL func1('{ASIS:Request.param1}')
The System Management application(SMA) is a Web application that developers can use to monitor and control caches, agents, listeners, and other processing in your Process Commander system. The URL name is prsysmgmt. Using the System Management application, you can: § Review the memory used by the Java Virtual Machine on the server. § Review the most recent ServletRequest and HTTPRequest details. § Display the prconfig.xml file. § Access any requestor and view the clipboard, start the Tracer, examine performance statistics, and terminate requestor processing. § View executing threads and their characteristics. § View, stop, cycle, or restart agents and listeners. § View open JDBC database connections. § View rule cache statistics, and empty the cache. § Force extraction and recompilation of the functions in a library. § Extract and compile one activity rule or model rule. § Start or stop remote logging. § Observe the utilization of requestor pools ing stateless services. § Review the status of the Java class loader. Declare Expression: is an instance of Rule-Declare-Expressions/ is a declarative processing which defines auto computation of property values based on expression. This implements Backward Chaining. What is Backward Chanining: Backward chaining: is a technique which allows a computation in advance even the input value or parameter is not present. BC uses Rule-Declare-Expression and Property-Seek-Value method together finds the missing property value by using inter dependency network such computations are called as Goal Seeking. Two standard flowactions called Property and PropertyWithListing are examples of Backward Chaining. Declare OnChange: Rule-Declare-OnChange/ is a declarative processing which automatically run an activity when a value of the specified property changes. These implements Forward Chaining. What is Forward Chaining. Forward Chaining: is an internal technique which automatically finds the changes in one property value to changes in other property values or indexes. Declare Trigger: Rule-Declare-Trigger/ is a declarative processing which automatically run an activity when an instance of specific class are created, updated or deleted in the DB. These implements Forward Chaining Declare Constraint- Rule-Declare-Constraint/ is a declarative processing which automatically run validation when a specified property is touched. This implements Forward Chaining Page 180
PEGA MATERIAL
harness rule defines a runtime form that s application s as they enter, review, update, and resolve work objects. Harnesses rules the display of work object forms. Developers define work object forms through harness rules (Rule-HTML-Harnessrule type) and section rules (Rule-HTML-Section rule type). standard harness forms are New, Perform, Review, Confirm, Reopen, PrintReview § New — initial entry (creation) of the object. § Perform — s completion of assignments. § Review — Display the work objects in display-only mode, with no fields changeable. § Confirm — Accept a text note explaining a ’s reasoning about a recently completed assignment. § Reopen — reopening a previously resolved work object. § PrintReview — printing of all the fields. A section is a portion or area of a standard work object form that is incorporated on a harness form. Sections may contain other sections, informally called subsections. The appearance, behavior, and contents of a section are defined by a section rule (Rule-HTML-Section rule type). Section rules are referenced in: § Harness rules § Other section rules § Flow action rules § Paragraph rules with SmartInfo pop-ups Clipboard: is a tool used for debugging and troubleshooting aid for application developers. Is an temporary memory area on server. Its an hierarchy structure consisting of nodes known as pages most of which have a name and an associated class. Pages act as a buffers or temporary copies of object instance that are copied from, or may later be stored into, the PRPC DB or another DB. Clipboard tool is used for developing and debugging to: Examine property values and messages Quickly create, update, delete and modify pages using Action menu Quickly execute activities and start flows using action menu We can find pages and we can Refresh or only refresh current page. The clipboard contains three broad categories of top-level pages: o Pages o Declared pages o System managed pages: requestor page, process page, and application pages, Thread page, Operator ID, organization, orgDivision. Page: is a top level clipboard page that an activity creates pages using the methods like Page-New. All the pages will appear here once we log off, all the pages will be removed from the memory i.e. will not be saved to Pega DB. If your requestor session times out, pages may be lost, or may be saved for up to 3 days Thread page—pxThread page is a top level clipboard page known as Thread page. The page has a class of Code-Pega-Thread Page 181
PEGA MATERIAL Process Page—pxProcess page is a top level clipboard page known as Process page. The page has a class of Code-Pega-Process. This page Contains information from the Data--System instance. Declare Page-is a clipboard page created by execution of a declare page rules (Rule-Declare-Pages rule type. The name of the declarative pages start with Declare_. The content of these pages are visible but Read-Only to the requestors. Such pages are created and updated only through activities identified in a Declare Pages rule. Declarative pages can improve performance and reduce memory requirement issues when all or many requestors in an application need to access static information or slowly changing information. Requestor Page- pxRequestor page is a top level clipboard page known as Requestor page. The page has a class of Code-Pega-Requestor. The system creates a page during at time and contains information about our Access roles, Security, Ruleset list and HTTP protocol parameters, Work pools available details, workbasket that we can access, connection session, Date and Time details and previous Date and time details etc. This page context is useful for troubleshooting and debugging. Page Context is a property is a page List or Page Group property reference property has mode Single Value and appears directly on a page of the Applies To class, or if creating a context-free expression. A decision table is a rule defining a series of tests performed on property values to allow an automated decision. Decision table are instances of the Rule-Declare-Decision Table rule type. Decision tables can capture and present business logic in the form of one or more if… then… else conditions. A decision tree rule defines a series of tests that are performed on property values to allow an automated decision. Decision trees are instances of the Rule-Declare-Decision Tree rule type. Decision trees can capture and present business logic in the form of one or more if… then… else conditions. A map value rule is a rule that converts one or two input values, such as latitude and longitude numbers, into a calculated result value, such as a city name. The rule uses ranges for the input value or values and a matrix to look up the result. Map value rules are instances of the Rule-Obj-Map Value rule type. This rule type is part of the Decision category. When condition rule: When rule defines a true-false test based on comparing on or more property values with constant values or with other property values. A when condition rule is an instance of the Rule-Obj-When rule type
1. Operator ID instances are normally stored in the PegaRULES database as rows of the pr_operators table. 2. What is volatile variable? The volatile keyword is a type qualifier used to declare that an object can be modified in the program by something such as the operating system, the hardware, or a concurrently executing thread. Page 182
PEGA MATERIAL This means every time the variable is requested inside the program, each time the value is read from the source memory location(harddrive,devices.etc). normal variables are stored in virtual memory of the processor. They are synced with source memory location only twice. Once during first read and second termination write. This is useful when the varialbe is used as a control condition in multthreaded or RT applications applications. 3. How many access groups can be associated to an operator at once ? Only one access group at a time , but one operator will have multiple access group in their operator id instance. 4. Can u explain abt ruleset types ? We have Different types of rulesets are available in Pega 5. What is a production ruleset ? How will it be helpful ? In the production rulesets area we can provide rulesets, rules in this rulesets will be unlocked in production, the end s directly will change these rules as per requirement, this is called rule deligation. PEGA Interview Questions and Answers PEGA Interview Questions 6. What is the default access role used by developers ? Pega rules Sys4 7. Different types of classes that PRPC ? Ans – We have different types of Standard Classes will be avaliable which are, @baseclass is Ultimate base class, And Its Child Classes are work-, Data-, Rule-, Assign-, History-, etc. Pega always 2 types of classe which are Abstract Classes And Concrete Classes Abstract Classes are ends with ‘-‘ and abstract Classes cannot create any work object instances Concrete Classes will Does not ends with -, And Abstract Classes will create Workobject instances 8. Rule Resolution ? Inheritence ? 7 steps Defer load means, suppose u can use any tabbed Section in that situation u want to load the data on each tab u can write one activity to retrieving data, then large amount of data will be loaded in clipboard, Its an performance hit load the more data in clipboard, So in that situation we can use Defer load option it will prevent performance because while u Check the Defer load option it will ask some activity on each tab Cell properties, so when ever the particular tab is opened then relevant activity only will be fired and load the related data…So it will Avoid the performance Yes we can load the values in dropdown 9. How many types of portals does PRPC can provide? Where will you specify the portals that u have created? Composite portals, Fixed portals, Custom portals, mobile portals After creating a portal it will specified in the Access group Settings tab, then it will access to the particular . 10. Explain Different types of harness that u have used ? Page 183
PEGA MATERIAL We have number of standard harness will be available in pega, but most commonly used are new, perform, review, conform, Tabbed, perform screen flow, Tree Navigation 11) If I want to restrict a to perform on a particular flow action, how can I achieve it? we can specify the privileges or when conditions in Security tab of the flow action 12. How can u expose a property ? What is a linked property ? By using the modified Data base schema or optimise for reporting option Modifying database Schema-à Select Data baseà Select Table-à View Columnsà Select Columnsà Give Database name& and the Click Generate Optimise reporting means right click on the property and select the optimise for reporting 13. Mention about the flow types ? Process flows, Screen flows, Subflow’s, Straight through process flows. 14. In my screen flow I have 4 assignments. When I am at 3rd assignment, I want to route it to a different . How can it be done ? No it is not possible to route the assignment in the middle of the screen flow…Suppose if you want to route the entire Screen flow will be route to different .. u can give the router in Start shape of the screen flow 15. Use of entry checkbox in screen flow ? Suppose u can specify the entry point checkbox in the assignment that shape allows as a start point in the flow.. means for which assignment shapes u can check this checkbox that assignments only display in the output, then u can use the breadcrumbs and navigate any screen. 16. What are all the different types of scope that declare scope provide ? Node, Thread, Requestor 17. Advantages and limitations of declare page ? The main Advantage of the Declare pages is, It prevents the multiple DB hits , Suppose is there multiple requestors in that node when ever first into the application then load activity will be fired and create a declare page and then loaded the data in that page, requestors who can on that node will show this declare page and use the data on that page. The Disadvantages are its read only to the requestors, and can not add the additional data and cannt delete the specific data. 18. Diff b/w declare page and regular pages ? Declare pages are created through declarative rules, Declare_ keyword must be specified while creating a declare page, Declare pages are read-only pages, These pages Cant delete ,update directly. pages are created through page new method in an activity, these pages can be updated, deleted directly, these pages automatically deleted once from the system. 19. Diff types of declarative rules present? Declare Expressions, Declare Constraints, Declare On change, Declare trigger, Declare Index. 20. How do u specify if expression triggers f/w or b/w chaining ? In the Chain tracking tab. Page 184
PEGA MATERIAL 21. How b/w chaining process works in Pega ? (Goal Seek) It will searches the first on dependency network After checking the dependency the execution Starts from Lower expression to higher expression. In Activity u can use goal-seek-property to find the missing value of the property. 22. What type of Reporting features are provided by Pega? A. List View and Summary View 23. What is the difference between ListView and SummaryView ? A summary view rule defines a two-level report display, presenting summary counts, totals or averages to be displayed initially, and allowing s to click a row to drill down to ing detail for that row. Summary view rules interactive charts, trend reports, and the use of AJAX for pop-up Smart Info windows. A summary view rule is an instance of the Rule-Obj-SummaryView rule type. This rule type is part of the Reports category. A list view rule, an instance of the Rule-Obj-ListView rule type, defines a report. s can personalize list view reports easily and interact with them. Use the Report wizard to define list view reports and link them to our portal. 24. How to call a listview from an Activity? In an activity, the Obj-List-View can execute a list view rule. 25. What is Paging in a listview? To divide the ListView in to different pages and set the number of records to be displayed in a page. 26. What is exposing a property? Exposing a property means to make a property as a separate independent column so that it can be used in sql queries and as a criteria in reporting. Steps are as follows, 27. How to expose a single value property? Process Commander stores the values of all aggregate properties and some Single Value properties in a BLOB column (the Storage Stream) usually in a compressed form. Such properties cannot selection in list view and summary view reports, and can slow retrieval and processing in other operations 1. Select Tools > Database > Modify Database Schema. 2. A list of databases identified in Database data instances appears. Select a database and click Next . 3. A list of tables in the selected database appears from Database Table instances. Select a table. 4. Click Explore Columns . 5. The resulting List of Classes window displays the number of rows in the table, the number of columns in the table and a list of the classes assigned to that table. The Properties Set to Be Visible value counts the properties for which the Column Inclusion value is Required or Recommended. This Column Inclusion value is advisory, and does not indicate whether the property is exposed — corresponds to a column. The Count column shows the total count of properties in this class plus those its parent classes. 6. To see the columns currently defined in this table, click the numeric link labeled Number of columns in this table. Page 185
PEGA MATERIAL 7. The List of Database Columns window shows the column name, column data type, and column width in bytes for each column in the table. 28. How to expose aggregate property? Declare Index rule is a better approach:Create a concrete class derived from the Index- base class. Create Single Value properties in the new class to hold values of the embedded values. Create a Declare Index rule with the appropriate embedded Page Context value that copies the embedded values into a new Index- instance. Save the Declare Index rule. It executes immediately, adding and deleting instances of the new class. Expose database columns corresponding to the Index- class. Reference the Index- properties in the list view rule. 29. Can we refer the property without exposing in Reports? We can refer the propertys in Display tab without exposing. But we can’t refer the property without exposing in Critera fields of the Content tab. 30. What is the activity responsible for getting the data in List View? getContent Activity 31. What the class of getContent Activity? Embed-ListParams class. 32. Can or have you customize the getContent Activity? Yes 33. How to customize the getContent Activity? Step1: Create Activity in Our Class and create the New page Step2: write a query and store in variable. Step3: call the listview as Call Rule-Obj-ListView Step4: Write the another activity in Embed-ListParams Step5: create the parameter. This parameter get the sql query from previous activity Step6: write Java method The java code in this method is Get the page from pyContentPage if page already exists. If page is not available it creates the new ContentPage. In this code get the sql query from the above parameter and this query and above created ContentPage as parameters to this tools.getDatabase().executeRDB(query, pagename) method. 34. How do we get the data from the two different tables? Using tab in Reports 35. How do we fetch the data from two different tables with out using two different tables? Write a database View. In this view logically combine the Two different tables. Create class for this logically combined Table. Write the List View. Applies to class is class of the Combined table. So we can refer the properties of both the tables in list view. Page 186
PEGA MATERIAL 36. What is the use of HTML property in ListView? HTML Property rules appear in list view and summary view rules to define the appearance of values in reports. 37. Consider this scenario: I need to generate a list view report of all the work objects created on a particular date and then I need to include this list view in a section. How this can be done? Select .pxCreateDateTime ( an exposed property ) under criteria and give the value you are looking for. To include it in a section, check the embedded check box and customize the HTML of the section. In that we need to access the list view in a JSP tag or In section Property is DisplayAs ListView. 38. What is the difference between List View and Obj-List? List view is generally used for complex queries where sorting is required and also we can retrieve less information using Paging. 39. Explain in brief the configuration of a list view? List view (an instance of Rule-Obj-ListView ) is used to define a custom report or personal version of a report. A list view can be configured as follows:Applies to class of list view will be taken as the database table map for the search criteria. Display fields tab is used to depict the fields that are displayed along with category and to enable/disable sorting Content tab is used to depict the criteria, fields to be retrieved, key of each row (if selected) and Report source (Page name where the values should be saved and the activity to be called) In organize tab we specify to enable/disable paging, page size, mode, alignment etc. We can also configure additional buttons and their fragments here. Format tab is used to depict the formatting of the list (like even/odd coloring) and details on single click etc. List view can be accessed from an activity or html as follows:Call Rule-Obj-ListView.ShowView activity with classname and list view name as parameters A list view can be used for complex retrievals from database by not specifying the display, format and Organize tabl. PyAction in that case would perform instead of refresh. 40. Explain in brief about the configuration of a summary view? Summary views are used to create reports which are grouped by certain criteria and can be later drilled down. A Summary view can be configured as follows: Applies to class of summary view will be taken as the database table map for the search criteria Category is used to know under which tab the report should come. Criteria is used in the where class (this can be asked to by enabling prompt ) Group by and field functions (like count) are used for initial display. If we have more than one group by it is Displayed one after another on clicking + Drill down fields are used to display the fields when we click on the assignment. Format is used to tell how to format the display and charts can also be used. Summary view can be accessed from an activity or html as follows: Page 187
PEGA MATERIAL Call Rule-Obj-ListView.ShowView activity with classname and summary view name as parameters 41) Diff b/w list Obj-list-view results and obj-browse ? We can retrieve instances from multiple classes by using the obj-list-view, In obj-browse we can retrieve only Single Class Instances. 1) Diff types of log files available in PRPC? 2) Log level settings? 3) How do you track and analyse all your warnings? Application Pre-flight tool 42. What is an Agent? An agent is an internal background process operating on the server that runs activities on a periodic basis. Agents route work according to the rules in our application. Agents also perform system tasks such as sending e-mail notifications about assignments and outgoing correspondence, generating updated indexes for the full-text search feature, synchronizing caches across nodes in a multiple node system, and so on. 43. How do we create an Agent? New a Sys a Agents Rule Set name is the Agent name Agent is instance of Rule-Agent-Quiee. 44. Do we need to create Agent Schedule? No. Agent schedules cannot be created manually. The Agent Manager on our Process Commander system generate at least one agent schedule instance for each agents rule. By default, the Agent Manager checks for new or updated agents rule once every ten minutes. After we create an agents rule, the Agent Manager generates one Agent Schedule instance for each node running on your Process Commander system the next time it checks for new agents rules. 45. Do we need to migrate Agent Schedule to other environment? No 46. What are the Agent running time intervals? Each agent activity runs individually on its own interval schedule, as a separate requestor thread. Periodic — The agent runs the activity and then “sleeps” for the number of seconds entered in the Interval column. Recurring — The agent runs the activity based on a specified calendar schedule (for example, every Monday at 5:00 P.M.). 47. What are the Agent Running modes? Queue mode indicates whether the agent uses the agent queue capability to process items from the agent queue. This feature allows the agent to temporarily skip over items that fail — for example, because a needed resource is locked — and try again later to process the item later. Page 188
PEGA MATERIAL Standard — Specifies that this agent processes items from an agent queue and that it relies on the system to provide object locking and other transactional . Advanced — Specifies that this agent uses custom queuing Legacy — specifies that this is an agent that was created in a version prior to V5.4 and has not yet been updated. This option is not available for agents created in V5.4 or later. 48. What is the use of referring Access Group in Agents? Agent activity calls another activity. This called activity may not appear in agent rule set. So setup of the Rule set list and Roles by providing Access group in security Tab. Select the access group to use for the legacy and advanced agents listed in this rule. This field is ignored for agents with a type of Standard. 49. How do we Troubleshoot or Trace an Agent? 1. < env name=”agent/enable” value=”true” /> above tag in prconfig file. Value of the above tag is true or false. 2. In Agent Schedule, schedule tab the check box Enable this agent is Checked or Not. And also the Enabled? Check box is checked or Not. 3. Same thing also check in Agents Rule. In Tracer we can trace the particular operator or particular Agent. In prsysmgmt portal, In Agent Management select the particular Agent and Delay the Agent and then run the Tracer. We can use the Agent Management link in the System Management Application to monitor and control agent processing. Agent runs on different nodes, select the particular node and run the Tracer. 50. What are the Agents for SLA and Correspondence? The agents in the Pega-ProCom RuleSet process e-mail, service level rules, and assignments, archive work objects, and so on. The agents in this rule provide the following types of processing:
Processing service level events and escalation Applying a flow action to assignments in bulk Sending out e-mail correspondence Archiving and purging work objects, attachments, and history Retrieving PDF files from the PegaDISTRIBUTION Manager Running tests defined through the optional Automatic Testing facility Checking incoming e-mail The activity System-Queue-ServiceLevel.ProcessEvents s service level processing for both assignments and work objects. The activity Data-Corr-.Send s outgoing e-mail if your system contains one or more Email data instances with a second key part of Notify. 51. Who will create Data-Agent-Queue? The Agent Manager is a master agent that gathers and caches the agent configuration information set for our system when Process Commander starts. Then, at a regularly scheduled interval, it determines whether any new agents rules were created during the last period. If there are new agents rules, the Agent Manager adds them to its list of agents and generates agent schedule data instances for them for each node. Page 189
PEGA MATERIAL 52. What are the Standard Agents? our system includes three standard agents rules. Because these agents rules are in locked RuleSets, we cannot modify them. To change the configuration settings for the agents listed in these rules, update the agent schedules generated from the agents rule. Pega-IntSvcs, Five agents in the Pega-IntSvcs RuleSet process queued service and connector requests and perform maintenance for PegaDISTRIBUTION MANAGER (formerly called Correspondence Output Server, or COS). The agents in the Pega-ProCom RuleSet process e-mail, service level rules, and assignments, archive work objects, and so on. The agents in this rule provide the following types of processing:
Processing service level events and escalation Applying a flow action to assignments in bulk Sending out e-mail correspondence Archiving and purging work objects, attachments, and history Retrieving PDF files from the PegaDISTRIBUTION Manager Checking incoming e-mail (deprecated in V5.3) Pega-RULES The agents in the Pega-RULES RuleSet perform general system housecleaning and periodic processing. The agents in this rule provide the following processing: System Cleaner System Pulse Rule Usage Snapshot Static Content Cleaner System Work Indexer
53. What is the use of Data-Agent-Queue? When you need to modify the behavior of an agent listed in an agents rule in a locked RuleSet (any of the standard Process Commander agents rules, for example) you do so by editing one or more of the generated A service level rule is an instance of the Rule-Obj-ServiceLevel type. Each service level rule defines one to three time intervals, known as goals, deadlines, and late intervals, that indicate the expected or targeted turnaround time for the assignment, or time-to-resolve for the work object. The goal time is the smallest time interval, the deadline time is a longer interval, and the late interval defines post-deadline times. Each time interval is in days, hours, minutes, and seconds. 54. What are the types of SLA? Where they can be defined? Service level rules can be associated with a work object or an assignment. For assignments, the service level rule is referenced in the Assignment Properties of the assignment task. For the overall work object, the service level rule is identified in the standard property .pySLAName, typically set up through a model for the class. (The default value is the Default service level.) 55. How do we do Escalation? Escalation refers to any processing within a Process Commander application that causes high-priority work objects to become visible to s and managers and to be processed sooner rather than later. Page 190
PEGA MATERIAL The numeric property known as urgency determines the order that assignments for that work object appear on worklists. Escalation recalculates the urgency value to reflect its age, impending due date, or explicit management inputs. Escalation can occur through a service level rule associated with the flow and through background processing by the Pega-ProCom agent. 56. What are SLA’s, how are they different from Agents? A service level rule is an instance of the Rule-Obj-ServiceLevel type. The service level can define a goal and a deadline times for processing an assignment, and can execute activities if the goal or the deadline is not met. This assignment-level service level is distinct from any service level associated with the entire flow. At runtime, an internal countdown clock (measuring the completion of the assignment against the goal and deadline times computed from the service level rule) starts when the assignment task is created. An agent is a background internal requestor operating on the server. These requestors can periodically monitor conditions and perform processing as necessary. Most agents are defined by an Agent Queue rule (Rule-Agent-Queue), which includes a list of the activities they perform. 57. How to implement SLA’s? Is is possible to define a SLA for the entire work object? If yes, how? SLA’s are always associated with an assignment. Just drag a SLA shape and provide an instance of Rule-Obj-ServiceLevel. Yes, SLA can be defined for the entire workobject by defining it in the model. The property for this is pySLAName. 58. How to restrict a flow to particular s? By using privileges and when conditions under process tab of the flow instance. 1. What are the types of Flow Actions? A flow action rule controls how s interact with work object forms to complete assignments. Each flow action is defined by an instance of the Rule-Obj-FlowAction rule type. Flow actions are of two types: Connector flow actions appear as lines on Visio presentation in the Diagram tab of a flow rule. A line exits from an assignment shape and ends at the next task in the flow. At runtime, s choose a connector flow action, complete the assignment, and advances the work object along the connector to the next task. A local flow action, when selected at runtime, causes the assignment to remain open and on the current ’s work list. Local flow actions are recorded in the Assignment Properties and are not visible on the Visio flow diagram. A local flow action permits s at runtime to update, but not complete, an assignment. Local flow actions always are optional. s may perform none, one, or multiple local flow actions, or repeat a local flow action multiple times. At runtime, s choose a connector flow action, complete the assignment, and advances the work object along the connector to the next task. 59. Explain about Pre Activity? Page 191
PEGA MATERIAL At runtime, the system runs this activity before it does other processing for this flow action. This activity is not visible on the Visio flow diagram. This activity executes only once, the first time a selects this flow action for this assignment. 60. Explain about Post Activity? Activity to run after other successful processing of this flow action. For screen flow rules By default, when this flow action appears as a step in a screen flow rule, and the at runtime clicks away to a different step in the screen flow rule, this activity rule does not run. To cause this activity to execute when the clicks away to a different step, select the Post Action on Click Away? check box on the Assignment shape properties . 61. Explain about Local Flow Action? A local flow action permits s at runtime to update, but not complete, an assignment. Like connector flow actions, local flow actions are referenced inside an assignment task in a flow. At runtime, s can select local flow actions to update assignment or work object properties, change the assignee, and so on but do not complete the assignment. If a service level rule is associated with the assignment, the service level continues to run. Local flow actions always are optional. s may perform none, one, or multiple local flow actions, or repeat a local flow action multiple times. On the Action tab of the Flow Action form, we can mark a flow action rule as local, or connector, or both. 62. How Rule-Edit-Validate is different from Rule-Obj-Validate? Edit Validate is to validate a single property at a time but obj validate rules are used to validate all the properties in a single go. Obj-Validate method is used for this purpose. 63. How one single property can be represented in different forms on a screen? By using HTML Properties at the section level, not at the property level. 64. Consider this scenario : I have a property of type decimal, I need to restrict it to two decimal places only. How easily this can be done? By using a qualifier “pyDecimal Precision” under Qualifiers tab. 65. How to implement dynamic select and smart prompt? What’s the major difference between them? Implementation of Dynamic Select:
In properties select Display As is DynamicSelect. Write Activity for generating Dynamic Select. By using Show-Page method display the data in XML format. Dynamic Select is a drop down from which we can only select a value. Smart prompts acts both as a text box and a drop down. Smart prompts are implemented by using ISNS_FIELDTYPE, ISNS_CLASS, ISNS_DATANODE.
66. What is the difference b/w Page and Page List property, how are they Implemented? Page property refers to a particular class and is used to access the property of that class. Page List Property also refers to a particular class, but it’s a collection of individual pages of the same class which can be accessed through numeric indexes. Page 192
PEGA MATERIAL 67. What is HTML Property? HTML Property rules are instances of the Rule-HTML-Property class. They are part of the Property category. Use HTML Property rules to control how properties appear on work object forms, correspondence, and other HTML forms, for both display and for accepting input. For properties of mode Single Value an HTML Property rule may be identified in the Display Property field of the Property rule form. HTML Property rules also may appear in list view and summary view rules to define the appearance of values in reports, and in harness, section, and flow action rules that define work object forms. 68. Explain about Special Properties? Standard properties means all the properties in the Pega-RULES, Pega-IntSvcs, Pega-WB, and PegaProCom RuleSets have names start with px, py, or pz. These three prefixes are reserved. We cannot create new properties with such names. We can override these standard properties with a custom property of the same name (without changing the mode or Type). Px: Identifies properties that are special, meaning that the values cannot be input by input on an HTML form. Py: Properties with names that start with py are not special, meaning that values can be input by s on an HTML form. Pz: Properties with names that start with pz internal system processing. s cannot directly manipulate pz properties. our application may examine these values, but do not set them. The meaning of values may change with new product releases.
70. Define what are the Methods we have used for validations? Obj-Validate–we can referred this method in Activities and in flow actions at Validate Rule field. Edit-Validate—- we can refer this in property form at edit-validate field and in activities through property-validate method. Note: I think Obj-Validate is used for Server Side Validation and Edit-Validate is used for Client Side Validation. 71. How do you add custom message to the Property when it fails the Validation. For this we have to use theProperty.addMessage(“your message”) tag. 72. Message is set to the property and the checked in the clipboard also , the messages got set successfully. But the message is not displayed beside the field in the screen. Why..? If the property has a html property, the tag
tag must be include 73. Define the operation of Activity-End method? Use the Activity-End method to cause the system to End the current activity and all calling activities. Ex:if Alpha calls Beta, which calls Gamma, which calls Delta, which performs the Activity-End method, all four activities are ended. 74. Define about Exit-Activity method? Page 193
PEGA MATERIAL The Exit-Activity method ends the current activity and returns control to the calling activity. 75. Define about Page-Copy method? Page-Copy method is used to copy the contents of a source clipboard page to a new or previously created destination clipboard page. The source page is not altered. After this method completes, the destination page contains properties copied from the source page, and can contain additional properties from a model. 76. Define about Page-New method? The Page-New method is used to create a page on the clipboard. The new page may be a top-level page or an embedded page. We can identify a model to initialize the newly created page. The model can set values for one or more properties. 77. Define about Page-Remove method? Page-Remove method is used to delete one or more pages from the clipboard. The contents of the database are not affected. 78. Define about Page-Set-Messages method? Use the Page-Set-Messages method to add a message to a clipboard page. Like a message associated with a property, a message associated with a page normally prevents the page from being saved into the database. 79. Define about Property-Set-Message? Property-Set-Message method is used to associate a text message with a property or a step page. The system reads the appropriate property and adds the message to the page. We can provide the entire literal text of the message, or reference a message rule key that in turn contains message text. (RuleMessage rule type). 80. Define about Property-Map-DecisionTable method? Use the Property-Map-DecisionTable method to evaluate a decision table rule and save the result as the value of a property. 81. Define about Property-Map-DecisionTree method? The Property-Map-DecisionTree method is used to evaluate a decision tree rule (Rule-DeclareDecisionTree rule type) and store the result as the value of a property. 82. Define about Property-Map-Value? The Property-Map-Value method evaluates a one-dimensional map value (Rule-Obj-MapValue rule type) defined in the parameter. The method sets the result as a value for a Single Value property. The related method Property-Map-ValuePair works similarly for two-dimensional map values. 83. Define about Property-Remove method? Property-Remove method is used to delete a property or properties and its associated value from the step page or another specified page. This does not affect the property rule, its definition. 84. Define about Property-Set method? Property-Set method is used to set the value of one or more specified properties. Page 194
PEGA MATERIAL 85. Define about Show-HTML method? The Show-HTML method is used to cause the activity to process an HTML rule and send the resulting HTML to a for display by Internet Explorer. This may involve the interpretation of JSP tags (or the older directives), which can access the clipboard to obtain property values, or can insert other HTML rules, and so on. 86. Define about Show-Page method? The Show-Page method is used to send an XML representation of the step page to a ’s Internet Explorer browser session, as an aid to debugging. Note: Use Show-Page and Show-Property only for debugging. 87. Define what is the difference between Call and Branch? The Call instruction calls the another specified activity and execute it. When that activity completes, control returns to the calling activity. Use the Branch instruction to find another specified activity and branch to it without a return. When the system executes a Branch step, control transfers to another activity found through rule resolution. Execution of the original activity pauses. When the branched activity ends, processing of the current activity also ends. No steps after the Branch step are executed. 88. Define about Obj-List Method? Obj-List method is used to retrieve data to the clipboard as an array of embedded pages. This method creates one embedded page for each instance retrieved. The Obj-List-View method often produce more efficient SQL statements and provide better performance than the Obj-List method. 89. Define about Obj-Browse method? Obj-Browse method is used to search instances of one class and copy the entire instances, or specified properties, to the clipboard as an array of embedded pages. Only properties exposed as columns can be used as selection criteria. However, values of properties that are not exposed as columns, including embedded properties, can be returned. 90. Define about Obj-List-View method? Obj-List-View method is used to execute the retrieval and sorting operations, but not the formatting and display processing, of a list view rule. The system uses rule resolution to find the list view rule and executes it, but does not produce any HTML output display. 91. Define about Obj-Open method? Obj-Open method is used to open an instance stored in the PegaRULES database or in an external database linked to an external class, and save it as a clipboard page. The system uses the specified class and key fields to find and open the object and place its data into the specified step page. The system searches up the class hierarchy as appropriate to find the instance. If it finds the specified step page, the system clears any data that is on it and reuses the page. If no existing page has a name matching the specified step page, the system creates a new page. 92. Define about Obj-Open-By-Handle method? Use the Obj-Open-By-Handle method only if we can determine the unique handle that permanently identifies which instance to open. Otherwise, use the Obj-Open method. Page 195
PEGA MATERIAL 93. Define about Obj-Delete method? Obj-Delete method is used to delete a database instance corresponding to a clipboard page and optionally to delete the clipboard page too. We can cause the deletion to occur immediately, or until execution of a Commit method. This method can operate on objects of both internal classes (corresponding to rows in a table in the PegaRULES database) and external classes (corresponding to rows in an external relational database). The Obj-Delete method uses the class of the page to obtain the appropriate Rule-Obj-Class instance. It uses the table name, key fields, and other aspects of the class rule to mark the instance for deletion. We can reverse or cancel a previously executed Obj-Delete method by using the Obj-Save-Cancel method. 94. Define about Obj-Save method? Obj-Save method is used to save a clipboard page to the PegaRULES database or if the page belongs to an external class save a clipboard page to an external database. The Obj-Save method uses properties on the page to derive the internal key under which it will be saved. This method can create a new database instance or overwrite a previous instance with that key. We cannot save a page that is locked by another requestor. We cannot save a page that our session does not hold a lock on (if the page belongs to a lockable class), unless the object is new, never yet saved. We cannot save pages of any class derived from the Code- base class or the Embed- base class. Such pages exist only on the clipboard. 95. Define about Commit method? Commit method is used to commit all uncommitted database changes. This method writes all the instances specified by one or more earlier Obj-Save methods to the PegaRULES database (for internal classes) and to external databases (for external classes). 96. Define about Obj-Validate method? Obj-Validate method is used to apply a validate rule (Rule-Obj-Validate rule type) for the object identified on the primary page or step page. A validate rule (Rule-Obj-Validate rule type) can call edit validate rules (Rule-Edit-Validate rule type). 97. Define about Obj-Sort method? Obj-Sort method is used to sort the clipboard pages that are the values of a property of mode Page List. We can specify one or more properties to sort on, and whether the sort sequence is ascending or descending for each sort level. Use Connect SQL rules and RDB methods only with an external database. Do not use Connect SQL rules or RDB methods for the PegaRULES database(s). Because not all properties in the PegaRULES databases are distinct database columns, use the Obj-Open and Obj-Save methods, not the RDBmethods, with the PegaRULES database to prevent loss of data. 98. Define about RDB-List method? RDB-List method is used to retrieve rows from an external relational database and place the results as embedded pages in a specified step page of classCode-Pega-List.
Page 196
PEGA MATERIAL This method references a Connect SQL rule instance, and executes SQL statements stored in the Browse tab of that rule instance. The search can do anything we can specify in a SQL statement, such as a SELECT WHEREstatement. Any constraints on the returned data are in the SQL. 99. Define about RDB-Open method? RDB-Open method is used to retrieve a single row (record) of data from an external relational database and add the retrieved data into a specified clipboard page as property names and values. Use this method in conjunction with a Connect SQL rule that contains SQLSELECT or EXECUTE statements in the Open tab. Define the SQL statements so that the database returns exactly one row. 100. Define about RDB-Save method? RDB-Save method is used to save the contents of a clipboard page into a row of a relational database. The system saves the properties on the specified step page to the specified table in the database. This method operates in conjunction with a Connect SQL rule that contains SQL statements such as INSERT, UPDATE, and CREATE statements on the Save tab.
HCL 1) Tell me abt ur project? roles and responsibilities? 2) diff b/n obj-methods and RDB-methods? A) both are used to taken the data from db. obj methods are used to retrieve the data in BLOB clumns RDB methods used to retrive the data from External systems. RDB methods are faster than obj metods. obj methods for pega rules tables, and RDB methods for External tables. 3) Obj-refresh-and-Lock? A) To unlock the work object. It is used to open a lock and get an instance. lock should be held on the work object inorder to save/update/delete the contents of db. 4) how u can able to unlock the work object? A) in case of timeout or session expires lock will be release from the work object. in objopen method select the check box ReleaseOnCommit option to release the lock on the work object. 5) diff b/n file listener and connect file? A) File listener used to import data from a file. Connect file defines the name and location of an output file created by ur application. 6) wht is local action? A) when action is finished work object returns to same assignment. 7) wht is WSDL file? A) it is web services description language.it is written in XML format. 8) wht is data-,work-,rule- classes? A) Rule- base class is the abstract class of the rule classes. It defines how an organization uses that application and run the business. Work- is the super class to all the classes that defines work objects. Data- is an abstract class that contains static data. Data- do not repeat the information stored in the other databases. such type of information can be accessed from the process commander system with connectors.
Page 197
PEGA MATERIAL Virtusa 1) Tell me abt ur project and roles and responsibilities? 2) declarative rules? A) Rule-Declare-Expressions, Rule-Declare-Index, Rule-Declare-Trigger, Rule-DeclareOnChange Rule-Declare-Constraints 3) declare on change? A) it is the instance of Rule-Declare-OnChange rule types. it is used to run an activity automatically at activity step limits whenever the specied property value is changed. this capability provides automatic forward chaining. EX: we can create a declare onchange rule to send an email to emp whenever HRA,TA,PF is changed.we can define RDO rules property inside the embedded page.we need to specify page name and class name in the pages and classes tab. 4) declare pages? A) it is the instance of Rule-Declare-Pages rule type. it is used to define the content of clipboard page that is available in read only mode for multiple requestors in ur application. the name of the declare page starts with Declare_. 5) diff b/n decision tree and decision table? A) In DTree properties and conditions are changed, used for complex problems B) In DTable properties fixed and conditions changed, used for normal problems 6) in which way we can select multiple values from single property? A) by using Dtree we can select muliple values for a single porperty. 7) how u can able to create a work object? A) we can create a work object, within the flow we can select the process tab. check the check box "Create Work object". We can call an activity generate id or addWork to create a work object. 8) there is 2 work types and in work type A have a flow with work object and it has to work type B as a sub flow? A) straight through process work pool: collection of multiple work types that configured in a single access group. 9) How u can able to allocate a activity in UI? A) By using onblur, onchange, onclick. 10) wht are the bugs u face in UI? A) by implementating dynamic select and auto complete i faced bugs. 11) wht is rule resolution? A) It is a mechanism to decide which rule need to be executed at run time. 12) work proccess of rule resolution? A) @ match the class hierarchy. @ filter by ruleset list and availability. @ filter based on time @ Qualify on circumstance @ enforces access roles and priviligers @ excuting the surviver rule. 13) declare expression with example in ur project? A) it is the instance of Rule-Declare-Expressions rule type. it helps the automatic calculations of property value based on the changes of other peoperty values. EX; we can declare RDE property called AREA.this value is accessed from the clipboard. if any changes in LENGTH/WIDTH values,it causes immediate recomputaton of the value of the AREA. 14) wht is list view? A) it is used to display the records in reporting purpose. the rule generates html that provides interactive dispaly.
Page 198
PEGA MATERIAL 15) wht is exposing? how u expose a property? A) in advanced tab of the property definition we need to define the column inclusion as required. Add the property as one of the DB column. 16) did u worked on class structures? A) NO 17) wht is the use of data- class? A) Data- class stores the instances in the database.it is used to construct the data tables,it will provides an options like to exposes data tables to business s.
Page 199
PEGA MATERIAL Embed- class prevents instances stored in the process commander.
Accenture
1) Tell me abt ur project and roles and responsibilities? 2) property modes? how to select multiple values from drop down? A) Single value, value list, value group, page list, page group. we can select "prompt list" from table type. 3) declarative expression and declarative onchange? A) RDE: It is the instance of Rule-Declare-Expressionrule type. It helps automatic calculations of property values based on the other property values. Ex: We can declare RDE property called AREA. We can get this value from clipboard. If any changes in LENGTH/WIDTH value it causes immediate recomputation of value of AREA. RDO:It is the instance of Rule-Declare-OnChange rule type. it is used to run an activity automatically at activity step when ever the specified property value is changed. this capability provides the automatic forward chaining. EX; we can create a Declare OnChange rule to call activity mail sends to emp whenever the HRA,TA,PF changed.It is same as the RDE. we can define the RDO properties inside the Embedded page. we need to specify page name and class name inside the pages&classes tab. 4) validation activity procedure step by step? A) Generally validation can be happened in the pre-conditions. Within the pre condition we have to define the validation 5) preparation of defined skins and portals? A) Portals defines the role of the skin and type. skin defines internal representation of the portal to the in a browser window.portals configured in Access Group. 6) how to retrieve a property from clipboard with java code? A) Tools.clipboardpage.getProperty(); 7) integration file listener? A) File listener can be used to import data from a file. 8) wht is parse delimiter ?(seperate a records with special characters) A) It is belongs to Integration mapping category.To data into process commander system from an external system.it is used to seperate records with special characters. 9) in SOAP, which tab can generate WSDL file? A) In connect SOAP that contain WSDL file. 10) wht is the use of may start check box? A) If calling an activity from any other activity may start checkbox is optional.if the activity getting called for the form submission may start need to be checked. 11) can any possibility to do single sign on in pega? A) yes 12)wht is forward chaining and backword chaining with examples? A) FC: It provides automatic calculations of a property by executing the declarative rules,when any one of the input property value is changed. Ex: if AREA property depends on the length and width property. forward chaining causes when AREA property can be recomputed each time when the length and width values changes. BC: it provides the automatic calculations of the property by executing the declarative rules,when a value is needed for a property, rather than the AREA is changed. Ex: Area property depends on the length and width property. then backward chaining causes the Area property to be recomputed each time when the Area property is required/referred.
Page 200
PEGA MATERIAL Accenture 1) Tell me about urself? roles and resposibilities? 2) what is circumstance? A) Circumstance is the optional condition and enhancement of rule resolution alg. diff variations of the rules within the same version created for diff flavours suit for different situation. circumstance works during the rule resolution, at run time system first find the rules based on class hierarchy then searches for a rules the requestors session needs, it compares the values of ruleset, version, availability to determine which rule executed. 3) what is skimming? A) Skimming collects the higher version of the every ruleset and copies them into major versions of the ruleset on the same system. Ex: If we are skimming loan appl 05-06-07, the only options are 06-01-01,07-01-01 and so on. but you can not skim to 06-07-08,07-08-09. 4) What is prompt page? A) The indirect page is nothing prompt page reference that starts with key word prompt.the system searches the indirect page at run time in clipboard. using this prompt page sending more than one parameter page, called activity can use the property like prompt.pagename.propertyName. 5) what is declare page? A) it is the instance of Rule-Declare-Pages rule type. it is used to define the content of the clipboard page in read-only mode to multiple requestors in appl. The declare page starts with the keyword Declare_. 6) what is locate page? A) locate page s the backward chaining and used to retrieve the data into the clipboard page temporarily.the data is not present in the clipboard page this rule need to perform calculations.the system will execute an activity and retrieve necessary data. 7) property-seek-value method? A) to initiate backward chaining computations for the value of a poperty based on declare expression rule. it shows the GoalProperty as a parameter and value is property. 8) wht is obj-save-cancel? A) use this method we can cancle the recent uncomitted obj-save method. it is also used to undo obj-delete method which not uncomitted. 9) what is service level? A) A service level is the instance of Rule-obj-Servicelevel rules type.it is used in assignment and work object. it defines one or two time intervals goal and deadline that indicates expected or targeted time for the assignment and time to resolve the work object. if the assignment is not complete before the time limit the system automatically notify the various parties and cancel the entire flow. 10) what is the diff b/n rule agent, data agent? A) developer can generate the rule agents and it specific to one rule set. system generates the data agents 11) $none and $any diff? A) $none: if at runtime we want to create a page without any class used in pages and classes as $none. $any: if u want to decide class of a page at runtime of activity used in pages and classes as $any.
Page 201
PEGA MATERIAL CTS 1) wht r the methods to call decision table in activities? A) property-map-decision table. 2) wht is diff b/n spinoff and split-for-each? A) Spin-off: the work object process in the current flow contiues without waiting in the other flow to complete. Split-ForEach: To send a work object through another flow based on information in the pages of pagelist or pagegroup. 3) wht is forward chaining and backword chaining with examples? A) FC: It provides automatic calculations of a property by executing the declarative rules,when any one of the input property value is changed. Ex: if AREA property depends on the length and width property. forward chaining causes when AREA property can be recomputed each time when the length and width values changes. BC: it provides the automatic calculations of the property by executing the declarative rules,when a value is needed for a property, rather than the AREA is changed. Ex: Area property depends on the length and width property. then backward chaining causes the Area property to be recomputed each time when the Area property is required/referred.
Page 202
PEGA MATERIAL Wipro 1) call, branch? A) call Activity: the call activity instructs the current activity to find and run another activity using rule resolution.After the called activity completes the calling activity processing.the called activity can use its parameter page. the main advantage of call activity is reuse. Branch Activity: it is similar to call method. Branch activity refers to the another activity. the execution of the original activity ends the execution of the branched activity completed without return.. 2) spin-off,split for each? A) Spin-Off : The Work Object processing in the current flow continues in parallel, without waiting in the other flow to complete. The properties of Spin-off shape: Name: Enter a text name. Define Flow: On current work item, On another Work Item, On Embedded Page. Application: Select name of the Application Split-For Each : To send a Work Object through another flow based on information in the pages of a Page List or Page Group. It contains the properties like Page List or Page group, Class of the Page list or page group, Flow type and Flow Rule. 3) Diff b/w Obj-validate & Property-validate? A) ( obj-validate is we can do validations for multiple properties of a single work object) ( property-validate is only one property we can do validations for single work object) 4) how to hide d flow action? A) within the flow action, open the security tab and write the when condition. 5) how to fetch d data from d db? A) by using Obj-browse method in an activity 6) how to create a data table? 7) authentication and agent relation? 8) declare index, onchange, expressions?
Page 203
PEGA MATERIAL Mphasis 1) What is Access Group? A) Access Group controls the security basing on the job functions. It is instance of Data-Operator-AccessGroup. Various aspects that can be controlled through access group are default and available types of works( also called as work pools ) , Primary rulesets ( Access Control to rulesets), Assigned roles, Portal layout 2) What is Work list, Work basket? A) work list is a outstanding assignment waiting for a to perform them. work basket is a instance of Data--WorkBasket class.Work object progress through a flow execution, the system creates assignment. Assignment may be created either with individual or work basket. 3) what is parallel processing in pega? A) running a parallel subflow to the mainflow or calling a service through integration shapes and at the same time processing a job..... 4) What are rule availbilities? A) Availability is an imp aspect considered by the rule resolution algorithm. pyRuleAvailable is the property represents whether the given rule is available or not. rules are yes, no, blocked, final. 5) what are decision rules, declarative rules? A) A Decision Tree is an instance of class Rule-Declare-Decision Tree. DTree is used to check multiple properties, If you're making decisions on series of data that are different from one branch to the next, use decision tree. A Decision Table is an instance of class Rule-Declare-Decision Table. DTable we can check only one property. If you're making decisions against the same data element, use decision table. When: If you want to get a Boolean returned, or when your decision employs a lot of complexity but doesn't need to be applied to a lot of cases, consider using a When rule. Map Value: If you're making decisions on 1 or 2 values, then use Map Value. 6) what type of flows used in ur project, flow action and types? A) 7) what is List view, summary view? A) both are used to dispaly the data in reporting purpose. 8) what is 5.5, 6.1 diff? A) 9) what are debugging tools? A) PAL: captures the u time, PLA: monitor d system debugging, exceptions, agent relation issues.. debugging tools are PAL,Tracer,Clopboard,SMA. 10) what is the diff b\n alert logs(when db hit),pega logs? A) The Alert log gathers the alert messages about specific performance and operational issues and any log messages with the severity level of alert for specific Java classes or rules with a severity level of alert. The Pega log gathers system errors, exceptions (with their stack trace statements), debug statements, and any other messages other than those specified as alerts. 11) what is Agent? A) Agents are internal background proccess operating on the server to run an activities.Agents are asynchronous and independent. They also peform system tasks such as sending email notifications and synchronizing caches across nodes. Activities they call run individually on their own scheduled and one activity doesn't have to finish another activity 12) how to integrate with SOAP (or) how to create a connect SOAP? A) service pkg, service soap, activity. 13) what is diff b\n RDB,OBJ methods?
Page 204
PEGA MATERIAL A) Obj method can be used to fetch the data from Blob columns but RDB methods can only help to fetch the data from exposed columns RDB methods are faster than OBJ methods in of response time Normally we use OBJ methods for pega tables and RDB methods to fetch the data from external database 14)how to set request timeout and authtication timeout? A) requestor timeout in portal,authentication timeout in access group..check these two rules..u will be able to find 15) what is exact difference between step page and page new(both will create the pages)? A) Step page defines the page context on which a method is gong to be executed.step page does not creates a pae..while page-new is used to create page
Page 205
PEGA MATERIAL 16) how can we create own data tables and map to external data base? A) check the notes from Integration...there's a document of mapping to ext table 17) what is exactly obj-browse and obj-list(why it is deprecated) A) obj-browse allows you to filter the data instead of fetching all the data...thus lesser memory consumption... deprecated means...pega does not recommends using it..but to previous verson application they have kept it 18) how can we expose coloumns from tables and howmany ways? A) in property form go and in advanced tab..select column inclusion rqrd.. then go thru tools-->database schema--select database-->select table-->select class->check the props u wanna expose and then click on generate columns are bottom 19) how can we use obj-save and commit(is immediate saving good approach)? A) mmediate saving is not recommended approach..as lock lost happens..bette r use objsave and leave pega to handle commit 20) what data stored in blob either single value or multi value or others and we can expose blob columns.? A) )we can expose blob columns and in blob data for those column remains which r not exposed yet 21) what is column inclusion(required,recommend,optional)? A) unless u select column inclusion required..a clumn cannot b exposed. other way is tell DBA's to expose the column 22) i can develop one application,these application can be use in different countries then in that application i have mentioned time but based on country time might be change automatically how to change these time in property/activity rule.? A) go to operator id of that person..in the calendar field...add the respective time zone and calendar.. and it will work automatically...nothing more to be done anywhere. 22) How to move code from development server to test server? A) create a new instance for product category, in that category we have to provide rule sets and rule set versions create zip file and moves to test server.
Page 206
PEGA MATERIAL IBM 1) Diff b/w V5.5 and V6.1? A) Action Sction : It is used for server interaction, multiple browsers, multiple display and interactions.A single configurable section replaces multiple sections. Tree, Grid and TreeGrid layouts: These layouts provide improved performance and work with all ed browsers. Flow Action Form: it is created for referencing a section rule and prompting reusability.we can drag the section from application explorer onto layout tab, 2) Have u worked on Integrations? A) 3) when will we go for may start and authenticate? A) If calling an activity from any other activity may start check box is optional.if the activity getting called for the form submission then may start in need to be checked. Authentication is the process of determining the identity of or requestor. proper authentication is required for the activity to get start for the corresponding operator. Activity will not triggered when the authentication is checked. 4) Activity types? A) Assign: initiates assignments reference from the assignment shape. Connect: interface with external system reference from the integration shape. Notify: send notifications reference from the notify shape. Route: Route assignments reference from the Router shape. Utility: perform automated processing that requires no inputs reference from the utility shape. 5) Rules Availability types? wht is blocked, withdrawn? A) Blocked: If we are setting blocked for a 01-01-03 only upper versions like 01-01-04 are available to RRA. lower versions like 01-01-02, 01-01-01 are not available to RRA. 6) wht are the debugging tools? A) Tracer: Use this tool to debug flow, activities, services and declarative rules. It provides debugging facilities, including step by step exection and break points and watch variables. Clipboard: it is used to transferring data between application and database. The xml based structure called pages and pages contains the property value pairs.the top level pages are page, declared page, system managed pages including process page, requestor page,appl page, thread page. PAL: Use the Performance tool to understand the system resources consumed by processing of a single requestor session, or the SQL statements sent to the PegaRULES database by the requestor session. SMA: The System Management application (SMA) is a Web application that developers can use to monitor and control caches, agents, listeners, and other processing in your Process Commander system. The URL name is prsysmgmt 7) diff b/n declare onchange and declare trigger? A) D Onchange: Instance of (Rule-Declare-OnChange rule type). It is used to run an activity automatically at activity step limits whenever the specified property value is changed. This capability provides the automatic forward chaining D Trigger: Instance of (Rule-Declare-Trigger rule types). It identifies an activity that runs automatically whenever an object of particular Class is Saved/Updated/Deleted. 8) wht is list view? explain abt list view? A) A) It is used to display the data in reporting purpose. This rule generates HTML that provides interactive display. In an Activity the Obj-List-View can execute a List-View Rule. If we want display the List of WO that is present in the work list. Create a list view AssignWork List. If we want to display the list of WO that is present in the Work Basket, create a list view in Assign-Work-Object.
Page 207
PEGA MATERIAL 9) diff b/w flow and flow action? A) Flow Types: Starter Flow, Straight through process flow, Sub flow, and Straight flow. Flow Action: Flow Action is the Instance of Rule-Obj-FlowAction class. Flow Action is one category in UI that specifies the choices to performing an assigned Work Object. Types of Flow Actions are, Connector Action: When action is finished, Work Object moves to next level/ next Assignment. Locale Action: When action is finished, Work Object returns to same assignment. 10) how can we stop the accessability to 20 s in our application? 11) how can give the accessability to work manager?
Page 208
PEGA MATERIAL A) in Access Group we have to change the portal layouts to work manager.
Others
• How do u debug the harness? A) by using Rules-Inspector we will debug the harness. • Is it possible to add a section with in a section? yes • Is it possible to add HTML form in a section? no • Is it possible to add HTML rule in a HTML rule? yes • Where workbasket and worklist is used? A) within the operator id we will use work basket. • How to map work group in a table? A) within the operator id we will map work group. • How to map Access-group? A) within the operator id we will map. • About Rules Inspector? A) within the run there is to check html rules, property rules, declaraative rules, field value rules. rules inspector is used to find which is harness and which is section within the work objecct. • Where routing flow is used and how it works? A) Router is route to wb,wl or individual . • About list view? A) list view is used to display the records in the reporting purpose. • Describe Property-set method? A) set the value of one or more property values. it contains property name and property value. • Diff between Obj-open & Obj-browse ? A) obj-open is used to open single value in the blob column. obj-browse is used to open more than one value in the clipboard page/external system • About clipboard? A) clip board page that contains page, declare page, access group, operator id, org,div,pxRequestor,pxProcesssor. • About HTML Fragments? A) use html fragment rules define html parts, styple sheets and scripts, include java script file. it contains jsp tags and produce dynamic content that depends on property values. • Diff b/w value-list and page-list? A) Value list is unordered, pagelist index starts with 1 to n. • How do u know is SLA working or not? A) within the clip board or tracer we will check wheather the pySlaGoal, pySlaDeadline if both r blank we will find it is not working. • Tell me the class structure in ur project? • Diff b/w work- & work-object- ? A) deriving the work object class(W-O-) (w-)it is implementation layer. • What is flow-action? A) it is the instance of Rule-Obj-FlowAction rule type.it is the one category in UI specifies the choices to performing assigned work object. Local FA: if action is finished, work object returns to same level. Connector FA: if action is finised, work object moves to next level. • How u create work object? A) with in flow click on process tab, we have to check the check box "create work object". or call an activity GenerateID/addWork to create a WO. • What is d use of Primary page? A) the primary page is nothing but a clipboard page.
Page 209
PEGA MATERIAL primary page is nothing but a step page in activity. it refers in . to display the property.. • Why u need class group? A) we need to add one or more class groups to create the work pools in which associated in the access group to create the work objects. • What is work pool? A) Diff work types added to one class group and this class group added in his access group. class grooup so added are called as work pools. • What is work basket?
Page 210
PEGA MATERIAL A) it is the instance of Data--WorkBasket class.as work object process through a flow execution the system creates assignments.an assignment through individual or work basket. • Can u explain me the process for connecting with external database(step wise)? A) check in meta data with connector accelerator. • What is SLA and how do u know whether it is working or nor? A) it is the instance of Rule-Obj-Servicelevel rule type.it can be added to assignment or work object.each SL defines one or more time intervals like Goal and dead line that indicates expected or targeted time for the assignment and time to resolve for work object. Within the clipboard we have to findout whether the pyGoalproperty and pyDeadlinepropety properties are empty then SL not working. • How many types of SLA’s are there? A) Goal and deadLine • Can we use obj-methods for external databases? A) yes • Explain Locking system in PRPc? A) obj-open-by-handle method • How can u validate a property? A) obj-validate 1) common issues and solutions in production 2) data base issues related to production ? 3)all methods regarding xml 4)xmlDataTopage? xmlDocToPage? xmlToPage? 5) what is availability button? 6)what is launch button? 7)working of list view and summary view? Q) differentiate constraint vs validation.? A) Constraint is a declarative rule which gets called auomatically whenever invalid value entered by the and show the error message according to ur logic, unlike constraint validation is not a declarative rule ad u need to call it from say flow actions/activity etc...its also used for validation. Q) is it right all internal tables are pega default tables and external tables are which are created by us. if yes how many types of internal tables are there what are important one among them. while creating external tables what are the standards we need to follow and how to create them.? A) whatevere are pega standard tables such as pc_work,pr_others etc r called internal tables...the table which we create other than pega standarrd tables and map to ur classes are called external tables. While mapping pega to external tables always remmember to keep some of the standard columns such as pxobjclass,pzpvstream(blob column) etc. Questions: 1.i have activity t1 and activity t2 i want to call page of activity t1 to activity t2? A) primary.pagename. if you want to call activity A1 of class C1 from Activity A2 of Class C2, use following in methods step of A2 activity, Call C1.A1 2.activity--->security---->may start and authenticate. what is use of authenticate? A) authenticate if checked...if this activity is being tried to access from external system.. it will not get executed unless the is an authenticated to PRPC,if not checked...even unauthenticated can execute it 3.we create a work object it look like w0-11.but i want to configure the w.o name as my name i.e is naveen-01? A) model--> pyDefault
Page 211
PEGA MATERIAL open the process tab of flow. open the pyDefault model..there is a field which allows you to set prefix.. there set prefix as "naveen" and next time w.o would be naveen-1,nnaveen-2 etc 4. we have a requirement like use the screen flow and process flow? which one is preferable and y? A) depends on requirement. screen flow is for UI improvement..while process flow is for business logic exceution..so both have diff purpose. 5.if u create the w.o in which table it will stored?
Page 212
PEGA MATERIAL A) pc_work. unless u map it to pc_work,by default to pr_other 6.in harness i want to specifies list view how? A) select one property, open the cell property and select list view in display as. you can include list view..using drag and drop..check the different options such as dragging a field etc.. 7.how to configure the utility shape? A) within the flow we will configure the utility shape. drag utility shape..in flow,create an activity of type utility and mention in utlity shape u r done. 8.if interview ask how to update daily work status? A) everyday morning we have standup calls. i will give updates to my tech lead. in assignment ,here is a field to capture assignment status and w.o status..whatvere u mention same will be the status 9. we have any AND shape in decisions? A) its not a shape..u write logic as A AND B AND C or any.. A OR B OR C..u can do anything 10.what is use of guardrails? A) guardrails guide u, how to code any application in best way using pega. 11.what are the framework layer in class structure? A) framework layer is a standard developed code for a partcualr domain.. so that u need that start project development from scratch..for example SI framwork for Banking,M for insurance etc 12.how fetch data in internal database from external database table ? A) map ext db to ur pega system (check integration notes),map class to the table in new db and then use any rdb methods 13.how to the parameter frm flow to activity? A) u call activity in flow using utility in activity shape... ,when activity wants any parameter.. while configuring utility shape mention the parameters. 14.my friend told me there is a 64 frameswork in pega is it correct? A) its totally fraud..bring him to me..these kind of people create rumours. 15)difference between primary page and pywork page? A) Both are same. primary page means if we didn't mentioned any step page name by default it will takes as Primary page. pyWorkPage is a clipboard page. 16) i can't indentify pr_other table in pega rules db where is it? A) it does not show up through wizard. 17) what is retrofitting ? A) retrofitting is fixing any issues encountered due to changes in other part of code...or may be fixing of issues due to upgarde of system. 18) how can we migrate the rules? A) try to recall ruleset migration class Questions : 1. What are the agents? A) Agents are internal background process operating on the server to run an activity. these are asynchronous and independent. These are 2 type rule agent queue, data-agent-queue 2. Hginh tools ow to trace an Agent? A) By using debugging tool tracer we can trace the Agent. 3. What is IAC, when did you use in the project? A) The Internet Application Composer (IAC) enables you to embed a Process Commander application as a gadget on the pages of a Web application located on your intranet, extranet, or internet site. Such an application is called a Pega composite application. 4. What is cover and covered objects?
Page 213
PEGA MATERIAL A) Cover is Work Object that is parent to one or more work objects. the covered WO are Children in Parent-Child relationship. one work party is present in the cover work object that is also present in the covered WO associated with the covers. 5. Have you used spin-off shapes in your application, if so what is the case? A) The work object processing in the current flow in parallel without waiting in the other flow to continue. 6. What are the types of log files we have?
Page 214
PEGA MATERIAL A) Pega logs: these are also called as system logs. message was created since the server starts recently. Alert log: it contains only alerts and s performance related monitoring. 7. Do you know the concept of validation rules? A) yes. 8. How do you log a message in PRPC? A) 9. Tell me about the locking concept in PRPC? A) Lock should be held on the work object in order to save/update/delete the content in the db. 10. What is DWA (Direct Web Access)? A) DWA is any one access the World wide weband email to process an assignment on a one time basis.this feature extends the scope ur appl to empls througout the enterprise. 11. What are PEGA Guardrails? A) Adopt iterative approach Establish Robust foundation Do nothing that is hard Limit custom java Built for change Design intend on driven process Create easy to read flow Monitor performance regularly Calculate and edit declaratively not by procedurally Keep security object oriented 12. What is the diff b/n Decision Table and decision tree? A) D Tree is used to check multiple properties D Table is used to check only one property. 13. What is Declare expression? A) It helps the automatic calculations of the property value based on the changes of the other property value. 14. How do u connect to the Web service? A) 15. What is xml file name created during connection of web-service? A) 16. Why are u relocating to bang? 17. What is order of execution in Decision Table and decision tree? A) D tree used the order of if-then-else logic. D table used to making decisions against same data element. 18. About the availability of rules? A) yes, no, withdrawn, final. 19. Rule resolution algorithm? A) It is a mechanism to decide which rule need to be executed. 20. Decision table and Decision Tree? A) D Tree is used to check multiple properties D Table is used to check only one property. 21. Explain about DCO? A) Direct Capture Object is an appl dev tools which includes, Application profiler wizard, Appl Accelerator, Appl Doc Wizard, Appl use cases, Appl requirements. 22. What are the issues faced in Upgrading from 5.3 to 5.5? A) 23. How do you remove the work objects?
Page 215
PEGA MATERIAL A) By using obj-delete method we can delete wo. 24. What is the role of the master agent? A) 25. Do you have any idea about the AES? A) Autonomic Event Services is a process commander application that monitors, retrieves and organize the alert data from one or more clustered process commander system throughout the enterprise. AES provides the charts, reports information about the events. 26. Suppose I need to access the Google service, how can I achieve in pega? A)
Page 216
PEGA MATERIAL 27. What are the rules which are not rule resolved?? A) withdrawn rule is not rule resolved. 28. What is the actual usage of the blocked, with drawn, NO. When you use it? A) NO: it indicates that rule is not available to rule resolution algorithm for all s. Ex: if we setting No for 01-01-03, it is not available to RRA, 01-01-01, 01-01-02, 01-01-04. Blocked: It effects all lower numbered versions of rule and it including this version not visible to rule resolution algorithm. Ex: if we setting as a blocked 01-01-03 of above all versions are available to RRA, but not 01-01-02,01-01-01. Withdrawn: this property that has available to pyRuleAvailable to set withdrawn. A withdrawn rule is never selected by the RRA. 29. What is the usage of Property-Alias rule? A) Create property alias rules to provide an alternative name, more meaningful to s who may be developing or updating function alias rules. 30. What are the various ways to restrict to edit the rules? A) 31. How do you display an image dynamically in alist view rules based different types of urgency? A) list view--> get these field--> pxUrgencyWorkSLA 32. Process cycle of IAC? A) Internet Application Composer enables you to embeded a process commander application gadget in the pages of a web appl located on ur intranet, internet and extranet site. this appl is called pega composite appl. 33. What is the major difference between the Cover and Folder A) Cover is a work object that are parent to one or more related work objects. Folder is concret class that is inherited from work-folder- class. Folder holds the collection of one or more other work objects. 34. How do you build a new Rule-Form? A) 35. What is DCO? In how many ways you can create a new PRPC application.? A) Direct Capture Object is an appl dev tools which includes, Application profiler wizard, Appl Accelerator, Appl Doc Wizard, Appl use cases, Appl requirements. 36. What is a screen-flow.Difference between screen flow and process flow? A) screen flow is for UI improvement..while process flow is for business logic exceution..so both have diff purpose. In screen flow we can't create a WO, in process flow we can create a WO. in Screen flow we have next, previous options are available in porcess flow not available. 37. How do you provide SLA for the work-object? A) within the assignment level we will provide the SLA. 38. In Connect Sql rule stored procedures are written in which tab? A) Within the open tab, we will write stored procedures. 39. Save,Browse,Delete etc tabs present in Sql rule.Which tab will be called when? A) Browse 40. What is the difference between work-object and work-type? A) 41. What is the difference between Decision tree and Decision Table? A) D Tree is used to check multiple properties D Table is used to check only one property. 42. If you have work experience on Soap Service.What are the rules required for Soap Service? A) Service Package, Service SOAP, Activity 43. In which tab WSDL file will be generated in the Service Package?
Page 217
PEGA MATERIAL A) 44. About the debugging tools like Clipboard,Tracer etc? A) Tracer: it is a tool that checks the individual requestors session, tracking the execution of rules.you can set the breakpoints to set the results of an action and review the property value. Clipboard: transferring the data between the application and database is clipboard.process commander keeps XML based structure called pages and page contains property value pairs. 45. About dynamic select? A) it is an optional feature you can add to work object forms and other html forms to speed inputs.
Page 218
PEGA MATERIAL 46. declarative rules like declare constraint,onchane,trigger etc. 47. How do you expose a property? A) within the property category there is a advanced tab. within that column inclusion is required. we can expose like this. 48. What is the need of exposing a property? A) need to add a property one of the column in DB. 49. what is DCO? A0 Direct Capture Object is an appl dev tools which includes, Application profiler wizard, Appl Accelerator, Appl Doc Wizard, Appl use cases, Appl requirements. 50. How to use existing css in PEGA? A) Interview: 1. Can u explain brief about ur project? A) 2. Draw the flow of your project? A) 3. What are the types of flows we have? A) Starter flow, Straight through process flow, sub flow and straight flow. 4. Difference between the process flow & screen Flow? A) PF: we can create a work object. while process flow is for business logic exceution. in PF next and previous buttons are not applicable. SF: we can use screen flow is for UI improvement. we can't create a work object. in SF next and previous options are applicable. 5. What is starter flow & straight through flow? A) Starter Flow: Starter Flow is instance of Rule-Obj-Flow class. it s to create a new work object. Straight through flow: Business process that can be usually performed automatically with no human intervention are said to be STP. 6. How can we create a workobject for the subflow? A) within the process tab create a work object check the check box. then it will create a wo. 7. What is the difference between harness & section? A) Harness: Use Harness rule to define appearence and processing of wok object forms used in ur appl to create WO and process Assignments. Harness defines the appearence, structure and behaviour of the forms used in ur appl to create and upadate the WO and Assignments. Harness: Harness rule define the complete forms that all interactions that create, update and resolve the WO. Section: A section rule defines the appearence and contents of the form. 8. What is SLA’s & what are the types of SLA’s. where we can put these? A) It is the instance of Rule-Obj-Service Level Rule type. It can be added to Assignment and work object. Service level contains 2 time intervals Goal and Deadline. it indicates the expected time for the assignment and time to resolve the WO. 9. What is the class structure? A) 10.Where will be created the page, if you not mention the page name & class name in the pages/classes tab? A) in activities we will create a page 11.How many way we can run a flow? A) Flow-New step method can be used to start new flow execution , referencing a flow rule 12.What are the types of validations? how can u identify the server side validation? A) Validations are 2 types. Client side and Server side Validations. 13.How to create a dropdown list box?
Page 219
PEGA MATERIAL A) Within the HTML property select the prompt select to create the drop down list. 14.Can u trace the error of a flow using the tracer? A) yes 15.What is sessions? 16.What is the attribute of work? 17.What is list view & summer view & some tabs difference in this?
Page 220
PEGA MATERIAL A) Both are used to display the data in the reporting purpose. List view is used to display the records in tabluar form. Summary view is used group by functions to display the records.it is also used to display the records in column, pie charts. 18.Where the work-object will be stored in the database(the table name)? A) pc_work 19.How to use a ticket shape? A) To mark the starting point of exception that happen any point in the flow. the activity executing a ticket using Obj-Set-Ticket. 20.What are the shapes in process flow? A) there are 19 shapes in process flow. 21.How to implement ticket shape? A) 22.Why we use model? A) by using model we can change the work object name. A model rule defines one or more initial properties and property values for instances of one class.A model can be applied to new empty page of that class to set many property values in one processing step. 1) how to do client side validation? A) we will do validations in so many ways, like within the property category there is a advanced tab. within the advanced tad. we will find the validation. or within the activity there is precondition is available. we wil the write the validations. 2) Generally work obj will be stored in pc_work table, instead that can I store in other table? A) yes, by default store work objects in pr_others table. in prpc s/w some pre-defined tables are available. open the application explorer category, click on system rule, within that we will find the DataBase table rule. click on that we will see many database tables. 3) which inheritance is mandatory? direct Or pattern? A) both are mandatory depends on requirement we will use both. we will give first preference to Directed.it should not be letf blank. 4) types of Rulesets? A) Standard. component, Shared, Override 5) how can i assign to four connectors in flow? what is livelihood? A) By using Flow Action we can assign connectors to flow. If we want to give four connectors to flow, go to Assignment properties we will find the local action rule. within that just give the connectors. Likelihood is a value between 1 to 100 and understand the specifications connected to flow action. 6) can i call section in other section those are not in same hirarichy? A) yes, it is possible to add section within a section it is possible to add HTML rule within HTML rule. it is not possible to add section within HTML rule. 7) can I use spilt for each sape for value list? A) No, we can use page list or page group as properties of split-for-each. 8) which pega frame you are using? A) i didn't use any frame works in pega. 9) how to use in reports tell me step by step ? A) It is used to merge data from multiple tables into a single table. $ Create a report definition rule. $ Declare Pages for the classes the report uses. $ Specify the s between the tables. $ Specify the data
Page 221
PEGA MATERIAL $ save and run the report. 10) customized code for color implementation? A) <% String str = tools.getActive().getStringValue(); if(str.length() > 14){ str = str.substring(0,14); str=str+"..."; }
Page 222
PEGA MATERIAL %>
<%=str%>
<%=str%>
<%=str%>
Page 223