Workflow Tutorial
Workflow Tutorial
The Part I of Workflows Introduction gives the basic details about the workflow usage as a tool and the features involved.
In Part II, the details about the workflow builder will be covered. In the subsequent parts, more details about the runtime
analysis tools of workflows will be discussed.
Using SAP Business workflows, one can define the business processes that are not yet mapped into SAP system. Workflows
are suitable for the situations where the given task is executed repeatedly or when the large number of people is involved in
the completion of that work. Workflows can be used in conjunction with the existing business scenarios e.g. during the
standard functionality errors or exceptions occurs then workflow can be triggered on these actions.
There are lots of standard workflows available from SAP for different areas like Sales & Distribution (SD), Travel
Management (TV), Treasury (TR), General Logistics (LO), and Personnel Management (PA) etc.
Why Workflows:
Following are the scenarios, which occur on daily basis in each organization -
• The identification of roles & responsibilities on who will do what, when & in how much time
• Informing next person about his work to be done, when the earlier one has finished his own
• Duplication of work that has been already done because of communication gap,inefficient knowledge transfer &
the incomplete documentation in the central repository
Features of Workflows:
• Workflow uses the existing transactions and functions without changing them.
• Workflow uses the Organization structure. This helps in the term of changes to organization structure, which will
be immediately in effect in the execution of workflows.
• Lots of tools are available in the workflow like tools for definition, analysis and monitoring of work processes.
• Workflow template (transaction: PFTC) can also be created for the workflow definitions.
• Workflow Builder is a very effective tool available for creation, change and display of workflow definition.
• Agents can be easily maintained in the workflows. They receive the work item in their SAP Business Workplace,
which they will process.
• Deadline monitoring can be easily used against the tasks for the defined agents.
• Using Business Object Editor (transaction: SWO1), we use the business objects in workflows. These business
objects help to use the SAP standard functionality in workflows.
• ABAP Classes can also be used in workflows along with the business objects.
• Workflow can also be used on Internet. This is especially useful for the managers, who might not be directly
accessing the SAP transactions. So the approval forms generated via workflows can be sent on internet. This is even useful
for the people who mainly preparing SAP data and not knowing much about the SAP transactions. They can be given a
simple web form for entering data & on submitting data of this web form workflow can be started.
• Several workflow wizards are also available for supporting the workflow definition
• Version management is available for workflows. Only one version can be active at one time, which is referred
while execution.
• Lots of administrative tools are available for control and analysis of workflows.
• Mail servers involved should be SMTP Compliant if the workflow involves email notifications.
• As the workflow may execute lots of background jobs so it may require lots of system resources. Hence the
hardware should be enough to fulfill all these requirements along with the normal functionality of the server without
affecting the speed.
• Customization Settings:
Once this is done, all the check marks below should turn green
Along with so many settings available in the workflow customizing, system automatically
creates a batch user WF-BATCH. This user has SAP-ALL authorizations to execute the workflow.
Give the Prefix Number as 900 for custom development & click on Save button.
o SMTP Configuration:
From SAP WAS 6.10, SAP directly supports SMTP (Simple Mail Transfer Protocol). This means that the emails can be
exchanged directly between SAP system and any SMTP compliant mail server. From SAP WAS 6.20, faxes, pager & SMS can
also be exchanged via SMTP.
Goto SMTP node. Double click on the required node which is * in this case.
Click on the Maintain Node button.
Give the Mail Host & Mail Port for outgoing mails. Click on Set for Internet options to set.
Give the Address Area as * for the receipt addresses. Also set the Output formats for the SAP
Documents as shown in the image below. In the specified format the output will be sent as attachment in the email.
Confirm the settings.
Similarly Pager/Fax settings can be done. For Pager(SMS), the prerequisite is that in transaction
SA14, the paging services should be defined. Once this is done, the here in the SCOT transaction, click on Set adjacent to
Pager (SMS).
Mention as * in the Address area for the receipt number and Domain name in the Domain
input.
Lots of transactions are involved in the Workflow tool. Majority of them are for runtime analysis and diagnosis. The details
of these transactions can be found from SAP Easy Access menu.
o Customization Settings:
o Workflow Design:
o Runtime Behavior/Analysis:
Workflow Terminologies:
• Workflow builder: Workflow builder is the business workflow tool for creating, editing and displaying the workflow
definition.
The Workflow Builder provides a graphical modeling view, which gives a direct overview of the processes of the different
steps. Also there is a tree view to shows all steps of the workflow definition in a hierarchical view.
• Workflow Container: The workflow container contains workflow-specific system elements as well as other
container elements, which are defined explicitly.
Container elements for which the import or export indicator is set form the interface of the workflow. This interface is valid
for all versions of the workflow definition. Container elements for which no import or export indicators are set are local
container elements of the workflow definition and are valid only in the versions of the workflow definition in which they
were defined.
• Workitem: Workitem is runtime representation of a task or a step in the workflow definition. There are various
types of work item.
The SAP System determines the recipient(s) of a work item i.e. Actual Agent from the intersection of responsible and
possible agents. If this intersection is empty then no body will get this workitem for further processing.
• Dialog Workitem: A work item (type W) which at runtime represents a workflow step or a task that requires dialog
with the user. Typically, dialog work items are displayed in the Business Workplace. When a dialog work item that is based
on a task is executed, the underlying object method is called. You can monitor deadlines for dialog work item execution.
• Triggering Event: Triggering event is the one, whose occurrence triggers or starts the workflows or tasks.
The event must be entered as a triggering event for the task or workflow that is to be started. The event linkage must be
activated. The event must be defined as an object type component in the Business Object Builder. A task or workflow can
have several triggering events. Information from the event creation context can be passed in the binding from the event
container to the task container or workflow container.
• Block: Block is an element of workflow definition. It contains the consistently arranged steps and operators. It has
one start and one end. The consistency and robustness of a workflow definition is ensured because a block is always
created when a new step is created, or an undefined step is changed. Similarly, when individual steps are deleted, cut, or
inserted, the entire block in which the step is located is affected.
• Step: A step is an entity, which can be inserted into the workflow builder. Whenever executed, step gives the
predefined desired results.
The step is always defined in block. There are different types of steps available in workflow builder to perform different
kinds of operations. These steps are Activity, Web Activity, Send Mail, Form, User Decision, Document from Template,
Condition, Multiple Condition, Event Creator, Wait, Container Operation, Process Control, Loop(Until), Fork, Undefined, Ad
hoc Anchor, Local Workflow & Block.
• Task: Task (Standard Task, Customer Task) is used to define the Activity step in workflow definition. Task can be
executed independently also.
• Task Container: Task container is a location for storing data from the task environment. The task container
contains the information about the object reference to the object to be processed, the actual agent of workitem, necessary
input parameters for the method. These parameters come from workflow container after the binding between workflow
container and task container. It also stores the information available after the method processing.
The task container contains some predefined workflow system elements. One can define more container elements in the
task container. It is also known as a work item container at runtime.
• Responsible Agent: Responsible Agent is a user assigned to a step in the step definition. Expressions,
organizational objects, or rules can also be used to assign the responsible agents.
• Possible Agent: Possible agent is a user who is authorized organizationally to start a task and execute the relevant
work item.
• Actual Agent: Actual Agent is the person who receives a work item for further processing. The agent can be
directly assigned to step or agent determination can happen dynamically at run time either from rule or from the
organization structure.
There is three level of two way Binding concept involved in workflows. Here binding is meant by the interaction between
two consecutive levels using variables (Import/Export parameters). The first level of binding exists between the event
triggering the workflow and the workflow’s container i.e. workflow gets the necessary inputs for processing. The second
level of binding exists between this workflow container and the step (task) container. And the third level of binding exists
between the step (task) container and the method inside this step (task).
Here the values in the variables are passed to workflows, which then flows to tasks & finally to corresponding methods as
Import parameters. The outcome of these methods if needed can be passed back to task & then finally to workflow. The
outcome of one task can also be passed to next tasks using this binding concept.
• The workflow builder is divided into different areas like Information Area, Navigation Area, Step Types, Graphical
Model, Results of Syntax check etc as shown below.
• In the Information Area, the information about the workflows like workflow number, version and the status of the
workflow are displayed.
• In the navigation area, all the steps of workflow definition are displayed in sequence.
• The Step Types appear in the Objects section of the workflow builder. This object section consists of following
options in the dropdown, one which can be viewed in the workflow builder. e.g. in the current case, Step Types are
displayed.
o Step Types That Can Be Inserted
o Workflow Container
o Workflow Wizards
o Teamworking
o Workflows of this Definition (Outcome)
o Note It!
• At the bottom of the workflow builder, the syntax check results are shown as either informatory, warning or error
messages.
• In the Graphical view, the actual definition of workflow is build by dragging the steps from the steps list or by right
clicking the step directly on undefined one. The default steps in every workflow are Workflow Started, Undefined step and
Workflow Completed.
• Triggering Event for this workflow can entered in the workflow builder by menu Goto -> Basic Data. Here enter
the relevant business object and the event name. Activate the link and binding.
• Once the workflow is built here. It needs to be activated so that it can be used further.
Web activity The content of container elements is sent to a URL unchanged or in the
form of a generated XML document. The step can wait for a reply.
Communication with a process started by a Web activity is possible. A
process started by an XML message can communicate with its caller.
Send mail This is used to send mails to SAP, Internet mail addresses. The text entered
in this step type is sent as an e-mail.
Form The data in a container element that refers to a structure can be displayed,
processed, or approved as a form.
User decision The actual agent will be given choices to execute the workitem with
different decisions. The process flow of the current workflow is controlled on
the basis of a decision made by the current agent.
Condition One of two branches defined in the workflow definition is processed. The
system makes the decision based on defined conditions. When doing this,
this system takes account of information from the context of the workflow
or the application objects processed.
Wait for The system waits for a specific event. The work item is only completed if the
event expected event occurs. The event can also be triggered by the occurrence
of an XML document.
Process The functions Cancel work item or Set work item to obsolete are applied to
control other work items of the current workflow.
Loop (UNTIL) A sequence of steps is processed repeatedly until the defined termination
condition occurs.
Fork The processing that follows takes place in a fork. One can define how many
branches have to be executed for the fork to be successfully completed, or
can define an end condition in the condition editor.
Undefined No function at runtime. Undefined steps always have an outcome.
step
Ad hoc In the definition, one can save workflows that can replace this step. At
anchor runtime, an authorized user can select one of the saved workflows. The ad-
hoc anchor is then replaced by the steps of this workflow.
Local Local workflow in the caller workflow has the local container and has full
Workflow access to the workflow container as well. The local workflow gets triggered
by local events in the caller workflow.
• Automatically By Triggering Events: Workflows can be triggered using events. Whenever this event occurs,
workflow automatically gets triggered. For this, the event must be specified as the Triggering Event.
• Automatically By using Workflow: Workflow can be triggered if it is specified as the step of another workflow.
• Manually:
o Workflows can be triggered manually in the standard environment where the necessary input data is
given to workflow with triggering event.
o Also workflows can be triggered in testing environment i.e. in development environment for testing
purpose.
o Workflow can be stared using Start Transaction. Start Transaction is the one whose execution allows all
the import parameters of a workflow to be entered. After the start transaction has been executed, the SAP System starts
the associated workflow with this data.
o A user can start a workflow or task from a message issued by the system. A workflow or task must be
assigned to the message. An appropriate function for this is available to the user in the message long text.
The Part I of Workflows Introduction gives the basic details about the workflow usage as a tool and the features involved.
In Part II, the details about the workflow builder will be explained. In the part III, more details about Workflow Builder will
be covered. In subsequent parts Business Object Builder & details about the runtime analysis tools of workflows will be
discussed.
Using SAP Business workflows, one can define the business processes that are not yet mapped into SAP system. Workflows
are suitable for the situations where the given task is executed repeatedly or when the large number of people is involved in
the completion of that work. Workflows can be used in conjunction with the existing business scenarios e.g. during the
standard functionality errors or exceptions occurs then workflow can be triggered on these actions.
There are lots of standard workflows available from SAP for different areas like Sales & Distribution (SD), Travel
Management (TV), Treasury (TR), General Logistics (LO), and Personnel Management (PA) etc.
Workflow builder is the business workflow tool for creating, editing and displaying the workflow definition.
The Workflow Builder provides a graphical modeling view, which gives a direct overview of the processes of the different
steps. Also there is a tree view to shows all steps of the workflow definition in a hierarchical view. For graphical modeling
view, the prerequisite is to have SAPGUI for Windows.
SWDD
SAP Menu -> Tools -> Business Workflow -> Development -> Definition Tools -> Workflow Builder -> Workflow Builder
• Import/Export feature is available for workflows with some restrictions. This import/export happens through the
XML version of workflows. (Menu Workflow -> Import/Export..).
• Option of printing is available for the workflows. This option is for graphical display as well as for individual step
details, which are selectable for printing. (Menu Workflow -> Print..).
• Block operations like Cut/Copy/Paste are available. (Menu Edit -> Block..).
• Insertion an existing workflow/subworkflow into the current workflow is possible by selecting the appropriate node
in the graphical display. This is same as creating steps according to the rules of block orientation. (Menu Edit -> Insert
Workflow).
• Triggering Event for workflow can be entered in the workflow builder by menu Goto -> Basic Data.
Here enter the relevant business object and the event name in the Start Events tab. Activate the link and binding.
• Many times it so happens that changes are made but they don’t reflect in workflow results due to buffer
synchronization. One can synchronize the runtime buffer from workflow builder directly. This synchronization happens for
Tasks (single-step tasks, multistep tasks), Organizational environment (assignment of tasks), Workflow System Settings
(RFC Destination, and so on).
From the menu Extras->Transport->Synchronize runtime buffer, one can goto transaction SWU_OBUF of buffer
synchronization.
Clicking on Start Synchronization will refresh the buffer.
• There are different options available in workflow builder for Views/Default Settings/Hidden Step Types from the
Menu Extras -> Options. Here depending on the values selected in View tab, the modeling view of workflow changes as
follows –
Select the value from the Display of Modeling View – View dropdown as L Event Driven Process
Chains (EPCs).
Click on Enter.
The graphical modeling view changes to as follows where All triggering events, outcomes, steps
and operators are displayed. Steps are displayed as green rectangles, triggering events and outcomes as red hexagons and
operators as circles. The step name is displayed in the graphical symbols.
Select the value from the Display of Modeling View – View dropdown as C- Classic Event Driven
Process Chains (ClassicEPCs).
Click on Enter.
All triggering events, outcomes, steps and operators are displayed. Steps are displayed as
green rectangles, triggering events and outcomes as red hexagons and operators as circles. The node number and the node
type are displayed with the step name in the graphical symbols. The step type area is not displayed.
Select the value from the Display of Modeling View – View dropdown as N – Without Event-
Driven Process Chains (NoEPCs).
Click on Enter.
All steps, triggering events and the workflow start and end are displayed using symbols.
Outcomes are displayed in text on the connecting lines.
• There are lots of other display settings available in menu Extras->Options for Block Display, Tips & Tricks display
at start, display of percentage progress of a syntax check, indicator for steps Drag & Drop by mouse etc.
• In the menu Extras->Options->Default Settings tab, there is an option for workflow definition modeling as Use
Top-Down Modeling.
If used this option, then one can model the workflow without actually defining the steps. So when a step is added to
workflow, it is only added to graphics.
This way one can have the actual picture of the final definition of workflow. To use such type of workflows, all the inserted
steps should be complete.
• Other settings like hiding steps types etc are also available in menu Extras->Options.
• One can go to SAP Business Workplace directly from workflow builder from the menu Environment->Business
Workplace.
• There are lots of workflows available as examples, which can be reached via workflow builder. The menu path is
Environment->Start Workflow.
Select the required workflow from the list on the left side and click on either Start or Start with Details on the right side for
execution. Once the workflow is started, the log can be viewed from the Workflow Outbox button from the application
toolbar.
• One can directly go to the different development environment like ABAP Dictionary, Class builder, Business Object
Builder, Correlation objects, proxy objects, Web Services etc. from workflow builder. The menu path is Environment-
>Development..
• By default, the builder shows the last workflow worked in the builder. To go to the required workflow, click on
Other Workflow/Version..(Ctrl+F5) from the application toolbar.
• In the Task, give the name of the required workflow, following the F4 search help if needed.
• The required workflow is now displayed in the workflow builder. The workflow builder is divided into different
areas like Information Area, Navigation Area, Step Types, Graphical Model, Results of Syntax check etc as shown below.
• In the Information Area, the information about the workflows like workflow number, version and the status of the
workflow are displayed.
• In the navigation area, all the steps of workflow definition are displayed in sequence.
• The Step Types appear in the Objects section of the workflow builder. This object section consists of following
options in the dropdown, one which can be viewed in the workflow builder. e.g. in the current case, Step Types are
displayed.
o Step Types That Can Be Inserted are Activity, web activity, Send Mail, Form, User Decision, Document
from Template, Condition, Multiple Condition, Event Creator, Wait, Container Operation, Process Control, Loop(Until), Fork,
Block, Local Workflow etc.
o Workflow Container
o Document Templates
o Workflow Wizards
o Teamworking
o Note It!
• At the bottom of the workflow builder, the syntax check results are shown as either informatory, warning or error
messages.
• In the Graphical view, the actual definition of workflow is build by dragging the steps from the steps list or by right
clicking the step directly on undefined one. The default steps in every workflow are Workflow Started, Undefined step and
Workflow Completed.