cancel
Showing results for 
Search instead for 
Did you mean: 

SAP FIORI INBOX and Fully Custom workflow

Former Member
0 Kudos

Dear Experts ,

Really looking for you help and support in the below problem .

Iam totally new in the area of FIORI and we are planning to implementing SAP FIORI INBOX.

The first application we have is already developed in R3 to sell any item from our company to the internal employees only.

We have fully costume workflow for this process. When employee order item workflow will be trigger and it will go to his manager and then to HR then to warehouse then to payroll. each time and action happen either approve or reject (which is a decision step) after each decision step there is a background step which will do all the required update to the database and after it completed it will send an e-mail to the next level. But in fiori they want successful massages to show after each action otherwise the used will continue pressing  .

As I understand from the post I read that to make FIORI application we should not change our workflow and we should use it as it is (please correct me if iam wrong) . My workflow is built on object class and not BOR .

I read many post and documents about FIORI APPROVE REQUEST Application and sap fiori inbox and really I feel that things get missed up in my mind that I can’t distinguish between them.

What I understand is that I have to extend ODATA task processing V2 and add all needed properties for the screen as per “Extending SAP FIORI MY INBOX” document.

The vague area is how to pass the action and how to send the feedback to the fiori application which is extending task processing. Making the decision configuration  

I don’t know what is the best approach or what is the correct approach as iam a bigger and I have never go over such experience before.

I tried to make an exit for each decision step to make all the update inside it but I don’t know how to send the message back to the fiori from the exit method after it success or failed .

The second choice is to implement “/IWWRK/BADI_WF_BEFORE_UPD_IB” for each activity step (in our case the activity has everything after approve or reject) . here I don’t know what to do and how to make it. All the activity is background activity and the Outcome options in the activity can’t be changed in class object so we have only these options  (Step executed and Processing obsolete ) even if we change the activity to dialog . I don’t know how to configure them as per this http://scn.sap.com/docs/DOC-62831 .

And if we solve this problem how to pass the error or success message back to the fiori application from the badi .

Please expert till me if there is a better solution i have to follow.

Accepted Solutions (1)

Accepted Solutions (1)

Jocelyn_Dart
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Mufeed

Ok so for your task your choices are:

1. Configure a decision key for each action you want to take. Implement the action itself in /IWWRK/BADI_WF_BEFORE_UPD_IB.  You need to find/create a background function module or BAPI that applies the approval, rejection or whatever to the object of your workflow task.

2. Use the Open Task button with SWFVISU and intent navigation to launch to the same dialog you normally use in your workflow. This must be web-accessible.  See note 2274940 - URL generation for intent-based navigation for more info

3. Use the extensibility option for My Inbox to do your own thing - you might need this if they have to enter some additional information (more than just comments or attachments)

Rgds,

Jocelyn

Former Member
0 Kudos

Dear Jocelyn ,

Regarding the below option :

Configure a decision key for each action you want to take. Implement the action itself in /IWWRK/BADI_WF_BEFORE_UPD_IB.  You need to find/create a background function module or BAPI that applies the approval, rejection or whatever to the object of your workflow task.

As per my post we will

1- Configure a decision key for each action you want to take. >>> can we add a decision key for each action even if the action is not available in the task (as i mention in my case where task link to OO method not BOR ) ? .

2-Implement the action itself in /IWWRK/BADI_WF_BEFORE_UPD_IB. >>> does this badi work for the decision task or only for activity task ?

3-You need to find/create a background function module or BAPI that applies the approval, rejection or whatever to the object of your workflow task >>> Could you give me and example to clarify this point , because i did not get it , for which task type i have to add this function or bapi . (what if we don't do this step what will happen )

Jocelyn_Dart
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Mufeed

1. Yes

2. Yes the badi works for any decision key you have configured.  It's an override to the standard behaviour - as you don't need to do anything in the BADI for decision keys of user decision tasks.  You always need to do something for decision keys of activity tasks, as they don't have a default behaviour. 

3. Say you want to Approve a Purchase Order, you need to code the BADI implementation as follows:

  • Add a  filter for the workflow/task you want to code in the BADI implementation
  • Check which decision key was passed in as input to the BADI
  • When the Approve decision key is passed, pass the details to be approved such as the purchase order number (see the BADI inputs) to a function module that approves the purchase order in the background

If you don't do anything in the BADI and there is no default behaviour for that decision key... when  a user presses the button, the decision key is sent to the backend system, but nothing happens... that is the purchase order would not be changed.

Rgds,

Jocelyn

Answers (1)

Answers (1)

former_member182874
Active Contributor
0 Kudos

Hi Mufeed,

Adding to what Jocelyn said :

Step by step if you go, you can achieve.

1. Get all the workitems in your app by configuring task id.

Detailed steps are given here :

Refer how to guides : 1 to 6.

2. Get the decision outcomes (If the step type is activity you need to activate it by implementing above badi). If user decision, then not required.

Regards,
Tejas