Web Reporting Tools
Posted in 1999
A poster asked for recommendations on tools to generate reports from multiple databases onto an intranet. Replies suggested Oracle Discoverer/Oracle Reports (ad hoc and static reports in HTML/PDF/RTF), and Apache with PHP, which can query various databases and output text, dbf, HTML or PDF. A follow-up question about PDF output drew a long extract from the PHP docs on using the pdflib (0.6 and 2.0) extension, with code samples. Another reply plugged Easysoft's then-beta SQL engine for joining heterogeneous data sources into one DSN. No single choice was settled on by the original poster.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: General Discussion
I am currently investigating tools for the generation of reports from multiple databases to an Intranet. If anybody knows of a suitable tool or better still has any personal experience of a suitable tool, I would be grateful for your input. Evaluations and links most welcome. Please copy any responses to sja@tinet.ie -- Regards Selwyn Akintola Tel: +353 (0) 1 8414380 Mobile: +353 (0) 87 2671640 e-mail sja@tinet.ie URL http://homepage.tinet.ie/~akintola/
We use Oracle Discoverer and Oracle Reports which gives you both ad hoc and static reports in various formats (eg : html/pdf/rtf) Andy sja wrote in message <7o6ogg$73d$1@scotty.tinet.ie>... >I am currently investigating tools for the generation of reports from >multiple databases to an Intranet. If anybody knows of a suitable tool or >better still has any personal experience of a suitable tool, I would be >grateful for your input. Evaluations and links most welcome. > >Please copy any responses to sja@tinet.ie > >-- >Regards > > Selwyn Akintola > Tel: +353 (0) 1 8414380 > Mobile: +353 (0) 87 2671640 > e-mail sja@tinet.ie > URL http://homepage.tinet.ie/~akintola/ > >
sja wrote: > > I am currently investigating tools for the generation of reports from > multiple databases to an Intranet. If anybody knows of a suitable tool or > better still has any personal experience of a suitable tool, I would be > grateful for your input. Evaluations and links most welcome. > > Please copy any responses to sja@tinet.ie > We use Apache www server and PHP modules. PHP is a server-side HTML-embedded scripting language.Connect to Oracle,DBASE,Sybase.Output format txt,dbf,pdf,html. Denis (star-dragon@usa.net)
Can you tell more about how to output to .pdf Denis wrote: > sja wrote: > > > > I am currently investigating tools for the generation of reports from > > multiple databases to an Intranet. If anybody knows of a suitable tool or > > better still has any personal experience of a suitable tool, I would be > > grateful for your input. Evaluations and links most welcome. > > > > Please copy any responses to sja@tinet.ie > > > We use Apache www server and PHP modules. PHP is a server-side > HTML-embedded scripting language.Connect to Oracle,DBASE,Sybase.Output > format txt,dbf,pdf,html. > > Denis (star-dragon@usa.net)
Carfield Yim wrote: > > Can you tell more about how to output to .pdf I not use output to pdf in real project,but may write part readme from PHP doc: ( Sorry, if very big write. ) ---------------------------------------------------------------------------------------------- You can use the PDF functions in PHP to create PDF files if you have the PDF library by Thomas Merz (available at http://www.ifconnection.de/~tm/). Please consult the excelent documentation for pdflib shipped with the source distribution of pdflib or available at http://www.ifconnection.de/~tm/software/pdflib/PDFlib-0.6.pdf. It provides a very good overview of what pdflib capable of doing. Most of the functions in pdflib and the PHP module have the same name. The parameters are also identical. You should also understand some of the concepts of PDF or Postscript to efficiently use this module. All lengths and coordinates are measured in Postscript points. There are generally 72 PostScript points to an inch, but this depends on the output resolution. There is another PHP module for pdf document creation based on FastIO's ClibPDF. It has a slightly different API. Check the ClibPDF functions section for details. Currently two versions of pdflib are supported: 0.6 and 2.0. It is recommended that you use the newer version since it has more features and fixes some problems which required a patch for the old version. Unfortunately, the changes of the pdflib API in 2.0 have been so severe that even some PHP functions had to be altered. Here is a list of changes: The Info structure does not exist anymore. Therefore the function pdf_get_info() is obsolete and the functions pdf_set_info_creator(), pdf_set_info_title(), pdf_set_info_author(), pdf_set_info_subject() and pdf_set_info_keywords() do not take the info structure as the first parameter but the pdf document. This also means that the pdf document must be opened before these functions can be called. The way a new document is opened has changed. The function pdf_open() takes only one parameter which is the file handle of a file opened with fopen(). The pdf module introduces two new types of variables (if pdflib 2.0 is used it is only one new type). They are called pdfdoc and pdfinfo (pdfinfo is not existent if pdflib 2.0 is used. pdfdoc is a pointer to a pdf document and almost all functions need it as its first parameter. pdfinfo contains meta data about the PDF document. It has to be set before pdf_open() is called. In order to output text into a PDF document you will need to provide the afm file for each font. Afm files contain font metrics for a Postscript font. By default these afm files are searched for in a directory named 'fonts' relative to the directory where the PHP script is located. (Again, this was true for pdflib 0.6, newer versions do not not neccessarily need the afm files.) Most of the functions are fairly easy to use. The most difficult part is probably to create a very simple pdf document at all. The following example should help to get started. It uses the PHP functions for pdflib 0.6. It creates the file test.pdf with one page. The page contains the text "Times-Roman" in an outlined 30pt font. The text is also underlined. Example 1. Creating a PDF document with pdflib 0.6 <?php $fp = fopen("test.pdf", "w"); $info = PDF_get_info(); pdf_set_info_author($info, "Uwe Steinmann"); PDF_set_info_title($info, "Test for PHP wrapper of PDFlib 0.6"); PDF_set_info_author($info, "Name of Author"); pdf_set_info_creator($info, "See Author"); pdf_set_info_subject($info, "Testing"); $pdf = PDF_open($fp, $info); PDF_begin_page($pdf, 595, 842); PDF_add_outline($pdf, "Page 1"); pdf_set_font($pdf, "Times-Roman", 30, 4); pdf_set_text_rendering($pdf, 1); PDF_show_xy($pdf, "Times Roman outlined", 50, 750); pdf_moveto($pdf, 50, 740); pdf_lineto($pdf, 330, 740); pdf_stroke($pdf); PDF_end_page($pdf); PDF_close($pdf); fclose($fp); echo "<A HREF=getpdf.php3>finished</A>"; ?> The PHP script getpdf.php3 just outputs the pdf document. <?php $fp = fopen("test.pdf", "r"); header("Content-type: application/pdf"); fpassthru($fp); fclose($fp); ?> Doing the same with pdflib 2.0 looks like the following: Example 2. Creating a PDF document with pdflib 2.0 <?php $fp = fopen("test.pdf", "w"); $pdf = PDF_open($fp); pdf_set_info_author($pdf, "Uwe Steinmann"); PDF_set_info_title($pdf, "Test for PHP wrapper of PDFlib 2.0"); PDF_set_info_author($pdf, "Name of Author"); pdf_set_info_creator($pdf, "See Author"); pdf_set_info_subject($pdf, "Testing"); PDF_begin_page($pdf, 595, 842); PDF_add_outline($pdf, "Page 1"); pdf_set_font($pdf, "Times-Roman", 30, 4); pdf_set_text_rendering($pdf, 1); PDF_show_xy($pdf, "Times Roman outlined", 50, 750); pdf_moveto($pdf, 50, 740); pdf_lineto($pdf, 330, 740); pdf_stroke($pdf); PDF_end_page($pdf); PDF_close($pdf); fclose($fp); echo "<A HREF=getpdf.php3>finished</A>"; ?> The PHP script getpdf.php3 is the same as above. The pdflib distribution contains a more complex example which creates a serious of pages with an analog clock. This example converted into PHP using pdflib 2.0 looks as the following (you can see the same example in the documentation for the clibpdf module): Example 3. pdfclock example from pdflib 2.0 distribution <?php $pdffilename = "clock.pdf"; $radius = 200; $margin = 20; $pagecount = 40; $fp = fopen($pdffilename, "w"); $pdf = pdf_open($fp); pdf_set_info_creator($pdf, "pdf_clock.php3"); pdf_set_info_author($pdf, "Uwe Steinmann"); pdf_set_info_title($pdf, "Analog Clock"); while($pagecount-- > 0) { pdf_begin_page($pdf, 2 * ($radius + $margin), 2 * ($radius + $margin)); pdf_set_transition($pdf, 4); /* wipe */ pdf_set_duration($pdf, 0.5); pdf_translate($pdf, $radius + $margin, $radius + $margin); pdf_save($pdf); pdf_setrgbcolor($pdf, 0.0, 0.0, 1.0); /* minute strokes */ pdf_setlinewidth($pdf, 2.0); for ($alpha = 0; $alpha < 360; $alpha += 6) { pdf_rotate($pdf, 6.0); pdf_moveto($pdf, $radius, 0.0); pdf_lineto($pdf, $radius-$margin/3, 0.0); pdf_stroke($pdf); } pdf_restore($pdf); pdf_save($pdf); /* 5 minute strokes */ pdf_setlinewidth($pdf, 3.0); for ($alpha = 0; $alpha < 360; $alpha += 30) { pdf_rotate($pdf, 30.0); pdf_moveto($pdf, $radius, 0.0); pdf_lineto($pdf, $radius-$margin, 0.0); pdf_stroke($pdf); } $ltime = getdate(); /* draw hour hand */ pdf_save($pdf); pdf_rotate($pdf,-(($ltime['minutes']/60.0)+$ltime['hours']-3.0)*30.0); pdf_moveto($pdf, -$radius/10, -$radius/20); pdf_lineto($pdf, $radius/2, 0.0); pdf_lineto($pdf, -$radius/10, $radius/20); pdf_closepath($pdf); pdf_fill($pdf); p
Thank a lot!
You can use any application you want providing you use our SQL engine. By that I mean our SQL engine gives you the option to use single datasource applications and heterogeneously join multiple databases. For example, say you have a SQL Server DSN, an Access DSN and a RMS (file system under VMS) DSN. You can take these and link all of the databases into our engine. Then to the application they will appear as a single datasource. Currently the engine is in BETA, but if you want any further infomation, you can find it at http://beta.easysoft.com If anybody has any questions with reference to this, please mail me. Best regards, Richard Orange Easysoft Limited, UK sja <sja@tinet.ie> wrote in message news:7o6ogg$73d$1@scotty.tinet.ie... > I am currently investigating tools for the generation of reports from > multiple databases to an Intranet. If anybody knows of a suitable tool or > better still has any personal experience of a suitable tool, I would be > grateful for your input. Evaluations and links most welcome. > > Please copy any responses to sja@tinet.ie > > -- > Regards > > Selwyn Akintola > Tel: +353 (0) 1 8414380 > Mobile: +353 (0) 87 2671640 > e-mail sja@tinet.ie > URL http://homepage.tinet.ie/~akintola/ > >