Upload
nagendra-venkat
View
215
Download
0
Embed Size (px)
Citation preview
8/13/2019 44882046-BPM-BRE
1/25
BPM and BRE
A coveris a work object that is also a parent to one or more related work objects. Typically one work party such as the customer
party is present in the cover work object and also present in all of the coveredwork objects associated with the cover. The
covered work objects are the children in a parent-child relationship.
By default, the system prevents the resolution of a cover work object unless all of its "member" covered work objects are resolved.
! Buildin# construction $%over& -' a& (ood work $()& b& *lumbin# $()& c& *aintin# $()&. +f all works done $esolved& then
we can say Buildin# $%over& is ready to join.
%over is a work object that is an instance of a concrete class derived from the (ork-%over- abstract class. Your system
includes harness rules, flow action rules, and activities that support working with covers. The covered work
objects can be of differing work types. However, the work type of the cover and the work type of the covered
objects must all belong to the same work pool.
The covered work objects can be of differing work types. However, the work type of the cover and the work
type of the covered objects must all belong to the same work pool.
By default, locking a covered work object also locks the cover work object. This is desirable because the cover workobject may contain totals, balances, counts, or other derived values that require single-threaded access.
The standard ticket rule Work-Cover-.llCovered!esolved alerts a cover flow that all the member work objects are
resolved. "f your a##lication is to incor#orate this constraint, include this ticket in the flow rule or rules for the cover
work object.
The standard list view rule Work-.Work"nCover.$$dis#lays the urgency %#y&rgencyWork#ro#erty', work object "(
%#y"(', subject %#y$abel', and status %#y)tatusWork' fields as columns, without sorting.
The standard local flow actions Work-.ddToCover, Work-.ddCovered, and Work-.!emove*romCoverallow user
management of cover contents.
The Work-.+ewCoveredharness rule su##orts entry of a new cover and cover members.
ctivities Work-.ddCoveredWork, Work-.ddCovered, and others su##ort o#erations with covers.
One cover work object may cover multiple other work objects. When any one of the covered work objects is
opened, rocess !ommander by default uses a conservative approach and ac"uires locks on the covered work
object and the covering work object. This ensures that data can be updated in both objects with transaction
integrity.
!ustomi#e the activity (etermine$ock)tring #ro#erty-set and u#date it with no locking
A flow rule an instance of the ule-)bj-lowrule type is a network of shapes representin# tasks and connectors $directedarrows&, each with associated parameters and values. lows #overn /ow work objectsare created ,/ow they pro#ress throu#h one
or more flow e!ecutions ,/ow they become resolved $completed&
$lows are the fundamental rule instances that represent business processes, identifying who works on a work
object in what se"uence, what decisions and processing occur automatically, and many other aspects of the
business process.
nday, &ugust '(, ')(( (
8/13/2019 44882046-BPM-BRE
2/25
BPM and BRE
%ome applications don*t re"uire users to interact with work object forms. $lows that implement straight+
through+processing operate without user input. -ternal portals and systems can e-ecute flows through
&ctive %erver ages, ava%erver ages, %ervice ortlet or %ervice %/01 rules, or other means. 2nformally,
these are known as 3headless3 45 applications. & collection of standard activities known as the Process
Engine APIsimplifies building such applications.
Application developers use 0icrosoft 1isio to create, edit, and evolve a flow. *rocess %ommander uploads the resultin# VSDfile,
includin# the 2hape *arameters details from the workstation. Both the dia#ram ima#e $a 3*4 file& and the rule details are saved with
the flow rule.
5ou can6t test a flow rule that has Availability set to 7o89raft. 5ou can test the flow rule if the Availability is set to Yes, even if the
1isio 9AT mode $ & is in force, indicatin# that not all the activities, properties, or other rules are yet defined.
At runtime, a user can start the e!ecution of a flow by enterin# a new work object. The system e!amines the property pylow7ame,
in the model instance for the class, to determine which flow to start.
(e can think of the flow operatin# on the data $properties& in the work object until the flow finishes or the work object becomesresolved
The system #enerates a uni:ue work object +9for a new work object. $This occurs for starter flows, those for which the %reates a
new work object;bo! on the low form is selected.&
low creates assi#nments for human users reflectin# the need for more facts, jud#ments, and places the assi#nment into an
appropriate user worklist or workbasket. After a user $or in some cases an a#ent or e!ternal participant& perform an assi#nment, the
work object pro#resses farther throu#h the flow.
The *rocess !plorer tool presents for the currently selected application starter flow rules and the subflows they call in a
#raphical form.
A flow rule that contains no assi#nments, and so can e!ecute from start to end without human input, is known as a strai#ht-throu#h
process.
A flow rule that consists only of assi#nments or decisions and meets other criteria is known as a screen flow.
A flow that creates a new work object is called a starter flow.
*rocessin# of a subflow is synchronous, meanin# that the callin# flow e!ecution pauses for the duration of the subflow. (hen the
subflow e!ecution reaches a low nd shape, the callin# flow can continue.
The 2plit83oin facility $ & supports such asynchronous operation, by allowin# processin# of two or more subflows to proceed in
parallel. or e!
8/13/2019 44882046-BPM-BRE
3/25
BPM and BRE
& %pin+Off task 7 8 starts asynchronous e-ecution of a different flow, on the same work object or a
different work object. rocessing of the current flow does not pause or wait for results from the other flow.
?se the low shape rather than a 2pin-off shape to start a synchronous flow e!ecution, in which the current flow e!ecution pauses
while the subflow e!ecutes.
+dentify the objects the flow rule is to update. 2elect
1) On Current Work Itemto continue processin# on the current $unresolved& work object in the ne!t flow.
2) On Another Work Itemto start processin# on a different work object.
3) On m!e""e" Pageto apply this flow to an embedded pa#e.
?sers can select the standard flow action (ork-.Addlow, (ork-.Add%overed, or (ork-.Addto%overto start a new flow e!ecution.
The inte#er property @baseclass.p!low%ountindicates how many flow e!ecutions are in process for the work object.
The Page Groupproperty @baseclass.p!lowcontains a pa#e of facts about each e!ecution
(8 pylowType 2econd key part of the flow rule
'8 p!Assi#nmentey ey of the current assi#nment instance for this flow e!ecution. typically an instances of the Assi#n-(orkbasket
or Assi#n-(orklist class.
98 py> or 1isio > $also
called 1isio C*&.
low rules containin# too many shapes can introduce comple!, difficult-to-debu# processin# into
your application. As a best practice, 2martBuild #uardrails recommend limitin# a flow rule to
contain =D or fewer shapes, not countin# 7otify and outer shapes. +f your flow #rows to contain
more than =D shapes, revise the flow to call or branch to subflows to handle continuations, special
cases, or non-mainstream processin#.
5ou can save and run a flow rule in draft mode in systems where the production level is set to a value less than D.
After savin# a flow rule, review carefully any shapes that turn #ray. 5ou can save and e!ecute a
flow rule that contains unreachable shapes, but the tasks correspondin# to the unreachable shapes
will never be performed. As a best practice, delete the #ray shapes or add a comment as to why
they are present.
+nclude tickets and utility tasks to accommodate cancellations, rollbacks $sometimes called compensatin# transactions&, errors, and
similar e!ceptions.
nday, &ugust '(, ')(( 9
8/13/2019 44882046-BPM-BRE
4/25
BPM and BRE
!hoose likelihood values that are initial guesses. &fter the flow is in use, click the $low &nalysis button on the
Designtab to obtain statistics for comparison.
&ctivity rules provide you with one way to automate the processing of work using a procedural, program+like
approach, without re"uiring ava skills or manually entering ava code. &n activity is presented as a series of
steps, with some of the same features as an object+oriented programming language;such as iterations or
conditions.
Accordin#ly, use activities only when there are no other, more appropriate rule types. or e!ample, instead of usin# a series of
activity steps, use a 9eclare !pression rule to calculate declaratively, rather than procedurally. 2imilarly, use a when rule, decision
table, map value rule, decision tree rule, or parse rule whenever these rule types capture the business re:uirements well.
:.1 and earlier releases, iteration within an activity is limited to a single step. 2f your processing need
re"uires two or more steps, you must make a separate activity and include the !all statement in the original
activity.
uthenticate Select this check box for all but those specific activities that guests
need to run. "n most cases, clear this check bo if the activity is for an agent. gentsare not true authenticated users and by default cannot run activities that are restricted
to authenticated users. owever, this check bo is ignored by agents for which the
By#ass activity authenticationcheck bo %on the Securitytab is checked/ they can run activities
regardless of the uthenticatevalue.
nday, &ugust '(, ')(( 1
8/13/2019 44882046-BPM-BRE
5/25
BPM and BRE
ap
e
Description
Assignment %reates an assi#nment at runtime associated with work object in a workbasket or worklist. 2eeAssi#nment tasks.
After you enter an assi#nment task, you can create an associated outer task.
)ptionally, after the assi#nment task is defined, you can associate a service level rule with it. A clock appears on the dia#ram, as
shown here. 2eeAssociatin# a 2ervice
8/13/2019 44882046-BPM-BRE
6/25
BPM and BRE
)tiit* 2pecifies an activity to run at that point in the flow to perform automated processin# without any user assi#nment. 2ee?tility
tasks.
low processin# of a work object normally pauses when it reaches an assi#nment shape until a user completes the assi#nments.
&dd an assignment task for each place in the business process that re"uires human judgment and input.
$or every assignment, add at least one flow action. The assignment normally appears on the worklist of the
user who e-ecutes the flow.
(ork-.(ork
8/13/2019 44882046-BPM-BRE
7/25
BPM and BRE
The standard flow rule Work+.!onnectionroblemprovides a default approach to e-ception handling.&
problem flow execution7or problem flow for short8 is a list report of a paused flow rule e-ecution for a
work object. & problem flow can be caused by many different conditions, relating to the flow rule, the
properties in the work object, capabilities of users, and other data.
By default, privile#e econcile*roblem(orkis listed in the Access of ole to )bject rule for the role
Pega$%LS&S'sA"m(*!ase#+ass, which enables these operators to view reports that contain all flow and assi#nment errors.
These list view reports include *roblemAssi#nments, *roblemlows, *roblemAsssi#nmentsor%urrent )r#aniEation,
*roblemlowsor%urrent)r#aniEation,and so on.
(hen it detects a problem flow, *rocess %ommander by default starts the standard flow (ork-.low*roblems$usin# the same work
object +9&.
(e can override the standard routin# activity (ork-.to*roblemlow)peratorin each application to send these to a different worklist
or to a workbasket.
The conditions cause a problem flow e!ecution to start
The flow rule references a r'e that does not e+ist, or a rule that a user $or a#ent& e!ecutin# the flow lacks ule2ets, versions,access roles, privile#es, or other prere:uisites to e!ecute. !amples an activity, service level, decision tree, harness, map value, orsubflows.
The flow rule references a data instance that does not e+ist. !amples workbasket, operator, or#aniEation, work #roup, access#roup.
(he fo! e+ec'tion is st'c$, in that followin# a decision shape, none of the out#oin# connectors evaluate to true.
An activit* has faied, or a connector rule has failed or timed out.
The work object contains invaid datathat causes one of the above conditions.
The database, hardware, network, or system software has failed.
or flows created or edited with 1D.D or later,the Ro'ter shape is optiona. +f you prefer, you can
record the outer activity directly in the Assi#nment shape or outer *ool shape $ & propertiespanels.
ese activities apply to the (ork- class but are not part of the *rocess n#ine A*+.
ll Name Purposerk-.ActionfyFuick
%reates simple correspondence.
rk-.Add%overed %reates a new cover work object and performs a %ommit method, which saves the work object and releases all locks.?se (ork-.Add%overed(orkrather than (ork-.Add%overedin situations where the %ommit method is not wanteduntil later.
rk-.%lose(ork+tem %loses the work object, releases the lock and sends back /T0< code that closes the work +A0.
rk-.%opyAttachment
w%ate#ory
0akes a copy of $the most recent edition of& an e!istin# attachment, in a different attachment cate#ory.
rk-.%orr?pdate ?pdates correspondence.
rk-.9o%lose !ecuted when the operator clicks the close button on a work object form. %alls (ork-.%lose(ork+tem.
nday, &ugust '(, ')(( @
8/13/2019 44882046-BPM-BRE
8/25
BPM and BRE
rk-.#etlowblem)perator
+dentifies the operator $by default [email protected]& who receives assi#nments for flow problems. 2eeflowproblems.
rk-.4et7e!t(ork 2upports the 4et 7e!t (ork button on the %onfirmation harness form. etrieves an assi#nment from a user6s worklisor from a workbasket. %an be called by an a#ent. 2ee*ortal basics ?sin# the *rocess (ork workspaceforadvanced notes on this activity.
rk-.andom2electio 2upports statistical samplin#.
rk-.esumelow Typically called when a service level deadline or #oal is not met, this activity forces completion of an assi#nment andadvances the flow e!ecution alon# a specified $connector& flow action.
rk-.2tart7ewlow 2tarts an additional flow e!ecution on the current work object.
rk-.(ork*artyetrie efreshes the party identity in a work object. eferenced in standard harness forms.
ese standard activities apply to a class other than (ork-.
ll Name Purposeaseclass.Activity2tatus
%ontent/andler*resents a form when a top-level activity completes with presentin# an /T0< display. $"The operation completedsuccessfully, but returned no content." with #reen checkmark.& 2ee/ow to customiEe the activity success ande!ception windows.
aseclass.Activity2tatuseption/andler
*resents a form when an activity fails or an uncau#ht 3ava e!ception occurs. $"*lease contact your 2ystemAdministrator ." with red C.& 2ee /ow to customiEe the activity success and e!ception windows.
de-
urity.AppAuthenticate
2upports the 2in#le 2i#n-onfeature.
de-2ecurity.
8/13/2019 44882046-BPM-BRE
9/25
BPM and BRE
(eclare 2#ressions %!ule-(eclare-2#ressions rule ty#e'
When conditions %!ule-0bj-Whenrule ty#e'
eferences to #ro#erties on a locatable #age use the locatekeyword in lowercase as a #refi to or initial #ortion of the #age
me, as in1
+o#ateCustomerOr"erAmount
runtime, the system uses backward chaining and an activity with ty#e $ocateto find and %if necessary' add the #ro#er
ge to the cli#board. This eliminates the need for the develo#er creating the when condition rule to s#ecify the #age.
declarative pageis a cli#board #age created by eecution of a declare #ages rule % !ule-(eclare-3agesrule
ty#e'.
(eclarative #ages can im#rove #erformance and reduce memory requirements when
or many requestors in an a##lication need to access static information or slowly changing
formation.
r eam#le, a declarative #age may hold last night4s closing &.). stock #rices in a 5alue 6rou##ro#erty indeed by ticker
mbol, so that the #ro#erty reference (eclare7)tock.3rice%8"B98' is the closing #rice for "B9 shared. The first time each
ening %after the :1;< 3.9. +ew =ork market close' that a requestor attem#ts to access the #age, the system automatically
ads the #age with the latest end-of-day #rices. The #age can remain unmodified in memory until the net day4s closing.
(eclarative #ages are not created at system startu#/ they are created only when first accessed.
Ordinarily, declarative pages do not persist6 they are not saved to the ega/BC% database but are
constructed when ne-t accessed and the previous version is e-pired.
The %all method instructs the current activity to find and run another activity usin# ule esolution. After the called activity
mpletes, the callin# activity resumes processin#. The called activity can use its own parameter pa#e, or share the parameter pa#e of the
in# activity. %onfi#ure this by selectin# the Pass the c'rrent parameter page,option in the method parameters. The main advanta#e of
n# able to call an e!istin# activity is reuse. +nstead of rewritin# the called activity6s steps in the callin# activity, you can reference thevity.
The Obj+4rowse method searches instances of one class and copies specified properties onto the clipboard,
eating a list of instances, each on an embedded page.
& completed Obj+4rowse method is similar to a %DC statement of this form=
Se+e#t /0ILDS .rom the /OCLASS 4here /CO-DI5IO-S 6 A VAL% an" p+a#e them on the /PAG-A7 page
5ou can use as selection criteria only those properties that are e!posed as database columns. /owever, the method can retrieve
ues of properties that are not e!posed as columns, includin# embedded properties.
The Obj+Open method returns a single instance stored in the ega/BC% database, or in an e-ternal database
ble that is linked to an e-ternal class. The returned instance is then converted to a clipboard page. This method
ffers from the Obj+4rowse method by not allowing you to define search criteria6 you must identify the key of the
tance.
The age+!opy method replicates the entire contents 7all properties and embedded properties8 of an e-isting
pboard page to a new or e-isting clipboard page.
nday, &ugust '(, ')(( 0
8/13/2019 44882046-BPM-BRE
10/25
BPM and BRE
The age+/emove method deletes one or more named pages from the clipboard.
The %how+age method sends an E5C representation of the current page 7as specified in the )te# 3agefield8
your browser window. This method is primarily used for debugging.
@%urrent9ateTime$&is a standard function rule that returns the current system date and time
.py?ser+dentifierproperty is set to the parameter defined on the Parameterstab of an activity.
$or more comple- activities, the !lipboard tool and Tracer tool are valuable debugging aids.
ee tools support developers as they work with activities
The %lipboardtool lets developers e!amine and alter the contents of their clipboard.
The Tracertool provides powerful, detailed debu##in# for activities, even when run by others or in back#round.
The *erformancetool provides comprehensive statistics about resources consumed by a re:uestor, and system response
Bse the 4ranch instruction to cause the current activity to find another specified activity and branch to it
thout a return.
Bse the !all instruction to cause the current activity find another specified activity and e-ecute it. When that
ivity 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
th the called activity, an approach known as call-by-reference.
Bse of e-plicit class names can introduce infle-ibility, complicate debugging, and reduce opportunities for
e reuse, avoid this format whenever possible. g= !all
8/13/2019 44882046-BPM-BRE
11/25
BPM and BRE
(orkflow list lowest priority
e the %lipboard tool when developin# and debu##in# to
!amine property values and messa#es associated with them
ind the information necessary to reference a property the pa#e names and the property name
Fuickly create, update, delete, and modify pa#es usin# the Action menu Fuickly start activities and flows usin# the Action menu
e clipboard has a hierarchical structure based on C0
8/13/2019 44882046-BPM-BRE
12/25
BPM and BRE
d im#roving the business #rocesses and their enabling ca#abilities forever and for everyone. 8
siness #rocesses are ca#abilities, as im#ortant as facilities, #eo#le, and technology. $ike other assets, they must be
anaged from ince#tion to retirement.
ocess Commander su##orts Simply Smart Business Process Managementthrough rules covering flows, assignments
uting, decisions, and automated #rocessing.
business rules engineis a software com#onent that allows business rules to be recorded in a non-#rocedural, non-
ogramming form, and uses advanced software techniques to com#ute the consequences and results of rules. The
ega/BC% component of ega/BC% rocess !ommander provides a powerful rules engine supporting business
ocess management, and other applications through services.
evelo#ed in ?ava, highly scalable and reliable, 3ega!&$2) su##orts declarative rules, multithreaded eecution and a large
mber of industry interfacing and standards.
e business rules engine can be embedded or called from another system using )ervice ?)!@: rules.
ocess Commander su##orts exceptions managementa##lications and the staff that #rocesses ece#tions, by ensuring
m#liance with business #olicies, su##orting access to eternal systems, and giving visibility to work in #rocess.
service levelrule is an instance of the /ule+Obj+%erviceCeveltype. ach service level rule defines one to three
me intervals, known as goals, deadlines, and late intervals, that indicate the e-pected or targeted turnaround time
r the assignment, or time+to+resolve for the work object.
developer can set a goal of 9) minutes to call a customer back and a deadline of four hours. 7The time intervalarts when the assignment is created, not when a user begins processing the assignment.8
r the overall work object, the service level rule is identified in the standard #ro#erty .#y)$+ame, ty#ically set u# through
model for the class.
nday, &ugust '(, ')(( ('
8/13/2019 44882046-BPM-BRE
13/25
BPM and BRE
he ega+ro!om agent detects service levels not achieved ; unmet goals or deadlines ; promptly. 2f an
signment is not completed before the time limit, the system can automatically notify one or more parties, escalate
e assignment, cancel the entire flow, and so on.
ervice Level Purposevanceflow 3ush the assignment along a flow action automatically.fault "m#oses a goal of two days and a deadline of five days.ifyssignee )ends an e-mail reminder to assignee u#on reaching goal time or deadline time.ify9anager )ends e-mail to the assignee4s manager u#on reaching the deadline time.nsferTo9anager Transfer assignment to manager u#on reaching the deadline.ifyandTransfer
9anager
+otifies manager when the assignment remains o#en after one full day %goal time'. Transfers the
assignment to a manager after three days %deadline time'.nsferToWorkbasketTransfer assignment to a workbasket when it is o#en at deadline time.
rvice level rules define three time intervals, known as #oal, deadline, and late intervals. The #oal time is the smallest time interval, theadline time is a lon#er interval, and the late interval defines post-deadline times. ach time interval is in days, hours, minutes, and seconds.
rvice level rules can be associated with a work object or an assi#nment. (hen the time interval defined by the service level is reachedhout the assi#nment bein# performed $or the work object becomin# resolved&, escalation occurs.
calation can chan#e the ur#ency value of the assi#nment or work object, send it to someone else, send an alert or e-mail messa#e, cancelwork, or initiate other processin#.
e *e#a-*ro%om a#ent a back#round re:uestor detects #oals and deadlines not met and performs escalation processin#.e a#ents in the *e#a-*ro%om ule2et process e-mail, service level rules, and assi#nments, archive work objects, and so on.
e a#ents in this rule provide the followin# types of processin#
*rocessin# service level events and escalation
Applyin# a flow action to assi#nments in bulk
2endin# out e-mail correspondence
Archivin# and pur#in# work objects, attachments, and history etrievin# *9 files from the *e#a9+2T+B?T+)7 0ana#er
unnin# tests defined throu#h the optional Automatic Testin# facility
%heckin# incomin# e-mail $deprecated in 1D.&
e activity 2ystem-Fueue-2ervice
8/13/2019 44882046-BPM-BRE
14/25
BPM and BRE
pur#ee:uestsTable
*rocess2erviceFueue
*rocess%onnectFueue
#a9+2T+B?T+)7 0ana#er is a small, optional (indows server application used to support a *rocess %ommander system for printin# andn# of 0icrosoft (ord documents. *e#a9+2T+B?T+)7 0ana#er can also convert (ord documents to Acrobat *9 format.
e a#ents in the *e#a-?
8/13/2019 44882046-BPM-BRE
15/25
BPM and BRE
ull te!t searches may disclose sensitive work object details to uses who otherwise would not be permitted to open or review suchwork
+nde!in# $performed in the back#round by the *e#a-*ro%om a#ent& and searchin# $performed on re:uest& can impact systemperformance.
e!in# is controlled by settin#s in standard 9ynamic 2ystem 2ettin#s data instances $9ata-Admin-2ystem-2ettin#sclass& and by a check! option on the Advanced tab of the %lass form. The 9ynamic 2ystem 2ettin#s are
Pega$%LSin"e>ing@"ataena!+e" 2et to true or false to control whether searchin# is supported for 9ata-
instances. 9efault is false.
Pega$%LSin"e>ing@ru+eena!+e" 2et to true or false to control whether searchin# is supported for ule-
instances. 9efault is true.
Pega$%LSin"e>ing@4orkena!+e" 2et to true or false to control whether searchin# is supported for (ork-
instances. 9efault is false.
Pega$%LSin"e>ing@ena!+e" 2et to false to disable all searchin#. 9efault is true.
Pega$%LSin"e>ing@e>p+i#itin"e>"ir +f not blank, identifies a directory on the server that can hold inde!es.
The inde!in# facility places the inde! files it creates $with file type #.s& in subdirectories of this directory.
Pega$%LSin"e>ing@hosti" 7eeded in a multinode cluster, hash node +9 of the node on which the inde!es
reside. $+n a multinode cluster, inde!in# occurs on only one nodeK this can reduce processin# workloads and disk space
re:uirements. Throu#h standard 2)A* connector rules, search re:uests from other nodes are forwarded to this node.& *e#a-?and WorkIn"e>subdirectories contain %2 files for data instances and work objects respectively
ome cases, a *4AJ alert threshold $a+erts@"ata!ase@intera#tion'te5hresho+"@error7& can cause the inde!in#
cess to fail before completin#. Before buildin# inde!es on a new installation, make sure no value is set for the error7settin#.
tances of the
8/13/2019 44882046-BPM-BRE
16/25
BPM and BRE
hen you add a new concrete class under the Work+, & (ork-%over-.9efault.
rrespondence rules are usually thou#ht of as the top-level rule $or the container template& with fra#ments as the component parts of themplate.
rrespondence ules $ule-)bj-%orr&/as more than one ra#ment ules $ule-%orr-ra#ment&
nday, &ugust '(, ')(( (?
8/13/2019 44882046-BPM-BRE
17/25
BPM and BRE
ule-)bj-%orr instance has Mpe#ainclude nameNO
8/13/2019 44882046-BPM-BRE
18/25
8/13/2019 44882046-BPM-BRE
19/25
BPM and BRE
Constraints rules %!ule-(eclare-Constraintsrule ty#e'
(eclare 2#ression rules %!ule-(eclare-2#ressions rule ty#e'
(eclare "nde rules %!ule-(eclare-"nderule ty#e'
(eclare 0nChange rules %!ule-(eclare-0nChangerule ty#e'
(eclare Trigger rules %!ule-(eclare-Trigger rule ty#es'
(eclare 3ages rules %!ule-(eclare-3agesrules ty#e'
clare 2nde- rules support reporting and belong to the %ys&dmin category.
8/13/2019 44882046-BPM-BRE
20/25
BPM and BRE
ac$!ard chaining
ckward chaining e-ecutes alue method is the foundation of backward+chained processing.
ca#ability called locatable pagesreduces the need for #ages to be e#licitly named in the rule. $ocatable #ages can be
ed with Constraints rules and (eclare 2#ression rules.
runtime, the system uses backward chaining and an activity with type $ocateto find and 7if necessary8 add theoper page to the clipboard. This eliminates the need for the developer creating the when condition rule to specify
e page.
eclarative pa#es enable developers to define a set of named clipboard pa#es for an application. They areeated and refreshed on demand as they are needed by other rules. The created pa#es are treated asserved, so other rules $such as activities& cannot be used to update or remove them
nce the pa#e has been populated, it is marked as read-only to maintain data inte#rity. The pa#e cansily be shared by multiple re:uestors. +t is for this reason that all of the properties on the pa#e are not
odifiable, and no new properties can be added to the pa#e.
amples of the data types to be shared are
%ached #lobal system settin#s
8/13/2019 44882046-BPM-BRE
21/25
BPM and BRE
read level pa#es allow developers to define pa#es similar to those #enerated by the e!istin#
8/13/2019 44882046-BPM-BRE
22/25
BPM and BRE
bj-Browse1
ad0nl)elect to mark the embedded #ages for the selected instances as read-only, meaning that later #rocessing by the
requestor cannot u#date or delete data in the #age. $eave unselected if you #lan to u#date the embedded #ages.
s a best #ractice, select this check bo. This records your intent that the embedded #ages are not to be altered and can
reduce memory requirements by retaining only s#ecific #ro#erty values etracted from the )torage )tream %Blob' column.
9arking the embedded #ages as read-only with this check bo #revents changes to the values of #ro#erties on
the embedded #ages. "t does not affect your ability to remove an embedded #age com#letely %with the 0bj-*ilter or
3age-!emove method'.
"f the )electarray is em#ty, the !ead0nlysetting is ignored. The result of the method is a Code-3ega-$ist
structure that contains all rows and all columns of the object, including the )torage )tream %B$0B' column. The
embedded #ages are not read-only.
is method can return thousands of database rows and create large cli#board #ages. &se care to retrieve only the rows
stances' and columns %#ro#erties' you truly need. )imilarly, s#ecify sorting only when needed.
2ecution of this method may cause an alert to be added to the lert log, of ty#e 326
8/13/2019 44882046-BPM-BRE
23/25
BPM and BRE
Category Message text and description
6
8/13/2019 44882046-BPM-BRE
24/25
8/13/2019 44882046-BPM-BRE
25/25
BPM and BRE