Monday, March 30, 2009

"Service Call" feature in Remedy 7.5

Service Call is one of the cool features of ARSystem available from the 7.1.00 release itself. It allows applications to execute workflows asynchronously (without getting/updating/deleting requests).

Okay, but what is the big deal in that? Let me explain…Imagine you have some filters which you wish should get fired as soon as some of your activelinks get executed. but for your filter to get fired, usually you need to perform some get/update/delete operations on some requests(to make the execution options “Modify”/”Submit”/”Delete”/”GetEntry” trigger the filter)….The Service Call can be your best friend in such a situation.

Let me explain with a more practical example. Imagine, on your “Window Loaded” there are some 10 odd activelinks which do some setfield action in which the data source is some other forms. The server roundtrips for each of these setfield actions can result in some delay over a big WAN. You can use a service call to optimize this situation. Get all your values in one single “Service Call”.

So how can you do all that?..very the concept of “Callback” ,it is the same here..(Of course I know you have coded in a lot of programming languages).The Activelink which gets called on your “Window Loaded” event notifies a filter which gets fired on “Service” action

The activelink can perform this notification by invoking the Service action. It needs to give an input mapping and an output mapping. The values that are specified in the input mapping gets passed to the filter. In turn the output mapping receives the values that the filter reads and keeps in the transaction.

So in short,the flow is like this

Activelink -> Notify Filter (using Service Action) and pass the required values (Input Mapping)

Filter – Perform the actual operation (do all the required setfields)

Filter - >Pass back the values to the Activelink as mentioned in the output mapping (similar to callback)

There are options to dynamically specify the server name and the form name at runtime as well. The good part is that the service action can be invoked from Activelinks, Filters and Escalations

The Service active link action executes an internal AR System service or an
external web service. ARServiceEntry C API function implements the Service active link action

More details on this feature can be obtained from BMC Remedy Action Request System 7.5.00
Workflow Objects Guide,BMC Remedy Action Request System
Version 7.1.00 – whats new pdf and the C API Reference guide .I am intentionally not duplicating the same data here as I am sure you will be having those pdfs. Searching for “Service Action” will take you to the description.
I found the Service Call functionality very usefull and was able to leverage it for improving application perfomance across WAN