Server side charting suggestion?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Server side charting suggestion?

Thelliez
Hello all,

In the context of a GLASS application, do you have any suggestions
about generating some charts on the server side?

In the client side world, there are some nice options with JQuery.
'Googling' I found different tools
(http://www.1stwebdesigner.com/resources/top-jquery-chart-libraries-interactive-charts/)
and indeed jqPlot looks nice (http://www.jqplot.com/index.php).

But I might have to generate printable or 'PDFable' reports. I am not
sure if these JQuery system play well with these requirements.

Suggestions?
Thierry
Reply | Threaded
Open this post in threaded view
|

Re: Server side charting suggestion?

Johan Brichau-2
Hi Thierry,

You might have more chance asking this question on the seaside mailinglist, but I think client-side libraries are the best solutions here. In combination with a seaside wrapper for them, they often also integrate nicely with the server-side code.

I know there are wrappers for various charting solutions, such as:
Flash charts: http://www.squeaksource.com/@2ENqq79OrBBOfzQk/SLi0uJvl
Google charts: http://www.squeaksource.com/@F_FB9VI8HF_tKKnw/piSmu-ou

For PDFable reports, there currently is only limited support to generate server-side pdfs (see seaside.st website).

good luck hunting
Johan

On 31 Oct 2010, at 19:00, Thierry Thelliez wrote:

> Hello all,
>
> In the context of a GLASS application, do you have any suggestions
> about generating some charts on the server side?
>
> In the client side world, there are some nice options with JQuery.
> 'Googling' I found different tools
> (http://www.1stwebdesigner.com/resources/top-jquery-chart-libraries-interactive-charts/)
> and indeed jqPlot looks nice (http://www.jqplot.com/index.php).
>
> But I might have to generate printable or 'PDFable' reports. I am not
> sure if these JQuery system play well with these requirements.
>
> Suggestions?
> Thierry

Reply | Threaded
Open this post in threaded view
|

Re: Server side charting suggestion?

Johan Brichau-2
woops, obviously those urls are not going to work.. here they are:

On 01 Nov 2010, at 08:51, Johan Brichau wrote:

> Flash charts: http://www.squeaksource.com/@2ENqq79OrBBOfzQk/SLi0uJvl
http://www.squeaksource.com/SWFObject.html

> Google charts: http://www.squeaksource.com/@F_FB9VI8HF_tKKnw/piSmu-ou
http://www.squeaksource.com/googleCharts2.html
Reply | Threaded
Open this post in threaded view
|

Re: Server side charting suggestion?

YossiDM
In reply to this post by Thelliez
I am looking for the same thing, so I am highly interested. Here's a few thoughts to get started:

I have used some of the jQuery charts you mentioned in non-Smalltalk web applications. You can definitely create the usual Seaside js wrappers if you choose for the ones that don't exist. I think the effort isn't too bad as long as you follow some of the examples other people have done, such as jQuery-UI.

Regarding exporting to PDF, one possibility might be to look at sending the rendered HTML to an HTML-PDF converter. I know it's kind of hard sometimes when things don't get rendered until they hit the client. Perhaps you can solve this to some degree in your Seaside wrappers, or simply provide UI for the user that sends the rendered content to a web service via an AJAX call to a web service.

A less desirable option as far as GLASS is concerned is to create a flat reporting database that can be leveraged by existing tools. Even in a relational system, this is often the best way to go. If it's flat, then even doing it on-demand probably won't be too bad. You could also run a process perhaps in another Gem that does the push on a schedule. I've done this before to solve a requirement that all reports had to be generated in Microsoft SQL Reporting Services (cheesy, I know).

A final option is to look at any reporting tools that take just data or allow code. You could create web services around your Gemstone data for example and send back SOAP, XML, or JSON. Several charting packages I am sure allow you to integrate custom code or web service calls, so maybe this is an option for you.

Hope that helps or at least gets you thinking.