cancel
Showing results for 
Search instead for 
Did you mean: 

Gateway Workflow Configuration Problem

Former Member
0 Kudos

Hi,

I'm trying to configure workflow consumption but I'm facing some issue. Can anyone guide me through the basic steps?

Our setup is a gateway hub installed on a seperate system and then we have iw_bep on our business systems where we develop our services.

In the first instance I'm trying to do the simplest setup possible (I don't need push notification for now etc.)

What I have done is:

1. Activated /iwwrk/WFSERVICE through our Hub with system alias of our backend system

2. Gone to SAP NetWeaver -> Gateway Service Enablement ->  Content -> Workflow Settings -> Task Provider Customizing and added this row

these settings were already there:

I haven't configured anything regarding notifications, push, bgRfc - please let me know if any of this is mandatory for simplest consumption.

The service seems to run just fine when I test it. But when I navigate to WorkflowTaskCollection the xml also loads fine but there are no items in the list even though I should have some workflows in the system. I've tried placing breakpoints in AdapterClass /IWWRK/CL_GWL_BWF_PROV_ADAP but these don't get invoked.

Can anyone tell me what I'm missing or doing wrong?

I've had inspiration from these sources:

http://help.sap.com/saphelp_gateway20sp06/helpdata/en/be/7734bcf82d4efb823f5706554dea23/content.htm

Br Jan

Accepted Solutions (1)

Accepted Solutions (1)

RoyF
Advisor
Advisor
0 Kudos

Hi Jan,


For simple query result of service /IWWRK/WFSERVICE, you don't need any of the mentioned provider configuration.


Certainly not the /IWWRK/CL_GWL_BWF_PROV_ADAPL  adapter setting.

Usually you can get all you need just by using the pull (Query, Read, Actions, $expand) from SAP NetWeaver Gateway,  without any need for setting the Push mechanism with bgrfc.

If you have already activated the service and got results, then you are already on track
To explore the service go to transaction /IWFND/MAINT_SERVICE , select the service, and press the Call browser button on the left lower section


in the same transaction on the right lower you can see all the system aliases configured for this service, if there is any wrong there you will face a problem.

Most likely that you already got to here , then Now go to your BE system and check your Business Workplace (Transaction SBWP) and check if you have tasks in your workflow folder.

If you don’t then that’s why you don’t see tasks in the OData response

if you do have tasks in the BE , then one of the two happens
1. it's a task from an activity step , and hence need to be properly externalized
2. it's a task from a user decision step and someone enable the filter flag (you can disable it or do the same as follow)

To mark the tasks to allow externalize it (also when filter is enable):

On your BE system open Transaction SPRO
go to SAP Customizing Implementation Guide-> SAP NetWeaver -> Gateway Service Enablement -> Content -> Workflow Settings -> Maintain Task Names and Decision Options

A cluster view will open up and you need to fill it (workflow id, step id , short description)
For example :
Workflow ID = WS90000004, Step ID = WS90000004, Description= Leave Approval

Then click enter,  select the line and select the decision Keys on the left side
then add new decision keys and text according to your workflow step outcomes,
save it and test again

Now it should work

Best Regards

Roy

Former Member
0 Kudos

Hi Roy,

Thank you very much for taking your time to help me with this

Service seems fine in /iwfnd/maint_service, system alias is correct and when running it in browser it looks fine as well.

I have workflows in Business Workplace but they just don't get displayed through the service.

You say that I don't see them because of:

if you do have tasks in the BE , then one of the two happens

1. it's a task from an activity step , and hence need to be properly externalized

2. it's a task from a user decision step and someone enable the filter flag (you can disable it or do the same as follow)

The task filter is disabled so do I still need to perform the steps in "Maintain Task Names and Decision Options" that you describe becuase the documentation (below) says it is not relevant without filter enable?

Maintain Task Names and Decision Options

This activity allows you to maintain workflow tasks that need to be included
in the task filter together with their names and decision keys.

These customizations are relevant when the filter is active. When the filter
is  not active, all workflow items are read and all notifications are sent.

Also it puzzles me that I can't invoke a breakpoint with the debugger - any hints regarding that?

BR Jan

RoyF
Advisor
Advisor
0 Kudos

Hi Jan,

Happy to help, I'm sure you are not the first/last to encounter similar issue

If it's tasks coming from an activity step then you must anyway maintain this.

and you can try it out , you can always delete it if it's not working

if you want to debug it then you can put an external breakpoint in class /IWWRK/CL_MGW_RT_WORKFLOW

(the service data provider class) in method /IWBEP/IF_MGW_APPL_SRV_RUNTIME~GET_ENTITYSET

and execute a /WorkflowTaskCollection query

Best Regards

Roy

Former Member
0 Kudos

Hi Roy

Ok, well now I the breakpoints are invoked on the backend system using your hints and the information in RUNTIME tab using ?sap-ds-debug=true

Still no workflows in output but I will speak to our workflow expert and get the correct IDs to insert in the table you point out and ensure my workflows are "ok". So I'm probably close to getting it to work - crossed fingers

By the way, I want to retrieve workflows from 3 different SAP systems but would like to expose all workflows in one gateway service. Can you point me towards a standard approach for that?

Br Jan

Former Member
0 Kudos

BIG success! I just managed to get the workflows out in oData.

I managed to use transaction SWDD myself to locate the correct IDs. I had gotton the step id wrong in the first place. Then it worked so big smiles here

I still think the documentation is a bit wrong in stating that it isn't neccessary to maintain task names and decistion options when filter isn't enabled but maybe I'm still misunderstanding something there?

Anyway if you have some points regarding consuming workflows in one gw hub service from many sap backend sources (as mentioned in my reply before) I'll be happy to know

Thanks again - Jan

RoyF
Advisor
Advisor
0 Kudos

Happy to hear you made it through

GW provides a very easy way to collect data from different systems,

all you need is to add system aliases to your service using the same transaction  /IWFND/MAINT_SERVICE (on the lower right section)

then in the  browser url you need to add ;mo (multi origins) after the service name

for example:

http://<host>:<port>/sap/opu/odata/IWWRK/WFSERVICE;mo/WorkflowTaskCollection

this will retrieve the tasks from all system configured , this is why you have default check box in the configuration to point out what system to use when mo; is not requested.

btw it's also nice to know that you can use ;o='<system_alias>' to get data just from a specific system, for example:

http://<host>:<port>/sap/opu/odata/IWWRK/WFSERVICE;o=SYS_100/WorkflowTaskCollection

When working with mo; you should also be aware that a new key is added to all entities,

so when doing a specific read it will know which system to address

you can see in the metadata of the service, a new key  SAP__Origin is added everywhere.

http://<host>:<port>/sap/opu/odata/IWWRK/WFSERVICE;mo/$metadata

BR

Roy

Former Member
0 Kudos

Hi Roy,

That is extremely helpful information for me. Thanks again.

Br Jan

RoyF
Advisor
Advisor
0 Kudos

Happy to assist and see your success

Former Member
0 Kudos

Hi again Roy,

I got the multiple sources (2)  up and running as well now.

I have a third system I would like to consume workflows from as well. This system does not currently have iw_bep and the only reason to install it on the system would be for the workflow consumption.

I believe I've come across somewhere where it was explained that you can setup workflow consumption without BEP (RFC I guess) but I'm not able find it again.

Do you know anything about this and if you do is it then a method you can recommend or should I go for BEP installation on the third system as well?

Br Jan

RoyF
Advisor
Advisor
0 Kudos

Hi Jan,

As it's another topic , can you please open a new issue for it?

Thanks and Regards

Roy

Former Member
0 Kudos

Yes definately - just created it - would be great if you have time to take a look at it

Former Member
0 Kudos

Hi,

I can't find SAP Customizing Implementation Guide-> SAP NetWeaver -> Gateway Service Enablement -> Content -> Workflow Settings -> Maintain Task Names and Decision Options

on my BE system .

Under NetWeaver I have only

What else should be installed to get Gateway Service Enablement and where can I get it

Thanks for help

Veronika

former_member206574
Active Participant
0 Kudos

f you do have tasks in the BE , then one of the two happens

1. it's a task from an activity step , and hence need to be properly externalized


How can it is properly externalized? Is there any steps to follow?

Answers (1)

Answers (1)

vishnucta
Active Participant
0 Kudos

Hi Fellas,

can anyone please luk into my thread...

http://scn.sap.com/thread/3711222

Regards,

Vishnu