Webmethods Optimize For process : Web Service Data Collector Tutorial

This tutorial is explaining in details how to use webmethods optimize web service data collector. So it is strongly recommended to read our first post regarding the Optimize for process if you are not familiar with webmethods Optimize for process.

Here is the link to the first tutorial:


As we discussed in the last tutorial, you can use the web service data collector to send events to webmethods Optimize for process to calculate and monitor the important KPIs and statistics of your business.

You can use the web service data collector to send data for optimize from a step in your business process, or from a flow service, or even from a non-webmethods program.

Note: all the information in this tutorial is for webmethods version 8.2 After applying the latest fixes. The information should be valid for webmethods version 9.x.

Let’s go directly into the steps to call the web service data collector from webmethods flow service:

  1. Make sure that the web service data collector is installed and its wsdl is accessible. Here is the url for the wsdl:


Replace the ‘datacollectorServer’ with the server name of the data collector. In the below screen shot we replaced it by ‘localhost’.

wsdl web service DC

      2.  Open SoftwareAG designer, and connect to the integration server.

     3. Create a new web service Descriptor from the main menu –> File –> New –> web service Descriptor.

new web Service Descriptor

    4. Choose the location of the new descriptor and it’s name. We will call the new web service descriptor wsDataCollectorClient. Then click ‘Next’.

    5. Choose to create the descriptor as ‘Consumer’, and click ‘Next’.

new WS Descriptor

        6. In the Source location, choose ‘File/Url’: enter the link of the web service data collector that we verified in earlier step, and then click ‘Finish’.

select WSDL location

   7. Please go to the package/folder used to create the new descriptor, and you will find the new WS descriptors, and the connectors (operations/services) and ready for use.

wsDC folder structure

    8. To send event to webmethods Optimize for process use can call the new generated connector ‘IMonitorDataCollector_addEvent’.

    9. Here is an example for calling the ‘IMonitorDataCollector_addEvent’:

publish to optimize flow service

attributes values

Input parameter






The name of the event as will be seen in the MWS after sending the first event.



first element in array of fields/Attributes in the event



field name in the event ‘SalesReport’



The value of the field


first element in array of fields/Attributes in the event



field name in the event ‘SalesReport’


Mac Book Pro.

The value of the field

     10. We will run the service once to send the new event to Optimize.

     11. Please go to MWS –> Administration –> Analytics –> KPIs –> Business Data, and you will see the new event ‘SalesReport’ under the unmapped event.

new event in MWS

     12. If you click on the new event ‘SalesReport’, you will see the two fields ‘Quantity’, and ‘Product’ ready to be configured.

event details in mws

This is the end of this tutorial. Please check section 3 ‘Configuring the new Events in Optimize through MyWebmethods.’ from our webMethods Optimize for Process Guide to complete configuring the event in webmethods Optimize.


We are looking forward reading your comments and questions.

Follow us:

on twitter: @WM_Expert

LinkedIn group: webmethodsExpert.com

(C) 2014 Hossam Elsharkawy. All rights reserved.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s