7-1 Getting Started With Business Process Management
7-1 Getting Started With Business Process Management
Version 7.1
Copyright
& Docu
mentID
Cerebra,Glue,InfravioXBroker,InfravioXRegistry,Infravio,MywebMethodsServer,MywebMethods,webMethodsAccess,webMethodsAdministrator,
webMethodsBroker,webMethodsCentralConfiguration,webMethodsDashboard,webMethodsDesigner,webMethodsDeveloper,webMethodsFabric,
webMethodsGlue,webMethodsInfrastructureDataCollector,webMethodsInfravioXBroker,webMethodsInfravioXRegistry,webMethodsInstaller,
webMethodsIntegrationServer,webMethodslogo,webMethodsMainframe,webMethodsManager,webMethodsModeler,webMethodsMonitor,
webMethodsOptimizeforInfrastructure,webMethodsOptimizeforProcess,webMethodsOptimize,webMethodsPortal,webMethodsProcessEngine,
webMethodsServicenet,webMethodsTaskEngine,webMethodsTradingNetworks,webMethodsWorkflow,andwebMethodsareeitherregistered
trademarksortrademarksofwebMethods,Inc.
Acrobat,Acrobat,andReaderareregisteredtrademarksofAdobeSystemsIncorporated.AmdocsandClarifyCRMareregisteredtrademarksofAmdocs.
AribaisaregisteredtrademarkofAriba,Inc.BEA,BEAWebLogicServer,Jolt,andTuxedoareregisteredtrademarks,andBEAWebLogicPlatformisa
trademarkofBEASystems,Inc.ActionRequestSystem,BMCSoftware,PATROL,andRemedyareregisteredtrademarksofBMCSoftware,Inc.BroadVision
isaregisteredtrademarkofBroadVision,Inc.ChemeStandardsandCIDXaretrademarksofCIDX,TheChemicalIndustryDataExchange.SiteMinderand
UnicenterareregisteredtrademarksofCA,Inc.PopChartisaregisteredtrademarkofCORDATechnologies,Inc.KenanandArborareregisteredtrademarks
ofAlcatelLucent.DataConnectionandSNAPIXareregisteredtrademarksofDataConnectionCorporation.D&BandDUNSareregisteredtrademarksof
Dun&BradstreetCorporation.EclipseisatrademarkofEclipseFoundation,Inc.EntrustisaregisteredtrademarkofEntrust,Inc.papiNetisaregistered
trademarkoftheEuropeanUnionandtheUnitedStates.FinancialInformationeXchange,F.I.X,andF.I.XProtocolaretrademarksofFIXProtocolLtd.
UCCnetandeBusinessReadyareregisteredtrademarks,and1SYNCandTransoraaretrademarksofGS1US.HewlettPackard,HP,HPUX,OpenView,PA
RISC,andSNAplus2aretrademarksofHewlettPackardCompany.i2isaregisteredtrademarkofi2Technologies,Inc.AIX,AS/400,CICS,ClearCase,DB2,
Domino,IBM,Informix,Infoprint,Lotus,LotusNotes,MQSeries,OS/390,OS/400,RACF,RS/6000,SQL/400,S/390,System/390,VTAM,andWebSphere,and
z/OSareregisteredtrademarks;andCommunicationsSystemforWindowsNT,DB2UniversalDatabase,IMS,MVS,andSQL/DSaretrademarksofIBM
Corporation.InnoDBisatrademarkofInnobaseOy.ItaniumisaregisteredtrademarkofIntelCorporation.LinuxisaregisteredtrademarkofLinus
Torvalds.W3Cisaregisteredtrademark,andXWindowSystemisatrademarkoftheMassachusettsInstituteofTechnology.MetaSolvisaregistered
trademarkofMetasolvSoftware,Inc.ActiveX,Microsoft,Outlook,VisualBasic,VisualSourceSafe,Windows,WindowsNT,andWindowsServerare
registeredtrademarksofMicrosoftCorporation.SixSigmaisaregisteredtrademarkofMotorola,Inc.FirefoxandMozillaareregisteredtrademarksofthe
MozillaFoundation.MySQLisaregisteredtrademarkofMySQLAB.nCipherisatrademarkofnCipherCorporationLtd.EclipseisatrademarkofEclipse
Foundation,Inc.EntrustisaregisteredtrademarkofEntrust,Inc.papiNetisaregisteredtrademarkoftheEuropeanUnionandtheUnitedStates.Financial
InformationeXchange,F.I.X,andF.I.XProtocolaretrademarksofFIXProtocolLtd.UCCnetandeBusinessReadyareregisteredtrademarks,and1SYNCand
TransoraaretrademarksofGS1US.HewlettPackard,HP,HPUX,OpenView,PARISC,andSNAplus2aretrademarksofHewlettPackardCompany.i2isa
registeredtrademarkofi2Technologies,Inc.AIX,AS/400,CICS,ClearCase,DB2,Domino,IBM,Informix,Infoprint,Lotus,LotusNotes,MQSeries,OS/390,
OS/400,RACF,RS/6000,SQL/400,S/390,System/390,VTAM,andWebSphere,andz/OSareregisteredtrademarks;andCommunicationsSystemforWindows
NT,DB2UniversalDatabase,IMS,MVS,andSQL/DSaretrademarksofIBMCorporation.InnoDBisatrademarkofInnobaseOy.Itaniumisaregistered
trademarkofIntelCorporation.TeradataisaregisteredtrademarkofNCRCorporation.NetscapeisaregisteredtrademarkofNetscapeCommunications
Corporation.ServletExecisaregisteredtrademark,andNewAtlantaisatrademarkofNewAtlantaCommunications,LLC.SUSEisaregisteredtrademark
ofNovell,Inc.AppiaisaregisteredtrademarkandJavelinTechnologiesisatrademarkofNYFIX,Inc.CORBAisaregisteredtrademarkofObject
ManagementGroup,Inc.JDEdwards,OneWorld,Oracle,PeopleSoft,Siebel,andVantiveareregisteredtrademarks;andInfranet,PeopleSoftPureInternet
Architecture,Portal,andWorldSoftwarearetrademarksofOracleCorporation.PerforceisatrademarkofPerforceSoftware.JBossandRedHatare
registeredtrademarksofRedHat,Inc.PIPandRosettaNetaretrademarksofRosettaNet,anonprofitorganization.SAPandR/3areregisteredtrademarks
ofSAPAG.PVCSisaregisteredtrademarkofSerenaSoftware,Inc.SWIFTandSWIFTNetareregisteredtrademarksofSocietyforWorldwideInterbank
FinancialTelecommunicationSCRL.SPARCandSPARCStationareregisteredtrademarksofSPARCInternational,Inc.BAANandSSAareregistered
trademarks;andSSAGlobalisatrademarkofSSAGlobalTechnologies,Inc.EJB,EnterpriseJavaBeans,Java,JavaServer,JDBC,JSP,J2EE,Solaris,Sun,and
SunMicrosystemsareregisteredtrademarks;andJavaNamingandDirectoryInterface,JavaServerPages,SOAPwithAttachmentsAPIforJava,andSunSoft
aretrademarksofSunMicrosystems,Inc.SybaseisaregisteredtrademarkofSybase,Inc.VERITASisaregisteredtrademark,andVERITASClusterServeris
atrademarkofSymantecCorporation.UNIXisaregisteredtrademarkofTheOpenGroup.UnicodeisatrademarkofUnicode,Inc.VeriSignisaregistered
trademarkofVerisign,Inc.
SoftwareAGandallSoftwareAGproductnamesareeithertrademarksorregisteredtrademarksofSoftwareAG.
Otherproductandcompanynamesmentionedhereinmaybethetrademarksoftheirrespectiveowners.
Copyright2007webMethods,Inc.Allrightsreserved.
Copyright2007SoftwareAGand/oritssuppliers,Uhlandstrasse12,64297Darmstadt,Germany.Allrightsreserved.
Contents
Contents
About This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
webMethods Components and Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Document Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Additional Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
7
8
8
9
10
11
12
13
15
16
16
16
17
17
17
18
21
22
22
23
23
24
24
24
25
26
26
29
30
33
35
Contents
37
38
39
39
40
40
41
42
42
45
46
47
47
47
48
49
49
49
51
52
53
54
55
55
56
57
58
59
61
62
63
63
64
64
64
66
66
66
67
Contents
69
70
71
72
72
72
73
74
75
76
76
77
77
80
80
80
81
82
83
84
84
85
86
87
91
92
92
93
94
95
97
98
98
98
99
100
Contents
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
ThisguideintroducesyoutoBusinessProcessManagement(BPM)andusesasample
businessscenariotoillustratetheuseofBPM.TheguidealsodescribesthewebMethods
softwareyoucanusetoimplementaBPMsolutionandprovidesinformationaboutthe
typesoftasksyouneedtocompleteusingwebMethodscomponentstoimplementaBPM
solution.
Thisguidehastwoaudiences.Chapters1through3oftheguideareforabusinessanalyst
whoisresponsiblefordefiningthebusinessprocessesforacompany.Theentireguide,
andspecificallychapters4through9andtheappendix,areaimedforadeveloperwhois
responsibleforimplementingthebusinessprocess.
Version
webMethodsBroker
7.1
webMethodsDeveloper
7.1
webMethodsIntegrationServer
7.1
webMethodsDesigner
7.1
webMethodsMonitor
7.1
webMethodsProcessEngine
7.1
webMethodsTaskEngine
7.1
webMethodsTradingNetworks
7.1
Document Conventions
Convention
Description
Bold
Identifieselementsonascreen.
Italic
Identifiesvariableinformationthatyoumustsupplyorchange
basedonyourspecificsituationorenvironment.Identifiestermsthe
firsttimetheyaredefinedintext.Alsoidentifiesserviceinputand
outputvariables.
Narrow font
IdentifiesstoragelocationsforservicesonthewebMethods
IntegrationServerusingtheconventionfolder.subfolder:service.
Typewriter
font
Identifiescharactersandvaluesthatyoumusttypeexactlyor
messagesthatthesystemdisplaysontheconsole.
UPPERCASE
Identifieskeyboardkeys.Keysthatyoumustpresssimultaneously
arejoinedwiththe+symbol.
Directorypathsusethe\directorydelimiterunlessthesubjectis
UNIXspecific.
[]
Optionalkeywordsorvaluesareenclosedin[].Donottypethe[]
symbolsinyourowncode.
Additional Information
ThewebMethodsAdvantageWebsiteathttp://advantage.webmethods.comprovidesyou
withimportantsourcesofinformationaboutwebMethodsproducts:
Troubleshooting Information.ThewebMethodsKnowledgeBaseprovides
troubleshootinginformationformanywebMethodsproducts.
Documentation Feedback.ToprovidefeedbackonwebMethodsdocumentation,goto
theDocumentationFeedbackFormonthewebMethodsBookshelf.
Additional Documentation.Startingwith7.0,youhavetheoptionofdownloadingthe
documentationduringproductinstallationtoasingledirectorycalled
_documentation,locatedbydefaultunderwebMethodsinstallationdirectory.In
addition,youcanfinddocumentationforallwebMethodsproductsonthe
webMethodsBookshelf.
10
payroll.Additionally,thatsamesingleactionbyHRcouldresultintheappropriatepeople
anddepartmentsbeingnotifiedaboutthenewemployeesothattheycanensurethat
officespaceisassignedandthenecessaryofficeequipmentisavailablebytheemployees
startdate.
Partofdefiningabusinessprocessisalsoincludingtheactionstotakeshouldanerroror
exceptionoccurintheprocess.Forexample,ifthereisnoofficespaceavailable,the
FacilitiesManagercouldbenotifiedtodeterminehowtohandlethatsituation.
Afteryouhavedefinedabusinessprocess,youcanusebusinessprocessmanagementto
monitorandmanageeachinstanceofthebusinessprocess.Continuingwiththenew
employeeexample,ifyouhavethreenewemployeesstarting,youcanviewdetailsabout
thebusinesstasksthathavebeencompletedforeachofthenewemployees;thatis,you
candeterminewhetherofficeequipmenthasbeenorderedorwhetherthepayroll
provideracknowledgednotificationforallthreeemployees.
Subsequentchaptersofthisguidewillusethissamplenewemployeesetupscenarioto
furtherillustratetheuseofbusinessprocessmanagement.
11
Increasestheeffectivenessofyourbusiness.Helpsdriverevenueastimetomarketis
decreasedduetoatighter,moreefficientbusinessprocess.Yourcustomersatisfaction
isincreasedasyouimproveresponsivenessthroughautomatedinformationflowto
theappropriatepeople.
Allowsyoutoimproveyourbusinessprocesses.Withaccesstorealtimeauditdatafor
reportgenerationandstatisticaldata,youcanviewtheeffectivenessofyourbusiness
processesandmakeimprovementsasneeded.
Abusinessanalystresearchesyourbusinessprocesstoidentify:
Thebusinesstasksinvolvedintheprocess.
Thebusinessrulesthatdictatetheorderofthebusinesstasksandthe
circumstancesunderwhicheachbusinesstaskisperformed.
Afterperformingthisresearch,thebusinessanalystthendraws(ormodels)the
businessprocesstogiveavisualoverviewdiagramofthebusinessprocess.The
businessanalystcanadddocumentationtothebusinessprocesstoprovide
participantsandtheirroles,timing,etc.Foranillustrationofasamplebusiness
processandhowtomodeltheflowofabusinessprocess,seeChapter2,Understand
theBusinessProcesstoModeltheFlowinthisguide.
Thetechnicalstaffcontinuestoresearchthebusinessprocessinformationprovidedby
theanalyst.Thetechnicalstaffresearchesthebusinessprocesstoidentify:
Theinternalsystems,people,andexternalpartnersthatparticipateinthe
businessprocess.
Theinformationflowingbetweenthesetasks.
Whereerrorsandexceptionscanoccurandhowbesttohandlethem.
Afterthisresearch,thetechnicalstaffcontinuestoupdatetheprocessmodelprovided
bythebusinessanalyst.Formoreinformation,seeChapter3,AddTechnicalDetailto
theProcessModelinthisguide.
Thetechnicalstaffimplementsthemodel(thatis,makesthebusinessprocess
operational).Atthistime,yourtechnicalstaffprovidestheadditionalbusinesslogic
toperformthetasksidentifiedintheprocessthatthebusinessanalysthasmodeled.
ThiscanbeassimpleasidentifyingWebservicestoexecuteforabusinesstaskorit
mightrequireyourtechnicalstafftodevelopnewlogic.
12
Seethefollowingchaptersinthisguideforinformationabouthowtoimplementthe
processmodel:
Chapter4,UseWebServices
Chapter5,HandleInteractionswithInternalSystems
Chapter6,HandleInteractionswithInternalPeople
Chapter7,HandleInteractionswithExternalPartners
Chapter8,PerformErrorandExceptionHandling
13
14
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Sample Business ProcessNew Employee Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Modeling the Flow of the Business Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Documenting the Business Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
15
Introduction
Thischapterdescribesanewemployeesetupbusinessprocesstoillustratehowabusiness
analystcanmodeltheflowofabusinessprocess.Modelingthebusinessprocessgivesyou
anoverallvisualoftheentirebusinessprocess.
Abusinessanalystresearchesthebusinessprocesstodeterminethebusinesstasks
performedbythedifferentdepartments,people,orfunctionalareasthatareinvolvedin
theprocess.Forexample,abusinessanalystmightlistthetasksthatHumanResources
(HR)performsorthetasksthatInformationTechnologies(IT)performs.
Thebusinessanalystcanusethisinformationtodraw(ormodel)theflowofabusiness
process.TomodelabusinessprocessusingwebMethodssoftware,youusewebMethods
Designer.Designerisadesigntimetool.Asseenbytheillustrationsofprocessmodelsin
thisguide,withDesigneryoucancreateeasytounderstand,visuallybasedprocess
models.FormoreinformationaboutDesigner,seewebMethodsDesigneronlinehelp.
Thischapterdescribesthenewemployeesetupbusinessprocessbylistingthevarious
tasksperformedbythedepartmentsinvolvedinthebusinessprocess.Itthenshowsa
processmodelthatabusinessanalystmightcreatetodescribetheflowofthebusiness
process.Thatis,thebusinessanalystmodelsthebusinesstasksintheorderinwhichthe
tasksaretobeperformed.
Thenextchapter,Chapter3,AddTechnicalDetailtotheProcessModel,showshowthe
technicalstaffcantaketheprocessmodelthatthebusinessanalystcreatesandcontinues
toworkwiththemodeltoaddthelogicnecessarytomakethebusinessprocess
executable.
Human Resources
HRisresponsibleforthefollowingbusinesstasks:
Reviewandapprovethenewemployeescompensationpackageandjobtitle.
EnrollthenewemployeeintotheHRsystem(forexample,PeopleSoft).
Submitinformationtotheoutsourcedpayrolladministrator(forexample,ADP)to
enrollthenewemployeeintothepayrollsystem.
NotifytheFacilitiesandITdepartmentaboutthenewemployee.
16
Facilities
Facilitiesisresponsibleforthefollowingbusinesstasks:
Assignofficespaceforthenewemployee.
NotifytheHRcoordinatorandhiringmanagerabouttheofficespaceforthenew
employee.
Information Technologies
ITisresponsibleforthefollowingbusinesstasks:
Reviewthenewemployeeinformationandassignthenewemployeeausernameand
passwordthatwillbeusedforinternalsystems.
Enrollthenewemployeeintointernalsystems(forexample,problemtracking,
intranet).
Enrollthenewemployeeintosalesmanagementsystemifthenewemployeewillbe
intheSalesdepartment.
Acquireanappropriatecomputer(laptopordesktop)forthenewemployee.
NotifytheHRcoordinatorandhiringmanagerafterthecomputerarrivesandthe
newemployeeisenrolledinappropriateinternalsystems.
17
ThebusinessanalystpreparesthemodelintheBusinessAnalystperspectiveofDesigner.
UsingDesigner,thebusinessanalystcanaddaprocessstepforeachtask,showtheflow
bydrawinglines(ortransitions)betweenthesteps,anduseswimlanestoidentifythe
department(HumanResources,Facilities,IT)thatisresponsibleforperformingeachstep.
18
technicalstaff,whocanreviewthisdocumentationwhenaddingthelogicthatisrequired
tomaketheprocessexecutable.
Examplesofthetypeofdocumentationthebusinessanalystcanprovideare:
Information about what the step is supposed to accomplish.FortheAddnewemployeeto
payrollsystemtask,thebusinessanalystmightprovideinformationaboutthe
payrollsystem,includingtheinformationthatthepayrollsystemrequires.
Input that is needed for a step to be accomplished. FortheReviewnewemployeestep,
thebusinessanalystcandescribetheinformationthatthehiringmanagermust
supplytostartthenewemployeesetupbusinessprocess.
Output that is the result of the step.FortheReviewemployeeaccountinfostep,the
businessanalystmightdescribethattheITpersonmustprovideaninitialpassword
fortheusernamethatwillbeusedforsubsequentsteps.
Data Transformation Information.ForpassingdatabetweenthestepsEnrollinHR
systemandAddnewemployeetopayrollsystem,thebusinessanalystdescribes
howtheEmployeeIDintheHRsystemrelatestotheemployeeIDusedbythepayroll
system.
Roles and individuals involved in the process.FortheReviewnewemployeestepthe
businessanalystmightlistthemanagerswhocanapprovecertaincompensation
packages.
Complex Business Rules.Thebusinessanalystcanspecifycircumstancesthatrequire
specialprocessingorhumanreview.
Error handling information.FortheReviewnewemployeestep,thebusinessanalyst
mightspecifythatwhenthejobtitleorcompensationpackageforthenewemployee
arenotappropriate,amessageshouldbesentbacktothehiringmanagertocorrect
theseissuesandrestarttheprocess.
KPI Information.Thekeypiecesofinformationthatwillneedtobetracked(suchas,
waittimeforapproval)tomeasuretheeffectivenessoftheautomatedprocessandthe
business/departmentsinvolvedintheprocess.
Reference documentation. ThebusinessanalystcanprovideHTMLhyperlinksto
requirementsdocumentsordetaileddatadefinitions.
Inadditiontothedocumentationbeingusefultothetechnicalstaffwhoareresponsible
forimplementingthebusinessprocesstomakeitexecutable,fromDesigneryoucanalso
generateprocessdocumentationthatincludesapictureoftheprocessmodelandthe
processdocumentationthatthebusinessanalystprovides.
19
20
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Analyzing What Is Required to Perform the Tasks in the Process . . . . . . . . . . . . . . . . . . . . . . . 22
Updating the Step Types in the Process Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Adding Technical Detail to Steps and Transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Adding Error and Exception Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Adding Logic that Executes the Business Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
21
Introduction
Afterthebusinessanalystmodelstheflowofthebusinessprocess,themodelispassedto
thetechnicalstaff,whoaddtechnicaldetailtothemodel.Thetechnicalstaffusesthe
ProcessDeveloperperspectiveofwebMethodsDesignertobuilduptheprocessmodelto
makeitexecutable.
First,thetechnicalstaffresearchesthebusinessprocesstodeterminewhatisrequiredto
completeeachtask.TheydeterminetheWebservices,internalsystems,orexternal
partnersthatarerequiredtocompleteatask,andwhattasksrequirehumaninteraction.
Toillustratehowthisisdone,thischaptercontinueswiththesamplenewemployeesetup
businessprocess.TheprocessmodelillustratedinChapter2,UnderstandtheBusiness
ProcesstoModeltheFlowisfurtheranalyzedtolisttheinternalsystems,people,and
externalpartnersrequiredtocompleteeachtask;thechapteralsoliststhetasksforwhich
Webservicesareavailable.
Note: Tofullyimplementthebusinessprocess,thetechnicalstaffwouldalsoneedto
determinethedataneededtocompletethetask.Thischapterdoesnotcoverdetermining
thedatarequiredbyeachtask.
Aftertheanalysistodeterminewhatisrequiredtocompleteeachtask,thetechnicalstaff
buildsupthesamemodelthatthebusinessanalystcreated.Inthischapter,thebusiness
tasksaredefinedinphases.Businesstasksforeachfunctionalarea(HumanResources,
Facilities,andInformationTechnologies)aredefinedoneatatime.Finally,errorand
exceptionhandlingisaddedtotheprocessmodel.Itisnotnecessarythatyoubuildupthe
modelinthisway.Youcanuseanymethodthatworksbestforyourbusinessprocess.
22
TheremainderofthissectionbreaksdownthebusinessprocessdescribedinChapter2,
UnderstandtheBusinessProcesstoModeltheFlowintothecategorieslistedabove.
23
24
Note: Inadditiontosendinganemailinresponsetoanerror,youcantakeotheractions,
forexample,havetheprocessgobacktoanearlierstepintheprocessorgotoanother
stepthatwillexecutelogictoundopartsofabusinessaction.
aninternalsystem
activity
IS Service
anexternalpartner
activity
IS Service
aWebservice
activity
Web Service
aperson
task
Task
Default icon
Whenyouchangethetypeofstep,Designerupdatesthestepicontothedefaulticonfor
thetypeofstep.Ifyouwant,youcanselectanothericontouseforthestep.Designer
providesawiderangeofalternativeicons.
25
Task
1
Performed
by
Description
person
Reviewandapprovethecompensationpackageandjobtitle.
Anapprovalisrequiredtocontinue.Foradescriptionoftheactions
totakeifthereviewisrejected,seeAddingErrorandException
Handlingonpage33.
internal
system
Afterthecompensationpackageandjobtitleareapproved,enroll
thenewemployeeintotheinternalHRsystem.
n/a
AfterenrollingthenewemployeeintheHRsystem,notifyFacilities
andITaboutthenewemployee.
ThetasksperformedbyFacilitiesandITwillbeaddedtothe
processmodelinlaterphases.SeeAddingtheFacilitiesBusiness
TaskstotheModelonpage29andAddingtheITBusinessTasks
totheModelonpage30.
external
partner
Submitinformationtotheoutsourcedpayrolladministratorto
enrollthenewemployeeintothepayrollsystem.Thepayroll
administratoristheexternalpartner.
n/a
NotifytheHRcoordinatorandthehiringmanagerthattheHRtasks
arecomplete.
ThePerformed bycolumninthetablesinthischapterusen/awhenthetaskbeing
describeddoesnotinvolveaWebservice,internalsystem,person,orexternalpartner.
26
ThefollowingDesignerfeaturesareusedinthemodelingoftheHRbusinesstasks:
ThefollowingstepsareinaninternalpoollabeledInternalDepartmentsandina
swimlanelabeledHumanResources:
Receivenewemployeeinfo
Reviewnewemployee
GetHRreviewoutcome
EnrollinHRsystem
Getoutcomeofenroll
Processresultsoftheenroll
Makepayrollrequest
ReceivepayrollACK(acknowledgement)
ProcesspayrollACK
27
Placestepsexecutedbyyoursystemswithinaninternalpool.Youcanaddswimlanesto
thepooltoidentifydifferentfunctionalgroups(forexample.,Humanresources)
withinyourcompany.Youcanthenplacethestepsthatafunctionalgroupisto
performwithintheirswimlane.Aninternalpoolsandswimlanesarerepresented
usingboxeswithsolidborders.Useofpoolsandswimlanesisoptional.
Thelabel,approved,wasaddedtothetransition(line)connectingstepsGetHRreview
outcomeandEnrollinHRsystemtomaketheprocessmodelmore
understandable.Later,anothertransitionwillbeaddedfromtheGetHRreview
outcomestepforthecasewhenthereviewisrejected;formoreinformation,see
AddingErrorandExceptionHandlingonpage33.Duringimplementation,
conditionswillalsobeaddedtothetransitionssothatcontrolispassedtothecorrect
stepsbasedonwhetherthereviewisapprovedorrejected.
Forthebusinesstaskthatinvolveshumaninteraction(Reviewnewemployee),a
taskstepisused.Youdesigntheinterfaceforhumaninteractionwhenyoucreatethe
taskusingtheTaskeditorinDesigner.Formoreinformationabouttasksteps,see
Chapter6,HandleInteractionswithInternalPeople.
Forthebusinesstaskthatinteractswithaninternalsystem(EnrollinHRsystem),
anactivitystepisused.TheactivitysteptypeissettoIS Servicebecausethestep
invokesanISservicetointeractwiththeinternalsystem.Formoreinformation,see
Chapter5,HandleInteractionswithInternalSystems.Also,areceivestepwasadded
totheprocess(Getoutcomeofenroll)because,inthissamplebusinessprocess,the
internalsystemsendsitsresponsedataasynchronously.Theprocesswillwaitforthe
responsedatatoarrivebeforeexecutingtheProcessresultsoftheenrollstep.
Forthebusinesstaskthatinteractswithanexternalpartnertoenrollthenew
employeeinthepayrollsystem,activitystepswithasteptypeofIS Serviceareused.
Forasinglebusinesstaskforinteractingwithanexternalpartner,severalstepsare
addedtotheprocessmodel:
Astepintheinternalpooltomakethepayrollrequest.
Stepsinanexternalpooltohandlethepayrollrequestandrecordthepayroll.
Anexternalpoolisrepresentedbyaboxwithadottedlineborder.Alsothe
transitionsconnectingstepsfromaninternalsteptoastepinanexternalpooluse
adottedline.Theexternalpoolandthestepswithintheexternalpoolareonlyfor
visualpurposestomakethebusinessprocessmoreunderstandable;stepsin
externalpoolsarenotexecutedonyoursystem.
Finally,aninternalsteptoreceivethepayrollacknowledgment(ACK).
Formoreinformation,seeChapter7,HandleInteractionswithExternalPartners.
Imageswereupdatedforthefollowingstepstohelpvisuallydepictthestepfunction.
Forthebusinesstasktoreviewtheoutcomeofprocessing(GetHRreview
outcomestep),theimagewaschangedtoadiamondtodepictadecisionistobe
made.
28
ForthebusinesstaskthatnotifiestheHRcoordinatorandhiringmanager,an
activitystepisused.Theimagewaschangedtoonethatcontainsanenvelope,
visuallydepictingthatamessageistobesent.
ForthestepsintheexternalpoolPayrollAdministrator,theimagewas
changedtoaboxtoindicateprocessingoutsidetheenterpriseisbeingperformed.
Task
Performed
by
Description
person
Assigntheofficespaceforthenewemployee.Ahumanreviewsthe
availableofficespaceandassignsthenewemployeealocation.
n/a
NotifytheHRcoordinatorandthehiringmanagerabouttheoffice
space.
29
Model with the Facilities business tasks added to the model with the HR business tasks
30
Task
Performed
by
Description
person
Reviewthenewemployeeinformationandassignthenew
employeeausernameandpassword.Thisistheusernameand
passwordthatthenextstepuseswhencreatinguseraccountsfor
theuserininternalsystems.Additionally,ITensuresthecomputer
specificationsforthenewemployeearecorrect.
Web
service
Enrollthenewemployeeintointernalsystems(e.g.,problem
tracking,intranet).
internal
system
Enrollthenewemployeeintosalesmanagementsystemifthenew
employeewillbeintheSalesdepartment.Thebusinessprocess
conditionallyperformsthisbusinesstaskbasedonwhetherthe
newemployeeisintheSalesdepartment.
Web
service
Acquireanappropriatecomputer(e.g.,laptopordesktop)forthe
newemployee.TheITdepartmentusesaWebserviceforthis
businesstask.
n/a
NotifytheHRcoordinatorandhiringmanagerafteracomputer
hasbeenorderedandthenewemployeeisenrolledinthe
appropriateinternalsystems.
Note: Notethatsteps2,3,and4donotoccursequentially.Rather,theyeachproceedas
soonasstep1(theITreviewstep)iscomplete.
31
Model with the IT business tasks added to the model with the HR and Facilities business tasks
ThefollowingDesignerfeaturesareusedintheprocessmodelabove:
32
Thestepstocreateinternalaccountsandtoordertheemployeescomputerareforthe
businesstasksthatinvolveWebservices.Thestepsuseactivitystepswiththestep
typesettoWeb Service.FormoreinformationaboutWebServicesteps,seeChapter4,
UseWebServices.
Thethreetransitions(lines)fromtheProcessresultsoftheenrollstepindicatea
splitinprocessingwheremultiplestepsexecutesimultaneously.Thatis,afterthe
Processresultsoftheenrollstep,thefollowingstepsbegintoexecuteinparallel:
MakepayrollrequestintheHumanResourcesswimlane.
AssignofficespaceintheFacilitiesswimlane.
ReviewemployeeaccountinfointheITswimlane.
Later,whenerrorandexceptionhandlingisaddedtotheprocessmodel,anexample
ofusingtransitionconditionsisusedtoindicatehowtotransitiontoonlyonestep
whentherearemultipletransitionsavailable.Formoreinformation,seeChapter8,
PerformErrorandExceptionHandling.
Description
InresponsetotheHRreviewoftheemployeeinformation,ifHRrejectsthe
compensationpackageand/orthejobtitleofthenewemployee,thehiring
managerissentanemailmessagetoresolvetheissue.
IfanerroroccurswhenenrollingtheemployeeintotheHRsystem,information
abouttheerrorisdeliveredtotheHRcoordinatorandITtoresolvetheissue.
Ifagenerallogicorsystemerroroccursduringthebusinessprocess,for
example,ifasystemisnotavailablewhenattemptingtoenrollthenew
employee,anemailmessagethatdescribestheerrorissenttoIT.
33
ThefollowingDesignerfeaturesareusedinthemodelwiththeerrorandexception
handling:
34
Inthissample,conditionsareplacedonthetwotransitions(lines)fromtheGetHR
reviewoutcometocreateabranchinexecution.Onlyoneofthetwotransitionsis
takenbasedontheoutcomeofthetransitionconditions.
FortheEnrollinHRsystemstepanerrortransitionisused.Theerrortransitionis
takenatruntimeiftheserviceexecutedbytheEnrollinHRsystemstepthrowsan
exception.
Ifanerroroccursinanystepoftheprocessmodelforwhichthereisnoerror
transition,controlispassedtotheprocesswideerrorstep.Unlikeotherstepsinthe
processmodel,theprocesswideerrorstepisnotconnectedtoothersteps.
35
36
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Creating a Web Service Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Configuring the Activity Step for the Web Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Modifying the Web Service Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Using the Wrapper Service to Make the Inputs Available . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Receiving Data Back Into the Business Process Synchronously . . . . . . . . . . . . . . . . . . . . . . . . 42
37
Overview
ThebusinessprocessinteractswithaWebservicebyinvokingaWebserviceconnector.In
Developer,WebservicesareimplementedwithaproviderorconsumerWebdescriptor.
TheWebservicedescriptordefinestheWebserviceandcontainsalloftheWebservice
connectorsassociatedwiththeWebservicebeingused.
ToindicatewhenyouwanttouseaWebservice,youaddanactivitysteptoyourprocess
modelandsetitssteptypetoWeb Service.Youconfiguretheactivitysteptoidentifythe
Webserviceconnectoryouwanttouse.
ThefollowingshowsthepartoftheprocessmodelfromChapter3,AddTechnicalDetail
totheProcessModelthatmodelsaninteractionwithaWebservice.
Model for interaction with a Web service
AftermodelingthetaskstointeractwithaWebservice,performthefollowingactions
duringdesigntimetosetuptheinteractionwithaWebservice:
Design-time task
(Optional)CreateaWebservicedescriptorif
onedoesnotexist.
ReceivingDataBackIntothe
BusinessProcessSynchronouslyon
page42
IdentifytheWebserviceconnectoryouwant
thebusinessprocesstouse.
ConfiguringtheActivityStepfor
theWebServiceonpage39
(Optional)MakechangestotheWebservice
descriptor.
ModifyingtheWebService
Descriptoronpage40
InsurethattheinputstotheWebservicewillbe
availableatruntime.
UsingtheWrapperServicetoMake
theInputsAvailableonpage40
38
Design-time task
SpecifytheauthenticationfortheWebservice.
SpecifyingAuthenticationforthe
WebServiceonpage41
Setuptheprocessmodelstepthatretrievesthe
outputfromtheWebservice.
ReceivingDataBackIntothe
BusinessProcessSynchronouslyon
page42
Note: IfyouwantyourprocesstobeexposedasaWebService,seethewebMethods
Designeronlinehelpforinformationaboutconfiguringreceivestepstodefinea
synchronousreceive/reply.
39
Afteryoumakeyourselections,DesignercreatesaWebservicedescriptoronthe
connectedIntegrationServerandautomaticallyupdatestheInputs / Outputspropertiesof
theactivitystep.
Tip! InDesigner,youcanselecttheWebserviceconnectoryouwanttouseintheIS
BrowserviewanddragittotheactivitystepfortheWebservice.Designerwillupdatethe
stepspropertiesappropriately.
To learn more about:
Webservicedescriptors(includinghowtocreatethem)andWebservice
connectors,seetheWebServicesDevelopersGuide.
HowtouseWebservicedescriptorsinDeveloper,seethewebMethodsDeveloper
UsersGuide.
Configuringstepsinaprocessmodel,seethewebMethodsDesigneronlinehelp.
40
Theinputsofthewrapperservicearethebusinessprocessdatathatyouaddtothestep
inputsinDesigner,and,asaresult,youcanmapdatafromtheseintotheinputsofthe
wrappedWebserviceconnector.Additionally,youcanusethewrapperservicetohard
codeinputvaluesifyouwant.Thewrapperserviceswillnotappearuntilyougenerate
anduploadtheprocess.
41
42
theWebserviceactivitystepsothatitusestheWebServiceactivitystepsoutputasits
input.Youcanthenidentifyhowyouwantthatsteptoprocesstheoutputbyconfiguring
thestepsAdvanced > Implementationproperties,forexample,byspecifyingaserviceto
invoke.
Note: Bydefault,DesignerdisplaysonlyBasicpropertiesintheBusinessAnalyst
perspective.ToviewAdvancedproperties,youmustchangetheAdvancedProperty
ModesettingintheDesignerpreferencesettings.Formoreinformation,seethe
webMethodsDesigneronlinehelp.
To learn more about:
Howtoassigninputstoastepinabusinessprocess,seethewebMethodsDesigner
onlinehelp.
Webserviceconnectors,includinghowtogenerateWebserviceconnectsandtheIS
elementsgeneratedforthem,seetheWebServicesDevelopersGuide.
43
44
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Sending Data from the Business Process to the Internal System . . . . . . . . . . . . . . . . . . . . . . . . 47
Receiving Data Back Into the Business Process Asynchronously . . . . . . . . . . . . . . . . . . . . . . . 49
45
Overview
Tointeractwithaninternalsystem,thebusinessprocesssendsdatatotheinternalsystem.
Thebusinessprocessshouldsendthedataintheformatthattheinternalsystemexpects.
Tosendthedata,useanactivitystepinthebusinessprocessandensureitssteptypeisset
toIS Service.Theactivitystepinvokesaservicethatsendsthedatatotheinternalsystem.
Togetdatafromaninternalsystem,theinternalsystemsendsdatatothebusinessprocess
inadocument.Onemethodistohavetheinternalsystempublishthedocumenttothe
IntegrationServer.Togetthedocumenttothebusinessprocess,yousetupthebusiness
processtoreceivethepublisheddocument.
Note: Thischapterfocusesonasynchronouslyreceivingdataintoabusinessprocessby
havingtheinternalsystempublishthedocument.Thismethodwasselectedbecauseit
illustrateshowtocorrelateapublisheddocumenttothecorrectinstanceofabusiness
process.
However,anotherandmoredirectmethodtogetdatafromaninternalsystemtothe
businessprocessistohavethebusinessprocessinvokeaservicethatreturnsthedata
fromtheinternalsystemasitsoutput.Whendataisreturnedasserviceoutput,itis
availableinthebusinessprocessaftertheserviceexecutes.Formoreinformation,see
ReceivingDataBackIntotheBusinessProcessSynchronouslyonpage42.
ThefollowingdiagramshowsthepartoftheprocessmodelfromChapter3,Add
TechnicalDetailtotheProcessModelthatmodelsaninteractionwithaninternalsystem.
Model for Interaction with an internal system
In this model, use this step to
invoke a service to send data
to the internal system...
Aftermodelingthetasksthatinteractwithaninternalsystem,performthefollowing
actionsduringdesigntimetocompletethesetuptointeractwithaninternalsystem:
46
Design-time task
Setuptosenddatafromthebusinessprocessto
theinternalsystem.
SendingDatafromtheBusiness
ProcesstotheInternalSystemon
page47
Setuptohavetheinternalsystemsenda
documenttothebusinessprocessandhavethe
businessprocessaccessthedocumentcontent.
ReceivingDataBackIntothe
BusinessProcessAsynchronously
onpage49
47
theinternalsystem,youcanusethefeaturesprovidedbythewebMethodsadapterto
interfacewithyourinternalsystem.
ByusingawebMethodsadapter,youcanmorerapidlyandefficientlyintegratewithyour
internalsystem.Usingtheadapteralsolimitstheamountofdetailyourdevelopersneed
tounderstandaboutlowlevelspecificsofindividualapplicationinterfaces.
To learn more aboutthewebMethodsadaptersthatareavailable,seeinformationabout
currentreleasesintheRelease InfosectionofthewebMethodsAdvantageWebsiteat
http://advantage.webmethods.com.
Tip! InDesigner,youcanalsoselecttheserviceintheISBrowserviewanddragitonthe
activitystep.Designerwillupdatethestepspropertiesappropriately.
To learn more abouthowtosetpropertiesforstepsinabusinessprocess,seethe
webMethodsDesigneronlinehelp.
48
49
Tip! InDesigner,youcanalsoaddareceivestepbyselectingtheISdocumenttypeintheIS
Browserviewanddraggingitontothedesigncanvas;aproperlyconfiguredreceivestep
isautomaticallycreated.Ifyouhavealreadymodeledthereceivestep,youcanselectthe
ISdocumenttypeintheISBrowserviewanddragitonthereceivestep.Designersetsthe
stepspropertiesappropriately.
Createthetransitionfromthereceivesteptothestepwaitingforthedocument.Inthe
sampleabove,theProcessresultsoftheenrollstepwaitsforthedocument.Becausethe
EnrollinHRsystemstepalsotransitionstotheProcessresultsoftheenrollstep,
configurethestepsothatitdoesnotexecuteuntilboththetransitionfromtheactivityand
transitionfromthereceivestepoccurs.Todoso,settheAdvanced > Joins > Join Type
propertyoftheProcessresultsoftheenrolltoAND.
50
51
A correlation IDisanidentifierthatyoucreatetoidentifyaninstanceofthebusiness
process.YouusecorrelationIDsfordocumentsthataresenttothebusinessprocess
fromoutsidetheprocess.Alldocumentsthatwillbesentfromoutsidetheprocess
andthatwillbeassociatedwiththesameinstanceofabusinessprocessmustusethe
samecorrelationID.Additionally,eachcorrelationIDmustbeunique;twodifferent
instancesofthesamebusinessprocessshouldneverusethesamecorrelationID.
TocreatethecorrelationIDyoutypicallyuseinformationfromwithinthedocuments
thatarebeingsenttothebusinessprocess.BecausethecorrelationIDmustbethe
sameforalldocuments,theinformationyouuseforthecorrelationIDshouldbe
informationthatiscommontoalldocumentsforaspecificinstanceofthebusiness
process.
Foreachinstanceofabusinessprocess,thecorrelationIDmustbemappedtotheprocess
instanceID.TheProcessEngineusesthismappingtoperformacrossreferencelookupto
determinetheprocessinstanceIDthatisassociatedwithacorrelationID.Bydetermining
theprocessinstanceID,theProcessEnginecandeliverthedocumenttothecorrect
instanceofthebusinessprocess.
Tosetuptocorrelateanincomingdocumentwiththecorrectinstanceofaprocess,you
must:
DeterminethedatayouwanttouseforthecorrelationID.
CreateaservicetomapthecorrelationIDtotheprocessinstanceIDatruntime.
UpdatetheprocessmodeltoreferencetheservicethatmapsthecorrelationID.
CreatecorrelationservicestoextractthevalueforthecorrelationIDfromthe
incomingdocument.
Updatetheprocessmodeltoreferencethecorrelationserviceforthestepreceiving
theincomingdocument.
52
Yo
TomapthecorrelationIDtotheprocessinstanceID,youcreateaservicethat:
IdentifythecorrelationID.
Invokethepub.prt.correlate:establishCorrelationservicetoestablishthemappingbetween
thecorrelationIDandtheprocessinstanceID.
ThefollowingfigureshowsasampleflowservicethatformsacorrelationIDandmapsit
totheprocessinstanceID.
53
54
55
determiningtheprocessinstanceID,theProcessEnginesendsthedocumenttothecorrect
runninginstanceofthebusinessprocess.
To learn more about:
Howtospecifyinputsforstepsinprocessmodelsandhowtogenerateprocess
models,seeinformationthewebMethodsDesigneronlinehelp.
Triggers,seethePublishSubscribeDevelopersGuide.
Creating the Correlation Service
Whenyoucreatethecorrelationservice,usethepub.prt:CorrelationServicespecificationto
definetheinputsandoutputsofyourcorrelationservice.WhentheProcessEngine
invokesthecorrelationservice,itpassesthecorrelationservicethedatadefinedbythe
inputvariablesofthepub.prt:CorrelationServicespecification.
OneoftheinputvariablesisDocument.Thisvariablecontainsthedocumentfromwhich
youwillextractthecorrelationID.Forexample,forthenewemployeesetupbusiness
process,whenHRreviewsthenewemployeerequest,itassignstheemployeeaunique
employeenumber.Thisemployeenumberwillbeincludedinalldocumentssenttothe
businessprocessandisusedasthecorrelationID.Thefollowingfigureshowsasample
flowservicethatextractsthecorrelationID.
56
57
Toupdatetheprocessmodel,selectthereceivestepinDesignerandbrowsefor
correlationserviceintheCorrelationServicefieldoftheImplementationtabinthe
Propertiesview.
Update the Advanced > Implementation >
Correlation Service property of the receive
step that waits for the document.
58
Tip! InDesigner,youcanalsoselecttheserviceintheISBrowserviewanddragitonthe
activitystep.Designerwillupdatethestepspropertiesappropriately.
To learn more abouthowtosetpropertiesforstepsinabusinessprocess,seethe
webMethodsDesigneronlinehelp.
59
60
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Before You Can Use Steps that Involve People . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Creating the IS Document Types for Input and Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Configuring the Task Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Getting Information To and From the Business Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
61
Overview
Thebusinessprocessinteractswithpeopleviatasks.Youaddtaskstepstoyourprocess
modeltoindicatewheninthebusinessprocessthatyouwanttointeractwithpeople.
Atruntime,thewebMethodsTaskEngineexecutestasks.Thedatasenttoorretrieved
fromapersonispassedbetweenthebusinessprocessandtheTaskEngineusing
documents.
ThefollowingdiagramshowsapartoftheprocessmodelfromChapter3,AddTechnical
DetailtotheProcessModelthatmodelsaninteractionwithpeople.
Model for interaction with a person
Afteraddingatasksteptomodelinteractionwithpeople,performthefollowing
additionaldesigntimetasksthatarerequiredtoimplementtheinteractionwithpeople:
.
Design-time task
Ensureyouhaveconfiguredtheconnection
betweentheTaskEngineandtheProcess
Engine.
BeforeYouCanUseStepsthat
InvolvePeopleonpage63.
CreatetheISdocumenttypesthatdefinethe
datathatthetaskexpectsasinputanddelivers
backtothebusinessprocessasoutput.
CreatingtheISDocumentTypes
forInputandOutputonpage63.
Completethepropertiesforthetaskstepin
yourprocessmodel.
ConfiguringtheTaskStepon
page64.
Setuptosendandreceiveinformationtoand
fromthebusinessprocess.
GettingInformationToandFrom
theBusinessProcessonpage67.
62
63
WhenyoucreatetheISdocumenttypethatdefinestheoutputs,definethedatathatthe
taskwillreturntothebusinessprocess.Afterthetaskiscomplete,theoutputdocumentis
availableinthebusinessprocesspipeline.
Forexample,inthenewemployeesetupbusinessprocess,theOfficeManagermight
respondtotheofficespacerequestbyprovidinginformationsuchastheofficenumber
andphonenumber.YouwouldcreateanISdocumenttypethatdefinesfieldsforthis
information.
64
Description
Inputs/Outputs
Setthestepinputsandoutputs:
For the inputs,selecttheISdocumenttypethat
definestheinputforthetask.
For the outputs,selecttheISdocumenttypethat
definestheoutputforthetask.
Formoreinformation,seeGettingInformationToand
FromtheBusinessProcessonpage67.
Note:Forexistingtasks,thetaskdesignermayhave
alreadyincludedreferencestoinputandoutput
documenttypes.
Advanced>
Implementation>Type
EnsurethesteptypeissettoTask.
Advanced>
Implementation>Logical
Server
SetthelogicalservertoidentifytheIntegrationServer
thatisrunningtheProcessEngine,whichinturn,is
connectedtotheTaskEngineforthetask.Formore
informationabouttheconnectionbetweentheTask
EngineandtheProcessEngine,seeBeforeYouCan
UseStepsthatInvolvePeopleonpage63.
Advanced>
Implementation>Task
Information
Click
Browse for existing tasksandselectthetask
youwanttouse.Basedonthetaskyouselect,Designer
fillsintheTask NameandTask Type IDfields.
Note: WhenyouclicktheBrowse for existing tasks button,
Designeronlydisplaysthetasksthatareavailablein
yourcurrentworkspace.Ifthetaskyouwanttouseisin
adifferentworkspace,forexample,itisbeing
developedbyanotheruser,youcanidentifythattaskby
specifyingtheappropriatetasktypeID.Youcanview
tasktypeIDsfordeployedtasksontheMy
webMethodsAdministration>Processes>Tasks>Task
EngineAdministrationpage.
65
Description
General>Label
Givethetaskstepauniquenameamongyourexisting
tasks.DesignerwillusetheLabelforthetaskname
whenyouimplementthetask.
Inputs/Outputs
Setthestepinputsandoutputs:
For the inputs,selecttheISdocumenttypethat
definestheinputforthetask.
For the outputs,selecttheISdocumenttypethat
definestheoutputforthetask.
Note: Whendesigningtheview(oruserinterface)forthe
taskinDesigner,theinputsandoutputsthatyousetfor
ataskstepwillbeavailableintheBindingsview.Asa
result,youcanusethedatawhendefiningthefieldsin
theviewyouwanttodisplayforauser.
Advanced>
Implementation>Type
Advanced>
Implementation>Logical
Server
SetthelogicalservertoidentifytheIntegrationServer
thatisrunningtheProcessEngine,whichinturn,is
connectedtotheTaskEngineforthetask.Formore
informationabouttheconnectionbetweentheTask
EngineandtheProcessEngine,seeBeforeYouCan
UseStepsthatInvolvePeopleonpage63.
66
liststhetaskintheSolutionsviewunderaCompositeApplicationprojectthatitalso
creates;andinotherviewswheretasksappear.
Tocompletetheimplementationofthetask,fromDesigneryoumodifythetaskto
completetheuserinterface.Additionally,youmightwanttoassignrulestothetask.
To learn more abouthowtosetthepropertiesforataskstep,createnewtasksfromtask
steps,modifytasks,createuserinterfacesfortasks,anddefiningtaskeventsand
assignments,seethewebMethodsDesigneronlinehelp.
67
68
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Defining Information about External Partners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Sending Documents from the Business Process to External Partners . . . . . . . . . . . . . . . . . . . . 72
Getting Documents from External Partners to the Business Process . . . . . . . . . . . . . . . . . . . . . 76
Correlating Incoming Documents with the Correct Process Instance . . . . . . . . . . . . . . . . . . . . . 83
69
Overview
Tointeractwithanexternalpartner,thebusinessprocesssendsdata(intheformof
businessdocuments)toanexternalpartnerviawebMethodsTradingNetworks.Similarly,
datafromanexternalpartnerthatistogotothebusinessprocessgoesthroughTrading
Networks.YouneedtodefineinformationinTradingNetworkssothatitcanrecognize
andprocessthebusinessdocuments.
ThefollowingshowsthepartoftheprocessmodelfromChapter3,AddTechnicalDetail
totheProcessModelthatmodelstheinteractionwithanexternalpartner.
Model for interaction with external partner
The steps in the external pool labeled Payroll
Administrator are not required, but are useful
in the model to give a visual representation of
the processing.
Aftermodelingthetaskstointeractwithanexternalpartner,thefollowingareactionsyou
needtoperformduringdesigntimetocompletethesetuptointeractwithanexternal
partner:
70
Design-time task
DefineaTradingNetworksprofileforthe
externalpartnerifonedoesnotalreadyexist.
DefiningInformationabout
ExternalPartnersonpage71
Setuptosendabusinessdocumentfromthe
businessprocesstoTradingNetworks.
SendingDocumentsfromthe
BusinessProcesstoExternal
Partnersonpage72
SetuptohaveTradingNetworkssendabusiness
documenttoabusinessprocessandhavethe
businessprocessaccessthedocumentcontent.
GettingDocumentsfromExternal
PartnerstotheBusinessProcess
onpage76
IfabusinessdocumentfromTradingNetworks
doesnotstartthebusinessprocess,setupto
correlateincomingdocumentsfromTrading
Networkstothecorrectinstanceofabusiness
process.
CorrelatingIncomingDocuments
withtheCorrectProcessInstance
onpage83
71
72
73
74
Tip! InDesigner,youcanalsoselecttheserviceintheISBrowserviewanddragitonthe
activitystep.Designerwillupdatethestepspropertiesappropriately.
To learn more abouthowtosetpropertiesforstepsinabusinessprocess,seethe
webMethodsDesigneronlinehelp.
75
76
77
Tip! InDesigner,youcanselectaTNdocumenttypeintheISBrowserviewanddragitto
thedesigncanvas;aproperlyconfiguredreceivestepisautomaticallycreated.Ifyouhave
alreadymodeledthereceivestep,youcanselecttheTNdocumenttypeintheISBrowser
viewanddragitonthereceivestep.TheTNdocumenttypesarelistedintheISBrowser
viewlastunderTradingNetworksDocuments.
Createthetransitionfromthereceivesteptothestepwaitingforthedocument.Inthe
sampleabove,theProcesspayrollACKstepwaitsforthedocument.Becausethe
MakepayrollrequeststepalsotransitionstotheProcesspayrollACKstep,configure
thestepsothatitdoesnotexecuteuntilboththetransitionfromtheactivityandtransition
fromthereceivestepoccurs.Todoso,settheAdvanced > Joins > Join Typepropertyofthe
ProcesspayrollACKtoAND.
78
Important! Ifthestepthatstartsthebusinessprocessdoesnotreceiveadocumentfrom
TradingNetworks,youmusttakestepstoensurethatincomingdocumentsfromTrading
Networksaresenttothecorrectinstanceofthebusinessprocess.Forinformation,see
CorrelatingIncomingDocumentswiththeCorrectProcessInstanceonpage83.
To learn more abouthowtousereceivestepsandsetthepropertiesforstepsinabusiness
process,seethewebMethodsDesigneronlinehelp.
79
80
alongwithinformationthatTradingNetworksrequirestomanageandprocessthe
document.Thedocumentcontentisinthebizdoc/Contentpipelinevariable.
To convert the document content to an IData object,invokethewm.tn.doc.xml:bizdocToRecord
service.Thewm.tn.doc.xml:bizdocToRecordservicetakestheBizDocEnvelope(inthebizdoc
pipelinevariable)asinput.Aftertheserviceexecutes,theIDataobjectwillbeinthe
boundNodeoutputvariable.
Thefollowingfigureshowssampleflowservicelogictoobtainthedocumentcontentof
anXMLdocumentandconvertittoanIDataobject.
(
81
ToretrievethedocumentcontentfromtheBizDocEnvelopeaseitherabytearray
oranInputStream,invokethewm.tn.doc:getContentPartDataservice.Thisservice
requiresthatyouspecifythenameofthecontentpartthatyouwant.Ifyouhave
notnamedyourcontentpartsandyourdocumentonlycontainsasinglecontent
part,specifyffdata.
To convert the document content to an IData object,invokethepub.flatFiile:convertToValues
service.Thepub.flatFiile:convertToValuesservicetakesasinputthedocumentcontentand
aflatfileschema.Youmustcreateaflatfileschemathatdefinesthestructureofthe
flatfile.Aftertheserviceexecutes,theIDataobjectwillbeintheffValuesoutput
variable.
Thefollowingfigureshowssampleflowservicelogictoobtainthedocumentcontentofa
flatfiledocumentandconvertittoanIDataobject.
82
83
84
Note: YouonlyneedtomaptheconversationIDtotheprocessinstanceIDasingletimefor
abusinessprocess.
Yo
Forexample,inthenewemployeesetupbusinessprocess,thefirsttimethebusiness
processexpectsabusinessdocumentfromTradingNetworksiswhenitreceivesthe
payrollacknowledgmentfromthePayrollAdministrator.Inthisbusinessprocess,you
wouldneedtomaptheconversationIDtotheprocessinstanceIDbeforethebusiness
processexpectsthepayrollacknowledgmenttoarrive.
TomaptheconversationIDtotheprocessinstanceID,youcreateaservice.Theservice
thatyoucreateshouldinvokethepub.prt.correlate:establishCorrelationservicetoestablishthe
mappingbetweentheconversationIDandtheprocessinstanceID.
Youcaninvoketheservicethatperformsthemappingeitherfromastepinthebusiness
processorfromaTradingNetworksprocessingrulethatusestheExecute a Service
processingaction.
85
pub.prt.correlate:establishCorrelationservicetoestablishthemappingbetweentheconversation
IDandtheprocessinstanceID.
ThefollowingfigureshowsasampleflowservicethatformsaconversationIDandmaps
ittotheprocessinstanceID.
86
87
BecausetheTNdocumenttypeextractstheconversationID,itwillbeavailableinthe
pipelinefortheserviceexecutedbytheExecute a Serviceprocessingaction.Inaddition,
becausethebusinessdocumentissentfromabusinessprocess,thepipelinealsocontains
informationabouttherunninginstanceofthebusinessprocess,includingtheprocess
instanceID.
Thefollowingfigureshowsasampleflowservicethatcouldbeexecutedbyaprocessing
ruletomaptheconversationIDtotheprocessinstanceID.
Note: WhenyouextracttheconversationIDfromabusinessdocument,TradingNetworks
sendsthebusinessdocumenttotheProcessEngineafteritcompletesitsprocessing.Ifno
businessprocesswaitsforthebusinessdocument,theProcessEnginewillbeunableto
findabusinessprocessthatwaitsforthisdocument.Asaresult,theProcessEngine
performsnoprocessingforthebusinessdocument
Forexample,iftheconversationIDisextractedfromthepayrollrequest,Trading
NetworkssendsthepayrollrequestbacktotheProcessEngine.Becausenobusiness
88
processwaitsforthepayrollrequest,theProcessEnginewillnotusethepayrollrequest
document.
To learn more about:
Howtocreateservices,includinghowtousevariablesubstitutionwhensetting
serviceinputvalues,seethewebMethodsDeveloperUsersGuide.
HowtocreateTNdocumenttypes,seethechaptersaboutTNXMLdocument
typesandTNflatfiledocumenttypesinthewebMethodsTradingNetworksUsers
Guide.
Systemattributes,includingtheConversationIDsystemattribute,seethechapter
aboutdocumentattributesinthewebMethodsTradingNetworksUsersGuide.
Howtodefineprocessingrules,seethechapteraboutprocessingrulesinthe
webMethodsTradingNetworksUsersGuide.
Thepub.prt.correlate:establishCorrelationserviceandpub.prt:ProcessDataISdocumenttype,
seethewebMethodsIntegrationServerBuiltInServicesReference.
Thewm.tn.rec:BizDocEnvelopeISdocumenttype,seethewebMethodsTradingNetworks
BuiltInServicesReference.
89
90
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Transitioning Based on Process Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Transitioning when a Service Throws an Exception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Transitioning When There is an Unexpected Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Implementing an Exception or Error Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
91
Overview
Youshoulddefineerrorandexceptionhandlingforyourbusinessprocesstohandleboth
expectedandunexpectedexceptionsanderrors.Forexample,inthenewemployeesetup
businessprocessanexpectedexceptionwouldbewhenHRdoesnotapprovethenew
employee,andanunexpectederrormightbeiftheservicethatenrollsthenewemployee
intotheHRinternalsystemrunsoutofmemoryandthrowsanexception.
Tohandleerrorsandexceptions,yousetupthebusinessprocesstotransitiontoanother
stepwhenanerrororexceptionoccurs.Thensetupthatsteptohandletheerrorinany
wayyouchoose.Forexample,youmightsetupthesteptoinvokeaservicethatsendsan
emailmessagetoinformanadministratoroftheexceptionorerror.
ThischapterdescribesthreeofthemethodsprovidedwithDesignertotransitiontoastep
intheeventofanexceptionorerror:
TransitioningBasedonProcessDataonpage92.
TransitioningwhenaServiceThrowsanExceptiononpage93.
TransitioningWhenThereisanUnexpectedErroronpage94.
Note: Inadditiontothemethodslistedabove,youcanalsosetup:
Atimeoutvaluetotransitionafteracertaintimeelapsesandaconditionisnotmet.
Aniterationsexceededtotransitionafterastepisexecutedunsuccessfullyaftera
certainnumberofattempts.
Formoreinformationaboutthesemethods,seeinformationaboutsteptransitionsinthe
webMethodsDesigneronlinehelp.
92
Afteryoucreatethetransition,youcaneditthetransitionconditionstodefinewhento
takethetransitionbasedonpipelinevalues.Whenyoueditthetransition,youselectthe
appropriatepipelinevariablethatyouwanttouseandspecifyanoperatorand
comparisonvaluetouseforthecondition.
Forexample,asstatedaboveforthenewemployeesetupbusinessprocess,theoutcomeof
theReviewnewemployeestepcausestheHRapprovalvariableinthepipelinetobe
eithersettoapprovedorrejected.Forthisbusinessprocess,editthetransitioncondition
totransitiontotheexception/errorstepwhenthevalueoftheHRapprovalvariableisequal
torejected.
93
Forexample,thenewemployeesetupprocessmodelinvokesaservicetoenrollthenew
employeeintheinternalHRsystem.Iftheservicethrowsanexception,thebusiness
processtakestheerrortransitiontoasteptohavethedataerrorreviewed.
Touseanerrortransition,addtheerrorsteptotheprocessmodel,andcreateatransition
totheerrorstep.Afteryoucreatethetransition,changethetransitiontypetoError.
Step to perform if the service
executed by the Enroll in HR
system throws an exception.
94
95
96
97
Important! BeforeyoucanusewebMethodsMonitor,youmusthaveyourdatabasesetup
correctly.Forinformationabouthowtosetupthedatabaseandlogdata,seethe
webMethodsInstallationGuideandthewebMethodsLoggingGuide.
98
99
100
101
Formoreinformationaboutmodelingthestep,see:
AddingtheITBusinessTaskstotheModelonpage30forasamplemodelthat
includesWebServicesteps.
webMethodsDesigneronlinehelpformoreinformationaboutmodelingstepsin
processmodels.
SetthefollowingpropertiesfortheWebserviceactivitystep:
Property
Setting
WebService.
TheIntegrationServeronwhichtheWeb
serviceconnectorresides.
Thefullyqualifiednameoftheservice.You
canusethebrowsebuttonnexttothisfield
toselectaWebserviceconnectoronthe
IntegrationServer,draganddropaWeb
serviceconnectorontotheactivitystep,or
rightclicktostarttheWebservicewizard.
Inputs / Outputs
Theinputstoandoutputsofthestep.
AfteryousettheAdvanced > Implementation >
Serviceproperty,Designerconfiguresthe
inputsandoutputsautomatically.Youare
freetochangethem.
Formoreinformation,seeConfiguringtheActivityStepfortheWebServiceon
page39orthewebMethodsDesigneronlinehelp.
Make the inputs
and authentication
information
available
Receive the
response from the
Web service
UpdatethewrapperservicetomaketheinputstotheWebserviceandauthentication
informationavailabletotheWebservice.
1
InDesigner,buildanduploadtheprocess.
InDeveloper,locatethewrapperservicefortheWebserviceactivitystep.
UpdatethewrapperservicetosettheWebserviceinputvariablesbyeither
mappingvaluesfromtheprocessdataorhardcodingvalues.
Updatethewrapperservicetosettheauthenticationinformationbyeither
mappingvaluesfromtheprocessdataorhardcodingvaluesintheauthdocument,
whichisaninputtotheWebserviceconnector.
TheProcessEngineplacestheresponseoftheWebserviceinthebusinessprocess
pipelinebecausetheWebserviceactivitystephasdefinedoutputsinitsInputs / Outputs
property.Asaresult,itwillbeavailabletosubsequentsteps.Formoreinformation,see
ReceivingDataBackIntotheBusinessProcessSynchronouslyonpage42.
102
Formoreinformationaboutmodelingthestep,see:
DefiningStepsforHRBusinessTasksonpage26forasamplemodelinvolvingan
internalsystem.
webMethodsDesigneronlinehelpformoreinformationaboutmodelingstepsin
processmodels.
Createaservicethatsendsdatatotheinternalsystem.Formoreinformation,see
CreatingaServicethatSendsDatatotheInternalSystemonpage47.
Configure the
activity step that
sends data to the
internal system
Setthefollowingpropertiesfortheactivitystep:
Property
Setting
ISService.
TheIntegrationServeronwhichtheservice
thatsendsdatatotheinternalsystemresides.
Thefullyqualifiednameoftheservicethat
sendsdatatotheinternalsystem.Youcan
usethebrowsebuttonnexttothisfieldto
selectaserviceonIntegrationServer.
Inputs / Outputs
Theinputstoandoutputsfromtheservice
thatsendsdatatotheinternalsystem.
Formoreinformation,seeSendingDatafromtheBusinessProcesstotheInternal
Systemonpage47.
103
Set up to receive
the response from
the internal system
Theprocesscanreceivetheresponsesynchronouslyorasynchronously
To receive the
response
synchronously
Toreceivetheresponseintothebusinessprocesspipelineafterthe
activitystepcompletes,ensureyouhavedefinedtheoutputsinthe
Inputs / Outputs property.Formoreinformation,seeReceivingData
BackIntotheBusinessProcessSynchronouslyonpage42.
To receive the
response
asynchronously
Tosetuptoreceivetheresponseasynchronously:
InDeveloper,defineapublishableISdocumenttypethat
definesthedatatheinternalsystemwillreturn.Formore
information,seethePublishSubscribeDevelopersGuide.
AddlogictoestablishacorrelationIDfortheprocess.Formore
information,seeMappingtheCorrelationIDtotheProcess
InstanceIDonpage53.
CreateacorrelationservicetoextractacorrelationIDfromthe
responsedocument.Formoreinformation,seeCorrelating
IncomingDocumentswiththeCorrectProcessInstanceon
page51.
Addareceivesteptothemodelthatwaitsforthedocument
fromtheinternalsystem.
Configure the
receive step that
receives the
asynchronous
response from an
internal system
Setthefollowingpropertiesforthereceivestep:
Property
Setting
TheIntegrationServeronwhichthe
correlationserviceresides.
Thefullyqualifiednameofthecorrelation
service.Youcanusethebrowsebuttonnext
tothisfieldtoselectaserviceonIntegration
Server.
Thefullyqualifiednameofthepublishable
ISdocumenttypethatdefinesthedatathe
internalsystemwillreturn
Formoreinformation,seeUpdatingtheProcessModeltoReceivetheISDocumenton
page49andCorrelatingIncomingDocumentswiththeCorrectProcessInstanceon
page51.
104
Formoreinformationaboutmodelingthestep,see:
AddingtheFacilitiesBusinessTaskstotheModelonpage29forasamplemodel
involvinginteractionwithpeople(i.e.,thatincludesataskstep).
webMethodsDesigneronlinehelpformoreinformationaboutmodelingstepsin
processmodels.
IntheDeveloper,defineISdocumenttypesthatdefinethestructureoftheinputsand
outputsthatthetaskwillexpect.
DefineasingleISdocumenttypeforboththeinputsandoutputsifthetaskreturns
itsoutputbyupdatingthecontentoftheinputdocument.
DefineanISdocumenttypefortheinputandanotherfortheoutputifthestructure
ofthetaskinputisdifferentfromthetaskoutput.
Setthefollowingpropertiesforthetaskstepwhenusinganexistingtask:
Property
Setting
Task.
TheIntegrationServerthatisrunningthe
ProcessEngine,whichinturn,isconnected
totheTaskEngineforthetask.
Thetaskyouwanttouse.
Inputs / Outputs
TheISdocumenttype(s)thatdefinethetask
inputsandoutputs.
Formoreinformation,seeUsinganExistingTaskonpage64.
105
Toaddanemptytaskstepandimplementanewtaskfromit:
1
Setthefollowingpropertiesforthetasksteptosetuptoimplementthenewtask:
Property
Setting
Auniquenameamongyourexistingtasks.
Task.
TheIntegrationServerthatisrunningthe
ProcessEngine,whichinturn,isconnected
totheTaskEngineforthetask.
Inputs / Outputs
TheISdocumenttype(s)thatdefinethetask
inputsandoutputs.
Implementthetaskbyrightclickingthetaskstepandselecting
Create Implementation > New Task.
Modifythetasktocompletetheuserinterface.Additionally,youmightwantto
assignrulestothetask
Formoreinformation,seeImplementingaNewTaskfromaTaskSteponpage66and
webMethodsDesigneronlinehelpformoreinformationaboutmodifyingtasks.
Send data to the
internal system
Atruntime,theProcessEnginesendsthedataidentifiedintheinputsofthetasksteps
Inputs / Outputs propertytothetask.Formoreinformation,seeGettingInformationTo
andFromtheBusinessProcessonpage67.
Receive the
response from the
task
TheProcessEnginewillplacetheresponsefromthetaskinthebusinessprocess
pipelinebecausethetaskstephasdefinedoutputsinitsInputs / Outputs property.For
moreinformation,seeGettingInformationToandFromtheBusinessProcesson
page67.
106
UsingTradingNetworks,defineaprofileforyourexternalpartner.Formore
information,seeDefiningInformationaboutExternalPartnersonpage71andthe
chapteraboutcreatingpartnerprofilesinthewebMethodsTradingNetworksUsersGuide.
Formoreinformationaboutmodelingthestepstointeractwithanexternalpartner,see:
DefiningStepsforHRBusinessTasksonpage26forasamplemodelinvolvingan
externalpartner.
webMethodsDesigneronlinehelpformoreinformationaboutmodelingstepsin
processmodels.
TosenddatatoTradingNetworks,youdothefollowing:
CreateaservicethatsendsadocumenttoTradingNetworks.Formoreinformation,
seeSendingDocumentsfromtheBusinessProcesstoExternalPartnerson
page72.
UsingTradingNetworks,defineaTNdocumenttypeforthedocumentthatwillbe
senttoTradingNetworks.Formoreinformation,seeDefiningaTNDocument
TypefortheDocumentfromtheProcessonpage75andwebMethodsTrading
NetworksUsersGuideforinformationaboutcreatingTNXMLdocumenttypesand
TNflatfiledocumenttypes.
UsingTradingNetworks,defineaprocessingruletoprocessthedocumentthatisto
besenttoTradingNetworks.Formoreinformation,seeDefiningaProcessing
RulefortheDocumentfromtheProcessonpage76andwebMethodsTrading
NetworksUsersGuideforinformationaboutcreatingprocessingrules.
Configure the
activity step that
sends data to the
external partner
Setthefollowingpropertiesfortheactivitystepthatsendsdatatotheexternalpartner:
Property
Setting
ISService.
TheIntegrationServeronwhichtheservice
thatsendsdatatotheTradingNetworks
resides.
Thefullyqualifiednameoftheservicethat
sendsdatatoTradingNetworks.Youcanuse
thebrowsebuttonnexttothisfieldtoselecta
serviceonIntegrationServer.
Inputs / Outputs
Theinputstotheservicethatsendsdatato
theTradingNetworks,ifany.
Formoreinformation,seeUpdatingtheProcessModeltoReferencetheServiceon
page74.
107
Set up to receive
the response from
the internal system
TradingNetworksreturnsdatafromanexternalpartner,andyoureceiveitintothe
processasynchronously.Tosetuptoreceivedata:
UsingTradingNetworks,defineaTNdocumenttypeforthedocumentthatthe
externalpartnerwillsendtoTradingNetworksandthatTradingNetworkswill
forwardtothebusinessprocess.Formoreinformation,seeDefiningaTN
DocumentTypefortheDocumentfromtheExternalPartneronpage77and
webMethodsTradingNetworksUsersGuideforinformationaboutcreatingTNXML
documenttypesandTNflatfiledocumenttypes.
Important! BesuretodefinetheTNdocumenttypetoextracttheConversationID
systemattribute.
UsingTradingNetworks,defineaprocessingruletoprocessthedocumentthatthe
externalpartnerwillsendtoTradingNetworks.Formoreinformation,see
DefiningaProcessingRuleforDocumentfromtheExternalPartneronpage80
andwebMethodsTradingNetworksUsersGuideforinformationaboutcreating
processingrules.
AddlogictoestablishaconversationIDfortheprocess.Formoreinformation,see
MappingtheConversationIDtotheProcessInstanceIDonpage84.
AddareceivesteptotheprocessmodeltoreceivethedocumentfromTrading
Networks.
Configure the
receive step the
receives data from
the external partner
Setthefollowingpropertiesforthereceivestep:
Property
Setting
ThefullyqualifiednameoftheTNdocument
typethatdefinesthedatatheexternalsystem
willreturn.
Note: Youdonotneedtospecifyacorrelationservicewhenreceivingadocumentfrom
TradingNetworksbecauseProcessEngineobtainstheconversationIDfromTrading
Networks.
Formoreinformation,seeUpdatingtheProcessModeltoReceivetheTNDocument
onpage77.FormoreinformationabouthowtoaccessthedocumentthatTrading
Networksreturns,seeCreatingaServicetoProcesstheDocumentfromtheExternal
Partneronpage80.
108
Index
Index
A
adapters, webMethods 47
AND join
using when waiting for document and transition 50, 78
when to use 50, 78
asynchronously receiving documents
how documents processed 55
requirements 49
B
Bindings view 66
bizdoc 80
BizDocEnvelope 80
build and upload business process 98
business process
activity step 28
before you can execute 98
build and upload 98
deleting unused models for 100
disabling models 100
enabling 98
enabling model for 100
making models temporarily unavailable 100
monitoring 99
receive step 28
resubmitting 100
resuming 100
starting new instance of 98
suspending 100
task step 28
C
code sample
creating document for external partner
flat file document 73
XML document 72
extracting correlation ID from incoming document 57
mapping
authentication information for Web services 41
conversation ID to process instance ID 86, 88
correlation ID to process instance ID 54
obtaining response document content from external partner
81, 82
sending data to
external partner via Trading Networks 72, 73
internal system 47
configuring
connection between Task Engine and Process Engine 63
IS Service activity step 103, 107
receive step 104, 108
task step 64, 66, 105
Web service activity step 102
conversation ID
ConversationID system attribute for TN document type 77
data to use for 77
definition 77, 84
how Trading Networks uses 77
relationship to process instance ID 84
when you have to map to process instance ID 84
correlating incoming documents with correct process instance
51, 83
correlation ID
creating 52
definition 52
determining data to use for 52
extracting from documents 55
mapping to process instance ID 53
purpose 52
rules for using 52
correlation service
creating 56
description 55
Document input variable 56
identifying when to execute 57
input and output variables 56
purpose 55
109
Index
D
definitions
bizdoc 80
BizDocEnvelope 80
business process management 10
conversation ID 77, 84
correlation ID 52
error transition 35
external pool 28
internal pool 28
PID 51
process ID 51
process instance ID 51, 84
process-wide error step 35
publishable IS document type 49
swimlane 28
wrapper service 40
deleting unused processes 100
disabling process models 100
Document input variable to correlation service 56
document types, See IS document types
documentation
additional 8
feedback 8
documents
obtaining content of documents from Trading Networks 80
obtaining response flat file document content 81
obtaining response XML document content 80
receiving asynchronously 49
receiving synchronously 42
response from internal system 49
service to create flat file documents for external partner 73
service to create flat file documents for Trading Networks 73
E
enabling process models 98, 100
Error (Advanced) process property 94
error processing
handling exceptions 93
handling expected errors 92
handling unexpected errors 94
overview 92
sample for handling exceptions 94
sample for handling expected conditions 93
sample for handling unexpected conditions 94
transitioning based on pipeline value 92
transitioning based on process data 92
types of transitions 92
exceptions, handling in processes 93
executing
before you can execute processes 98
correlation services in business processes 57
processes, enabling 98
external partners, interacting with in business processes
configuring IS Service activity step 107
configuring receive step 108
defining partners in Trading Networks 71
making Trading Networks send response to business process
77
modeling 70
overview 70
receiving response from external partner 76
sending data to external partner 72
when to map conversation ID to process instance ID 84
external pool 28
extracting
correlation ID from documents 55
F
flat file document
converting to IData object 81
creating to send to Trading Networks 73
retrieving content of document sent from Trading Networks 81
110
Index
H
human tasks, using in business processes
configuring task step 64, 105
defining IS document types for input and output 63
IS document input/output guidelines 64
modeling 62
overview 62
prerequisites 63
J
Join Type (Advanced>Implementation>Joins) property 50, 78
joins, AND
using when waiting for document and transition 50, 78
when to use 50, 78
IDs
conversation 84
conversation ID 77
correlation 52
process instance ID (PID) 51
Inputs / Outputs (Advanced>Implementation) property 102
Inputs / Outputs property 40, 65, 66, 103, 105, 106, 107
internal people, interacting with in business processes, See
human tasks, using in business processes
internal pool 28
internal systems, interacting with in business processes
asynchronously receive documents from internal system 49
configuring IS Service activity step 103
configuring receive step 104
defining response data from internal system 49
determining data to use for correlation IDs 52
extracting correlation ID from documents 55
getting data into correct process instance 51
mapping correlation ID to process instance ID 53
modeling 46
overview 46
processing document from 39, 58
processing document from internal system 39, 58
receiving response from internal system 49
sending documents to internal system 47
using webMethods adapters to interact with 47
IS Browser view 40, 48, 50, 59, 75, 78
IS document types
creating publishable IS document types 49
guidelines for human tasks input/output 64
input and output of human tasks 63
output for Web service 42
pub.prt:ProcessData 54
publishable 49
M
mapping
conversation ID to process instance ID
from activity step 85
from processing rule 87
how to do the mapping 85, 87
when you have to map 84
where in process to do mapping 84
correlation ID to process instance ID 53
how to do mapping 53
modeling steps to
interact with external partners 70
interact with internal people 62
interact with internal systems 46
use Web services 38
monitoring business processes 99
P
partner profiles 71
people, interacting with in business processes, See human tasks,
using in business processes
PID 51
Process Engine, configuring connection to Task Engine 63
process instance ID
definition 51, 84
mapping conversation ID to 84
mapping correlation ID to 53
relationship to conversation ID 84
when you have to map conversation ID to 84
111
Index
task step
Advanced>Implementation>Logical Server 65, 66, 105,
106
Advanced>Implementation>Task Information 65, 105
Advanced>Implementation>Type 65, 66, 105, 106
General>Label 66, 106
Inputs / Outputs 65, 66, 105, 106
Web Service activity step
Advanced>Implementation>Inputs / Outputs 102
Advanced>Implementation>Logical Server 102
Advanced>Implementation>Service 102
Advanced>Implementation>Type 102
configuring 39
Inputs / Outputs 40
pub.flatFiile:convertToValues service 82
pub.flatFile:convertToString service 74
pub.io:bytesToStream service 74
pub.prt.correlate:establishCorrelation service 53, 54, 85
pub.prt:CorrelationService specification 56
pub.prt:ProcessData IS document type 54
pub.string:stringToBytes service 74
pub.xml:documentToString service 47
pub.xml:documentToXMLString service 73
pub.xml:xmlStringToXMLNode service 73
R
receive step
configuring 104, 108
executing correlation services from 57
receiving documents asynchronously 55
resubmitting business process 100
resuming business process 100
retrieving data from
external partner 76
internal systems 49
S
sending documents to
external partners via Trading Networks 72
internal systems 47
Service (Advanced>Implementation) property 102, 103, 107
services
correlation
creating 56
112
Index
description 55
Document input variable 56
identifying when to execute 57
input and output variables 56
purpose 55
mapping correlation ID to process instance ID 53
processing document from internal system 39, 58
pub.flatFiile:convertToValues 82
pub.flatFile:convertToString 74
pub.io:bytesToStream 74
pub.prt.correlate:establishCorrelation 53, 54, 85
pub.string:stringToBytes 74
pub.xml:documentToString 47
pub.xml:documentToXMLString 73
pub.xml:xmlStringToXMLNode 73
sending documents to
external partner via Trading Networks 72
internal systems 47
wm.tn.doc.ff:routeFlatFile 73, 74
wm.tn.doc.xml:bizdocToRecord 81
wm.tn.doc.xml:routeXML 72, 73
wm.tn.doc:getContentPartData 82
wm.tn.doc:view 80, 81
specification, pub.prt:CorrelationService 56
starting new instance of process 98
step properties
interact with external partner
Advanced>Implementation>Joins>Join Type 78
Advanced>Implementation>Logical Server 107
Advanced>Implementation>Service 107
Advanced>Implementation>Subscription 77, 108
Advanced>Implementation>Type 107
Inputs / Outputs 107
interact with internal system
Advanced>Implementation>Correlation Service 104
Advanced>Implementation>Logical Server 103, 104
Advanced>Implementation>Service 103
Advanced>Implementation>Subscription 104
Advanced>Implementation>Type 103
Inputs / Outputs 103
IS Service activity step
Advanced>Implementation>Logical Server 103, 107
Advanced>Implementation>Service 103, 107
T
Task Engine, configuring connection to Process Engine 63
Task Information (Advanced>Implementation) property 65, 105
task step, configuring 105
tasks
Bindings view 66
designing user interface 66
implementing new for processes 66
using existing in processes 64
TN document type
ConversationID attribute 77
document to send to external partner 75
in IS Browser view 78
Trading Networks
defining external partners 71
forming a flat file document to send to 73
forming an XML document to send to 72
113
Index
U
upload (and build) business process 98
W
Web Service activity step, configuring 102
Web services, using in business processes
IS document for the output from Web service 42
modeling 38
obtaining outputs from Web service 42
overview 38
specifying authentication for Web service 41
webMethods adapters 47
webMethods Advantage Web site 48
wm.tn.doc.ff:routeFlatFile service 73, 74
wm.tn.doc.xml:bizdocToRecord service 81
wm.tn.doc.xml:routeXML service 72, 73
wm.tn.doc:getContentPartData service 82
wm.tn.doc:view service 80, 81
wrapper service
definition 40
X
XML document
converting to IData object 80
creating to send to Trading Networks 72
retrieving content of document sent from Trading Networks 80
114