Monday 2 November 2015

Workflow Triggering with a BO event

In last post we have seen about the creation of business object and its component. For your easy access here is the Link.  So after creation of events in BO, we have done the event linkage in SWE2. Event linkage mainly tell us what to do when this events gets triggered. While defining event linkage we can give ‘Check Function Module’ and ‘Receiver Type Function Module’. I’ll cover the uses of these function module in a separate post.

So while doing the event linkage we have given a workflow name as receiver type. It means whenever this event gets triggered, this workflow will come into picture. So this is one part of the job. Second part is while creating the workflow, we have to give that BO event as the start event of workflow. Both of these parts of the jobs need to be done in order to trigger the workflow as a result of BO event.

So in this post we will start with workflow creation to cover that second part. T-code for workflow creation is SWDD. Start with that transaction and click on Create button.
IT will give a blank workflow template. We will create a simple workflow which does the task of sending a mail with some text. So we will insert a new step for mail sending. For that double click on ‘Undefine-double-click’ and a popup will come with the prospective steps. Choose send mail from there.
Give the subject and body of the mail in next step.
Click on okay button it will ask for the name of this task.
Give that task a package and it will return to main workflow screen which now looks like this.
Click on save and it will ask for the name of the workflow.
Give that workflow a package and save and activate it.

Now this workflow is good to go if we simply want to send a mail, but not to forget we have to trigger this workflow as a result of a BO event. So now we have to give the start event of this workflow.

So go to the basic data of the workflow.
There go in Start Events tab and give the business object name and event name which we created in This post.
We can see that as of now Active and Binding column is in gray mode. They need to be in green mode. Active obviously shows if this start event is activated or not and in binding we do the data mapping. Means if we are passing any data from event to workflow these element binding needs to be done in Binding. We don’t have any data which is flowing from event to workflow still that binding column needs to be in green. So for that to achieve click on binding it will take you to below window. From there just click on okay and come back and binding column will be in green.
Same way click on active column (over gray icon), it will ask for the TR, assign it and when you come back active button will be green.
So now we have active and binding both green, so we are good to go. Save it, come back on workflow and activate it and now workflow looks like below.
You yourself can see the difference now in pictorial view of workflow. Workflow will be started not from the conventional point, but from the start event which we have given.

We can now test this workflow and can check in business workplace if we have got the mail. T-code for business workplace is SBWP. Go there and click on inbox. There is no mail as of now.
Now execute the workflow.

Refresh inbox in SBWP.
It means workflow is working.

Happy Learning :)

No comments:

Post a Comment