If you need to get the right work to the right people at the right time in an SAP application system, this book is your number one resource!
This second edition of our bestselling workflow book provides practical guidance on SAP Business Workflow. You’ll explore a general overview of workflow processes, learn how to deploy and extend existing workflows, and discover how to create your own successful workflow projects. The book contains a plethora of technical details you’ll need if you’re implementing, and overviews if you’re a business process expert just curious to see workflow capabilities in action.
The book is up-to-date for SAP NetWeaver 7.0 and includes information on upgrading workflow, UWL, ABAP Objects, and other effective capabilities. In addition, it will touch on SAP’s overall strategy for Business Process Management. Many tips and tricks, guidelines, and practical instructions from the world’s leading SAP Business Workflow experts make this book an indispensable reference for everyday use.
The team of authors – Jocelyn Dart, Erik Dick, Ginger Gatling, Oliver Hilss, Somya Kapoor, Silvana Kempf, Susan Keohan, Thomas Kosog, Paul Médaille, Mike Pokraka, Alan Rickayzen, Shalini Sabnani, Jörn Sedlmayr, and Ted Sohn – consists of SAP workflow experts in various fields.
All authors have chosen to donate their royalties to Doctors Without Borders/Médecins Sans Frontières.
... Foreword ... 27
... Preface ... 29
1 ... Introduction ... 39
... 1.1 ... What Is SAP Business Workflow ... 39
... 1.2 ... What Is SAP NetWeaver Business Process Management ... 42
... 1.3 ... How Does SAP Business Workflow Fit Into the SAP Overall Business Process Management Strategy ... 43
... 1.4 ... In Which Business Situations Should I Use SAP Business Workflow ... 44
... ... 1.4.1 ... Factor 1: Human Involvement ... 45
... ... 1.4.2 ... Factor 2: Repetition ... 45
... ... 1.4.3 ... Factor 3: The Fruits of Success ... 46
... ... 1.4.4 ... Factor 4: The Cost of Failure ... 48
... 1.5 ... What Can Be Achieved Using SAP Business Workflow ... 49
... 1.6 ... Features of SAP Business Workflow ... 49
... ... 1.6.1 ... Robust Integration into SAP Applications ... 50
... ... 1.6.2 ... Workflow Builder ... 50
... ... 1.6.3 ... Graphical Status Visualization ... 51
... ... 1.6.4 ... Routing Mechanisms ... 52
... ... 1.6.5 ... Deadline/Escalation Management ... 53
... ... 1.6.6 ... Synchronization Management ... 53
... ... 1.6.7 ... Integration with Groupware Products ... 53
... ... 1.6.8 ... Ad-hoc Process Enhancers ... 53
... ... 1.6.9 ... Desktop Integration ... 54
... ... 1.6.10 ... Analytics with SAP NetWeaver Business Warehouse ... 54
... ... 1.6.11 ... Robust Extensible Architecture ... 55
... 1.7 ... Some Terminology ... 55
2 ... Requirements Gathering Strategy ... 57
... 2.1 ... Introduction ... 57
... 2.2 ... Understanding the Business Process ... 59
... ... 2.2.1 ... Business Drivers for the Process ... 59
... ... 2.2.2 ... Expected Benefits of Workflow ... 61
... ... 2.2.3 ... How Does the Process Work in Theory ... 63
... ... 2.2.4 ... How Does the Process Work in Practice ... 63
... ... 2.2.5 ... Unions and Workers Councils ... 66
... 2.3 ... Gathering Object Data ... 66
... ... 2.3.1 ... What Data Is Needed by Workflow ... 67
... ... 2.3.2 ... Where to Look for Data ... 68
... ... 2.3.3 ... What Data Already Exists ... 68
... ... 2.3.4 ... Making the Most of the Data Collected ... 69
... 2.4 ... Determining the Agents ... 72
... ... 2.4.1 ... Who Are Your Agents? ... 73
... ... 2.4.2 ... Criteria for Finding Agents ... 74
... 2.5 ... Determining Work Item Delivery Routes ... 77
... 2.6 ... Confirming the Workflow Design ... 78
... 2.7 ... Workflow Administration ... 80
... 2.8 ... Planning for Production Start ... 80
... 2.9 ... Planning for Future Enhancements ... 81
3 ... Configuring the System ... 83
... 3.1 ... Quick Start: Configure the SAP Workflow Engine in Seconds ... 85
... ... 3.1.1 ... Automatic Workflow Customizing ... 85
... ... 3.1.2 ... Specifics of Automatic Customizing ... 87
... ... 3.1.3 ... IMG Activities for Authorization Management ... 90
... 3.2 ... Task-Specific Customizing ... 91
... ... 3.2.1 ... Maintaining the Organizational Plan ... 91
... ... 3.2.2 ... Agent Assignment for Tasks ... 92
... ... 3.2.3 ... Activating the Triggering Events for a Workflow or a Task ... 92
... 3.3 ... Transport and Client Copy ... 92
... ... 3.3.1 ... Transport of Tasks ... 93
... ... 3.3.2 ... Transport of Settings for Tasks and Workflows ... 93
... ... 3.3.3 ... Transporting a Workflow Definition ... 93
... 3.4 ... Customizing for the SAP Workflow Engine ... 94
4 ... Work Item Delivery ... 95
... 4.1 ... The Human Factor ... 95
... 4.2 ... SAP Business Workplace ... 98
... ... 4.2.1 ... Work Item Text ... 99
... ... 4.2.2 ... Attachments ... 101
... ... 4.2.3 ... Reserving and Replacing a Work Item ... 102
... ... 4.2.4 ... Executing a Work Item ... 103
... ... 4.2.5 ... Synchronous Dialog Chains ... 105
... ... 4.2.6 ... Forwarding a Work Item ... 106
... ... 4.2.7 ... Priority ... 107
... ... 4.2.8 ... Resubmission ... 107
... ... 4.2.9 ... Logs ... 108
... ... 4.2.10 ... Outbox ... 110
... ... 4.2.11 ... Rejecting Work Items ... 110
... ... 4.2.12 ... Substitution ... 111
... 4.3 ... Universal Worklist ... 111
... ... 4.3.1 ... Major Features of the Universal Worklist ... 112
... ... 4.3.2 ... Getting Started with the Universal Worklist ... 114
... ... 4.3.3 ... Working with Tasks in the Universal Worklist ... 115
... ... 4.3.4 ... Personalization Options in the Universal Worklist ... 115
... ... 4.3.5 ... Customizing Options in the Universal Worklist ... 116
... ... 4.3.6 ... Action Handlers in the Universal Worklist ... 117
... ... 4.3.7 ... UWL Configuration Wizard ... 118
... ... 4.3.8 ... Universal Worklist API and the SONiC Connector ... 120
... 4.4 ... Examples of Universal Worklist Customizing ... 121
... ... 4.4.1 ... How Can I Add/Remove Columns ... 122
... ... 4.4.2 ... How Can I Create Custom Columns ... 122
... ... 4.4.3 ... How Can I Make a Mandatory Rejection Memo ... 125
... 4.5 ... Extended Notifications ... 125
... ... 4.5.1 ... Types of Notifications ... 125
... ... 4.5.2 ... Features of Extended Notifications ... 126
... ... 4.5.3 ... Configuration Required for Extended Notifications ... 127
... 4.6 ... Business Workflow Workplace ... 128
... 4.7 ... External Users ... 130
... 4.8 ... Other Considerations ... 131
5 ... Agents ... 133
... 5.1 ... Understanding Agent Assignment ... 134
... ... 5.1.1 ... Possible Agents ... 135
... ... 5.1.2 ... Responsible Agents ... 138
... ... 5.1.3 ... Excluded Agents ... 139
... ... 5.1.4 ... Recipients ... 140
... ... 5.1.5 ... Actual Agents ... 141
... ... 5.1.6 ... Assigning Multiple Agents per Work Item ... 142
... ... 5.1.7 ... Deadline and Notification Agents ... 143
... 5.2 ... Agent Assignment Using the Organizational Structure ... 144
... ... 5.2.1 ... The Basic Organizational Plan ... 144
... ... 5.2.2 ... The Extended Organizational Plan ... 148
... ... 5.2.3 ... Doing Without an Organizational Plan ... 150
... 5.3 ... Agent Assignment Using Task Groups ... 150
... 5.4 ... Implementing and Maintaining the Structure in Practice ... 151
... ... 5.4.1 ... Strategies for Organization Plan Maintenance ... 151
... ... 5.4.2 ... Transporting Organization Plans ... 153
... ... 5.4.3 ... Reassigning Work Items from One User to Another ... 154
... ... 5.4.4 ... Substituting Users ... 155
... ... 5.4.5 ... When Do You Choose to Refresh the Organizational Environment ... 157
... ... 5.4.6 ... Training and Encouraging Agents ... 158
6 ... Workflow Administration ... 161
... 6.1 ... Reporting on Workflows ... 162
... ... 6.1.1 ... Reporting on Workflow Progress ... 163
... ... 6.1.2 ... Reporting on Workflow Performance ... 164
... ... 6.1.3 ... Work Items by Processing Duration ... 165
... ... 6.1.4 ... Work Items with Monitored Deadlines ... 166
... ... 6.1.5 ... Reporting on Agent Behavior ... 166
... ... 6.1.6 ... Identifying and Justifying Potential Improvements ... 167
... 6.2 ... Error Resolution ... 168
... 6.3 ... General Techniques for Resolving Runtime Errors ... 171
... ... 6.3.1 ... Basic Settings for Error Monitoring ... 171
... ... 6.3.2 ... Finding and Fixing Work Items ... 172
... ... 6.3.3 ... Diagnosis of Workflows with Errors ... 172
... ... 6.3.4 ... Work Item Selection ... 173
... ... 6.3.5 ... Work Item Frequency ... 175
... 6.4 ... Working with the Work Item Display ... 176
... ... 6.4.1 ... Work Item Display — Standard View ... 177
... ... 6.4.2 ... Work Item Display — Technical View ... 179
... ... 6.4.3 ... How to Work with the Work Item Container Display ... 181
... 6.5 ... Working with the Workflow Log ... 182
... ... 6.5.1 ... User View ... 182
... ... 6.5.2 ... Technical View ... 185
... 6.6 ... Resolving Agent Determination Errors ... 188
... ... 6.6.1 ... Fixing Work Items with No Agents or Wrong Agents ... 188
... ... 6.6.2 ... Preventing Agent Determination Problems from Recurring ... 191
... ... 6.6.3 ... Support Tools for Agent Determination Problems ... 191
... ... 6.6.4 ... Resolving Buffering Errors ... 192
... ... 6.6.5 ... Fixing Work Items with Buffering Problems ... 193
... ... 6.6.6 ... Preventing Buffering Problems from Recurring ... 194
... ... 6.6.7 ... Support Tools for Buffering Problems ... 194
... 6.7 ... Other Support Tools ... 195
... 6.8 ... Help Desk in the Intranet ... 196
... ... 6.8.1 ... Web-Based Help Desks ... 196
... ... 6.8.2 ... Self Help ... 197
... 6.9 ... A Day in the Life of a Workflow Administrator ... 198
... ... 6.9.1 ... Who Should be the Workflow Administrator ... 199
... ... 6.9.2 ... Who Makes the Business Decisions in the Event of Failure ... 201
... ... 6.9.3 ... Crisis Response ... 203
... ... 6.9.4 ... Day-to-Day Monitoring ... 205
... ... 6.9.5 ... Periodic Reality Checks ... 206
... ... 6.9.6 ... Housekeeping and Archiving ... 208
... ... 6.9.7 ... Making the Most of a Precious Resource ... 209
7 ... Using SAP NetWeaver Business Warehouse for SAP Business Workflow Reporting ... 211
... 7.1 ... SAP NetWeaver Business Warehouse Basics for the Workflow Expert ... 212
... 7.2 ... Standard Workflow Analysis with SAP NetWeaver Business Warehouse ... 214
... ... 7.2.1 ... Data Flow and Overview of Provided Content ... 215
... ... 7.2.2 ... Aggregation Layer ... 215
... ... 7.2.3 ... InfoCube Aggregated Process Data ... 216
... ... 7.2.4 ... Using Standard BI Content ... 217
8 ... Creating a Workflow ... 221
... 8.1 ... Workflow Builder Basics ... 222
... ... 8.1.1 ... Look and Feel of the Workflow Builder ... 222
... ... 8.1.2 ... Building Your First Workflow ... 226
... ... 8.1.3 ... Saving, Activating, and Testing ... 229
... 8.2 ... Enhancing Your Workflow ... 231
... ... 8.2.1 ... Deadline Monitoring ... 231
... ... 8.2.2 ... How to Create and Use Tasks ... 234
... ... 8.2.3 ... Using Asynchronous Tasks ... 241
... ... 8.2.4 ... How to Access Data and Activities ... 243
... ... 8.2.5 ... Notifications ... 245
... 8.3 ... Basics of Containers and Bindings ... 246
... ... 8.3.1 ... How to Create Containers and Bindings for Tasks ... 247
... ... 8.3.2 ... Creating Container Elements in the Workflow Container ... 247
... ... 8.3.3 ... Changing Container Elements ... 249
... 8.4 ... Steps ... 251
... ... 8.4.1 ... What Other Step Types Exist ... 252
... ... 8.4.2 ... How to Insert New Steps ... 254
... ... 8.4.3 ... What Kinds of Outcomes Exist ... 256
... ... 8.4.4 ... Which Task and Step Attributes Impact Work Item Execution ... 258
... 8.5 ... Documenting, Translating, Transporting, and Team Development ... 259
... ... 8.5.1 ... Documenting Workflow Definitions ... 259
... ... 8.5.2 ... Translating a Workflow into Other Languages ... 260
... ... 8.5.3 ... Transporting New Versions of a Workflow ... 260
... ... 8.5.4 ... How Do You Share Workflow Development Within a Team ... 261
9 ... Advanced Workflow Design Techniques ... 263
... 9.1 ... Step Conditions ... 263
... ... 9.1.1 ... Step Condition: Create Work Item ... 265
... ... 9.1.2 ... Step Condition: Complete Work Item ... 265
... ... 9.1.3 ... Step Condition: Completion Execution ... 266
... 9.2 ... How to Implement Parallel Processing ... 267
... ... 9.2.1 ... How to Implement Table-Driven Dynamic Parallel Processing ... 268
... ... 9.2.2 ... How to Implement a Fork ... 272
... 9.3 ... Reusing Workflows as Subworkflows ... 273
... 9.4 ... Modeled Deadlines ... 274
... ... 9.4.1 ... Notify Recipients Via Email That a Deadline Has Been Missed ... 275
... ... 9.4.2 ... Skip the Work Item If Deadline Has Been Missed ... 275
... 9.5 ... Containers ... 276
... ... 9.5.1 ... Containers and Bindings in Depth ... 277
... ... 9.5.2 ... Reimplementation of the Container ... 280
... 9.6 ... Binding ... 282
... ... 9.6.1 ... Binding Editor ... 282
... ... 9.6.2 ... Expressions ... 283
... 9.7 ... Blocks and Local Workflows ... 284
... ... 9.7.1 ... Local Workflows as a Practical Example of Block Implementation ... 284
... ... 9.7.2 ... Local Workflows and Other SAP-Provided Example Workflows ... 285
... ... 9.7.3 ... When to Use Local Workflows Versus Subworkflows ... 285
... 9.8 ... Ad-hoc Features and Review Workflows ... 286
... ... 9.8.1 ... Ad-Hoc Features to Change Workflows on the Fly ... 286
... ... 9.8.2 ... Review Workflows ... 287
10 ... Business Objects ... 289
... 10.1 ... Business Object Basics ... 291
... ... 10.1.1 ... Business Objects: Some Basic Terminology ... 293
... ... 10.1.2 ... Relationships Between Business Objects ... 294
... ... 10.1.3 ... Business Object Tools ... 297
... ... 10.1.4 ... Viewing Existing Business Object Types ... 299
... 10.2 ... Creating Your Own Business Object Types ... 307
... ... 10.2.1 ... Creating New Business Objects ... 310
... ... 10.2.2 ... Extending Existing Object Types Via Delegation ... 312
... 10.3 ... Creating Business Object Type Components ... 313
... ... 10.3.1 ... Adding an Interface ... 314
... ... 10.3.2 ... Creating Key Fields ... 314
... ... 10.3.3 ... Creating Attributes ... 315
... ... 10.3.4 ... Creating Methods ... 319
... ... 10.3.5 ... Creating Events ... 328
... 10.4 ... Business Object Type Programming ... 329
... ... 10.4.1 ... Key Fields and the Object Declaration ... 330
... ... 10.4.2 ... Programming Attributes ... 332
... ... 10.4.3 ... Programming Methods ... 339
... 10.5 ... Some Useful Predefined Object Types ... 345
... ... 10.5.1 ... Object Type SELFITEM ... 345
... ... 10.5.2 ... Object Type WF_TASK ... 346
... ... 10.5.3 ... Object Type SYSTEM ... 346
... ... 10.5.4 ... Object Type FORMABSENC ... 346
... ... 10.5.5 ... Object Type USR01 ... 346
... 10.6 ... Real-World Examples for Business Object Customizing ... 347
... ... 10.6.1 ... Custom Attribute ... 347
... ... 10.6.2 ... Custom Method ... 349
11 ... ABAP Classes ... 353
... 11.1 ... ABAP Classes Basics ... 354
... ... 11.1.1 ... History ... 354
... ... 11.1.2 ... Why Use Classes ... 355
... ... 11.1.3 ... More Resources ... 357
... 11.2 ... Comparing ABAP Classes and BOR Objects ... 358
... ... 11.2.1 ... Interfaces ... 358
... ... 11.2.2 ... Object Identification ... 359
... ... 11.2.3 ... Class/Component Level ... 360
... ... 11.2.4 ... Attributes ... 360
... ... 11.2.5 ... Methods ... 361
... ... 11.2.6 ... Events ... 361
... 11.3 ... Utility Classes ... 361
... ... 11.3.1 ... Creating a Utility Class ... 362
... ... 11.3.2 ... Component Visibility ... 364
... ... 11.3.3 ... Methods ... 365
... ... 11.3.4 ... Using a Utility Class in a Task ... 366
... ... 11.3.5 ... Attributes ... 368
... ... 11.3.6 ... Functional Methods ... 370
... 11.4 ... Business Classes ... 374
... ... 11.4.1 ... Local Persistent Object Reference ... 376
... ... 11.4.2 ... Implementing FIND_BY_LPOR ... 379
... ... 11.4.3 ... Implementing LPOR ... 380
... ... 11.4.4 ... Instantiating ABAP Class Objects ... 381
... ... 11.4.5 ... Alternate Ways to Instantiate Objects ... 383
... ... 11.4.6 ... Attributes ... 385
... ... 11.4.7 ... Attributes Versus Functional Methods ... 385
... 11.5 ... Exception Classes ... 387
... 11.6 ... Events ... 392
... ... 11.6.1 ... Responding to Events ... 392
... ... 11.6.2 ... Raising Events ... 393
... 11.7 ... Using BOR Objects in Classes ... 401
... 11.8 ... Recommendations and Advanced Topics ... 406
... ... 11.8.1 ... Performance and Instance Management ... 406
... ... 11.8.2 ... Persistent Classes ... 409
... ... 11.8.3 ... Class Design Considerations ... 410
12 ... Agent Determination Rules ... 413
... 12.1 ... Determining Agents Through Rule Resolution ... 414
... 12.2 ... Rule Basics ... 415
... ... 12.2.1 ... Testing and Simulating Rules ... 417
... ... 12.2.2 ... Rule to Locate the Plant Manager ... 417
... 12.3 ... Agent Determination Rule Resolution in the Workflow Step ... 420
... 12.4 ... What Happens If Rule Resolution Has No Result ... 421
... 12.5 ... Responsibility Rules ... 423
... ... 12.5.1 ... Responsibility Rules with Multiple Criteria ... 423
... ... 12.5.2 ... Secondary Priorities ... 425
... 12.6 ... Agent Determination Using SAP Organizational Data ... 427
... 12.7 ... Function Modules as Rules ... 429
... ... 12.7.1 ... Creating a Rule Based on a Function Module ... 429
... ... 12.7.2 ... Linking Rule Function Modules from Different SAP Components ... 431
... 12.8 ... Evaluation Paths as Rules ... 434
... 12.9 ... Other Options for Responsible Agent Assignment ... 437
... 12.10 ... Real-World Example of Agent Determination Rules ... 438
13 ... Using Events and Other Business Interfaces ... 441
... 13.1 ... Understanding Events ... 442
... 13.2 ... How to Know What Events Exist ... 444
... ... 13.2.1 ... Look in the Object ... 444
... ... 13.2.2 ... Look in the Event Linkage Table ... 444
... ... 13.2.3 ... Remember to Turn the Trace Off When You Are Done ... 445
... 13.3 ... Defining Events ... 447
... 13.4 ... Raising Events from Business Applications ... 447
... ... 13.4.1 ... Raising Events Via Change Documents ... 449
... ... 13.4.2 ... Raising Events Via Status Changes ... 451
... ... 13.4.3 ... Raising Events Via Message Control ... 453
... ... 13.4.4 ... Raising Events Via Changes to HR Master Data ... 454
... ... 13.4.5 ... Raising Events Via Business Transaction Events ... 455
... ... 13.4.6 ... Raising Events by Calling a Workflow API ... 457
... 13.5 ... Using Events in Workflows ... 457
... ... 13.5.1 ... How to Use Events in Workflows ... 457
... ... 13.5.2 ... Triggering Events ... 458
... ... 13.5.3 ... Start Conditions for Workflows ... 462
... ... 13.5.4 ... Terminating Events ... 464
... ... 13.5.5 ... Workflow Header Events ... 467
... ... 13.5.6 ... Parked Events ... 468
... ... 13.5.7 ... Event Queues ... 469
... 13.6 ... Generic Object Services ... 470
... ... 13.6.1 ... Starting Workflows Manually ... 471
... ... 13.6.2 ... Viewing the Logs of Related Workflows ... 473
... ... 13.6.3 ... Subscribe to an Object Instance ... 473
... ... 13.6.4 ... Sending an Email ... 473
... 13.7 ... Starting Workflows from Messages ... 474
14 ... Custom Programs ... 475
... 14.1 ... The Engine ... 475
... ... 14.1.1 ... Work Items ... 476
... ... 14.1.2 ... Events ... 481
... ... 14.1.3 ... Work Item States ... 481
... 14.2 ... Workflow APIs ... 484
... ... 14.2.1 ... The Simple WAPI Container ... 484
... ... 14.2.2 ... SAP_WAPI_CREATE_EVENT ... 485
... ... 14.2.3 ... SAP_WAPI_START_WORKFLOW ... 485
... ... 14.2.4 ... SAP_WAPI_WORKITEMS_TO_OBJECT ... 487
... ... 14.2.5 ... SAP_WAPI_READ_CONTAINER ... 487
... 14.3 ... Advanced Business Interface Techniques ... 488
... ... 14.3.1 ... When Should a Workflow with an Event Be Started ... 488
... ... 14.3.2 ... Raising Events by Calling a Function Module ... 489
... ... 14.3.3 ... Advanced Event Linkage ... 494
... ... 14.3.4 ... Adding Generic Object Services to Your Own Transactions ... 497
... ... 14.3.5 ... Implementing the Workflow Toolbox in Your Own Transactions ... 498
... 14.4 ... Office Document Interfaces ... 499
... ... 14.4.1 ... Business Communications Services ... 500
... ... 14.4.2 ... SO_*_API1 function modules ... 500
15 ... Service-Enabling Workflows ... 501
... 15.1 ... Workflow in the Context of a Business Process ... 501
... 15.2 ... Web Services and Service-Oriented Architecture ... 502
... ... 15.2.1 ... What Are Web Services ... 503
... ... 15.2.2 ... Web Services Description Language ... 503
... ... 15.2.3 ... Web Services and SOAP ... 505
... ... 15.2.4 ... Other Web Service Standards ... 506
... 15.3 ... What Is Service-Oriented Architecture ... 507
... 15.4 ... SOA at SAP ... 510
... 15.5 ... Implementing the Service Interface for a Workflow ... 512
... ... 15.5.1 ... The Function Module ... 512
... ... 15.5.2 ... Service-Enabling in the Application (Inside-Out Approach) ... 513
... ... 15.5.3 ... Service Enabling from the Enterprise Services Repository (Outside-In Approach) ... 520
16 ... Advanced Diagnostics ... 535
... 16.1 ... The Tools of the Trade ... 535
... 16.2 ... The Diagnosis Logs ... 537
... ... 16.2.1 ... The Workflow Log ... 537
... ... 16.2.2 ... The Diagnosis Transaction ... 538
... ... 16.2.3 ... The Event Trace ... 540
... ... 16.2.4 ... The RFC Log ... 542
... 16.3 ... Debugging with the ABAP Debugger ... 543
... ... 16.3.1 ... The Workflow Trace ... 545
... ... 16.3.2 ... When to Use the Workflow Trace ... 549
... 16.4 ... Preparing a Task to Go to Production ... 549
17 ... Upgrading SAP Business Workflow ... 555
... 17.1 ... First Steps to Upgrading Workflow ... 555
... 17.2 ... Steps to Take Before the Upgrade Begins ... 557
... ... 17.2.1 ... Complete All Running Workflow Instances ... 557
... ... 17.2.2 ... Create Workflow Test Plans ... 557
... ... 17.2.3 ... WF and T Tasks Versus WS and TS Tasks ... 557
... ... 17.2.4 ... Clean Runtime Tables ... 558
... 17.3 ... Steps to Take During and After the Upgrade ... 559
... ... 17.3.1 ... Conversion of Event Linkage Tables ... 559
... ... 17.3.2 ... Basis Support Package ... 559
... ... 17.3.3 ... Configure Your System for Workflow ... 559
... ... 17.3.4 ... Workflow Definition and Binding ... 559
... ... 17.3.5 ... Tables SWW_CONTOB and SWW_CONT ... 560
... ... 17.3.6 ... Changed Locking Behavior of Runtime ... 561
... ... 17.3.7 ... Other Issues After the Upgrade ... 563
... 17.4 ... Important SAP Notes ... 563
18 ... User Interface Options ... 567
... 18.1 ... Inbox and the User Interface ... 568
... 18.2 ... Containers, Bindings, and Data Flow ... 570
... ... 18.2.1 ... Where the Customized UI Fits in with the Data Flow When Using Universal Worklist ... 570
... ... 18.2.2 ... Common Steps When Using Web Dynpro and Business Server Pages with Universal Worklist ... 572
19 ... Using Web Dynpro ABAP ... 575
... 19.1 ... Example Based on User Decision ... 576
... ... 19.1.1 ... Standard User Decision ... 576
... ... 19.1.2 ... User Decision with Note in Universal Worklist ... 577
... ... 19.1.3 ... User Decision with Web Dynpro ABAP ... 580
... 19.2 ... Required Settings in Web Dynpro ABAP ... 583
... ... 19.2.1 ... Web Dynpro ABAP Application ... 583
... ... 19.2.2 ... Window ... 586
... ... 19.2.3 ... Main View ... 587
... 19.3 ... Configuration for the Universal Worklist ... 590
... 19.4 ... Ensuring the User Only Executes the Work Item in the Universal Worklist ... 592
20 ... Using Web Dynpro Java ... 593
... 20.1 ... Real-World Example of Web Dynpro Java and Workflow ... 593
... 20.2 ... What Must Be Done on the Workflow Side ... 595
... 20.3 ... What Must Be Done on the Java Side ... 603
... ... 20.3.1 ... Presentation Layer ... 603
... ... 20.3.2 ... Model Layer ... 605
... 20.4 ... What Must Be Done in the Universal Worklist ... 608
21 ... Using Business Server Pages ... 613
... 21.1 ... Building the Example BSP and Workflow ... 613
... ... 21.1.1 ... Laying the Groundwork ... 613
... ... 21.1.2 ... Setting Up the Web Service Handler ... 621
... 21.2 ... Launching the BSP and Transferring Data ... 622
... ... 21.2.1 ... Defining the Workflow Service and Creating a Task ... 622
... ... 21.2.2 ... Creating a Test Workflow ... 624
... ... 21.2.3 ... Launching a BSP Application from the Business Workplace ... 625
... ... 21.2.4 ... Launching a BSP Application from Another Web Application ... 626
... ... 21.2.5 ... Launching a BSP Application from the Universal Worklist ... 626
... 21.3 ... Completing Workflow Tasks from BSP Applications ... 629
22 ... Using Forms ... 637
... 22.1 ... SAP Interactive Forms by Adobe ... 637
... 22.2 ... SAP Business Workflow Forms ... 638
... ... 22.2.1 ... Simple Forms Creation ... 638
... ... 22.2.2 ... Document Templates ... 641
23 ... Alloy — Lotus Notes Integration ... 645
... 23.1 ... The Design Paradigm ... 646
... ... 23.1.1 ... Sidebar ... 646
... ... 23.1.2 ... Mail Inbox ... 647
... ... 23.1.3 ... Decision Views ... 648
... ... 23.1.4 ... Calendar Items ... 650
... 23.2 ... Prerequisites for Alloy ... 652
... 23.3 ... Generic Workflow Capabilities ... 653
... 23.4 ... Adding New Decisions to Alloy ... 653
... ... 23.4.1 ... Adding New Decision Steps ... 655
... ... 23.4.2 ... Design a New User Interface for the Decision ... 656
... ... 23.4.3 ... Add Additional Data from the SAP Context ... 658
... ... 23.4.4 ... Adding a Dialog Task ... 659
... ... 23.4.5 ... Sidebar Enhancements ... 659
... 23.5 ... Standard Alloy Decisions ... 660
24 ... Duet — Microsoft Office Integration ... 661
... 24.1 ... Design Time Layout ... 663
... 24.2 ... How an Approval Workflow Application Works in Duet ... 666
... 24.3 ... Prerequisites to Use the Duet Workflow Approval Template ... 669
... 24.4 ... Creating Your Approval Workflow Application ... 670
... ... 24.4.1 ... Adding New Decisions to Duet ... 672
... ... 24.4.2 ... Design a New User Interface for the Decision ... 674
... ... 24.4.3 ... Add Additional Data from the SAP Context ... 675
... ... 24.4.4 ... Adding a Dialog Task ... 675
... ... 24.4.5 ... Sidebar Enhancements ... 676
25 ... SAP Supplier Relationship Management ... 679
... 25.1 ... Approval Processes ... 681
... ... 25.1.1 ... Simple Approval Processes ... 682
... ... 25.1.2 ... Complex Approval Processes ... 682
... ... 25.1.3 ... Key Concepts and Requirements That Make Up the Foundation of SAP SRM Approval Processing ... 683
... 25.2 ... SAP SRM Approval Frameworks ... 688
... 25.3 ... Process-Controlled Workflow in Detail ... 690
... ... 25.3.1 ... Technical Background ... 693
... ... 25.3.2 ... Basic Assumptions for Document Processing ... 694
... ... 25.3.3 ... Configuration of Approval Levels ... 694
... ... 25.3.4 ... Business Rules Framework ... 697
... ... 25.3.5 ... Agent Determination ... 698
... ... 25.3.6 ... Approval Process Overview: User-Focused Process Visualization ... 701
... 25.4 ... Real-World Example of a Process-Controlled Workflow ... 704
... ... 25.4.1 ... Simplest Scenario, Execute Without Approval ... 705
... ... 25.4.2 ... Configuring Two-Step Approval ... 706
... ... 25.4.3 ... Details on BRF Integration ... 707
... 25.5 ... Application-Controlled Workflow in Detail ... 710
... ... 25.5.1 ... One-/Two-Step Approval ... 710
... ... 25.5.2 ... N-step BAdI ... 711
... ... 25.5.3 ... SAP-Provided BAdIs and Workflow Templates ... 712
... ... 25.5.4 ... Line Item Based BAdI ... 713
... ... 25.5.5 ... Approvers Changing Documents in Application-Controlled Workflow ... 713
... ... 25.5.6 ... Configuring Approval Processes ... 714
... ... 25.5.7 ... Agent Determination ... 716
... ... 25.5.8 ... Ad-hoc Agent Assignment ... 717
... ... 25.5.9 ... Implementing Dynamic Processes ... 719
... ... 25.5.10 ... Tracking Workflow Instances ... 724
... 25.6 ... Real-World Example of Application-Controlled Workflow ... 724
... ... 25.6.1 ... Without Approval ... 724
... ... 25.6.2 ... Two-Step Approval ... 725
... 25.7 ... Inbox ... 726
... 25.8 ... Offline Functionality ... 727
... ... 25.8.1 ... Outbound Processing ... 727
... ... 25.8.2 ... Offline Approval by the Recipient ... 728
... ... 25.8.3 ... Inbound Processing ... 728
... 25.9 ... Deadline Monitoring ... 728
... 25.10 ... Recommendations When Getting Started ... 729
... ... 25.10.1 ... Upgrading a System ... 730
... ... 25.10.2 ... Archiving ... 732
... ... 25.10.3 ... New Installation ... 732
26 ... SAP Customer Relationship Management ... 735
... 26.1 ... Introduction ... 736
... ... 26.1.1 ... One Order Concept ... 737
... ... 26.1.2 ... Business Transaction and SAP CRM Business Objects ... 739
... ... 26.1.3 ... Transaction History ... 741
... ... 26.1.4 ... SAP CRM UI Framework ... 742
... ... 26.1.5 ... Portal Integration ... 745
... 26.2 ... Customizing and Workflow Administration ... 745
... ... 26.2.1 ... Workflow Customizing ... 745
... ... 26.2.2 ... Workflow Administration ... 745
... 26.3 ... Integrating Your Own Workflows ... 746
... ... 26.3.1 ... Status Management ... 746
... ... 26.3.2 ... Actions ... 746
... ... 26.3.3 ... Agent Determination ... 747
... 26.4 ... SAP CRM Worklist ... 749
... ... 26.4.1 ... Basics About the Workflow Inbox ... 751
... ... 26.4.2 ... Dynamic Navigation and the Workflow Inbox ... 751
... ... 26.4.3 ... Navigational Customizing of the Workflow Inbox ... 753
... ... 26.4.4 ... Specifics of Dialog Tasks Based on Workflow ABAP Classes ... 755
... ... 26.4.5 ... Additional Customizing and Personalization ... 756
... ... 26.4.6 ... SAP ERP Integration ... 757
... ... 26.4.7 ... Universal Worklist Integration ... 759
... ... 26.4.8 ... Administrative Standard Workflows ... 760
... 26.5 ... SAP CRM Standard Workflows ... 760
... ... 26.5.1 ... Marketing: Campaign Automation ... 761
... ... 26.5.2 ... Sales — Lead to Opportunity ... 762
... 26.6 ... Sample Implementation of a Customer Workflow in SAP CRM ... 764
... ... 26.6.1 ... Scenario and Requirements for the Custom Workflow ... 765
... ... 26.6.2 ... Implementing the Workflow ... 765
... ... 26.6.3 ... Creating a BOL Model for Your SAP CRM Workflows ... 768
... ... 26.6.4 ... Implementation of the Workflow Application ... 771
... ... 26.6.5 ... Setting Up Dynamic Navigation ... 779
... ... 26.6.6 ... Action to Automatically Set the Status "Accepted by Sales" ... 782
... ... 26.6.7 ... General Settings for Follow-Up Process ... 786
... ... 26.6.8 ... Executing the Workflow ... 788
... ... 26.6.9 ... Optional Enhancement ... 790
27 ... SAP ERP Human Capital Management —Processes and Forms ... 793
... 27.1 ... Business Overview ... 794
... ... 27.1.1 ... SAP ERP HCM Processes ... 794
... ... 27.1.2 ... Form Submission ... 796
... ... 27.1.3 ... Form Approval ... 798
... ... 27.1.4 ... Process Form (Revision or Completion) ... 799
... ... 27.1.5 ... Tracking Forms ... 801
... ... 27.1.6 ... Other Features ... 801
... ... 27.1.7 ... Limitations ... 802
... 27.2 ... Technical Overview of HCM Processes and Forms ... 802
... ... 27.2.1 ... Adobe Document Services ... 803
... ... 27.2.2 ... Business Function Set ... 804
... ... 27.2.3 ... SAP ERP HCM Processes and Forms Design Time ... 804
... ... 27.2.4 ... Adobe LiveCycle Designer ... 805
... ... 27.2.5 ... Adobe Reader ... 807
... ... 27.2.6 ... Workflow Template ... 807
... ... 27.2.7 ... SAP Case Management ... 808
... ... 27.2.8 ... Web Dynpro ABAP Applications ... 809
... 27.3 ... Standard Workflows in HCM Processes and Forms ... 809
... 27.4 ... Workflow Techniques ... 811
... ... 27.4.1 ... Calling Web-Based SAP Applications Using Transaction SWFVISU ... 811
... ... 27.4.2 ... Program Exits ... 814
... ... 27.4.3 ... XML File for Universal Worklist Configuration ... 815
... 27.5 ... Creating Your Own Workflows ... 816
... ... 27.5.1 ... Interactive Components ... 817
... ... 27.5.2 ... Background Components ... 819
... ... 27.5.3 ... Troubleshooting ... 820
... 27.6 ... Universal Worklist Configuration ... 820
... ... 27.6.1 ... Subviews ... 821
... ... 27.6.2 ... Buttons (Actions) ... 823
28 ... Setting Up an SAP-Provided SAP ERP Workflow ... 825
... 28.1 ... How Can You Find Workflows Delivered by SAP ... 826
... ... 28.1.1 ... Using SAP Help Portal to Find SAP Documented Workflows ... 826
... ... 28.1.2 ... Finding Workflows Within Workflow Builder ... 827
... ... 28.1.3 ... Technical Workflows ... 828
... 28.2 ... What Is the Business Scenario ... 828
... 28.3 ... Which SAP Workflows Are Involved ... 829
... 28.4 ... How Is the Workflow Started ... 830
... 28.5 ... How Do I Activate This Scenario ... 831
... 28.6 ... Commonly Used SAP ERP Workflows ... 833
29 ... ArchiveLink ... 835
... 29.1 ... What Is ArchiveLink? ... 836
... ... 29.1.1 ... The Technical View of ArchiveLink ... 836
... ... 29.1.2 ... The Business View of ArchiveLink ... 837
... 29.2 ... ArchiveLink Standard Scenarios ... 838
... ... 29.2.1 ... How SAP Business Workflow Integrates ArchiveLink ... 839
... 29.3 ... Business Object Types ... 842
A ... Tips and Tricks ... 845
... A.1 ... Working with Wizards ... 845
... A.2 ... Working with Email ... 847
... ... A.2.1 ... The Send Mail Step ... 847
... ... A.2.2 ... Working with Attachments ... 850
... ... A.2.3 ... Determining Recipients Via Rule Resolution ... 851
... ... A.2.4 ... Customizing Considerations ... 852
... A.3 ... Showing the Decision Maker in a Follow-On Step ... 853
... A.4 ... Creating Your Own User Decision Template ... 854
... A.5 ... Using Secondary, Before, and After Methods ... 855
... ... A.5.1 ... Secondary Methods ... 855
... ... A.5.2 ... Before and After Methods ... 856
... A.6 ... Looping Through a Multiline List ... 857
... A.7 ... Creating Object References Dynamically ... 858
... A.8 ... Deadlines Based on the Factory Calendar ... 859
... ... A.8.1 ... Creating the Deadline Object ... 859
... ... A.8.2 ... Using the Deadline Object in Your Workflow ... 862
... A.9 ... Making the Most of Modeled Deadlines ... 863
... ... A.9.1 ... Taking Alternative Action ... 863
... ... A.9.2 ... Modeled Deadlines for (Repeated) Notifications ... 864
... A.10 ... Ad-Hoc Anchor Step ... 864
... A.11 ... Review Workflows ... 865
B ... Step-by-Step Troubleshooting Guide ... 867
... B.1 ... A Workflow That Does Not Start ... 867
... ... B.1.1 ... Did It Really Fail to Start ... 867
... ... B.1.2 ... Is the Triggering Event Set Up Correctly ... 868
... ... B.1.3 ... Check the RFC Queue to See if the Event Raising Has Aborted Midway ... 868
... ... B.1.4 ... Check the Consistency of the Workflow Definition ... 870
... ... B.1.5 ... Simulate the Event ... 870
... ... B.1.6 ... What Is Preventing the Workflow from Starting ... 871
... B.2 ... A Workflow That Stops in Mid-Track ... 872
... B.3 ... The Most Likely Causes (and How to Avoid Them) ... 873
... ... B.3.1 ... Background Work Items Aborting in the Middle ... 873
... ... B.3.2 ... Business Object Does Not Exist ... 874
...... B.3.3 ... Inconsistent Definition ... 876
...... B.3.4 ... Workflow Step Must Be Confirmed Manually ... 877
...... B.3.5 ... Condition Set Up Incorrectly ... 877
... B.4 ... Binding Problems with the Workflow Trace ... 877
... B.5 ... Why Duplicate or Multiple Workflows Are Triggered ... 878
... B.6 ... Why an Agent Does Not Receive a Work Item ... 879
...... B.6.1 ... Check That the Agent Is Assigned to the Work Item ... 880
... ... B.6.2 ... Check That the Agent Is Assigned to the Task ... 880
... ... B.6.3 ... Check That the Agent Has Not Been Excluded from This Work Item ... 881
... ... B.6.4 ... Check That the Agent Determination Rule Has Selected an Agent ... 881
... B.7 ... Why the Wrong Agent Receives the Work Item ... 881
... B.8 ... Why the Work Item Follows the Wrong Route ... 882
C ... The Administrator’s First Aid Guide ... 883
... C.1 ... Resolving Work Item Errors ... 883
... ... C.1.1 ... Preventing Work Item Problems from Reoccurring ... 886
... ... C.1.2 ... Support Tools for Work Item Problems ... 887
... C.2 ... Resolving Workflow Instance Errors ... 888
... ... C.2.1 ... Fixing Workflow Instances in Error ... 889
... ... C.2.2 ... Preventing Workflow Instance Problems from Reoccurring ... 889
... ... C.2.3 ... Support Tools for Workflow Instance Errors ... 890
... C.3 ... Finding Workflows That Appear to Have Disappeared ... 891
... ... C.3.1 ... Cause ... 891
... ... C.3.2 ... Repair ... 891
... C.4 ... Resolving Event Linkage Errors ... 892
... ... C.4.1 ... Fixing Workflows That Didn’t Start ... 893
... ... C.4.2 ... Preventing Error Linkage Problems from Reoccurring ... 895
... ... C.4.3 ... Support Tools for Event Linkage Problems ... 895
D ... Workflow Macros ... 897
... D.1 ... Macros Specific to Object Type Programs ... 897
... D.2 ... Macros for General Workflow Programming ... 898
...... D.2.1 ... Macros to Process a Container as a Whole ... 898
...... D.2.2 ... Runtime Versus Persistent Containers ... 899
... ... D.2.3 ... Macros to Process Elements from the Container ... 899
... ... D.2.4 ... Macros for Processing Object References ... 899
... ... D.2.5 ... Macros for Retrieving Object Attributes ... 900
... ... D.2.6 ... Macros for Calling Object Methods ... 900
E ... Preparation for Java Development ... 901
F ... Additional Information for SAP SRM ... 907
... F.1 ... Available Business Configuration Sets ... 907
... F.2 ... BAdI Implementations for Agent Determination ... 908
... F.3 ... Process-Controlled Workflow Advanced Troubleshooting ... 920
... ... F.3.1 ... The Workflow Did Not Start at All ... 920
... ... F.3.2 ... The Workflow Ran to Completion, But the Shopping Cart Is Still in Awaiting Approval Status ... 921
...... F.3.3 ... The Approval Work Item Was Not Sent Properly ... 922
...... F.3.4 ... The Approval Display Is Wrong or Empty ... 922
... F.4 ... Application-Controlled Workflow Advanced Troubleshooting ... 924
... ... F.4.1 ... The Workflow Did Not Start at All ... 924
... ... F.4.2 ... The Workflow Ran to Completion, But the Shopping Cart Is Still in “Awaiting Approval” Status ... 924
... ... F.4.3 ... The Approval Work Item Was Created But Was Not Sent Properly ... 925
... ... F.4.4 ... The Approval Display Is Wrong or Empty ... 925
G ... The Authors ... 927
| Download: | Click here for bonus checklists for readers of this book. |
Showing reviews 1-4 of 24 | Next
Posted by Ashish Singh on May 21st, 2013
This book gives you full understanding of workflow.
Posted by Anonymous on May 21st, 2013
This book saved me when I had to create my first workflow.
Posted by naresh on Apr 12th, 2013
I am into workflow development and I refer to this book very often for guidance on best practices and to understand possibilities in different areas. Its very good book for beginners and experts alike.
Posted by Haider on Mar 24th, 2013
People always talk about different module in SAP FI/HR etc but all these module become functional and start producing the desired results once you put your configuration to the work flow and go live. understanding the workflow is the most important aspect in SAP. The book provides detailed knowledge of workflow in SAP.
Showing reviews 1-4 of 24 | Next