Abstarct vs Concrete
A concrete class can have instances stored in the database.
In contrast, an abstract class cannot have any instances.
An abstract class can be a child — a subclass — of a higher
abstract class.
WORK GROUP
A workgroup is define as part of the the orgainzational
struture and is used when configuring a Workbasket.
CLASS GROUP
A class group is an instance of the Data-Admin-DB-ClassGroup
class.
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.
ACESS GROUP
An Access group is part of the PRPC security model. The
operator ID points to an access group which specifies the Application Rule
(which has the rulesets).
The access group also
defines the roles which controls the privileges that an operator may have.
A workparty can be used to specify who the email
correspondences/reports to and/or to route assignments.
A work pool, defined by a class group instance, causes all
work items for an application to be stored in a single shared database table.
This sharing is helpful in searching and reporting on work
items. With appropriate safeguards, this also allows a work item to be
reclassified from one work type to another (when both are in the
same work pool). Such reclassification can be a typical,
normal aspect of the application workflow, or can indicate that the work item
was initially created with the wrong work type.
In development systems (only), the system can automatically
create a database table (and associated Data-Admin-DB-Table data instance) each
time you create a work
pool, directly from the class form or indirectly through a
wizard or tool. The structure of the new table is similar to the initial
structure of the pc_work table
An access role is an instance of the Rule-Access-Role-Name
class.
Use an access role name to convey permissions (capabilities)
to a user or a group of users. Access roles can be referenced in requestor
instances, Operator ID instances, in
access group instances, in activities, and in queries. Standard access roles
(with names starting with PegaRULES:) define capabilities for:
Guests
Authenticated users
Work managers
Developers
Create or modify an Access of Role to Object rule for each
class on which you want to set new or additional access permissions based on
access role (Rule-Access-Role-
Name rule type).
To specify new or different access to a class than provided
by standard Access of Role to Object rules, create an access role
(Rule-Access-Role-Name rule type) and
then create an Access of Role to Object rule for the
appropriate classes.
Access of Role to
Object rules are not subject to rule resolution and affect all users on a
system.
As a best practice to avoid confusion and difficult-to-debug
security configurations, place each Access of Role to Object rule in the same
RuleSet as the RuleSet of
the Access Class — the second key part
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. A privilege name is the second key part of a privilege rule.
A privilege rule only names a privilege; it does not convey
the privilege to anyone.
To have access to a privilege, a requestor session must
"hold," in the access role list, at least one of the access roles
that grant access to the privilege.
The association between access roles and privileges is defined
by instances of the Rule-Access-Role-Obj rule type.
If you create the applications through Application Express
each work pool has a dedicated table named pc_ZZZZZ_Work, which initially is a
copy of the pc_work table, and the steps below are not necessary.
If your pc_work table contains work items from two or more
unrelated applications, use these steps to segregate work items into a
dedicated table:
1. Create a
new database table by copying the schema for the standard pc_work table. Be
certain to update the CONSTRAINT element in the new table to reference itself,
not the old pc_work table.
1. Why should we use blod .
Transcript
The full PRPC object image is stored in the database table
within the pzPVStream column, defined as a BLOB datatype. BLOBs are very
efficient and flexible mechanisms for object storage because…
They are compressed by PRPC for low storage overhead.
They can hold any amount of information since there are no
physical limit constraints, such as maximum column lengths or page sizes.
The object structure can be very complex, holding many
levels of nested structures and repeating groups of information.
The object structure can change from instance to instance
without the involvement of the DBA in making complex changes to the database schema.
The following is an example of what occurs when requesting
an object that requires reading the stream.
The DBMS executes a Select to retrieve the object; a typical
BLOB for a work object is 20,000 bytes or more in size.
During this operation, three extra I/O operations are
performed to read the pzPvStream, as this 20k of data is stored in 8k chunks on
their own data pages.
This 20k of data is transmitted as a "stream"
across the network.
The JVM allocates a large chunk of memory to receive this
data. The stream is uncompressed using CPU resources and requires even more
memory to hold the uncompressed
data. This stream is parsed to find the data for the two
referenced properties.
The two requested clipboard property instances are created,
consuming more CPU.
Finally, the temporary memory is discarded, and the JVM soon
invokes the garbage collector and takes more CPU to reclaim this 40k.
When reading just one instance of an object, such as when
opening a work object, this overhead is hardly noticed. When using a List View, this process happens
for each row in the list. The typical
cap on List View reports is 500 rows, which means it is easy to generate (500 x
40,000 or 20MB of garbage). Multiply
this by 100 users and 2 GB of garbage is generated!
This is one reason why memory allocation in production
systems becomes excessive and how "garbage collection" within the JVM
becomes strained. High CPU usage and
high network utilization also affect user response time. Fortunately, by exposing columns, this issue
can be easily remedied.
2. How agents run in multinode
For each Agents rule, the system creates Agent Schedules for
each node in a multi-node system. However, for some Legacy-mode agents,
contention can occur. As an
suppose you have a system with four nodes, and an agent has
ten tasks that are queued for processing.
The agent on Node A picks the first task from the queue, locks the
associated work object, and begins processing that task.
The agent on Node B goes to the queue and also picks the
first task (which is still there, as it hasn’t been completed). When it tries to get a lock on the work
object, it is blocked (since Node A has that lock); the agent on Node B then
either goes back to sleep, not having accomplished anything, or chooses the
next task in the queue and begins processing that.
Now Node C goes to the queue. It tries the first item, and finds that
locked, and then tries the second, and finds that locked. It finally picks up the third item (having
wasted system resources trying to process the first two tasks) and processes
that. And Node D has to go through the
first three tasks before getting to one that isn’t locked.
To prevent this contention, it is recommended that one node
be chosen to do the agent processing.
The agents on the other nodes should then be disabled, by opening the
Agent Schedule form for each node, and unchecking the Enabled box for each
agent.
Note that if additional servers are added into this system,
their agents must also be disabled, once the Agent Schedules are created for
that node by the system.
3. what happens if we check Obj-save write now option
PRPC's default behavior for performing Obj-Save is to
"defer" the actual UPDATE/INSERT SQL command until a Commit is
issued.
The benefits of this deferral are the ability to perform
multiple, back-to-back saves on the very same object instance and PRPC will
combine these updates into a
single cumulative update at the time of commit thus
decreasing the interval of time in which locks are held within the
database.
This maximizes concurrency within the application.
Specifying "WriteNow" defeats all the benefits of
the deferred save feature.
There are legitimate reasons to performing a WriteNow, such
as needing to immediately re-read this instance before issuing a commit. Use of this method can be
dangerous if proper locking and error checking is not
done. This is not common practice,
however, which is why these are called "Warnings" and not
"Errors."
4.What is skimming
Skimming is the act of taking the highest version of a rule
and saving it into a new, higher RuleSet Version. As a result, it applies
mainly to rule resolved rules,
and there are exceptions to what gets skimmed based on the
availability of the rule as well as the type of skim being performed.
Traditionally, there are two types of Skims, Major and
Minor. These reflect the tri-partite naming convention for RuleSet Versions,
Major-Minor-Patch. During a Minor
skim, rules are stored in a higher Minor version, and during
a Major skim, rules are stored in a higher Major version.
Examples
Major: Skimming rules in 06-05-01 through 06-09-25 into
07-01-01
Minor: Skimming rules in 06-05-01 through 06-09-25 into
06-10-01
Major Skim
During a major skim, rules with Availability of 'Yes', 'Blocked',
and 'Final' are carried forward. Rules with availability of 'No' (not
available) or 'Withdrawn' are
filtered out. Blocked rules are carried forward because a
Blocked rule can block rules in other RuleSets, and that relationship should be
maintained if it exists.
Minor Skim
During a minor skim, rules with Availability of 'Yes',
'Blocked', 'Withdrawn' and 'Final' are carried forward. Rules with availability
of 'No' (shown as 'Not
Available' in the table below) are filtered out.
5. Process of connect-soap
Use the Metadata and Connector Accelerator to generate Parse
XML and stream rules from the WSDL.
Open the connector rule, select the Advanced tab and ensure
that Axis2 is specified in the Axis Version field.
Still on the Advanced tab, delete the rows in the Schema
Definitions sections.
On the Request tab, change the data type of the parameters
being mapped from XML Page to XML Literal, change the Map From option from
Clipboard to XML Stream, and then
identify the stream name in the Map From Key field.
On the Response tab, change the data type of the parameters
being mapped from XML Page to XML Literal, change the Map To option from
Clipboard to XML Parse, and then
identify the stream name in the Map To Key field.
NoteYou can also map the values to and from single-value
clipboard properties and then call the parse or stream rule from the connector
activity.
7. Diff btwn work group and work basket
Each operator has a worklist which shows the list of
assignments availble for processing.
Generally, a department will setup a Workbasket for users to
pull assignments from.
A workgroup is define as part of the the orgainzational
struture and is used when configuring a Workbasket.
An Access group is part of the PRPC security model. The
operator ID points to an access group which specifies the Application Rule
(which has the rulesets). The access
group also defines the roles which controls the privileges
that an operator may have.
A workparty can be used to specify who the email
correspondences/reports to and/or to route assignments.
8. Commit
Use this method 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).
Basics
The Commit method operates on Thread pages that can operate
across multiple instances. After an object instance is saved into the database,
it is persistent.
Note : Use the Rollback method or the Obj-Save-Cancel method
to cancel a previous Obj-Save before commit.
Note : Don't use the Commit method in an activity that has
an Activity Type of Utility, Route, Assign, Notify, or Integrator.
Flow processing
performs commits
automatically when the flow ends and when an assignment is
created or completed. To avoid interference with this approach, do not use
Commit in the flow-related activities in your application. (When you save an
activity that uses Commit, if the Applies To key part of the activity is derived
from the Work- base class, a warning message appears).
Note: Most database updates require that the requestor hold
a lock on the object. Typically a requestor acquires this lock when the
requestor first opens the object with
the Obj-Open, Obj-Open-By-Handle, or Obj-Refresh-and-Lock method. Note these
two exceptions:
A lock is not required for the first-ever commit operation
of a newly created object.
A lock is not required for objects of classes that don't
support locking.
The Commit method has no parameters.
The system commits all deferred write operations (including
deletes) for this requestor in the queue to the database.
If any of the writes
fail, they all fail.
Commit operations can trigger the execution of Declare
Trigger rules.
The system updates indexes as required by executing Declare
Index rules.
All locks held by the requestor Thread (except those that
were acquired with the ReleaseOnCommit box not selected in the Obj-Open method)
are released.
When a deferred — that is, non-immediate — Obj-Save or
Obj-Delete method fails, the next Commit method will also fail unless one of
the following is performed
successfully before the Commit method is attempted again:
Another deferred Obj-Delete (or Obj-Save) method is
performed on the instance
An Obj-Save-Cancel is performed
A Rollback method is performed
CautionIf during the database save, any of the four
properties listed below contain a value that is wider than the corresponding
database column, the Commit method
fails. The system associates the message
Database-ColumnTruncated with the property in error. (This message begins
"Property Zzzzz has been truncated...")
pxObjClass
pxInsName
pzInsKey
pyClassName
If any property other than these four properties contains a
value that is longer than the width of the database column, the system
associates a warning message
Database-BadTableMapping-KeyPropertyTooBig with the property
and returns a warning status. The database is updated and data for the column
is truncated to fit. The
system changes the last character of the truncated value to
a plus sign (+) character, as a more enduring indication of this problem in
case the warning message is
missed or ignored.
11. In production environment how to modify the agent if it
is running every weekly need to modify to daily baiss.
Select an existing agent, or create a new one by selecting
Application > New > Rule > SysAdmin > Agents. Each RuleSet has no
more than one Agents rule, which can manage multiple agents.
Select Recurring for the Pattern and click the Advanced
Interval(sec) button. The Recurrence dialog appears. Depending on which Pattern
radio button you select, you See options relevant to your selection.
Daily:
Two main classes that hold information about agents:
Agents rules (instances of Rule-Agent-Queue)
Agent Schedules (instances of Data-Agent-Queue)
Suggested Approach
Agents rules define the background processing that is to be
accomplished by agents in the system, including the activity that each agent
should execute for the
processing, its wake-up schedule, and its agent queue
settings. Each agent that is listed in
the Agents rule has one task it accomplishes (checking incoming email,
updating status of work objects, etc.). The Agents rules apply to the entire system,
no matter how many nodes the system has.
There are a number of Agents rules that are shipped with the
system; as with all shipped rules, these are in locked RuleSets and cannot be
changed. In order to allow
customers to change scheduling intervals, or enable or
disable the agents, the Agent Schedule instances are provided.
Agent Schedule data instances determine whether an agent is
enabled, and (on a multi-node system) on which server node that agent will
run. It is also possible to
change the agent wake-up interval in Agent Schedules.
When Process Commander starts, the system looks for all the
Agents rules. For each of these rules,
the system looks for one Agent Schedule instance for each node.
If there is not an Agent Schedule instance present for a
node, the system creates one by copying information from the associated Agents
rule. Thus, if a system has five nodes,
then for the Pega-RULES Agents rule, there will be five Pega-RULES Agent
Schedule data instances.
After the Agent Schedules have been created, they provide
agent information to the system. The
system uses the Agents rules to define the Schedule instances. After the Schedules are present, the original
values entered in the Agents rule for schedule intervals or enabling agents are
not used; the system uses the information in the Agent Schedules only.
How to expose an embedded property
To create indexes for
an embedded property in a Page List, Page Group, or Page property, you can use
the Declarative Index wizard.Working together, Process Commander developers and
a database administrator (DBA) can define an Index- class and a Declare Index
rule to improve access to data not in an exposed column of a database
table.Identify the property or properties on the source object that are to make
up the index instance.
Create a concrete class derived from the Index- base class
that will contain the new index instances. For concrete classes derived from
the Index- base class, the key consists of three properties pxInsIndexedKey,
pxIndexCount, and pxIndexPurpose, in that order.
Determine which database table will hold the new indexes.
Create the database table if necessary and associate the table with the class
through a Database Table instance. The three key properties must be exposed
columns in the table.
Define Single Value properties in the new index class to
hold the values of the source instance properties. Confirm with your database
administrator that all these properties are exposed columns in the database, or
modify the database schema as necessary.
Choose a purpose name for the Declare Index rule.
Create a Declare Index rule, recording the source of each
property value and its corresponding index property name.
Index processing starts as soon as you save the Declare
Index rule.
How to remove duplicates from embeded page
@removeDuplicatesFromList(ResultsPage,"pyUserIdentifier",
"Data-Admin-Operator-ID")
or use
For each embedded page, copy from the pagelist containing
duplicates into another pagelist with pre condition using the function
IsInPagelist() if true exit iteration else continue
WorkBasket Access
Hi , I have One Workbasket(will have 'x' WorkOjects and 'Y'
WO) and can be accessed by 2 users(userX and userY).I need an access control
that userX can access only 'X'
WO and userY can access 'Y' WO from the Work Basket. Can
some pls let me know how to do that for the security.
1.if there are two type of assignmnts,then add two different
priviliges to the corresponding two Flowactions(FA).
2.then create two roles for correspondng two privilges(these
roles we need to tag to the user.)
3.If the two users belong to different access groups,then
add the two roles to their respective access groups.
4.if the two users belong to same access group i.e based on
the operator Skills we need to differentiate their capabilities then,at login
time add the above roles
dynamically based on the skills in the operator page.
Diff between Workbaskets/workgroups
Workbasket can be specified in workgroup and work group can
be specified in work basket, so whats the exact relation between work group and
work basket. And work groups can also be specified in the oprator id form, so
here are we bypassing the work group.
Hi,While we define an operator, if the work group is left
empty, that operator can enter work objects but cannot access a worklist or
workbaskets.
Diff between screenfows Vs flows
To make a screen flow, create a new flow rule and select
ScreenFlow in the Template field.
Note : A screen flow rule cannot be a starter flow rule. Use
a regular flow to create the work object. Then call the screen flow as a
subflow.
Note : The standard harness rule Work-.PerformScreenFlow is
by default used to present the assignments in a screen flow rule. You can
override this rule; the standard harness rules Work-.TabbedScreenFlow and
Work-.TreeNavigation provide alternative presentations.
Note : A screen flow rule must have at least one task marked
as entry point. Typically, screen flow rules have multiple tasks marked as
entry points; these are places in the flow that a user can return to using
the Back button.
Note : A screen flow can operate on a temporary work object,
one that is never saved to the database.
Screen flows are used to handle data entry processing and
differ from regular flows. To create a screen flow, select Screen Flow as the
template when creating a new flow rule. The main differences between screen
flows and regular flows are that screen flows:
Screenflows:
1. Offer
only a limited set of flow shapes
2. Let you
only define a single harness for the entire screen flow
3. Need to
be routed to a user (not a workbasket) and should remain assigned to that user
for the duration of the flow (the router shape is not available in a screen
flow)
4. Cannot be
starter flows but can only be sub-flows
5. Allow you
to jump forward and backwards and this is controlled by the entry point
checkbox on each assignment in a screen flow
Screen flows offer three out of the box run time
presentation formats. The first is the PerformScreenFlow which uses the bread
crumb trail to keep track of the steps.
The second is the TabbedScreenFlow which uses tabs to
display the steps in the process. The last is the TreeNavigation which uses a
tree to display tasks.
6. No Router Shape in screenflow.
7. Screen flow cannot create a Wo it shd use a existing WO
created by a Flow
What is the main control for composite portal
WorkArea where we can add harness sections etc.
How to call 6 webservices on six tabs at a time considering
performance
Option 1 : Call each service only when clickinh on each tab bot every one at a time
Option 2 : In activity call run in parrlel and Connect wait
untill the first service complete than Page-Merge-Into them.
DCO :
Build new applications in minutes with Application Express.
In Designer Studio and Case Designer you can create, reuse, specialize,
document, or extend Direct Capture
of Objectives (DCO) assets like processes, business
objectives, specifications, requirements when and where they are needed.
Application Accelerator — The Application Accelerator is
enhanced to build initial framework layers, to build another framework and
implementation on top of an
existing framework, and to guide the design of application
class structures. See DCO 6.1 -- Using the Application Accelerator
Application Profiler — The Application Profiler can accept
and merge inputs from multiple developers into a consolidated document. See DCO
6.1 -- Creating an
Application Profile
DCO Application Enablement Wizard — A new wizard enables
existing applications that were not originally created with DCO facilities to
take advantage of many DCO
capabilities. See DCO 6.1 -- Using the Application
Enablement wizard
Soap Vs Http
The advantage with SOAP is the description of the services
captured in WSDL docuements.
WSDL can be consumed by Pega to build out the connectors in
the case of a connect.
In the case of a
Service, Pega can produce the WSDL to give to third party clients who
presumably can consume and build out a client to talk with Pega.
In other words, HTTP provides a more free form way to
exchange information. SOAP provides a more structured way to exchange
inforamtion.
HTTP may be quicker to get up and running (again assuming
you have control of both sides of the conversation), but will be more difficult
for an arbitrary client to
start using.
Performance :
System performance has a direct impact on user productivity
and business value.
Diff b/w Blocked and Withdrawn Rules
A blocked rule and a withdrawn rule are both invisible to
rule resolution. Similarly, both blocked rules and withdrawn rules prevent
lower-version rules with the same
RuleSet and visible key from being selected by rule
resolution. However, a blocked rule may block other rules in any RuleSet, and a
blocked rule stops rule resolution
from finding rules in higher Applies To classes. A withdrawn
rule affects other rules only in one RuleSet and one Applies To class.
When you skim a RuleSet version that contains a blocked
rule, the resulting RuleSet version does not contain the blocked rule or any
rules that the blocked rule
blocks. When you skim a RuleSet version that contains a
withdrawn rule, the resulting RuleSet version contains the withdrawn rule.
PAGEGROUP
From PRPC 5.2 you can now include PageGroups in repeating
lists without needing to use custom HTML or JSP code.
Since PageGroups require a subscript, PRPC prompts the user
for the subscript. If you need to control the list of possible subscripts, you
can do so by copying the
pyLabel property to your data class and filling in the table
edit fields, hence controlling the list of valid values.
Note: You can further control the look and feel of the
subscript prompt by overriding the SubScriptPromptForInfo section. You can only
include one property on this
form.
Decision Tree Vs Decion Table :
Purpose
Use a decision tree to record if .. then logic that
calculates a value from a set of test conditions organized as a tree structure
on the Decision tab, with the 'base' of the tree at the left.
Where referenced
Rules of four other types can reference decision trees:
In a flow rule,
you can reference a decision tree in a decision shape, identified by the
Decision shape (Decision shape in Process Modeler or Decision shape in
Visio).
In an activity,
you can evaluate a decision tree using the Property-Map-DecisionTree method.
A Declare
Expression rule can call a decision tree.
A collection rule
can call a decision table.
Access
Use the Application Explorer to access decision trees that
apply to work types in your current work pool. Use the Rules Explorer to list
all decision trees available
to you.
Development
The Decision tab offers various formats and choices,
depending on settings on the Results tab:
For an advanced
decision tree, complete the Input tab before the Decision tab.
For a basic
decision tree, complete the Results tab first. To restrict the results to one
of a few constant values, complete the Results tab before the Decision
tab.
Delegation
After you complete initial development and testing, you can
delegate selected decision trees to line business managers. The Decision tab of
the Decision Tree form
provides managers access to the fields most often updated,
subject to any restrictions entered on the Results tab.
Decision Table
Purpose
Use a decision table to derive a value that has one of a few
possible outcomes, where each outcome can be detected by a test condition. A
decision table lists two or
more rows, each containing test conditions, optional
actions, and a result.
At runtime, the system evaluates the rows starting at the
topmost row:
If any of the
conditions in a row evaluate to false, processing continues with the next row.
The Actions columns and Return column for that row are ignored.
If all the
conditions in a row evaluate to true, then the Actions and Return columns of
that row are processed. What happens next depends on the Evaluate All Rows
checkbox (on the Results tab).
If the Evaluate
All Rows checkbox is not selected, processing ends and the system returns the
value in the Return column as the value of the entire rule. If
Evaluate All Rows box is selected, processing continues
through all remaining rows, performing the Actions and Return calculations for
any rows for which the
conditions are all true.
If for no rows in
the table do all conditions evaluate to true, the system returns a default
result.
Where referenced
Rules of four other types can reference decision tables:
In a flow rule,
you can reference a decision table in a decision shape, identified by the
Decision shape (Decision shape in Process Modeler or Decision shape in
Visio) .
In an activity,
you can evaluate a decision tree using the Property-Map-DecisionTable method.
A Declare
Expression rule can call a decision table.
A collection rule
can call a decision table.
declare pages
Node — Any
requestor executing on the current node can access the pages.
Thread — The page
is created in a single requestor Thread, and can be accessed as often as needed
by processing in that Thread. Later accesses on another
threadcause the data page to load a distinct page which may
have different contents, even if it is by the same requestor.
Requestor — The
requestor can access the page(s) loaded across all threads. Accesses by
separate requestors create distinct pages which may have different
security model.-> also says the authentication mechanisam
also authorization mechanisam
data source -> system of requests if there a integarted
component how do u mange -> service consistancy...
database design architecture : what is the size of databse ,
case design major:
data properties : abstract / concentrate
integartion factors -> use simulations and start working
based on asesing the request and reposne by keeping dummy properties
data layer : shd be in frame work layer or implementation
layer it shd be feasible enough to adaptable for all lines of business.
Foundation is the base -> construction phase
predefined
recycle manage by LSA.
Version 7 Questions..
How to get Keyboard Shorcuts in Pega7
select Preferences from the Operator menu, which is your own
full name displayed in the Designer Studio header.
Q) How to purge and
archive data work objects?
I am planning to use the archiving wizard for my project but
i am kind of new to it as i have not used it before. I understand that one can
set up a archiving+Purging
or only purging routine by selecting the workpool and
defining the criteria to purge the old cases. But still have doubt in the
following areas.
1. Does the agent purge/archive history table entries as
well, this is the main driving factor for us to go for archiving
2. We have a few decalre indexes mapped with index tables.
Will they be archived as well?
3. Does it purge other data and link entries like work party
and attachments?
)How to start a flow from a click of a button/link
Two Options for you;
1] If you want to create a new workobject on click of a
button then Create your own activity say TestActivity for that button and call
CreateWorkProcess Activity from
TestActivity. This activity requires Organization name and
Flow Name as parameters
2] If you want to run a flow (without creating workobject)
then from the TestActivity give call to StartFlow Activity,where you need to
pass Flow Name as parameter
Routing a screenflow
Recently I came across this question... How do we route a
screensflow?
Screenflow is design to work with single user, you shouldn't
route the work.
But what would we do if we want to route the entire
screenflow to some user..
In the start shape of screenflow you will have the option to
route it to any user
At the Start Shape there is an option Router , By that we
can Transfer the assignment .
You can Call ReassignToWorkBasket OOTB activity and then
call BranchHarness to the confirmation screen.
Q) split for each
senarios
can any body say some senarios where exactly the split for
each shape is applicable. plz dont give the example of workparties already
mentioned in pdn. Reply ASP
Online Examination can be taken as a example. I have a set
of objective questions in a page list and i will iterate the questions on a
flow. Showing the same screen, for different questions.
Q) Moving assignments from Work basket to work basket
Need re assign assignments from one work basket to another
work basket using on click on button by activity. Pls let me know.
Did you try pxTransferAssignment activitiy ?
Q) Update the newAssignPage
How should i update the newAssignPage of the current work
object? Is there a need to explicitly acquire the lock of the work object (as
the lock will always be held by
the current requestor). A simple Property-Set & Obj-Save
combination on the newAssignPage is not working here
We have an SLA on an assignment . The escalation activity
updates the work object status and we want to keep the pyStatusWork and the
assignment status in sync here.
We are not creating a new assignment at this point , hope
you get my point.
That sounds reasonable. The property-set (on newAssignPage)
followed by Obj-Save should work, unless you've checked "immediate"
in the Obj-Save which you shouldn't do.
Q) Text area Box not
validating client side
Ans)
Q) Check and Uncheck a checkbox based on a property
Can we check and uncheck a checkbox based a property's value
.
Yes we can check and uncheck a checkbox based on a
property's value by writing your own html code in pxcheckbox rule or you can
write html code in a when rule.
For example,
let us take a section in that drag checkbox option in a box
and assign a property to it in cell properties and now open the pxcheckbox
control and do saveas.
Later click on html tab in that uncheck the Autogenerated
html checkbox and write your own html code and use it.
===============
Customizing Report Definition Title
How can I customize the Title for a Report Definition? I
want to add current date along with the Report Name in the Title of the Report.
If you want to edit/change/customize the title for Report
Definition, just go to Pega-Reporting-Access-Report Browser.
When you open report browser you can see all the reports.
Select the category in which your report is present and right click on the
title of your report, you will get
an option to edit, by clicking on edit another window will
open there at the Report Title Field enter the title as you wish and then click
ok.
======================
) How to disable a rule instead of delete the rule
If you want to disable a rule upto a point of time, then you can use circumstance
rule or select date range,this options will be available when you do saveas a
rule,
but it is not available for all rules, like it works for
activity,
You can change the rule availability and disable the rule,
without deleting it.
Q) How to insert the data into two different data base
tables through an activity
I have a section
which has the data to insert into two different tables. I have written three
activities. One is for the first table and another one is for second table. I
am calling these two activities in the first activity. But it is giving an
error message saying that
) How to fetch only
next 6 months records and populate in a Repeating Grid
I have a Pagelist which has values , both past and future
records fetched from a service.
Now I have to filter these records to give only next 6
months Date records from Current date.
I tried using Obj-Filter and used a When rule to filter the records.
In the When rule, used @DateTimeDifference
function(@CurrentDateTime, .datepropname,M) >0
AND
@DateTimeDifference function(@CurrentDateTime, .datepropname,M) <6 p="">
Q) How to populate
only first 10 records in a sorted Pagelist in a Repeating Grid
I have a Repeating Grid, which must display 5 rows on page
load.
And max. 10 records using a scrollbar.
I have used Progressive option in Repeating Grid properties
panel to display 5 rows on page load.
If the Sorted Pagelist has more than 10 records , how to
display only upto 10 rows in the Repeating Grid.
How to migrate work
objects from production to dev
I have a requirement to duplicate the work objects from
production to dev enviroment. The work object in both the environments reside
in an external table. Did any one
implement a solution for the same.
Hi , Try using the
Work package wizard at Systems -->
Tools -> PackageWork. It should allow you to package work as long as you
have the needed access.
Q) How to send the
correspondence through assignment.
In the Assignment Notify tab I am using the Notify
assignment activity. And directly I hard coded the Email value :
"SomeoneExample@gmail.com"
Send Email with Attachments
I n
Use reports scheduling., you could schedule the reports and
send it to an email as an attachment.
Pega-->Reporting-->components--->Schedule tasks.
By scheduling you can do all the things which you have
asked.
Go to pega-Reporting-Access-ReportBrowser.
In the report browser right click on any of the shortcuts of
the reports under the title column, a pop will appear in which you have a
schedule option, by clicking on
it a window will pop up. In that you have an option to
schedule it and send an email to others with an attachment.
How to create footer
for PDF
using the HTMLToPDF activity and generating the required PDF
, i am successful in generation.
How to enable Agents on multiple nodes without contention
We have a design having same Agent running in multiple node
processing 500 records each time, there are about 5 nodes planned to have in
production, but we have a data
contention issue while we start processing the records, how
can we avoid using out of the box functionality??
You will need to create a temporary table, populate it using
the script. It will need few coulmns like number,pyid, enddate, requestorID and
error message (optional).
as soon as your agent starts use RDB-Save and for first
50/500 based on your requirement records put requestor ID of current agent.
make sure to use where caluse
having requestor ID is null.
UPDATE {tabel name}
SET
REQ_ID = {pxRequestor.pzRequestorId},
PROCESS_STATUS = 'IN PROGRESS'
WHERE
ROWNUM <= 500
AND
REQ_ID is NULL
Once we have locked records use RDB-List to get all records
use requestor ID in where caluse and process. As each agent have unique
requestor ID conflict will not
happen.
We have been using to process huge no of records and running
20 instance of same agent and never faced issue.
) Not able to move
Data instances from one Env to another
We are running on PRPC 6.2 SP2. We are not able to move Data
instances from one Env to Another. We are seeing the following exceptions while
importing RAP
The bundle requires changes to the database schema. You do
not have permissions to perform schema migration. Please download the SQL DDL,
execute it and continue the
wizard.
Is this a known issue in 6.2? Do we need to create the data
instance manually again?
1.Open the Jar file ( using the winzip)
2. you will see file
A) Application.xml' B) ABC_schema.jar C) other jar file
3. 1Edit the Application.xml and remove tag completely
3.2 Change the order on the remaining tags to start from 1
4. Save zip file
And deploye. This would remove the Schema jar file 's SQL
execution by PEga
You can disable the features that make changes to the
database schema at the system level by setting the Data-Admin-System setting
AutoDBSchemaChanges to false. This
makes all these features unavailable for all the roles and
users in the system.
When AutoDBSchemaChanges to true, you can control access to
individual features by removing the associated privileges from the SysAdm4
role. The table below summarizes
the privileges associated with each feature.
how to create dynamic
where class in connect sql
Sample is shown below,
Select * from tablename where colname
={pagename.propertyname};
Is pega having any OOTB feature to create a system generated
password?
Pega have OOTB function to encrypt and decrypt the password,
check it my help you
@encryptPW()
@decryptPW()
Q) How to call a flow which is belongs to different
application in an activity
You have to add the class name of the required flow in
pages&classes tab of the activity.
Once you added you can access that flow in your current
application.
6>