views:

78

answers:

3

Hi all,

a customer of mine happend to ask me to come up with a technical solution for the following scenario:

  • basis is a crm tool where the customers (i.e. the ones who bought the system) are not wanted to access the database for queries directly (in terms of table level access)
  • there's plenty of reporting in the software, but sometimes it's just not exactky what's needed, so some sort of interface for external reporting tools is required

--> beeing 'state of the art' my customer want's to use web services for this; which IMHO is definitly not the way to do this; I'd favorize the creation of VIEWS which the crm customers can use to feed their reporting tools via ODBC for example

So, what's you guys opinion on this, how would you approach this scenario? Any best practises?

K

+1  A: 

I thing that web-services is a nice solution. Using VIEWS - is using db authorization. While using WS you can be more secure :-)

merin
that's right so far, but I think transfering big amounts of data via soap is not an (optimal) option at all.
KB22
you can zip stream between ws and client.
merin
Here you have to ask yourself the question "Do I want to reimplement Crystal Reports?" Because that's almost what you're doing. On the flip-side, I find most people don't use Crystal anymore unless they're only job is data analysis. Most are using excel or one off tools. I'm not sure if excel supports WS data sources yet, but this is clearly where the industry is going. Clearly delineated XML data being queried (and paginated server side) for consumption by end-users. The biggest hit is in the XML parsing, unfortunately. So create a rich search API.
Chris Kaminski
Excel 2007 support web services. If like Excel you can use it. I used Excel 2007 with Team Foundation Server to build some reports.
merin
+1  A: 

How about empowering the customer to be able to write custom modules or plugins to the CRM software? If the built in reports don't suffice, they can quickly roll out their plugin to accomplish their objectives. IMO, exposing APIs is a much better approach. Also. there's nothing wrong with customers accessing the database tables directly. But the latter approach may be more cumbersome to some customers.

Your mileage may vary.

Sudheer
+1  A: 

As I know, RAQ Report is a pure web-based java reporting tool. Users can easily and fast create kinds of complicate reports and publish plain HTML page report in browser with it.