From the Archives: Siebel SWE API

For our 'blast from the past' series, I have dug up this little gem from September 2009, long before Siebel Open UI. Maybe it's still relevant even in Open UI, who knows?

***

If you follow this blog on a frequent basis, you might have noticed my fondness for the Siebel Portal Framework and its usefulness in integrating Siebel with other systems, such as Google maps.

Today, I would like to look at the outbound integration, that is delivering Siebel data to another web based application.

One way to deliver Siebel data to external systems is using the SWE XML interface. You can experience this very easily by pasting the following URL in your browser address bar while the Siebel application is loaded (the below is for the Developer Web Client):

http://localhost/start.swe?SWECmd=GotoView&SWEView=Account+List+View&SWESetMarkup=XML


The Account List View in XML

The important thing in this URL is the SWESetMarkup command which we use to tell the SWE to produce XML instead of HTML (which is the default). As you can see the resulting XML document contains all data from the view including the menu items and their state (enabled or disabled) as well as the data visible to the current user.

There are various additional SWE commands to control the output, namely SWEDataOnly, which you set to "True" to receive only data related XML like this:

http://localhost/start.swe?SWECmd=GotoView&SWEView=Account+List+View&SWESetMarkup=XML&SWEDataOnly=True

There are standard Siebel applications like Siebel Wireless which use that technique to retrieve data via http. These applications are intended to run in mobile device browsers (like the simple html browsers in most mobile phones) and of course these browsers support neither a full-blown High Interactivity (HI) client nor a less resource-hungry but still complex Standard Interactivity (SI) client.

The Siebel Wireless Architecture

The remedy for this (and something very interesting regarding the frequent discussions around Siebel's browser support) is of course XSLT. The SWE converts the XML into anything defined in the xsl file using the SWEXslStyleSheet command. You can pass the name of an xsl file in the WEBTEMPL folder to the command and marvel at the output. Here is an example using one of the Siebel Wireless views and xsl files.

http://localhost/start.swe?SWECmd=GotoView&SWEView=SWLS+Sales+Account+Account+Display+View&SWESetMarkup=XML&SWEXslStyleSheet=SWLSListApplet_html.xsl

Note: You might want to add the SWLS Sales Account Screen to your application definition in Siebel Tools first before you try this. Also ensure that the user account you use has proper responsibility for the views in this screen (SADMIN against the sample database works fine).

Siebel Account List in plain HTML

So if you found this interesting, you might want to explore the possibilites of using Siebel in any http-enabled application. What about creating your own xsl? Let me know of your experience by adding a comment.

have a nice day

@lex

תגובות

פוסטים פופולריים מהבלוג הזה

Profile Attributes and Open UI

SBL-BPR-00191: The rowId of the active row of the primary buscomp '%1', '%2', does not match the Primary Id

SBL-SVC-00150