BusinessObjects 4.0 web services provide a access to BI content for any application that can invoke and consume web services. Xcelsius is probably the best known example of this notion in the BO applications space. Xcelsius (SAP Dashboards) leverages the BI Platform web services for any sort of integration/data connectivity, from authentication/authorization to getting data from webi report parts thorugh BI Services, QaaWS or Live Office.
While SAP provides very good documentation for the web writing web services applications using its java and .net APIs there’s really not a lot out there if you wnat to use something else to consume these web services. For example, if you are running a php application and are looking to integrate some BO data in your web site, there’s really no information to get you going. So, what can you do? Well, here’s how I went about figuring out PHP integration with BO using BI Services:
First, i created a simple webi report, using eFashion universe, and published my report block as a BI Service.
Next, i created a simple java application, using the web services api, to call this web services. The java web services sdk documentation is very explicit about simple use cases, like calling a web service, or you can leverage eclipse (which is what i did…) to build your web service client, using the swdl of the BI service created.
The next step is the secret sauce really… using a network sniffer (i used wireshark), i captured the http traffic while executing my java client and VIOLA, i had the soap envelope xml for calling my BI service!
With this in hand, i used nusoap, a commonplace soap api tool for php and was able to reconstruct the soap request in the nusoap client, call my bi service from the BO server, and parse the results into a simple html table. You can find the php file for download here. Enjoy.