7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 1/161
Workflow Recipe for Passionate Starters
- Part I (Spice up!!)
Posted by Aspire WF in SAP Business Workflow on May 18, 2012 1:2:!0 PM
"weet
#ear $eader,
"%is is PART I of ! part blo& series drafted keepin& passionate Workflow be&inners in
'ind to &i(e a better pi)ture
* ri&%t start about SAP Business Workflows+
What is Workflow?
Workflow is an auto'ation tool w%erein we )an 'ap t%e eistin& business pro)ess and
auto'ate it end to end+
Benefits:
• -ser initiatin& t%e pro)ess need not bot%er about net le(el appro(ers in(ol(ed
in t%e pro)ess+ Workflow will take
)are of findin& t%e ri&%t appro(er and sendin& t%e workite'.Mail for %is
a)tion.infor'ation
• #eadline 'onitorin& is a workflow feature w%i)% %elps to atta)% a ti'eline forappro(er to take a)tion+ /ases w%ere
no a)tion is taken after deadline epiry )an be %andled by es)alatin& t%e workite'
superior or notify so'eone t%at
deadline %as epired+ "%is aids for better * faster business pro&ress
• Workflow ensures t%at t%e ri&%t work is brou&%t in t%e ri&%t seuen)e at t%e ri&%t
ti'e to t%e ri&%t people
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 2/161
• SAP Business Workflow )an also be used to respond to errors and e)eptions it
)an start w%en predefined e(ents
o))urSW-3 ")ode4
Autoatic Workflow ustoi"in#:
Tco$e: SW%&
Purpose: Before 5u'pstartin& wit% Workflow de(elop'ent we need to ensure t%at
workflow )usto'i6in& settin&s are in
pla)e+ "%ese settin&s are prereuisite for proper tri&&erin& * ee)ution of workflow+
'i#: SW-7 ")ode
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 3/161
Mostly t%is )usto'i6in& a)ti(ity is done by Basis tea'+ $eason bein& t%at SAP user
id used for t%is a)ti(ity
s%ould %a(e SAPA99 * SAP;W aut%ori6ation+
'i#: Maintain $unti'e ;n(iron'ent
onfi#ure R' estination:
"%e workflow runti'e syste' always ee)utes its t$F/ transa)tional $F/4 )alls on
t%e lo&i)al destination
W<$=F9<W9</A9 stands for t%e t%reedi&it nu'ber of t%e )lient4+
"%e workflow runti'e syste'
only operates wit%in one )lient+ "%e na'in& for t%e lo&i)al destination &uarantees
t%at t%ese na'es are uniue
a)ross t%e syste'+ ;e)utin& t%is a)ti(ity will )reate t%e lo&i)al $F/ destination
W<$=F9<W9</A9 if
it does not yet eist+ "%e user WFBA"/> is assi&ned to t%is destination+
W'-BAT:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 4/161
WFBA"/> is a ba)k&round syste' user w%i)% s%ould %a(e SAPA99
aut%ori6ation+ All ba)k&round a)ti(ities
related to workflow are ee)uted usin& t%is user id+ Perfor' auto'ati) )usto'i6in&
will )reate t%is user id if it
does not eist in syste'+
'i#: Maintain Workflow Syste' Ad'inistrator
We )an 'aintain Workflow ad'in eit%er as a $ole.<r& -nit.
?ob.Position.Work)enter.-ser as seen abo(e+
W%oe(er is 'aintained as WF Ad'in will &et a notifi)ation 'ail in t%eir business
workpla)e SBWP Tco$e4
w%ene(er a workflow runs into an error+ Based on t%is notifi)ation 'ail rele(ant
troubles%ootin& )an be done+
An ea'ple error notifi)ation 'ail sent to WF Ad'in will look as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 5/161
From above mail we can understand that for workow WS92000001triggering event TR!!"RWF
of business ob#ect $%&S2012 is not maintained' Troubleshooting for thiscase will be to enable the
(inkage )ctivated checkbo* in SW"2 Tcode' This checkbo* enablingmeans that workow is correctl+
linked to the event , will look as below-
Fig: "vent (inkage activation in SW"2 Tcode
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 6/161
Maintain Active Plan Version:
<nly one of t%e plan (ersions )reated in t%e syste' )an be a)ti(e+ "%is plan (ersionwit% its )ontents4 is
seen by t%e workflow syste' as t%e only (alid plan (ersion+ 01 is set as t%e a)ti(e
plan (ersion+
lassif* ecision Task as +eneral:
"S000082@ Standard SAP "ask for -ser #e)ision step in workflow+ "%is task %as
to be 'ade
as Ceneral task sin)e it does not %a(e any possible a&ents as standard+
,ote: While maintaining agents for tasks in workow either we need tomake it as
!eneral Task or assign .ossible agents for the task' !eneral Task meansthat all users in
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 7/161
the S)/ S+stem are allowed as .ossible agents of these tasks' The agentrestriction must
be .erformed b+ selecting Responsible Agents in the ste. denition'
ocuent +eneration'or Inte#ration:
SAP "asks "S00082D8, "S100D!!, "S100D!, "S100D!@ and "S100D!4
are
used for #o)u'ent fro' "e'plate step * "asks "S0008112, "S0008117,"S000811!
and "S0008114 are used for For' step in workflow+ "%ese tasks are 'ade as
Ceneral "ask+
.aintain Tie %nits:
-nits of 'easure'ent and ti'e t%at are used by t%e SAP Syste' )an be 'aintained
%ere+
Sche$ule Back#roun$ /o0 for .isse$ ea$lines:
Ba)k&round ?ob SWW#>;E is ee)uted re&ularly as per t%e ti'e inter(al
'aintained in t%is
a)ti(ity to )%e)k w%et%er new deadlines %a(e been 'issed sin)e t%e last ti'e it ran+
Sche$ule Back#roun$ /o0 for Work Ites with 1rrors
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 8/161
"%ere are 7 possible error types in Workflow na'ely "e'porary error, Appli)ation
error and
Syste' error+
"e'porary ;rror:
;rror t%at o))urs w%en )ertain syste' resour)es are not a(ailable+ For e+&+ Personnel
no to be
pro)essed by appro(er is already bein& pro)essed by anot%er user+
Appli)ation ;rror:
;rror t%at o))urs w%en an error eists in t%e )alled appli)ation+ For e+&+ "%ere is no
aut%ori6ation
to edit t%e ob5e)t+
Syste' ;rror:
;rror t%at o))urs if t%ere are in)onsisten)ies between t%e business ob5e)t type
definition and
t%e 'et%od )all+
For e+&+ Mandatory 'et%od para'eters for t%e 'et%od )all %a(e not been set+
Ba)k&round ?ob SWW;$$; is ee)uted re&ularly as per ti'e inter(al 'aintained in
t%is a)ti(ity to,
• otify workflow syste' ad'inistrator in t%e e(ent of appli)ation errors and
syste' errors
• $estart ba)k&round workite's wit% te'porary errors
Sche$ule Back#roun$ /o0 for on$ition 12aluation:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 9/161
/onditions for work ite' start and work ite' end is )%e)ked (ia a ba)k&round 5ob+
Ba)k&round 5ob
SWW/<# is s)%eduled wit% t%e standard para'eters in t%is a)ti(ity+
Sche$ule Back#roun$ /o0 for 12ent 3ueue:
;(ents used to tri&&er workflow are 'ana&ed (ia ;(ent ueues+ "%e ba)k&round 5ob
for t%e e(ent
ueue is s)%eduled wit% t%e standard para'eters in t%is a)ti(ity+
Sche$ule 0ack#roun$ 4o0 for clearin# report:
Ba)k&round 5ob SWW/9;A$ is used to deletes all 5ob lo&s of t%e followin&
ba)k&round 5ob:
SWW/<# Work ite' rule 'onitorin&
SWW#>;E Work ite' deadline 'onitorin&
SWW;$$; Work ite' error 'onitorin&
After s)%edulin&, t%e ba)k&round is ee)uted on)e a day at 00:00 %ours+
.aintain Prefi5 ,u0ers:
An ea'ple WF te'plate id will look as WSD2100001+ WS is t%e prefi w%i)% refers
to Workflow
te'plate id+ $e'ainin& 8 di&its are 'ade up of 2 parts+ First 7 di&its s%ould be'aintained 'anually
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 10/161
in t%is a)ti(ity+ $e'ainin& di&its are &enerated auto'ati)ally by SAP w%i)% is a
runnin& no+ We )an
define one prefi nu'ber per syste' #;.GAS.P$#4 and )lient 100.200 et)+++4+
heck ,u0er Ran#es:
"%is )%e)k routine deter'ines w%et%er t%ere is a nu'ber ran&e for workflow tasks
and )usto'er tasks+
Hf t%e status of t%is )%e)k %as t%e status error, we )an )orre)t t%e error as follows:
• -se t%e report $S/9"/<P to )opy all t%e )ontent of t%e "I tables fro' t%e
)lient 000 into t%e
rele(ant )lient+
• /arry out t%e /usto'i6in& for personnel plannin& and workflow a&ain+
heck 1ntries fro R ontrol Ta0les:
"%is )%e)k routine deter'ines w%et%er t%e <r&ani6ational Mana&e'ent )ontrol
tables are )o'plete
w%i)% is ne)essary for t%e workflow syste' to be fun)tional+ $eport $>""/P is
ee)uted for t%e
sa'e+ Hf t%ere are errors in t%e output of report $>""/P re&ardin& t%e transportob5e)ts P#S" or
P#WS, it 'eans t%at t%e rele(ant entries are not 'aintained in table S<B?+ $eport
$>S<B?/>
)an be used to re)tify t%ese errors+ ote t%at wit% t%ese errors t%e workflow is
ee)utable in t%e
)urrent syste', but )ru)ial infor'ation is not transported in t%e e(ent of transports
into ot%er
syste's+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 11/161
Maintain Additional Settings and Services:
Maintain We0 Ser2er:
Hf we want to ee)ute workflows t%at use WebFlow fun)tions separate step type
Web A)ti(ity
is a(ailable in workflow4, we %a(e to define a Web Ser(er for t%e SAP Syste'+ "%is
step %as to be
'aintained 'anually and )annot be ee)uted auto'ati)ally usin& Perfor'
auto'ati) )usto'i6in&+
.aintain Stan$ar$ oain for Internet .ail:
Guestions )an be )reated wit% respe)t to work ite's wit%in t%e workflow syste'+
"%ese uestions
)an be answered usin& an e'ail to t%e rele(ant work ite'+ "%e answers are added
to t%e work ite'Js
atta)%'ents auto'ati)ally+ A standard do'ain for t%e )urrent syste' is reuired for
t%is fun)tion+
"%is step %as to be 'aintained 'anually and )annot be ee)uted auto'ati)ally
usin& Perfor' auto'ati)
)usto'i6in&+
Acti2ate Sen$ to 604ects an$ R 604ects:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 12/161
Hf t%e workflow syste' is to send work ite's and 'ails to business ob5e)ts and
or&ani6ational
ob5e)ts positions, or&ani6ational units, et)+4 in t%e Business Workpla)e, t%erele(ant fun)tions
'ust be a)ti(ated+
.aintain eo an$ 7erification 1n2ironent:
erifi)ation workflow in SW-7 ")ode and all de'o workflows are de)lared as&eneral+
lassif* Tasks as +eneral:
Tasks in task grou.s related to above scenarios like Test Workows etcare made as !eneral Task'
<n)e Perfor' Auto'ati) /usto'i6in& button is )li)ked, SAP syste' will 'aintain
t%e )usto'i6in&
a)ti(ities auto'ati)ally+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 13/161
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 14/161
Based on our reuire'ent we )an 'anually )%an&e t%is (alue+ ote t%at itKs
.A,AT6R8 to ensure
t%at Maintain $unti'e ;n(iron'ent a)ti(ity * Maintain #efinition ;n(iron'ent
are C$;; in )olour for
proper fun)tionin& of Workflows+
"o perfor' auto'ati) )usto'i6in& for Maintain Additional Settin&s and Ser(i)es,
sin&le )li)k
on it and t%en )li)k on perfor' auto'ati) )usto'i6in& button+ ;)ludin& 'anual
a)ti(ities
LMaintain Web Ser(er * LMaintain Standard #o'ain for Hnternet Mail ot%er
a)ti(ities will be
'aintained auto'ati)ally+ Hn )ase of /lassify "asks as Ceneral all suba)ti(ities
under t%is
a)ti(ity will be 'aintained auto'ati)ally+
7erif* autoatic custoi"ation settin#s:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 15/161
"o (erify t%e )usto'i6ation settin&s )li)k on Start (erifi)ation workflow i)on as
%i&%li&%ted below,
"%is will start a (erifi)ation workflow w%i)% will finally send a 'ail to our inbo
SBWP ")ode4
to infor' w%et%er )usto'i6ations are )orre)t or not+
Thanks for rea$in#9 Please share *our 2alua0le coents9
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 16/161
Workflow Recipe for Passionate Starters
- Part II (Spice up!!)
Posted by Aspire WF in SAP Business Workflow on May 18, 2012 @:7!:!@ PM"weet
#ear $eader,
"%is is PA$" HH of ! blo& series t%at %as been drafted keepin& Workflow WF4 be&inners
in 'ind to
&i(e a better pi)ture * ri&%t start about SAP Business Workflows+
Part H %ttp:..s)n+sap+)o'.)o''unity.bp'.business
workflow.blo&.2012.0.18.workflowre)ipeforpassionatestarterspartispi)eup
Workflow Buil$er
Tcode: SWDD
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 17/161
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 18/161
Fro' t%e (ersion dropdown seen below we )an sele)t t%e (ersion w%i)% we want+
Status:
$efers to )urrent status of t%e Workflow+ W%en a new WF is )reated, status will be
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 19/161
ew,ot Sa(ed+ <n)e WF is sa(ed t%e status )%an&es to $e(ised, Sa(ed+ After
a)ti(ation t%e
status be)o'es A)ti(e, Sa(ed+
Iport ; 15port Workflows:
When a workow is e*.orted- an 56( le that contains all the contentaccording to %/6(
S.ecication 0'7 is written' BPML (Business Process Modelling Language) is a meta
language
with which the structure of a workflow can be described. To e*.ort a workow as an 56(le-
choose Workow 8 m.ort:"*.ort 8 "*.ort to 56( File from the WF %uildermenu'
"%ere are 'any disad(anta&es of t%is eport.i'port option sin)e t%e entire workflow is
not
eported.i'ported+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 20/161
W%en eportin& a workflow, t%e followin& parts )annot be eported a))ordin& to BPM9
0+!:
• "ri&&erin& e(ents
• W>H9; loops
• "asks t%at are referred to in steps
"%e task H# is eported as a SAPspe)ifi) etension+ "o re)ei(e an ee)utable workflowafter
t%e i'port of t%e EM9 file to an SAP syste', t%e task 'ust be )ontained in t%is SAP
syste'+
• Wait steps and e(ent )reators
Hf a workflow )ontains su)% step types, t%ese are repla)ed by e'pty steps durin&
t%e
i'port and t%e user re)ei(es a 'essa&e t%at t%ese steps %a(e to be postpro)essed+
• /o'ple )onditions
• /o'ple data types for ea'ple, stru)tures, ob5e)t type referen)es4
"o re)ei(e an ee)utable workflow after t%e i'port of t%e EM9 file to an SAP syste',t%e
eportin& stru)tures and ob5e)t types 'ust be )ontained in t%is SAP syste'+
• Modelled deadline 'onitorin&
• A)ti(ities wit% 'ore t%an one out)o'e
• $ules and ele'ents of t%e or&ani6ation 'ana&e'ent t%at are used as responsible
a&ents
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 21/161
"o re)ei(e an ee)utable workflow after t%e i'port of t%e EM9 file to an SAP syste',
t%e rules
and ele'ents of or&ani6ation 'ana&e'ent t%at are referen)ed 'ust be )ontained in t%isSAP
syste'+ <n)e eported user will pro'pted to spe)ify t%e lo)ation w%ere t%e EM9 file
%as to be
downloaded+ An EM9 file wit% na'e as test will look as below,
For i'portin& t%e file )%oose Workflow N H'port.;port N H'port fro' EM9 File
fro' t%e
WF Builder 'enu+
Area2: )n+ Workow will have 2 ste.s ;Workow Started< and ;Workow=om.leted<
b+ default' t marks the Start and end .oint of a workow' )ll business logicshould be
dened in the &ndened >ouble8=lick for new ste. region' There are severalWF ste.
t+.es available' To insert a new ste. right click on &ndened >ouble8=lick
for new ste.
icon' ) .o.u. a..ears as below-
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 22/161
-pon sele)tin& /reate anot%er popup listin& possible WF step types appears,
Sele)t t%e reuired step to insert it in workflow+
Area &:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 23/161
"%is re&ion )ontains a resi6able C$;; )olour re)tan&le w%i)% is used to %i&%li&%t
parti)ular steps4 in workflow+
Area <:
Inserta0le Step T*pes:
t contains the list of .ossible WF ste.s t+.es that can be inserted'
Workflow ontainer:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 24/161
All t%e (ariables w%i)% are used in workflow are )reated %ere as workflow )ontainer
ele'ents+ "%e lifeti'e of a (ariable is t%rou&%out t%e )o'plete WF instan)e+
>ouble click on
A popup appears as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 25/161
"nter name of the variable3also called as Workow container element4- ashort name ,
descri.tion' There are ? wa+s to declare a WF container element' We candirectl+ enter the
datat+.e 3for e'g'@T14 or enter structure 3SWA)=TR4:data element3)"@)64 or domain
name 3&S@)64 in )%)/ >ictionar+ >ata T+.e' n )%)/ >ictionar+ Reference-a table name
3for e'g' /)00014 can be entered in Structure eld and eld name can be
entered in eld 3/"R@R4'
We can also maintain the variable of t+.e business ob#ect:class name b+mentioning the %
name:class name in b#ect T+.e'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 26/161
n .ro.erties tab m.ort- "*.ort elds are maintained' f the variable isgetting its value from
outside workow sa+ for e'g' from % 3%usiness ob#ect B SW1 Tcode4 orStandard:custom
3for e'g' Web>+n.ro )%)/ or Cava4 a..lication m.ort should be enabled' fthe variable value
has to be sent outside workow sa+ for e'g' to % method then e*.ortcheckbo* has to be enabled'
f the variable is going to be used onl+ within workow then both
checkbo*es can be left unchecked'
6andator+ as the name suggests should be enabled for mandator+variables' "nabling 6ultiline
checkbo* allows us to .ass more than 1 value 3similar to internal table inre.orts4'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 27/161
nitial values for variables can be maintained in nitial alue tab' nce initialvalues are maintained
!R""@ colour icon a..ears as below-
.* workflows an$ Tasks:
Ht displays t%e list of last pro)essed workflows+
Area =:
<n)e we )li)k />;/= i)on
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 28/161
<r press /trlOF2, infor'ation, warnin& * error 'essa&es are displayed in t%is area+
Abo(e popup s%ows an infor'ation 'essa&e t%at o start e(ents are 'aintained for
Workflow+
Business Workplace:
Tco$e: SBWP
6ails , Workitems sent to users from Workow can be accessed in %usinessWorkow'
tDs a user s.ecic S)/ inbo*'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 29/161
-sers will re)ei(e 'ails * workite's in Hnbo+
ifference 0etween .ail an$ Workite:
• W%en sa'e 'ail is sent to 'ore t%an 1 user, ea)% user will &et a separate )opy
of t%e 'ail+
Hn )ase of workite' t%e sa'e )opy is sent to all users
• ;a)% user )an open t%e 'ails w%ene(er reuired+ HtKs not possible to atta)%
deadline for
a 'ail to be opened before a parti)ular ti'e+ Workite's )an be sent wit% deadline
• Mails are used to notify users+ Workite' )arry work on w%i)% users %a(e to take
so'e a)tion
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 30/161
for e+&+ Appro(e lea(e reuest, $elease a Pur)%ase order+ <n)e lea(e reuest is
appro(ed an
e'ail )an be sent to e'ployee notifyin& t%at %is reuest %as been appro(ed
• -sers )an reser(e t%e workite' by sin&le )li)kin& on t%e workite' and )%oosin&reser(e i)on+
"%is will re'o(e t%e workite' fro' inbo of ot%er users and workite' will be
a(ailable only for
t%e person w%o reser(ed it+ -sers )an sin&le )li)k on t%e workite' and )%oose
repla)e i)on+
"%is will 'ake t%e workite' a(ailable to all users to w%o' it was sent+ Sin)e
indi(idual )opies
are sent in )ase of Mails $eser(e.$epla)e is not possible
• Workitems are foreground ste.s meaning that user interaction 3fore'g' a..rove the
reEuest b+ clicking )..rove button4 is mandator+' Workow generall+waits for the
current workitem ste. to be com.leted before moving to the ne*tste.3Note: This
behaviour can be altered via Fork ste.4' Since mails are noticationste.s Workow
sends them in background and .roceeds to the ne*t ste.'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 31/161
To navigate to Workow (og 3SW1 Tcode4 single click on the workitem andclick on
Workow log highlighted above'
Workflow Recipe for Passionate Starters- Part III (Spice up!!)
)reated by Aspire WF on Mar 1, 2017 D:7D PM, last 'odified by Aspire WF on Mar
1, 2017 10:1 PM
ersion 1
"weet
#ear $eader,
"%is is PA$" HHH of ! blo& series t%at %as been drafted keepin& Workflow WF4
be&inners in 'ind to
&i(e a better pi)ture * ri&%t start about SAP Business Workflows+
Part H %ttp:..s)n+sap+)o'.)o''unity.bp'.business
workflow.blo&.2012.0.18.workflowre)ipeforpassionatestarterspartispi)eup
Part HH %ttp:..s)n+sap+)o'.)o''unity.bp'.business
workflow.blo&.2012.0.18.workflowre)ipeforpassionatestarterspartiispi)eup
Workflow >o# (Tco$e: SWI)
Workflow Hnstan)es )an be tra)ked, 'onitored * analysed (ia Workflow 9o&+ <n)e a
Workflow is
ee)uted a workflow instan)e is &enerated+ "o uniuely identify workflow instan)es
SAP &enerates
a uniue id for ea)% workflow instan)e )alled as Workite' H#+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 32/161
"%ere are 2 types of workite' ids+ Parent workite' H# and )%ild workite' H#,
Parent workite' H#: "%is H# will be %elpful to tra)k t%e status of entire workflow+
/%ild workite' H#: For e(ery WF task not%in& but steps in workflow4 a workite' H#
is &enerated w%i)% is
)alled as )%ild workite' H#+ For a workflow instan)e t%ere will be 1 parent workite'
H# and one or 'ore
)%ild workite' ids dependin& on t%e no of steps inserted in WF+
"%ere is a status asso)iated wit% Parent as well as )%ild workite' id+ 9ist of possible
statuses are,
ote t%at t%e status of t%e Parent workite' id is dependent on t%e statuses of )%ild
workite' ids+ Hn
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 33/161
ot%er words t%e status of a workflow is dependent upon t%e status of its indi(idual steps+
For e+&+ if a
workite' %as been sent to a user for appro(al t%e o(erall status of t%e workflow will be
S"A$";# and
t%e appro(al workite' status )an be $;A#3.S;9;/";# et)+++ <n)e all t%e steps of t%e
workflow are
ee)uted su))essfully t%e status of t%e parent workite'Workflow4 will be)o'e
/<MP9;";#+ Hn )ase
any of t%e WF steps run into error, t%e o(erall WF status will be)o'e ;$$<$+
"%ere are se(eral filters in SWH1 ")ode w%i)% )an be used to identify workflowinstan)es+
'ilter options in SWI
I$entification:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 34/161
Hn Hdentifi)ation field we )an spe)ify t%e workite' H#s4+ ote: All ot%er filters are
i&nored w%en we filter workite's usin& t%is option+
T*pe:
Ci(en below are t%e possible workite' types,
Status:
Ci(en below are t%e possible workite' statuses,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 35/161
Priorit*:
Hn <t%er tab of an a)ti(ity step.user de)ision step priority of workite' )an be
'aintained,
Possible priorities are,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 36/161
ea$line Status:
Workite's for w%i)% deadlines are 'aintained )an be filtered (ia deadline status,
TaskTask +roup:
"ask nu'bers "S Standard./usto' "ask * WS Workflow "ask4 )an be spe)ified+"ask Croup is
a )olle)tion of tasks+ "ask Croups start wit% prefi "C+
reation ateTie:
/reation date or a date ran&e Fro' * "o dates4 )an be used+ Also /reation ti'e or ti'e
ran&e of
workite's )an be spe)ified+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 37/161
Switch 6n check0o5:
Hf t%is indi)ator is set, t%e followin& )olu'ns are additionally a(ailable for t%e layout of
t%e work ite' list
t%at will appear on)e ee)ute button is )li)ked,
• u'ber of t%e workflow definition
• ersion of t%e workflow definition
• Syste' ad'inistrator for t%is workflow
• A&ent w%o ee)uted t%e work ite'
Workflow lo# 'eatures:
9et us filter all workflow instan)es w%i)% %a(e been )reated on 2+0!+2012+ Spe)ify
)reation date *
ee)ute t%e report,
<utput list appears as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 38/161
"o display lo& for a parti)ular WF instan)e sele)t t%e row and )li)k on workflow lo&
i)on as below,
9o& details appears as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 39/161
As seen abo(e we )an see t%e /reation date and "i'e for Workflow Parent4 *
indi(idual WF
steps /%ild4+ <(erall WF status, Hndi(idual WF step status %a(e been %i&%li&%ted+
/li)kin& on Crap%i)al WF lo& i)on will display a &rap%i)al o(er(iew of %ow WF %asee)uted in runti'e,
We )an see a C$;; )olour line %i&%li&%tin& t%e steps ee)uted in workflow+ /urrently
t%e
workflow is waitin& for -ser #e)ision Step to be )o'pleted as seen abo(e+ Crap%i)al
WF lo&
%elp to,
• "ra)k to o(erall WF status as a &rap%i)al o(er(iew
• Hdentify t%e step in w%i)% workflow is )urrently waitin&
• Hdentify t%e pat% of ee)ution of workflow+ For e+&+ Hf we %a(e a )ondition step
wit% 2 options
"$-; or FA9S; t%en fro' &rap%i)al WF lo& we )an find out easily w%et%erworkflow was pro)essed
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 40/161
in "$-; .FA9S; pat%
/%oose ;trasS%ow Hds fro' Menu to display workite' ids in lo&,
"o identify t%e appro(er to w%o' t%e )urrent workite' is sent, )li)k on t%e A&ent
button as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 41/161
A popup appears as below,
/%oose A&ents fro' abo(e popup+ Anot%er popup appears w%i)% will display t%e
appro(er,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 42/161
/li)k on "e)%ni)al WF lo& i)on,
A s)reen appears,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 43/161
Hn t%is s)reen we %a(e se(eral features+ "o display t%e list of all errors for t%is WF
instan)e
)%oose CotoN;rror Analysis fro' 'enu,
Hn )ase of no errors t%is option will be &reyed out as seen abo(e+ ;rrors will be
displayed in
a popup s)reen infor'in& t%e reason for t%e error and t%e step in w%i)% it o))urred,
For e+&+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 44/161
Workite container:
We %a(e parent and )%ild workite' )ontainers+ Parent workite' )ontainer refers to t%e
o(erall
workflow )ontainer w%i)% )ontains all t%e (ariables )reated+ Step workite' )ontainer
refer to
workite' )ontainer only for t%at parti)ular step+ For e+&+ Hn a lea(e reuest WF Parent
workite'
)ontainer )an )ontain all (alues like e'ployee id, na'e, lea(e start date, end date,
reason for lea(e,
lea(e type * no of days+ Assu'e t%ere is a step in workflow w%i)% is used to )al)ulate
t%e no of days
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 45/161
of lea(e+ For t%is we will write a B< 'et%od w%i)% will take fro' date * to date of
lea(e as input and
will return t%e no of days as output+ Hf we see t%e step workite' )ontainer only (alues of
Fro' date,
"o date * no of days will be a(ailable+ 9ea(e "ype, $eason for lea(e et)+++ will not be
present+
Business 604ect Buil$er (Tco$e: SW6)
Hntrodu)tion: Workflows are started by e(ents+ ;(ents are a(ailable under Business
ob5e)ts+
SAP %as pro(ided around 000 standard business ob5e)ts for 'any standard s)enarios
for e+&+
B-S2012 is B< Business <b5e)t4 for Pur)%ase <rder+
HtKs not possible to write ABAP )ode dire)tly in WF+ Business 9o&i) for WF w%i)%
in(ol(es ABAP
)ode is written in B< 'et%ods+ "%ese 'et%ods are )onsu'ed in WF tasks+ HtKs possible
to )reate
)usto' B< ob5e)ts, in%erit standard B< and etend it (ia )usto' 'et%ods * attributes
* redefine
standard 'et%ods+
Business 604ect oponents:
;(ery B< )onsists of below )o'ponents,
Fi&: B-S2012 B< in SW<1 ")ode
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 46/161
Interfaces:
Hnterfa)e is a )olle)tion of attribute, 'et%od definitions and e(ent definitions for an
ob5e)t type
sed in a )o''on )ontet+
All B< Standard * /usto'4 )ontain t%e standard interfa)e HFSAP+
"%is interfa)e pro(ides an attribute <b5e)t"ype and 2 'et%ods #isplay,
;isten)e/%e)k+
HtKs possible to redefine t%e standard )ode present in #isplay and ;isten)e/%e)k+ For
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 47/161
redefinition in standard B< we will reuire a))ess key to 'ake )%an&es+ For
redefinition in )ase
of )usto' B<, sin&le )li)k on t%e 'et%od and )li)k on $edefine i)on as below,
15istenceheck .etho$:
"%is 'et%od is used to (erify w%et%er t%e ob5e)t identified by key fields a)tually eists+
For e+&+
for a pur)%ase order B< t%e key field will be P< no+ Assu'e user )reates a B< instan)e
for P<
no !200000000+ Hn t%is 'et%od user )an write )ode to )%e)k w%et%er t%at parti)ular P<
no eists
by )%e)kin& database tables+ ;)eption 0001 %as been defined for t%is 'et%od+ "o )%e)k
t%e sa'e
sin&le on t%e 'et%od ;isten)e/%e)k and )li)k ;)eptions button as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 48/161
A s)reen appears as below,
As seen abo(e e)eption 0001 is a(ailable+ Hf t%e P< no does not eist t%en user )an
raise an
e)eption in t%is 'et%od usin& below 'a)ro,
;EH"$;"-$ 0001 sy's&(1 sy's&(2 sy's&(7 sy's&(!+
HtKs possible to add new interfa)es to B<+ Sin&le )li)k on Hnterfa)e option and )li)k on/reate i)on,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 49/161
A popup appears as below,
Hn abo(e popup enter t%e na'e of t%e interfa)e to be inserted+
Thanks for rea$in#9 Please share *our 2alua0le coents9
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 50/161
Workow Reci.e for /assionate Starters 8 /art 3S.ice u.4
created b+ )s.ire WF on 6ar 1G- 201? 10H20 /6- last modied b+ )s.ire WF
on 6ar 1G- 201? 11H0G /6
ersion 1
Tweet
#ear $eader,
"%is is PA$" H of ! blo& series t%at %as been drafted keepin& Workflow WF4
be&inners in 'ind to
&i(e a better pi)ture * ri&%t start about SAP Business Workflows+
Part H %ttp:..s)n+sap+)o'.)o''unity.bp'.business
workflow.blo&.2012.0.18.workflowre)ipeforpassionatestarterspartispi)eup
Part HH %ttp:..s)n+sap+)o'.)o''unity.bp'.business
workflow.blo&.2012.0.18.workflowre)ipeforpassionatestarterspartiispi)eup
Part HHH %ttp:..s)n+sap+)o'.do)s.#</7D!71
Business 604ect Buil$er (Tco$e: SW6)
e* 'iel$s:
"%ey are used to uniuely identify an instan)e of B<+ For e+&+ a B< for "ra(el reuest
)an
%a(e "rip no as t%e key field+ HtKs possible to %a(e se(eral fields under =eyfields se)tion+
But
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 51/161
t%e total len&t% allowed for all key fields of an ob5e)t type is 0 )%ara)ters+ "o )reate
new =ey
fields sin&le )li)k on =eyfield and )li)k )reate i)on,
A popup appears as below,
Press o in abo(e popup+ Anot%er popup appears,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 52/161
;nter =eyfield, na'e, des)ription, referen)e table and field na'e for keyfield+ We )an
also enter
a sea)% %elp and para'eter na'e in order to sear)% t%e keyfield (alue based ondatabase+
ote: Subtypes deri(es fro' Supertypes are not allowed to %a(e keyfields of t%eir own+
=eyfield of Supertype will a)t as keyfield of subtype+ After )reatin& a subtype if we try
to )reate
new key fields we will &et a popup as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 53/161
Attri0utes:
"%ey are used to pro(ide additional infor'ation about t%e B<+ For e+&+ a B< for
pur)%ase order
will %a(e $elease &roup, $elease Strate&y * $elease Hndi)ator as attributes+ "o )reate
new
Attributes sin&le )li)k on Attribute and )li)k )reate i)on,
A popup appears as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 54/161
Press o in popup+ Anot%er popup appears,
"%ere are 2 types of Attributes,
7irtual:
/ode %as to be written to populate (alues for (irtual attribute sin)e no field )ontent in
t%e
database )orresponds to t%is attribute+ "%ese attributes are &enerated in runti'e+
7irtual attri0ute co$in#:
C;"P$<P;$"3 Attribute />ACHC /<"AH;$+
+++
SW/S;";9;M;" /<"AH;$ AttributeN alueN+
;#P$<P;$"3+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 55/161
oents:
irtual attribute )odin& s%ould be written between C;"P$<P;$"3 and
;#P$<P;$"3+
After C;"P$<P;$"3 write t%e )odin& lo&i) to &enerate t%e (irtual attribute+ "%en set
t%e (alue
for t%e attribute usin& SW/S;";9;M;" 'a)ro for sin&le line attributes and
SW/S;""AB9;
for 'ulti line attributes+
ata0ase 'iel$:
Attribute (alue is deter'ined dire)tly fro' t%e )ontent of a database field+ o separate
)odin& is
reuired+ ;it%er we )an 'ention t%e attribute of type field in a table or it )an be
'entioned as ob5e)t type+
.etho$s:
All ABAP )ode ne)essary for WF are written in 'et%ods+
"o )reate a new 'et%od sin&le )li)k on 'et%od and )li)k )reate i)on,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 56/161
Press o in t%e popup+ Anot%er popup appears,
;nter 'et%od na'e, s%ort na'e and des)ription+ ;nable #ialo& )%e)kbo if t%is 'et%odis a
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 57/161
fore&round 'et%od+ #isable it in )ase of ba)k&round 'et%ods+
'ore#roun$ etho$:
Met%ods w%i)% in(ol(e user intera)tion are )alled as fore&round 'et%ods+ "%ey are
)alled in
a task and at runti'e a workite' is sent to appro(er for a)tion+ For e+&+ Assu'e S;11
")ode
s)reen s%ould be displayed to appro(er w%en %e opens t%e workite'+ Below )ode )an be
written
in 'et%od,
/A99 "$ASA/"H< QS;11K+
Back#roun$ etho$:
Met%ods w%i)% )ontain lo&i) for operations to be perfor'ed in ba)k&round wit%out user
intera)tion
are )alled as ba)k&round 'et%ods+ For e+&+ Met%od written to find e'ail id of e'ployee
by passin&
personnel no+ Hn t%is )ase workite' will be &enerated but will not be sent to inbo+
Hnstead t%ey will
be ee)uted in ba)k&round+
;nable syn)%ronous )%e)kbo for syn)%ronous 'et%ods and disable it for asyn)%ronous
'et%ods+
As*nchronous etho$:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 58/161
A task t%at refers to an asyn)%ronous ob5e)t 'et%od M-S" be defined wit% at least one
ter'inatin&
e(ent+ Hf we define an asyn)%ronous 'et%od, we 'ust ensure t%at one of t%e ter'inatin&
e(ents is
tri&&ered after ee)ution of t%e 'et%od+ At runti'e, t%e rele(ant work ite' is only
ter'inated if one
of t%e defined ter'inatin& e(ents o))urs+ For e+&+ <n)e t%e appro(er )li)ks appro(e
button assu'e
)ertain database tables are updated+ Hf t%e tables are updated su))essfully t%en an e(ent
-P#A";#
is raised+ "%e workite' sent to appro(er s%ould be )o'pleted only if t%e database tables
are updated
)orre)tly and -P#A";# e(ent is raised+ Hn t%is )ase we need to 'ake t%e 'et%od
asyn)%ronous and
s pe)ify t%e -P#A";# e(ent as ter'inatin& e(ent in "ask le(el+
S*nchronous etho$:
A task t%at refers to a syn)%ronous ob5e)t 'et%od /A be defined wit% ter'inatin&
e(ents+ At runti'e,
t%e rele(ant work ite' is &enerally ter'inated w%en t%e syn)%ronous 'et%od %as been
su))essfully
ee)uted+ But t%e work ite' is also ter'inated if one of t%e defined ter'inatin& e(ents
o))urs+
Hn )ase t%e 'et%od %as to return its result in a result para'eter enable result para'eter
)%e)kbo+
#ata type for t%e return para'eter )an be spe)ified in $esult "ype tab,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 59/161
,ote: We )annot )%an&e or delete para'eters in%erited wit% t%eir 'et%od fro' a
supertype+
/%oose -tilitiesN/olor 9e&end fro' Menu,
A popup appears as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 60/161
Abo(e popup s%ows t%e )olor )ode for t%e different sy'bols used wit%in a B<+ APH
Met%od
are not%in& but BAPH )reated as B<$ 'et%ods+ B< BAP %as details about Salesdo)u'ent
ite'+ B-S2072 is B< for sales order+ B< BAP is a))essible fro' B-S2072 sin)e it
%as been
)reated as a relations%ip attribute,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 61/161
/li)k on relations%ip attribute i)on in abo(e s)reen will display B< BAP,
Met%ods wit% rose )olour refer to in%erited 'et%ods+ W%ite )olour refers to )usto'
'et%ods newly
)reated+ $ed )olour 'eans t%at lo)al i'ple'entation is re)o''ended+ For e+&+ default
'et%ods
;isten)e/%e)k and #isplay )o'e in red )olour for w%i)% lo)al redefinition )an be
done,
12ents:
;(ents are used to tri&&er WF+ "o )reate an e(ent sin&le )li)k on ;(ents and )li)k )reatei)on,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 62/161
A popup appears as below,
;nter e(ent na'e, s%ort na'e * des)ription,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 63/161
Testin# a B6:
HtKs ad(isable to test t%e 'et%ods )reated in B< on)e in SW<1 ")ode and ensure t%at
t%e desired
results are obtained before inte&ratin& t%e' in workflow tasks+ "o test a B<, enter B<
na'e in SW<1
")ode and )li)k test button,
A s)reen appears as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 64/161
/li)k on )reate instan)e i)on %i&%li&%ted abo(e to )reate a B< instan)e+ A popup
appears pro'ptin&
to enter keyfield+ Hn our )ase its P< no,
/li)k C$;; ti)k 'ark after enter t%e keyfield+ B< instan)e will be &enerated if t%e
keyfield eists+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 65/161
Sele)t t%e 'et%od to be test and )li)k on t%e ee)ute i)on found a&ainst t%e 'et%od+ Hf
t%e
'et%od %as any input para'eters a s)reen appears pro'ptin& to enter t%e',
"%ere is option to debu& t%e 'et%od by )li)kin& on #ebu&&in& button+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 66/161
ele#ation:
Assu'e we )reate a )usto' B< )alled RB-S2012+ Ht %as an e(ent )alled "$HCC;$WF
* a 'et%od
)alled FH#APP$<;$+ W%en we )onsu'e t%is B< in our WF we will 'ention t%e
tri&&erin& e(ent as
RB-S2012+"$HCC;$WF+ W%ile usin& t%e 'et%od in tasks we will refer as RB-S2012+
FH#APP$<;$+
Hn )ases w%erein we would like to use t%e standard B< in our WF rat%er t%an spe)ifyin&
t%e )usto' B<
we )an dele&ate t%e )usto' B< to t%e standard B<+ After dele&ation )usto' B< will bere'o(ed fro'
WF )ontainer+ Assu'e we dele&ate RB-S2012 to standard B< B-S2012+ Hn t%is )ase
we )an 'ention
t%e tri&&erin& e(ent as B-S2012+"$HCC;$WF and 'et%od in task as
B-S2012+FH#APP$<;$+
Alt%ou&% B-S2012 bein& a standard B< does not )ontain our )usto' e(ent * 'et%od
be)ause of dele&ation
'aintained it will internally )all t%e e(ent * 'et%od of t%e dele&ated )usto' B<+
ow to ele#ate?
Co to SW<1 ")ode+ ;nter t%e )usto' B< na'e w%i)% %as to be dele&ated+ Sele)t
Settin&sN#ele&ate
fro' t%e Menu as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 67/161
A s)reen appears as below+ /li)k ;#H" P;/H94 i)on,
A popup appears as below+ Pres C$;; ti)k 'ark in t%e popup,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 68/161
ew ;ntries button appears+ /li)k it,
A s)reen appears+ ;nter (alues as below to 'aintain t%e dele&ate,
Hn <b5e)t "ype field enter t%e na'e of t%e Std B< to w%i)% we our )usto' B< %as to be
dele&ated+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 69/161
;nter )usto' B< na'e in #ele&ation type field+ ;nter user id of t%e person in person
responsible field+
Sa(e your entries+ ote: At a ti'e only 1 dele&ate )an be 'aintained a&ainst an ob5e)t
type+ For e+&+ on)e
RB-S2012 %as been dele&ated to B-S2012 itKs not possible to )reate 1 'ore dele&ate
of RB-S2012;W
to B-S2012+
reatin# usto B6:
Co to SW<1 ")ode+ Ci(e B<$ na'e as R";S"B<$ and )li)k )reate i)on+ Hn t%e
appearin& popup
enter details as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 70/161
Super "ype input field is si'ilar to spe)ifyin& super )lass w%ile )reatin& our )usto'
)lass+ Hf we want
our )usto' B<$ to in%erit attributes, interfa)es, key fields, 'et%ods and e(ents fro'
anot%er B<$
t%en we )an 'ention t%at B<$ as super type+ <b5e)t na'e, a'e, #es)ription are fields
to identify
our B<$+ Ci(e rele(ant des)ription+ All our B< )ode will be sa(ed in a pro&ra'+ Ci(e
pro&ra' na'e
in )usto'er na'espa)e R.34+ "%is pro&ra' %elps us to 'ana&e different (ersions of
B< 'et%ods+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 71/161
Appli)ation refers to t%e do'ain.'odule in SAP for w%i)% we are de(elopin& t%is B<$+
I stands for
/ross Appli)ation+
7ersion .ana#eent of B6 Pro#ras:
Co to S;78 ")ode, enter t%e na'e of t%e pro&ra'+ /%oose -tilitiesNersionsNersion
Mana&e'ent
fro' Menu as below,
Sa(e t%e B<$ in a pa)ka&e+
Wh* to sa2e in a Packa#e?
We )an )reate 'et%ods in B<+ Hnitially t%e status of t%e 'et%od will be Modelled w%i)%'eans
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 72/161
t%e 'et%ods are not a))essible at $unti'e+ "o 'ake t%e' a(ailable for usa&e we %a(e to
release
t%e 'et%ods+ "%ere are 2 statuses in(ol(ed in releasin& a 'et%od+ First we %a(e to
)%an&e t%e status
fro' Modelled to H'ple'ented+ H'ple'ented 'eans 'et%od is only for test.internal
use, possible unstable+
Fro' H'ple'ented we %a(e to )%an&e t%e status to $eleased+ $eleased 'eans t%at t%e
'et%od is ready
for use+ "%ere is also a status )alled <bsolete+ <bsolete 'eans t%at t%is fun)tionality is
no 'ore in use
and %as been repla)ed+ ote t%at obsolete old fun)tionality will still be supported up to 2
releases+ Hf we
do not sa(e t%e B< in pa)ka&e we will &et an error 'essa&e as below w%en we try to
)%an&e t%e status
to $eleased,
W%ile releasin& a B< we need to first release t%e B< and t%en its )o'ponents like
=eyfield.Attribute.Met%od.;(ent+ Hf we try to release t%e )o'ponents before releasin&
B< we will &et a
'essa&e as below,
on$ition 0ase$ Workflow Tri##erin#:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 73/161
Start )onditions * /%e)k FM are 2 options to tri&&er WF only if so'e )riteria are 'et+
Recei2er '.:
"%is FM is )alled to start t%e workflow if t%e e(ent atta)%ed wit% t%e workflow o))urs
or if t%e /%e)k FM
eplained below4 ter'inates wit%out an e)eption+
heck '.:
"%is is )alled before re)ei(er FM+ Hn )ase of )o'ple )onditions and database a))ess
usin& sele)t ueries
we opt for )%e)k FM+ We )an )%e)k w%et%er our )o'ple )ondition in /%e)k FM is 'et
or not+ Hf itKs not
'et t%en raise an e)eption w%i)% will stop t%e workflow fro' tri&&erin&+
Start on$itions:
Start /onditions are used if t%e )ondition )%e)ked is si'ple epression for e+&+ "ri&&er
WF only if
plant 1000 or e'ployee a&e N 0 * desi&nation not eual to QS-P;$HS<$K+ WF
will not tri&&er
if t%e Start )onditions are not 'et+
15aple for heck '.:
HtKs 'andatory to ensure t%at t%e interfa)e of t%e )usto' )%e)k FM is sa'e as t%e
Standard /%e)k FM+
As a pra)ti)e )opy t%e Standard )%e)k FM for e+&+
SWB/>;/=FBS"A$"/<#;A9 to a
)usto' FM+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 74/161
Co to S;7+ ;nter FM na'e as SWB/>;/=FBS"A$"/<#;A9+ /li)k on
)opy i)on+ A
popup appears as below,
;nter a )usto' fun)tion &roup and a )usto' FM na'e+
/ode for abo(e )usto' FM,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 75/161
F-/"H< R/>;/=FM1+
IT
ITIT9o)al interfa)e:
IT HMP<$"HC
IT A9-;<B?"3P;4 9H=; SW;"3P;/<-<B?"3P;
IT A9-;<B?=;34 9H=; SW;HS"/<-<B?=;3
IT A9-;;;"4 9H=; SW;"3P;/<-;;"
IT A9-;$;/"3P;4 9H=; SW;"3P;/<-$;/"3P;
IT "AB9;S
IT ;;"/<"AH;$ S"$-/"-$; SW/<"
IT ;E/;P"H<S
IT ;$$<$;;"/<"AH;$;MP"3
IT ;$$<$/<#H"H<<"F<-#
IT ;$$<$/<;$"HC/-$$;/3
IT ;$$<$;A9-A"HC/<#H"H<
IT /<#H"H<;A9-A";S"<FA9S;
IT
data: l(bukrs type bukrs+
/o''ents:
#ata #e)laration
sele)t sin&le bukrs fro' ekko into l(bukrs w%ere ebeln <B?=;3+
oents:
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 76/161
B-S2012 is t%e B< used to tri&&er WF as its a workflow for Pur)%ase <rder $elease+
=eyfield of t%e B< is Pur)%ase <rder no+ <B?=;3 field )onsists of P< no+ We are
fet)%in&
t%e (alue of )o'pany )ode fro' ;==< table by passin& t%e <B?=;3P< no4+
if l(bukrs e J/;BMJ+
M;SSAC; ;70!W84
$AHSHC )onditione(aluatestofalse+
endif+
;#F-/"H<+
oents:
/%e)k if t%e )o'pany )ode is eual to Q/;BMK+ Hf yes t%en raise e)eption
)onditione(aluatestofalse
and do not tri&&er workflow+ For any ot%er )o'pany )ode e)eption will not be raised
and workflow will
be tri&&ered+ ote: We %a(e )o'plete a))ess to ;(ent )ontainer in a /%e)k FM+ ;(ent
)ontainer a))ess
refers to B< na'e, ;(ent na'e, B< =eyfield, para'eters in e(ent )ontainer and t%e
Workflow is supposed
to be tri&&ered H'port para'eter $;/"3P; 4+
After )reatin& abo(e FM we %a(e to assi&n t%e sa'e in SW;2 ")ode a&ainst our B< *
e(ent as below,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 77/161
We )an know w%et%er )%e)k FM resulted in e)eption or not fro' e(ent tra)e SW;9
")ode+ "ri&&er
t%e WF and &o to SW;9 ")ode+ Hn )ase of e)eption in )%e)k FM a s)reen SW;9
")ode4 appears
as below,
#ouble )li)k abo(e ite' to see 'ore details,
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 78/161
ontainers ; Bin$in# in epth:
H a' etre'ely deli&%ted to s%are t%e WH=H post by 'y ever inspiring Master whom I
adore a lot,
$efer link:
%ttp:..wiki+sdn+sap+)o'.wiki.display.ABAP.Bindin&O#efinitionOinOWorkflow about
/ontainers * Bindin& in dept%+
Thanks for rea$in#9 Please share *our 2alua0le coents9
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 79/161
The To. 10 6istakes made b+ Workow %eginners
/osted b+ /aul %akker in S)/ %usiness Workow on Feb G- 201? 2HI2HI? )6
Tweet
"%is SAP workflow blo& t%e t%ird in an o(erlya'bitious series spotli&%ts t%e top 10
'istakes 'ade by workflow be&inners aka QnoobsK4+ H )an truly )all 'yself an epert
in t%is area, be)ause HK(e probably done t%e' allU
9 Tr*in# to u$$le throu#h workflow usin# 4ust *our ABAP skills
H &ot 'y start in workflow ba)k in 200! w%en our Jworkflow &uyJ left suddenly, 5ust
before an $.7 i'ple'entation &oli(e+
H )onfidently (olunteered to take o(er, epe)tin& to use 'y ABAP skills to Qdebu&K t%e
workflow lo& and fi&ure out %ow it all fit to&et%er+ $idi)ulous of )ourse HJd %a(e 'ore
lu)k disse)tin& a )at+ Wit%in 2 weeks H %ad booked 'yself on an e)ellent4 2week
SAP workflow )ourse run by Paul Batey+ And t%en t%e s)ales lifted fro' 'y eyes+
H realised t%at workflow is 'ore about J)on)eptsJ and J)onfi&urationJ t%an it is about
J)odeJ+ #o not atte'pt to 'ess wit% it if you %a(enJt done t%e SAP )ourse or at least
partly di&ested t%e Workflow Book 4+
@9 onfusin# workites with eails
A (ery )o''on )on)eptual error+ Put si'ply, a workite' is a sin&le pie)e of work
typi)ally a de)ision task t%at )an be (iewed fro' 'ultiple inboes, and disappears as
soon as one a&ent pro)esses it+ Workite's )an only be sent to SAP syste' users+
Hn )ontrast, e'ails are typi)ally flat infor'ation ite's+ Multiple )opies are 'ade and
sent separately to inboes+ "%ey re'ain in ea)% personKs inbo until indi(idually read or deleted+ ;'ails )an be sent to anyone+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 80/161
&9 ,ot e5ecutin# SW%6B%' 0efore testin# *our workflow chan#es
H so'eti'es %ear t%at workflow is JflakyJ or Junpredi)tableJ+ And it )ertainly is if you
%a(e no understandin& of %ow bufferin& works+ But donJt worry: you only need to
re'e'ber to run transa)tion SW-<B-F before ee)utin& a workflow t%at %as been
)%an&ed+
"%is applies durin& de(elop'ent, but also in "est or Produ)tion syste's after a
workflow %as been transported in+ "%e w%ole buffer is refres%ed at 'idni&%t+
<9 'loo$in# users in0o5es with hun$re$s of workites
HK(e learnt t%e %ard way t%at not all appro(al . de)ision pro)esses are suited to
workflow+ Hf %undreds of ite's are &enerated per day for one pro)ess, itJs probably
better to %andle t%e' (ia a report instead+
Ht 'ay 5ust be a psy)%olo&i)al t%in&, but users rea)t (iolently to inboes t%at t%ey )anJt
possibly )lear often )o'pounded by a torrent of re'inder e'ails4+ "%ey eit%er stop
usin& t%eir inboes )o'pletely or )la'our to &et t%e workflow swit)%ed off+ o news is
better t%an a tsuna'i of bad news+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 81/161
/opyri&%t )4 127$F Sto)k P%otos
=9 ,ot chan#in# the $efault Recei2er error fee$0ack settin# in SW13A.
Hf you start a workflow (ia an e(ent, and so'et%in& &oes wron& e+&+ a 'andatory
para'eter is 'issin&4, t%e default SAP response is to deactivate the linkage between t%e
e(ent and workflow+
3es, you read t%at ri&%tV and yes, it is #HSAS"$<-S+ Any subseuent e(ents are lostfore(er, until you realise w%at %appened+ "%en you %a(e to s)ra'ble to fi t%e proble',
transport it to Produ)tion, and rea)ti(ate t%e linka&e+
Hn SW;GA#M, t%e settin& s%ould instead be JMark linka&e as %a(in& errorsJ+ "%is
'eans t%at t%e linka&e will not be )ut, and t%e e(ents will be stored until t%ey )an be
safely deli(ered later+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 82/161
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 83/161
E9 'allin# 0ehin$ in the housekeepin#
Ht is wron& to assu'e t%at if users are not reportin& any proble's, t%en t%e workflows
'ust be %u''in& alon&+ 3ou %a(e to be proa)ti(e and &o out lookin& for errors,
espe)ially w%en a new workflow &oes li(e+
We re)kon t%ere s%ould be 6ero toleran)e for SWH2#HAC errors+ At so'e sites we
%a(e found %undreds of t%e', and do6ens re4o))urrin& e(ery dayU "ransa)tion
SWH2#HAC s%ould not be )onsidered a tool for error %andlin&, but a bu)ket of last
resort+
/opyri&%t )4 127$F Sto)k P%otos
Co a%ead now: )%e)k SM8, SWH2A#M1, SWH2#HAC, SW;GA#M and SW;9+
F9 %sin# internal function o$ules (an$ ta0les) instea$ of SAPWAPIGs
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 84/161
A )o''on uestion posed on S/ runs alon& t%e lines of: w%at table %olds t%e
workflow )ontainer (alues W%o %as sa'ple )ode for fun)tion
SW;;;"/$;A"; B666t a&ain4+ #e(elopers s%ould not be 'essin& wit%
internal SAP fun)tion 'odules or tables+ "%ese )ould be )%an&ed on t%e net release,
w%i)% 'eans your )ode 'ay stop workin&+
Hnstead, use a WAPH+ "%ese are t%e SAP workflow eui(alent of BAPHs: fun)tion
'odules t%at pro(ide a do)u'ented ser(i)e, wit% an interfa)e t%at is &uaranteed not to
)%an&e+ For ea'ple: SAPWAPH/$;A";;;",
SAPWAPH$;A#/<"AH;$, SAPWAPHC;"WHAC;"S+
H9 ,ot puttin# enou#h inforation in the workite te5t
"%e t%ree Q$Ks of workflow are t%at work lands on t%e desk of t%e Qri&%tK person at t%e
Qri&%tK ti'e, and t%at all t%e infor'ation t%ey need to 'ake a de)ision, is Qri&%tK t%ere at
t%eir fin&ertips+
For ea'ple, w%en appro(in& a lea(e reuest, t%e super(isor 'i&%t need to know t%e
e'ployee details, t%eir )urrent lea(e balan)e, tea' lea(e reuests for t%e sa'e period,
and so on+
A &ood workite' tet )ontains all yes all of t%is infor'ation+ "%e user s%ouldnKt
need to &o anyw%ere or )li)k anyt%in&+ "ip: usin& webdynpros to render workite's
'akes ri)% displays a lot easier4+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 85/161
A comprehensive leave approval workitem
Hf t%at all see's a brid&e too far, at t%e (ery least pro(ide %yperlinks to all t%e rele(ant
business ob5e)ts+ "%is 'eans t%e infor'ation is only one )li)k away+
"oo often H see workite's wit% tele&rap%style tets like: QPlease appro(e lea(e reuest
X! for -S$H/=BK+ "%e poor users are left to tra)k down t%e details on t%eir own,
)ausin& frustration and delay+
9 A#reein# to $e2elop custo workflow reports
"%is is one of 'y pet %ates+ We &et )alled in to Qfi t%e workflowsK and it turns out t%at
t%e 'ain proble' is a)tually wit% a dod&y workflow report +
Hn al'ost e(ery pro5e)t, 'ana&ers reuest a QRK report so t%at t%ey )an tra)k t%e pro&ress
of say4 a P< t%rou&% t%e appro(al pro)ess+ "%ey want to know: W%o %as it in t%eirinbo now >ow lon& is it takin&
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 86/161
Hf you, as a workflow de(eloper, )a(e in to t%ese reuests, you will soon be up to your
ar'pits in R tables and update BA#Hs+ But all t%is pain adds no (alue at all+
H try to pus% ba)k and de'onstrate t%at all t%e reportin& t%ey need is )o(ered by C<S,
SW9<, SWH1, SWH2F$;G and for 'ore detailed analyses4, BH+ <n)e fa'iliar wit%
t%ese tools, t%ey )an use t%e' for reportin& on any workflow+
H probably %a(e a few 'ore of t%ese and will put t%e' in a blo& later+ Please s%are so'e
of your own pet %ates+
>appy workflowin&U
Paul Bakker
>anabi "e)%nolo&y
11. !R: Re"erencing # s$bt%pes instead o" t&es$pert%pe
"%is %as to be t%e 'ost )o''on be&innersJ 'istake, and yet is perfe)tly understandable+
Hf you dele&ate a B<$ ob5e)t say B-S100@ business partner4 to a subob5e)t
RB-S100@, you s%ould still always refer to JB-S100@J in your workflows, tasks and
e(ent linka&es+
"%atJs ri&%t: JRB-S100@J s%ould <93 be used w%ile )reatin& t%e B<$ ob5e)t and
settin& up a subtype+
<t%erwise: nun)a . ne(er . ni''er . nie'als . aldri& . 5a'aisU
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 87/161
Don't do this
>ere are so'e of t%e reasons:
• when +ou search for workow instances that use ob#ect %&S100J- +ounow have to also search for $%&S100J
• when +ou see an e*.licit reference to a $K ob#ect- +ou donLt know if ithas been copied or subt+.ed
•
it also .resents diMculties when searching through an al.habeticallist of events 3$K is a long wa+ from %K4
• if +ou onl+ ever refer to L%&S100JL- +ou can easil+ switch to a newsubt+.ed ob#ect 3e'g' $%&S100J24 and +our workows wonLt miss abeat''
12. Not catering "or all o$tside events
"%is is a blunder H %a(e 'ade 'any, 'any ti'es+ ?ust be)ause you %a(e built a &reat
workflow for appro(in& say4 lea(e reuests, t%is doesnJt 'ean t%at users will instantly
)%an&e t%eir %abits+ o, t%ey will still &et desk (isits, and t%ey will still appro(e t%e
lea(e reuest t%rou&% t%e old SAP transa)tion+
Hf your workflow doesnJt re)o&ni6e t%at t%is %as %appened, t%en you %a(e a bi& proble'+
-sers will rin&, askin& you w%y t%ey %a(e to appro(e so'et%in& twi)eV or t%e workflow
will &o into error w%en it tries to )%an&e a reuest t%at is already appro(ed+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 88/161
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 89/161
=o.+right 3c4 12?RF Stock /hotos
;(en if your business runs 2!., it still pays to use a fa)tory )alendar to )o(er all
e(entualities e+&+ future )%an&es or /%rist'as s%utdowns+
Be )areful t%ou&% if you )%oose a custom fa)tory )alendar 'ake sure it is )orre)t and
'aintained well into t%e future+ <t%erwise as reported in S/ your workflows will
stop dead w%en t%e )alendar stops+
1(. !ver)co*plicated +or,-o+s
W%en H arri(e at a new site, t%e first si&n of trouble is a workflow definition t%at looks
like a tan&led ball of spa&%etti+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 90/161
Pasta Chikatetsu ( sour)e: www+tokyo'etro+5p4
HtJs pretty rare t%at all t%is noise and fury is really needed to i'ple'ent a 'undane
business pro)ess su)% as P< appro(al4+
"ypi)ally, su)% workflows )ontain:
1' ) string of container o.eration ste.s- which serve as ersatNinitialiNations
2' @umerous activit+ ste.s that do nothing more than call a method toLgetL a value 3e'g' a userLs email address4
?' &nnecessar+ Sendmail ste.s
7' ) long list of workow container elements that- reall+- are #ust ob#ectattributes
I' ) s.rinkling of undefned ste.s 3wh+ oh wh+O4
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 91/161
ustify your e!istence
#oes t%is sound like one of t%e workflows at your site >ereKs %ow to )lean it up:
1' nitialiNationsH use the LinitialL tab on the workow container elementinstead
2' &se ob#ect attributes 3as e*.lained further in P124
?' >elete Send6ail ste.s that sim.l+ warn the user of a workitem' &se"*tended @otications instead
7' )gain- use ob#ect attributes
I' >elete delete delete
And on)e youJ(e done all t%at, )onsider tras%in& t%e w%ole t%in&+
Hn 'y eperien)e, workflows are often built Jon t%e flyJ, as reuire'ents are dripfed or
re&ularly )%an&ed+ <n)e you finis% t%e build, itJs wort% )onsiderin& w%et%er to redesi&n
fro' s)rat)%+
W%y H like to t%ink of a workflow definition as a 9;C<t'4 %ouse, w%ere t%e
tasks.steps are 9;C<t'4 blo)ks+ HtJs no proble' breakin& it all down a&ain, 5ust to see
if you )an desi&n so'et%in& sleek and ele&ant usin& t%e sa'e steps+
Si'pli)ity is so underrated+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 92/161
My first workflow
"mall, sleek # relia$le
1. /sing 0get0 *et&ods instead o" attrib$tes
"%is ite' ties in wit% X1!+ Ht is a )o''on 'istake 'ade by folks w%o are used to pro)edural pro&ra''in& and not so )o'fortable wit% << )on)epts+
#oes your workflow %a(e a step )alled JCet -ser a'eJ, based on a 'et%od
JCet-serna'eJ, w%i)% fet)%es user data and stores it in a workflow )ontainer )alled
J-serna'eJ W%i)% is t%en bound to a task )ontainer ele'ent J-sera'eJ, 5ust so t%at it
)an be used in t%e workite' tet
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 93/161
Sounds 5ust like a traditional ABAP pro&ra' :4
All t%is )o'pleity )an be a(oided if you instead define a (irtual4 attribute )alled
J-serna'eJ t%at is auto'ati)ally populated w%en t%e J-serH#J4 ob5e)t is instantiated+
"%e workite' tet )an t%en 5ust use Q-serid+-serna'eK+
@oteH f course- +ou have to use +our #udgement in this' f the
determination of an attribute is ver+ e*.ensive- +ou ma+ not want it
e*ecuted ever+ time an ob#ect is instantiated' n this case- a !"T method
might be the best a..roach'
1. Allo+ing *$ltiple copies o" t&e sa*e +or,-o+ to be
started "or t&e sa*e obect3event
ery typi)al be&innerJs error+ H )anJt belie(e we didnJt put t%is in t%e top 10+
3ou )reate a workflow for appro(in& )%an&es to a P<+ Ht &ets tri&&ered w%en t%ey
)%an&e a field fro' J"edJ to JFredJ+ But s%ould anot%er 7 workflows be tri&&ered if
before appro(al is &ranted4 JFredJ t%en be)o'es JedJ, t%en J;dJ and finally JMildredJ
-%, no+ -sers %ate t%isV w%i)% one s%ould t%ey appro(e
Qou could set a 0c&ec, "$nction0 on +our event linkage- so that no new
workow is started if an active workow alread+ e*ists for the same ob#ect'
r- when a change occurs- raise an event to ter*inate the e*isting
workow and start a new one'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 94/161
14. Panic,ing +&en %o$ see 0No Agent Available0 in t&e
+or,-o+ log
#onJt worry it doesnJt 'ean t%at t%e workite' )anJt find an a&ent+ Ht 5ust 'eans t%at noone %as started pro)essin& t%is dialo& workite' yet+
Per%aps a better translation fro' t%e Cer'an would be Jot yet startedJ or JWaitin& to be
pro)essedJ+
15. /sing d$**% +ait steps o" arbitrar% lengt&
So'e workflows are pun)tuated wit% wait steps du''y steps t%at )all a du''y
'et%od t%at %as an ABAP state'ent like WAH" -P "< 100 S;/<#S in it+
Apart fro' bein& inele&ant, you s%ould uestion w%y a JwaitJ is reuired and w%et%er
100 S;/<#S is lon& enou&%+ <r per%aps too lon&+ WouldnJt t%at depend on %ow busy
t%e syste' is And 'i&%t it not )%an&e o(er ti'e
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 95/161
"ypi)ally a JwaitJ step is inserted be)ause you need a pro)ess to finis% before you )an
)ontinue for ea'ple, t%e business partner %as to be fully created before we )an
change it+ Hn )ases like t%is, a Jwait for e(entJ step 'i&%t be 'ore appropriate+
Anot%er option e+&+ in lo)kin& s)enarios is to use te'porary e)eptions+
16. Pa%ing lip service to !! design
H si&% loudly w%en H see )usto' e(ents wit% na'es like JStartAppro(alWorkflowJ+ "%at
na'e does not des)ribe a real Je(entJ in t%e life of a assess'ent do)u'ent+ And it
lea(es open t%e 'ystery of w%ere t%is e(ent 'i&%t be raised+++4
Hn )ontrast, %ere are so'e reallife ob5e)t e(ents: /$;A";#, />AC;#, $;?;/";#+
Hf you want to start an appro(al workflow, you s%ould fi&ure out w%i)% e(ents4 s%ould
tri&&er it, not in(ent a bo&us one purely for workflow purposes+
For ea'ple, if an assess'ent needs appro(al w%en itJs /$;A";# or />AC;#, t%en
you )an si'ply link t%e appro(al workflow to t%ese two e(ents (ia SW;24+
Si'ilarly, t%e 'et%ods of an ob5e)t s%ould represent A/"H<S on t%at ob5e)t+ #onJt
s%oe%orn a JSend'ailJ 'et%od onto a Sales<rder ob5e)t, 5ust be)ause you )anU
27. Developing c$sto* progra*s to c&ange +or,-o+s 3
+or,-o+ containers
"%is )%i'era )o'es up fairly re&ularly in S/ a 'isbe&otten idea to write a report
t%at will auto'ati)ally appro(e . forward . obsolete so'e outstandin& workite's+ "%atJs
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 96/161
bad enou&%, but 'u)% much worse are pro&ra's t%at seek to Jpop t%e bonnetIJ and
dire)tly update )ontainer (alues fro' outside t%e workflow+
Cood lu)k tryin& to understand your workflow lo&, on)e pro&ra's like t%at start
'essin& wit% itU
Hf you feel you %a(e to resort to su)% 'easures, t%en you probably need to study up on
workflow features and desi&n prin)iples+ Pretty 'u)% all of t%e abo(e )an be %andled
t%rou&% 'odelled deadlines or ter'inatin& e(ents+
8&anging t&e pre9 n$*bers in a +or,-o+
By /%andrasek%ar , ;#S
Every workflow definition is assigned with an 8digit number with the !refi" #$. $ee
the screenshot below%
&he first ' digits in the above 8digit number is common for all the workflows created in
a s!ecific client. Please note that this !refi" is not common for all the clients.
or e.g. *f the workflow definition is saved with +#$,--/0 then it means that ,-
is the Prefi" and is common for all the workflow definitions created in that client.
&his tutorial focuses on the !rocedure to change the !refi" as !er the re1uirement.
2o to transaction +$#3'0 (4utomatic #orkflow 5ustomi6ing)
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 97/161
$elect +Maintain 7efinition Environment0 and click on e"!and.
$elect +Maintain Prefi" umbers0 o!tion 9 right click on it. 5lick on +E"ecute 4ctivity0.
($ee the screenshot below)
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 98/161
*t dis!lays the !refi" numbers assigned to different clients.
&o change the !refi" numbers click on change mode (5trl:;)
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 99/161
Make a note of all the information like $4P $ystem 5lient 9 Package before
changing.
$elect the record to be changed%
5lick on delete icon%
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 100/161
5lick again on delete. Entire record gets deleted.
5lick on +5reate0 icon%
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 101/161
2ive the Prefi" number as +,-'0 (new number) and click on save.
Enter the !ackage name and click on +continue0.
<enceforth all the workflow definitions would have the !refi" ,-'.
SAP Wor,-o+ 8$sto*i;ation Settings <=o+ to do>
&his document details the basic workflow customi6ation that needs to be done in any $4P
system before activating the workflow definitions.
2o to transaction $#3'. =or this demo we have used an E55 >. *7E$ system?
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 102/161
&he descri!tion or the hel! for each of the above ste!s are available on the right side of the
screen.
Configure RFC Destination
&his can be done automatically or manually. *f done automatically as mentioned on the right
side frame the logical @5 destination #A@LA#CLA54LCDDD is created (if not available).
DDD is the client number. 4lso the user #B4&5< is also created if not already available.
&he advantage of e"ecuting the above ste! manually is we can maintain another user and
!assword as re1uired.
$elect the ste! 5onfigure @5 destinationF and click on ,.
*f you ha!!en to get the following !o!u! click on Ges.
Ance the @5 destination you can see the 2reen &ick mark beside 5onfigure @5
7estinationF (as shown in the screenshot below)
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 103/161
Maintain Workflow System Administrator
$ince the system being used for this demo is an *7E$ system some user is maintained as
workflow administrator. Gou can change this to the desired 3ser using this ste!.
$elect Maintain #orkflow $ystem 4dministratorF and click on 8.
ow you can change the 3serid to the desired one.
&he ste!s Maintain 4ctive Plan HersionF 5lassify 7ecision &ask as 2eneralF 7ocument
2enerationIorm *ntegrationF and Maintain &ime 3nitsF are already in 2reen. *f not in 2reen
select the corres!onding ste! and click on ,. &he automatic configuration would be done.
Schedule Background Job for Missed Deadlines
&his is the Job which checks if any work item has
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 104/161
$elect this ste! and click on 8.
&here are chances that you might encounter the following error%
&o resolve this you need to maintain the default !rinter in your user !rofile of #B4&5< orchange the !rinter to a valid one. 2o to $#3; and enter #B4&5<. avigate to tab7efaultsF.
*n the above screenshot the out!ut device is maintained as LP; which is not valid. <ere * ammodifying the same to LA5L. 4lso the check bo" Aut!ut immediatelyF is marked +D0.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 105/161
$ave your entries.
ow let us go back to transaction $#3' and the ste! $chedule Background Kob for Missed7eadlinesF. 5lick on 8.
Gou would get the following screen%
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 106/161
7e!ending on the business re1uirements we can change the interval to the desired level.<owever ' minutes is the minimum duration the system acce!ts.
5lick on $ave and $cheduleF. Gou would get the !rom!t for the customi6ation re1uest.
ow similarly schedule the Jobs #ork items with errorsF and 5ondition evaluationF.
or the ste! $chedule Background Job for Event ueueF click on , (4utomatic e"ecution).
$ee the screenshot below%
ow we can observe the green tick mark beside Maintain @untime EnvironmentF.
ow let0s move to Maintain 7efinition EnvironmentF
Maintain refi! "umbers
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 107/161
4ll the obJects related to workflow (standard task workflow tasks and others) are assigned aeight digit number. &he !refi" number is used for the first ' digits and the rest five isautomatically assigned by the system (starting with ;).
$elect Maintain Prefi" umbersF and click on 8.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 108/161
5lick on 7is!lay=?5hange.
5lick on create.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 109/161
Enter a !refi" number which is not allocated to any other client in the system.
$ave your entries.
ow you can observe the green tick mark beside Maintain !refi" numbersF.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 110/161
*f you do not intend to work with <5M related workflows the ne"t ste! 5heck Entries from <@5ontrol &ablesF is not mandatory.
&o maintain this ste! !lease visithtt!%IIwww.sa!technical.comI&i!sI#orkflowI5ustomi6ationI<@&ables.htm .
4fter com!letion of the above ste! we can now observe that the ste!s regarding Maintain@untime EnvironmentF and Maintain 7efinition EnvironmentF are in green now.
3nless you !lan to use the 2uided Procedures the above configuration should be fine to workwith the workflows in $4P @I'.
ow to test the workflow configuration click on $tart verification #orkflow (-)F. #e would getthe following !o!u! message%
ow go to your $4P *nbo" to check the work item (&ransaction $B#P)
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 111/161
E"ecute the work item.
#e can choose one of the two o!tions to test the workflow configuration. Let us chose the firstone.
Gou would now receive two emails in your $4P inbo"%
&his com!letes the workflow configuration.
Ad =oc agent assign*ent in Wor,-o+
By Sat%is =u'ar $, Guinte&ra Solutions
&his 4rticle is about the 4dhoc 4gent 4ssignment for workflow. &he workflow initiator assigns a
reci!ient to the ste!s in the workflow at runtime#
Scenario$
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 112/161
4ssigning 4dhoc 4gent for the task N create the leave formN.
Ste% by ste%$
5reate the new workflow named as NwfCOadhoc N
7rag and dro! the activity from the ste! ty!e.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 113/161
ow create a new task for leave form.
*n that give your own abbreviation and name for the task.
AbJect 5ategory % BA@ AbJect
AbJect &y!e % A@M4B$E5.
Method % 5@E4&E.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 114/161
ow save the task and go back .ow the binding between the task and the workflow was shown
like.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 115/161
5lick ok (&ick mark) button.
ow the task com!lete o!tion was active.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 116/161
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 117/161
ow )%oose t%e task and )li)k t%e attributes button+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 118/161
/%oose t%e Ceneral "ask and )li)k t%e "ransfer button+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 119/161
3ou &o ba)k to t%e workflow builder now t%e A&ent Assi&n'ent was a)ti(e+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 120/161
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 121/161
/li)k t%e /ontinue Button+
ow it s%ows your "ask u'ber and a'e and )%e)k w%et%er t%e Tinsert t%e
workflow )onstru)tor and workflow destru)torT will be sele)ted or not+ Hf not 'eans
now you sele)t t%at option+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 122/161
/li)k t%e /ontinue Button+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 123/161
ow t%e wi6ard was )o'pleted )li)k t%e /o'plete Button+
3ou )%e)k t%e task it will auto'ati)ally filled t%e a&ent na'e as:
*A&ent0001+A&ents*
ow you )an Sa(e t%e Workflow and a)ti(ate it+
;e)ute t%e Workflow+
ow its looks like t%e followin& fi&ure+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 124/161
3ou )li)k t%e Ad%o) A&ent tab+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 125/161
3ou enter t%e na'e of t%e user w%o wants to do t%is task + Hn 'y ;a'ple H entered
#e(eloper2+ And t%en )li)k t%e /%e)k A&ent Button+ Ht auto'ati)ally )reates t%erando' key for t%at user and it will be assi&ned to t%e A&ent001+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 126/161
ow a&ain )li)k t%e ee)ute Button+
ow t%e 9ea(e For' will be waitin& for t%e user to fill+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 127/161
Passing a &%perlin, in a Wor, ite*
By Soura( $oy)%owd%ury, /ap&e'ini Hndia
*n this scenario we will check how a hy!erlink is !assed in a work item te"t. *t will a!!ear as
hy!er link. #hen we click on the same it will take you to the corres!onding website.
or the same we will !re!are a sim!le #orkflow for leave re1uest. &he workflow will have a user
decision task ste! and following that email ste!s for confirming the a!!rovalIreJection of leave
re1uest.
*n the decision task te"t the 3@L will be !assed as hy!er link.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 128/161
4fter saving the # click the Builder button.
4s we want to !ass different te"t in the decision task co!y the standard task +&$8/>Q0 and
create a new one.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 129/161
Before that let us create a # container element to hold the value of 3@L and !ass it to the task
level.
Lets us now create the new decision task.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 130/161
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 131/161
4ctivate the # and it will finally look like this.
ow test the #. or testing !ur!ose we will use the 3@L +www.rediff.com0. Atherwise one hasto !re!are the 3@L in the method or by any means and !ass it in this container.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 132/161
&he # has startedR !lease check the $4P inbo" to check the message.
&he 3@L comes as hy!erlink. Let us click on it and check.
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 133/161
Workows for >ummies 8 ntroduction3/art 4
/osted b+ Sa.na 6odi in sa.na'modi on Feb 19- 200G JH2GH0J )6
Tweet
The /art of Workows ntroduction gives the basic details about the
workow usage as a tool and the features involved' n /art - the details
about the workow builder will be covered' n the subseEuent .arts- more
details about the runtime anal+sis tools of workows will be discussed'
What are S)/ %usiness WorkowsH
&sing S)/ %usiness workows- one can dene the business .rocesses that
are not +et ma..ed into S)/ s+stem' Workows are suitable for the
situations where the given task is e*ecuted re.eatedl+ or when the large
number of .eo.le is involved in the com.letion of that work' Workows canbe used in con#unction with the e*isting business scenarios e'g' during the
standard functionalit+ errors or e*ce.tions occurs then workow can be
triggered on these actions'
There are lots of standard workows available from S)/ for dierent areas
like Sales , >istribution 3S>4- Travel 6anagement 3T4- Treasur+ 3TR4-
!eneral (ogistics 3(4- and /ersonnel 6anagement 3/)4 etc'
Wh+ WorkowsH
Following are the scenarios- which occur on dail+ basis in each organiNation 8
• Finding out what work needs to be done
• /lanning of work that needs to be done amongst the grou. of .eo.le
• The identication of roles , res.onsibilities on who will do what- when, in how much time
• Working in coordination with others
• nforming ne*t .erson about his work to be done- when the earlierone has nished his own
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 134/161
• >u.lication of work that has been alread+ done because ofcommunication ga.-ineMcient knowledge transfer , the incom.letedocumentation in the central re.ositor+
• dentication of dela+ in the com.letion of the work
• /re.aring status on this dela+
•
Workows hel. to o.timiNe each of the above scenarios' n workowsthe .rocesses are linked to each other and ow one after the other' )teach ste.- a right .erson 3)gent4 will take care of the .rocess' f theste. doesn,P17Jt need an+ interaction then the .rocess owsautomaticall+'Aere deadlines can be set for the activities de.ending on the fair timethat ste. needs to com.lete' nce this deadline is reached and the.rocess is not .erformed b+ the concern then the administrator
3manager4 gets the notication mail' Aere as the right .eo.le can beke.t in loo. in this automated .rocess so a disci.lined workatmos.here is automaticall+ .lanned in the organiNation'>ue to this automated s+stem- the .rocess becomes trans.arent toall the users and the risk of manual errors is also reduced' )gain thetime reEuired to com.lete an+ work manuall+ is sim.l+ reduced inthis automated s+stem' So this adds to the Euicker com.letion oftargets and hence leads to the nancial growth of the organiNation'
Features of WorkowsH
• @ew business .rocesses can be easil+ dened with the workows'
• Workow uses the e*isting transactions and functions withoutchanging them'
• Workow uses the rganiNation structure' This hel.s in the term ofchanges to organiNation structure- which will be immediatel+ in eectin the e*ecution of workows'
• (ots of tools are available in the workow like tools for denition-anal+sis and monitoring of work .rocesses'
• Workow tem.late 3transactionH /FT=4 can also be created for theworkow denitions'
• Workow %uilder is a ver+ eective tool available for creation- changeand dis.la+ of workow denition'
• )gents can be easil+ maintained in the workows' The+ receive thework item in their S)/ %usiness Work.lace- which the+ will .rocess'
• >eadline monitoring can be easil+ used against the tasks for the
dened agents'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 135/161
• &sing %usiness b#ect "ditor 3transactionH SW14- we use thebusiness ob#ects in workows' These business ob#ects hel. to use theS)/ standard functionalit+ in workows'
• )%)/ =lasses can also be used in workows along with the business
ob#ects'
• %usiness Workow e*.lorer gives the overview of all the tasks'
• Workow can also be used on nternet' This is es.eciall+ useful for themanagers- who might not be directl+ accessing the S)/ transactions'So the a..roval forms generated via workows can be sent oninternet' This is even useful for the .eo.le who mainl+ .re.aring S)/data and not knowing much about the S)/ transactions' The+ can begiven a sim.le web form for entering data , on submitting data ofthis web form workow can be started'
• Several workow wiNards are also available for su..orting theworkow denition
• ersion management is available for workows' nl+ one version canbe active at one time- which is referred while e*ecution'
• (ots of administrative tools are available for control and anal+sis ofworkows'
• (ots of diagnostic tools are also available in workows'
/rereEuisites of using WorkowsH
• S+stem ReEuirementH R:? Release ?'0 , above
• 6ail servers involved should be S6T/ =om.liant if the workowinvolves email notications'
• )s the workow ma+ e*ecute lots of background #obs so it ma+reEuire lots of s+stem resources' Aence the hardware should beenough to fulll all these reEuirements along with the normalfunctionalit+ of the server without aecting the s.eed'
• =ustomiNation SettingsH
o Following are the customiNing settings needed to useworkows8
With the S+stem Su.ervisor >- go to transactionSWU3(Automatic Workow Customizing)
=lick on the button Perorm Automatic WorkowCustomizing (F) from the a..lication toolbar for
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 136/161
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 137/161
=lick on Create button from the a..lication toolbar tocreate a new .re* range'
!ive the /re* @umber as for custom develo.ment
, click on Sa*e button'
The newl+ created .re* a..ears as activated in thetable'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 138/161
o The user triggering the workow should have his email >maintained in the SU+ transaction'
o
o S6T/ =ongurationHFrom S)/ W)S J'10- S)/ directl+ su..orts S6T/ 3Sim.le 6ail
Transfer /rotocol4' This means that the emails can be
e*changed directl+ between S)/ s+stem and an+ S6T/com.liant mail server' From S)/ W)S J'20- fa*es- .ager , S6Scan also be e*changed via S6T/'
!oto transaction SC,# '
!oto menu -iew !. 'ode
!oto S/#P node' >ouble click on the reEuired nodewhich is 0 in this case'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 139/161
=lick on the /aintain 'ode button'
!ive the 6ail Aost , 6ail /ort for outgoing mails' =lickon Set for 1nternet o.tions to set'
!ive the )ddress )rea as 0 for the recei.t addresses')lso set the ut.ut formats for the SAP 2ocuments asshown in the image below' n the s.ecied format the
out.ut will be sent as attachment in the email'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 140/161
=onrm the settings'
Similarl+ /ager:Fa* settings can be done' ForPager(S/S)- the .rereEuisite is that in transaction SA+-the .aging services should be dened' nce this is done-the here in the SC,# transaction- click on Set ad4acentto Pager (S/S)'
6ention as 0 in the Address area for the recei.t numberand >omain name in the 2omain in.ut'
=onrm the entries' The S6S will be of the formatS6SUReci.t@umberV>omain
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 141/161
Transactions nvolvedH
(ots of transactions are involved in the Workow tool' 6a#orit+ of them are
for runtime anal+sis and diagnosis' The details of these transactions can be
found from S)/ "as+ )ccess menu'
Following are the freEuentl+ used transactions 8
• =ustomiNation SettingsH
o SW&? 8 )utomatic =ustomiNing Workow'
o S=T 8 S)/ to mail server =onguration
o S&01 8 &ser 6aintenance
• Workow >esignH
o S"?G 8 Function %uilder
o S"? 8 )%)/ "ditor
o SW1 8 %usiness b#ect %uilder
o /FT= 8 Task 6aintain
o SW>> 8 Workow %uilder
• Runtime %ehavior:)nal+sisH
o S%W/ 8 %usiness Work.lace
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 142/161
o SW&> 8 Workow >iagnosis
o SW&X%&F 8 S+nchroniNe Runtime %uer
o SW/R 8 Workow Restart )fter "rror
Workow TerminologiesH
• Workow builderH Workow builder is the business workow tool forcreating- editing and dis.la+ing the workow denition'
The Workow %uilder .rovides a gra.hical modeling view- which givesa direct overview of the .rocesses of the dierent ste.s' )lso there isa tree view to shows all ste.s of the workow denition in ahierarchical view'
•
• Workow =ontainerH The workow container contains workow8s.ecic s+stem elements as well as other container elements- whichare dened e*.licitl+'=ontainer elements for which the im.ort or e*.ort indicator is setform the interface of the workow' This interface is valid for allversions of the workow denition' =ontainer elements for which noim.ort or e*.ort indicators are set are local container elements of theworkow denition and are valid onl+ in the versions of the workowdenition in which the+ were dened'
•
• WorkitemH Workitem is runtime re.resentation of a task or a ste. inthe workow denition' There are various t+.es of work item'
The S)/ S+stem determines the reci.ient3s4 of a work item i'e' )ctual)gent from the intersection of res.onsible and .ossible agents' f thisintersection is em.t+ then no bod+ will get this workitem for further.rocessing'
•
• >ialog WorkitemH ) work item 3t+.e W4 which at runtime re.resents a
workow ste. or a task that reEuires dialog with the user' T+.icall+-dialog work items are dis.la+ed in the %usiness Work.lace' When adialog work item that is based on a task is e*ecuted- the underl+ingob#ect method is called' Qou can monitor deadlines for dialog workitem e*ecution'
•
• Triggering "ventH Triggering event is the one- whose occurrencetriggers or starts the workows or tasks'
The event must be entered as a triggering event for the task or
workow that is to be started' The event linkage must be activated' The event must be dened as an ob#ect t+.e com.onent in the%usiness b#ect %uilder' ) task or workow can have several
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 143/161
triggering events' nformation from the event creation conte*t can be.assed in the binding from the event container to the task containeror workow container'
•
• %lockH %lock is an element of workow denition' t contains theconsistentl+ arranged ste.s and o.erators' t has one start and oneend' The consistenc+ and robustness of a workow denition isensured because a block is alwa+s created when a new ste. iscreated- or an undened ste. is changed' Similarl+- when individualste.s are deleted- cut- or inserted- the entire block in which the ste.is located is aected'
•
• Ste.H ) ste. is an entit+- which can be inserted into the workow
builder' Whenever e*ecuted- ste. gives the .redened desiredresults'
The ste. is alwa+s dened in block' There are dierent t+.es of ste.savailable in workow builder to .erform dierent kinds of o.erations'
These ste.s are )ctivit+- Web )ctivit+- Send 6ail- Form- &ser >ecision->ocument from Tem.late- =ondition- 6ulti.le =ondition- "vent=reator- Wait- =ontainer .eration- /rocess =ontrol- (oo.3&ntil4- Fork-&ndened- )d hoc )nchor- (ocal Workow , %lock'
•
• TaskH Task 3Standard Task- =ustomer Task4 is used to dene the)ctivit+ ste. in workow denition' Task can be e*ecutedinde.endentl+ also'
•
• Task =ontainerH Task container is a location for storing data from thetask environment' The task container contains the information aboutthe ob#ect reference to the ob#ect to be .rocessed- the actual agent of workitem- necessar+ in.ut .arameters for the method' These.arameters come from workow container after the binding between
workow container and task container' t also stores the informationavailable after the method .rocessing' The task container contains some .redened workow s+stemelements' ne can dene more container elements in the taskcontainer' t is also known as a work item container at runtime'
•
• Res.onsible )gentH Res.onsible )gent is a user assigned to a ste. inthe ste. denition' "*.ressions- organiNational ob#ects- or rules canalso be used to assign the res.onsible agents'
•
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 144/161
• /ossible )gentH /ossible agent is a user who is authoriNedorganiNationall+ to start a task and e*ecute the relevant work item'
•
•
)ctual )gentH )ctual )gent is the .erson who receives a work item forfurther .rocessing' The agent can be directl+ assigned to ste. oragent determination can ha..en d+namicall+ at run time either fromrule or from the organiNation structure'
•
Workow %inding =once.tH
There is three level of two wa+ %inding conce.t involved in workows' Aere
binding is meant b+ the interaction between two consecutive levels using
variables 3m.ort:"*.ort .arameters4' The rst level of binding e*ists
between the event triggering the workow and the workow,P17Jscontainer i'e' workow gets the necessar+ in.uts for .rocessing' The second
level of binding e*ists between this workow container and the ste. 3task4
container' )nd the third level of binding e*ists between the ste. 3task4
container and the method inside this ste. 3task4'
Aere the values in the variables are .assed to workows- which then ows
to tasks , nall+ to corres.onding methods as m.ort .arameters' The
outcome of these methods if needed can be .assed back to task , then
nall+ to workow' The outcome of one task can also be .assed to ne*t
tasks using this binding conce.t'
Workow %uilder in %riefH
• Transaction for workow builder is SW22'
• The workow builder is divided into dierent areas like nformation)rea- @avigation )rea- Ste. T+.es- !ra.hical 6odel- Results of S+nta*
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 145/161
check etc as shown below'
• n the nformation )rea- the information about the workows likeworkow number- version and the status of the workow aredis.la+ed'
• n the navigation area- all the ste.s of workow denition aredis.la+ed in seEuence'
• The Ste. T+.es a..ear in the b#ects section of the workow builder' This ob#ect section consists of following o.tions in the dro.down- onewhich can be viewed in the workow builder' e'g' in the current case-Ste. T+.es are dis.la+ed'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 146/161
o Ste. T+.es That =an %e nserted
o Workow =ontainer
o 6+ Workows and Tasks
o >ocument Tem.lates
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 147/161
o Workow WiNards
o Teamworking
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 148/161
o Workows of this >enition 3utcome4
o @ote t
• )t the bottom of the workow builder- the s+nta* check results areshown as either informator+- warning or error messages'
• n the !ra.hical view- the actual denition of workow is build b+dragging the ste.s from the ste.s list or b+ right clicking the ste.directl+ on undened one' The default ste.s in ever+ workow areWorkow Started- &ndened ste. and Workow =om.leted'
• Triggering "vent for this workow can entered in the workow builderb+ menu !oto 8 %asic >ata' Aere enter the relevant business ob#ectand the event name' )ctivate the link and binding'
• nce the workow is built here' t needs to be activated so that it can
be used further'
• Workows can be locall+ tested at the %uilder level also'
•
• Following t+.es of ste.s can be inserted into the workow builder'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 149/161
S+mbol Ste.
@ame
Function
)ctivit+ )ctivit+ is used to e*ecute the methods of %usiness
b#ects' )t runtime it does the e*ecution of a task or sub
workow
Web
activit+
The content of container elements is sent to a &R(
unchanged or in the form of a generated 56( document'
The ste. can wait for a re.l+' =ommunication with a
.rocess started b+ a Web activit+ is .ossible' ) .rocess
started b+ an 56( message can communicate with its
caller'
Send mail This is used to send mails to S)/- nternet mail
addresses' The te*t entered in this ste. t+.e is sent as ane8mail'
Form The data in a container element that refers to a structure
can be dis.la+ed- .rocessed- or a..roved as a form'
&ser
decision
The actual agent will be given choices to e*ecute the
workitem with dierent decisions' The .rocess ow of the
current workow is controlled on the basis of a decision
made b+ the current agent'
>ocument
from
tem.late
) document is created from a document tem.late'
=ondition ne of two branches dened in the workow denition is
.rocessed' The s+stem makes the decision based on
dened conditions' When doing this- this s+stem takes
account of information from the conte*t of the workow
or the a..lication ob#ects .rocessed'
6ulti.le
condition
ne of several branches dened in the workow
denition is .rocessed' To do this- the s+stem checks the
value of a container element in the workow container'
"vent
creator
)n event is created'
Wait for
event
The s+stem waits for a s.ecic event' The work item is
onl+ com.leted if the e*.ected event occurs' The event
can also be triggered b+ the occurrence of an 56(
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 150/161
document'
=ontainer
o.eration
"lementar+ arithmetic o.erations or value assignments
are a..lied to individual elements of the workow
container' "'g' Setting u. ag values for .rocessing can
be done here'
/rocess
control
The functions =ancel work item or Set work item to
obsolete are a..lied to other work items of the current
workow'
(oo.
3&@T(4
) seEuence of ste.s is .rocessed re.eatedl+ until the
dened termination condition occurs'
(oo.
3WA("4
) seEuence of ste.s is .rocessed re.eatedl+ as long as
the dened com.arisons a..l+' The s+stem leaves the
loo. when the basis of com.arison does not agree with
an+ of the com.arison values'
Fork The .rocessing that follows takes .lace in a fork' ne can
dene how man+ branches have to be e*ecuted for the
fork to be successfull+ com.leted- or can dene an end
condition in the condition editor'
&ndened
ste.
@o function at runtime' &ndened ste.s alwa+s have an
outcome'
)d hoc
anchor
n the denition- one can save workows that can re.lace
this ste.' )t runtime- an authoriNed user can select one
of the saved workows' The ad8hoc anchor is then
re.laced b+ the ste.s of this workow'
%lock Ste.s can be grou.ed together in workow block'
(ocal
Workow
(ocal workow in the caller workow has the local
container and has full access to the workow container
as well' The local workow gets triggered b+ local events
in the caller workow'
Aow Workow can be Started:TriggeredH
Workow can be triggered in following dierent wa+s ,P1I0
• )utomaticall+ %+ Triggering "ventsH Workows can be triggered using
events' Whenever this event occurs- workow automaticall+ gets
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 151/161
triggered' For this- the event must be s.ecied as the #riggering5*ent '
• )utomaticall+ %+ using WorkowH Workow can be triggered if it iss.ecied as the ste. of another workow'
• 6anuall+H
o Workows can be triggered manuall+ in the standardenvironment where the necessar+ in.ut data is given toworkow with triggering event'
o )lso workows can be triggered in testing environment i'e' indevelo.ment environment for testing .ur.ose'
o Workow can be stared using Start Transaction' Start Transaction is the one whose e*ecution allows all the im.ort.arameters of a workow to be entered' )fter the starttransaction has been e*ecuted- the S)/ S+stem starts theassociated workow with this data'
o ) user can start a workow or task from a message issued b+the s+stem' ) workow or task must be assigned to themessage' )n a..ro.riate function for this is available to theuser in the message long te*t'
Workows for >ummies 8 Workow %uilder3/art 4
/osted b+ Sa.na 6odi in sa.na'modi on ).r 2G- 200G 9H22H7J )6
Tweet
The /art of Workows ntroduction gives the basic details about the
workow usage as a tool and the features involved' n /art - the details
about the workow builder will be e*.lained' n the .art - more details
about Workow %uilder will be covered' n subseEuent .arts %usiness b#ect
%uilder , details about the runtime anal+sis tools of workows will be
discussed'
What are S)/ %usiness WorkowsH&sing S)/ %usiness workows- one can dene the business .rocesses that
are not +et ma..ed into S)/ s+stem' Workows are suitable for the
situations where the given task is e*ecuted re.eatedl+ or when the large
number of .eo.le is involved in the com.letion of that work' Workows can
be used in con#unction with the e*isting business scenarios e'g' during the
standard functionalit+ errors or e*ce.tions occurs then workow can be
triggered on these actions'
There are lots of standard workows available from S)/ for dierent areas
like Sales , >istribution 3S>4- Travel 6anagement 3T4- Treasur+ 3TR4-
!eneral (ogistics 3(4- and /ersonnel 6anagement 3/)4 etc'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 152/161
What is Workow %uilderH
Workow builder is the business workow tool for creating- editing and
dis.la+ing the workow denition'
The Workow %uilder .rovides a gra.hical modeling view- which gives a
direct overview of the .rocesses of the dierent ste.s' )lso there is a tree
view to shows all ste.s of the workow denition in a hierarchical view' Forgra.hical modeling view- the .rereEuisite is to have S)/!& for Windows'
Transaction for Workow %uilderH
SW22
6enu .ath for Workow %uilderH
SAP /enu !. #oo6s !. "usiness Workow !. 2e*e6opment !. 2efnition
#oo6s !. Workow "ui6der !. Workow "ui6der
Features of Workow %uilderH
• ersion management for workows is featured' 36enu Workow !.7enerate -ersion4'
• m.ort:"*.ort feature is available for workows with somerestrictions' This im.ort:e*.ort ha..ens through the 56( version of
workows' 36enu Workow !. 1mport859port::4'
• .tion of .rinting is available for the workows' This o.tion is forgra.hical dis.la+ as well as for individual ste. details- which areselectable for .rinting' 36enu Workow !. Print::4'
• Testing of workows within builder is .ossible' 36enu Workow !.#est 4'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 153/161
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 154/161
• 6an+ times it so ha..ens that changes are made but the+don,P17Jt reect in workow results due to buer s+nchroniNation'ne can s+nchroniNe the runtime buer from workow builderdirectl+' This s+nchroniNation ha..ens for Tasks 3single8ste. tasks-multiste. tasks4- rganiNational environment 3assignment of tasks4-Workow S+stem Settings 3RF= >estination- and so on4'
From the menu 59tras!.#ransport!.S;nc<ronize runtime =u>er - onecan goto transaction SWU?,"UF of buer s+nchroniNation'
=licking on Start S;nc<ronization will refresh the buer'
• There are dierent o.tions available in workow builder foriews:>efault Settings:Aidden Ste. T+.es from the 6enu 59tras !.,ptions' Aere de.ending on the values selected in iew tab- themodeling view of workow changes as follows ,P1I0
o @ B+D 5*ent 2ri*en Process C<ainsE
!oto menu 59tras !. ,ptions !. ta= -iew:
Select the value from the 2isp6a; o /ode6ing -iewB+D -iew dro.down as @ 5*ent 2ri*en Process
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 155/161
C<ains (5PCs)'
C6ick on 5nter '
The gra.hical modeling view changes to as followswhere )ll triggering events- outcomes- ste.s ando.erators are dis.la+ed' Ste.s are dis.la+ed as greenrectangles- triggering events and outcomes as redhe*agons and o.erators as circles' The ste. name isdis.la+ed in the gra.hical s+mbols'
o C! C6assic 5*ent 2ri*en Process C<ains (C6assic5PCs)H
!oto menu 59tras !. ,ptions !. -iew tab'
Select the value from the 2isp6a; o /ode6ing -iewB+D -iew dro.down as C! C6assic 5*ent 2ri*en
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 156/161
Process C<ains (C6assic5PCs)'
=lick on 5nter '
)ll triggering events- outcomes- ste.s and o.erators aredis.la+ed' Ste.s are dis.la+ed as green rectangles-triggering events and outcomes as red he*agons and
o.erators as circles' The node number and the node t+.eare dis.la+ed with the ste. name in the gra.hicals+mbols' The ste. t+.e area is not dis.la+ed'
o ' B+D Wit<out 5*ent!2ri*en Process C<ains ('o5PCs)H3>efault 6ode of iew4H
!oto menu 59tras !. ,ptions !. -iew tab'
Select the value from the 2isp6a; o /ode6ing -iewB+D -iew dro.down as ' B+D Wit<out 5*ent!
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 157/161
2ri*en Process C<ains ('o5PCs)'
=lick on 5nter '
)ll ste.s- triggering events and the workow start andend are dis.la+ed using s+mbols' utcomes aredis.la+ed in te*t on the connecting lines'
• There are lots of other dis.la+ settings available in menu 59tras!.,ptions for %lock >is.la+- Ti.s , Tricks dis.la+ at start- dis.la+ of.ercentage .rogress of a s+nta* check- indicator for ste.s >rag ,>ro. b+ mouse etc'
• n the menu 59tras!.,ptions!.2eau6t Settings tab- there is an o.tionfor workow denition modeling as Use #op!2own /ode6ing'
f used this o.tion- then one can model the workow without actuall+dening the ste.s' So when a ste. is added to workow- it is onl+
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 158/161
added to gra.hics'
This wa+ one can have the actual .icture of the nal denition ofworkow' To use such t+.e of workows- all the inserted ste.s shouldbe com.lete'
• ther settings like hiding ste.s t+.es etc are also available in menu59tras!.,ptions'
• ne can go to S)/ %usiness Work.lace directl+ from workow builderfrom the menu 5n*ironment!."usiness Workp6ace'
• There are lots of workows available as e*am.les- which can bereached via workow builder' The menu .ath is 5n*ironment!.Start
Workow'
Select the reEuired workow from the list on the left side and click oneither Start or Start wit< 2etai6s on the right side for e*ecution' nce
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 159/161
the workow is started- the log can be viewed from the Workow,ut=o9 button from the a..lication toolbar'
• ne can directl+ go to the dierent develo.ment environment like)%)/ >ictionar+- =lass builder- %usiness b#ect %uilder- =orrelationob#ects- .ro*+ ob#ects- Web Services etc' from workow builder' Themenu .ath is 5n*ironment!.2e*e6opment::
Workow %uilder >etailsH
• !o to transaction SW22 for workow builder'
• %+ default- the builder shows the last workow worked in the builder' To go to the reEuired workow- click on ,t<er Workow8-ersion::(Ctr6F) from the a..lication toolbar'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 160/161
• n the Task- give the name of the reEuired workow- following the F7search hel. if needed'
• The reEuired workow is now dis.la+ed in the workow builder' Theworkow builder is divided into dierent areas like nformation )rea-@avigation )rea- Ste. T+.es- !ra.hical 6odel- Results of S+nta* checketc as shown below'
• n the nformation )rea- the information about the workows likeworkow number- version and the status of the workow aredis.la+ed'
• n the navigation area- all the ste.s of workow denition are
dis.la+ed in seEuence'
7/24/2019 Workflow for Passionate Starters
http://slidepdf.com/reader/full/workflow-for-passionate-starters 161/161
• The Ste. T+.es a..ear in the b#ects section of the workow builder' This ob#ect section consists of following o.tions in the dro.down- onewhich can be viewed in the workow builder' e'g' in the current case-Ste. T+.es are dis.la+ed'
o
Ste. T+.es That =an %e nserted are )ctivit+- web activit+-Send 6ail- Form- &ser >ecision- >ocument from Tem.late-=ondition- 6ulti.le =ondition- "vent =reator- Wait- =ontainer.eration- /rocess =ontrol- (oo.3&ntil4- Fork- %lock- (ocalWorkow etc'
o Workow =ontainer
o 6+ Workows and Tasks
o >ocument Tem.lates
o Workow WiNards
o Teamworking
o Workows of this >enition 3utcome4
o @ote t
• )t the bottom of the workow builder- the s+nta* check results areh ith i f t i
Top Related