RReportGenerator on the Web

From Wikili
Revision as of 12:14, 2 November 2010 by Ripp (talk | contribs)
Jump to: navigation, search

RReportGenerator is also available through a web interface.

 http://lbgi.igbmc.fr/rreportgenerator

How it works

The main tcl program rrg.tcl, written by Luc Moulinier, remains nearly unchanged. We replaced the call to 'main' with following lines :

global env
if {! [info exists env(QUERY_STRING)] && $argv=={}} {
    package require Tk
    main
} else {
    source "[file dirname [info script]]/rrg_web.tcl"
    MainWeb
}
  • (We should find a better way to test if it concerns http ...)
  • If launched as local program, rrg.tcl requires the package Tk and runs normally
  • If launched by the web server, rrg.tcl sources the additional file rrg_web.tcl and sends a html page to the web browser.
  • Any action from the user through his web browser will rerun rrg.tcl, the arguments are always transfered within the web page and users queries, avoiding use of session variables.
  • The user can switch between existing projects (if he knows the password) or create a new project.
  • Within a project he can select, delete or create scenarios and input files.
  • After selection of a scenario and input file the user can run RReportGenarator. This lauches the normal rrg.tcl from Luc and stores the result in the OutputDir of the project.
  • These output files can be shown, downloaded and deleted by any user knowing the password of the project.

Installation

To run RreportGenerator on the Web you need

  1. A http web server (we use Apache)
  2. An already installed RReportGenerator
    1. with the files rrg.tcl and rrg_web.tcl or their binary version
    2. the logos RRG_logoTransparent.gif, RRG_generateReport.gif, LogoIGBMC.gif and your LocalLogo.png
    3. access to R, latex and pdflatex
  3. If you are running 'not compiled scripts' you need Tcl8.5 or higher

Where have the files to be located

  • we need a directory accessible by the web server. We call it rreportgenerator
  • rrg.tcl, rrg_web.tcl and the logos (with your LocalLogo.png) have to be in that directory (if not in the same directory you can use unix links to simulate it)
  • in the same directory must exist a sub directory called Web which will contain the scenarios, input and ouput files for all projects. (use links if they are elsewhere)

We can now use the url http://http_server/rreportgenerator/rrg.tcl

  • To allow the execution of the .tcl as cgi-bin you need following line in the apache configuration file
  ScriptAliasMatch ^/rreportgenerator/rrg.tcl /real/path/to/the/directory/rreportgenerator/rrg.tcl
  • if you want to allow the url http://http_server/rreportgenerator
    • create a file index.html in rreportgenerator with a redirection to rrg.tcl
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
 <html>
 <head>
 <meta http-equiv="REFRESH" content="0;url=./rrg.tcl?commande=WebForm">
 </head>
 </html>
    • or do it in the apache configuration