Report Manager ← Back to site

Installing Report Manager Web Server

Report Manager Web Server

Installation

Installing Report Manager web server in Microsoft Internet Information services.

  1. Install Internet Information Services.
    • Windows 10. Add or remove features. Internet Information Services. Add also CGI and ISAPI Extensions.
    • Windows Server
      1. Add roles or features. Add Web Server Role including Management tools. Click Add features

        Installing Report Manager Web Server (screenshot 1)

      2. Click Next until Role Services and add CGI and ISAPI Extensions.

        Installing Report Manager Web Server (screenshot 2)

      3. Test the installation accessing http://localhost using any Internet Browser (Edge, Chrome...).
  2. Open Internet Information Services (IIS) Manager
  3. Copy the executables into the Default Website
    • Explore the website

      Installing Report Manager Web Server (screenshot 3)

    • Create cgi-bin folder and copy the files repwebserver.dll for ISAPI and/or repwebexe.exe for CGI.

      Installing Report Manager Web Server (screenshot 4)

  4. Enable the ISAPI and CGI applications at server level.
    • Select server node and double click ISAPI and CGI Restrictions.

      Installing Report Manager Web Server (screenshot 5)

    • Add the repwebserver and/or repwebexe.dll to the list, selecting the cgi-bin path and the file

      Installing Report Manager Web Server (screenshot 6)

      Set a description and allow execution

      Installing Report Manager Web Server (screenshot 7)

    • Review the summary to check execution is enabled

      Installing Report Manager Web Server (screenshot 8)

  5. Allow CGI and/or ISAPI at handler Mappings. This can be done at server level or website level.
    • Double click on Handler Mappings.

      Installing Report Manager Web Server (screenshot 9)

    • Select the ISAPI or CGI handler mapping and set execute permission.

      Installing Report Manager Web Server (screenshot 10)

      Installing Report Manager Web Server (screenshot 11)

  6. If you run a 32bit version of Report Manager you must enable 32bit in the application group. Else you will get a 500.0 internal error.

    Installing Report Manager Web Server (screenshot 12)

  7. You can test the installation by calling the application with /version command:

    http://localhost/cgi-bin/repwebserver.dll/version

    Installing Report Manager Web Server (screenshot 13)

    This will give you info about the configuration file the report web server is using, including the location of the configuration file and the system user name running the Report Server.

  8. Copy and add permissions for database configuration files.
    • Copy the configuration files for databases (dbxconnections.ini and dbxdrivers.ini) into the folder indicated by /version command. The files could be located at hidden folder C:\Users\YourUserName\AppData\Local

      Installing Report Manager Web Server (screenshot 14)

      Installing Report Manager Web Server (screenshot 15)

    • Give access to files to the user executing IIS Service. The user executing the ISAPI or CGI extension appear in the end of the /version command by default ISUSR but depends on the application pool assigned to the website.

      Installing Report Manager Web Server (screenshot 16)

      Installing Report Manager Web Server (screenshot 17)

  9. Check again the /version command and see if the files are now accessible.

    Installing Report Manager Web Server (screenshot 18)

For security reasons you can't add/remove users or aliases from the web. To configure users and aliases you can use repserverapp(xp) and repserverconfig(xp), execute repserverapp as a privileged user (root or Admin) so it opens the system wide configuration file and have write permissions over it, then execute repserverconfig(xp) and add aliases and users. You can see the generated file location in reportserverapp form, this configuration file will be used by the web report server.

http://localhost/cgi-bin/repwebserver.dll/login

Some tricks will help you to setup the web server:

Installing Report Manager web server in Linux Apache

Usually you copy the application (rpwebexe.bin and repwebexe) into a directory with execution privileges, for example a cgi-bin directory under your Apache document root.

You must place the configuration file of the server in /etc/reportmanserver file. You can generate it with the tcp server application and the tcp server configuration.

This file will contain user information (default user Admin with blank password) and the report directories. A simple file can be:

[ALIASES]

SAMPLE=/var/reports

User running apache process must have read privileges of this directory.

The database configuration files must be placed in directory /usr/local/etc, this files are:

dbxconnections.conf, dbxdrivers.conf

There information about database location, user names and passwords are stored, if you use the designer application (repmand) it usually reads and writes these configuration files to a per-user configuration directory, you can copy the files from there to the correct directory.

Finally the report server application must link to required libraries (legacy Kylix builds); you should place these libs (provided with the report designer) in the directory the repwebexe.bin application launcher adds to the path, otherwise you can add another directory to /etc/ld.so.conf file and run ldconfig command.

To test the server you can write:

http://localhost/cgi-bin/repwebexe.bin/version

It will say you the version and the configuration file location, then you can test the configured reports:

http://localhost/cgi-bin/repwebexe.bin/login

Thousand separator and other locales

Most linux distros use a different locale for apache, you can check environment variables with the /version command and see the resulting decimal separator, thousand separator etc, you can override it by placing for example a .htaccess file in cgi-bin directory where repwebexe is placed. On legacy Kylix builds the override variables were:

SetEnv KYLIX_DEFINEDENVLOCALES yes
SetEnv KYLIX_THOUSAND_SEPARATOR .
SetEnv KYLIX_DECIMAL_SEPARATOR ,
SetEnv KYLIX_DATE_SEPARATOR /
SetEnv KYLIX_TIME_SEPARATOR :

Using a log file to track web report server activity

You can specify a log file to write information about executed reports. To enable the log file edit your configuration file and insert:

[CONFIG]

LOGFILE=/var/log/reportmanweb.txt

Make sure the user executing repwebexe application inside Apache or IIS has write privileges over this file.

Serve customized html files

To serve alternative html files, you must configure where the html files are and use the replacement strings contained in the models. You will find the html original files (models) in the project source repository.

To configure place in the configuration file

[CONFIG]

PAGESDIR=c:\inetpub\wwwroot\reportserver

Configuring environment variables in Apache using Oracle

You can pass environment variables to any cgi with apache, for example oracle needed ones.

---------------------------------------------------------------------
PassEnv directive
Syntax: PassEnv env-variable [env-variable] ...
Context: server config, virtual host, directory, .htaccess
Override: FileInfo
Status: Base
Module: mod_env
Compatibility: PassEnv is only available in Apache 1.1 and later.
Directory and .htaccess context is available in Apache 1.3.7 and
later.
Specifies one or more environment variables to pass to CGI scripts
and SSI pages from the environment of the shell which invoked the
httpd process. Example:

PassEnv LD_LIBRARY_PATH
---------------------------------------------------------------------
In addition: You must set the Oracle environment
(ORACLE_HOME,PATH,LD_LIBRARY_PATH) inside the init httpd script
(/etc/init.d/httpd) plus add the following directives inside the
configuration file /etc/httpd/conf/httpd.conf:
PassEnv ORACLE_HOME
PassEnv PATH
PassEnv LD_LIBRARY_PATH

To generate advanced graphics (charts) you must use the alternative repwebexex.
The apache server service must start in runlevel 5, and the Xserver must be running.
The environment variable DISPLAY must be defined to :0 in he apache runtime.
Some security settings should be disabled, the fastest way is to disable the firewall and then execute the command to enable access to the Xserver: xhost +