Configurations for HOLD Graphics

Topics:

When using PCHOLD, a procedure is invoked on the WebFOCUS Reporting Server and the server accesses data sources to determine values. These values are usually passed back to the WebFOCUS Client on the web or application server and the client uses the graph engine to create graphics.

When using HOLD, after a procedure is invoked and the values determined, the WebFOCUS Reporting Server uses the graph engine to create the graphics itself or makes an HTTP call to the web server.

Using a HOLD can be specified in a procedure, as shown in the following example.

Example: Creating a Sample Procedure for HOLD

To test whether HOLD works in your environment, create a procedure like the following:

APP HOLD BASEAPP
GRAPH FILE CAR
SUM SALES
BY COUNTRY
ON GRAPH HOLD AS HOLDTEST FORMAT PNG
END

Save this procedure in the ibisamp directory on the WebFOCUS Reporting Server machine. For example:

/install_directory/ibi/apps/ibisamp/cargrsrv.fex

This procedure creates a file called holdtest.png in baseapp. You can use the procedure to test the HOLD configurations that follow. If GRAPHSERVURL is set in cgivars.wfs, you can override it and use JSCOM3 or IBIJAVAPATH, by adding the following as the second line of the sample procedure.

SET GRAPHSERVURL=""

Configuring GRAPHSERVURL

No special configuration is needed to use GRAPHSERVURL, provided you have deployed the WebFOCUS web application to your application server. GRAPHSERVURL is set as the IBIF_graphservurl value in cgivars.wfs. The value in cgivars.wfs is passed to the WebFOCUS Reporting Server when you launch a procedure through a servlet call. The value can also be set or overridden in a procedure using:

SET GRAPHSERVURL=http://hostname:port/ibi_apps/IBIGraphServlet

where:

hostname:port

Are the host name and port of the web server or application server.

GRAPHSERVURL is not supported when used against a secured web server (SSL, Basic Authentication, or other third-party security), because there is no mechanism for supplying credentials.

If you are using a secured web server in front of your application server, you can reset this value to directly call the application server host and port instead of the web server. You can do this in cgivars.wfs through the WebFOCUS Administration Console.

For ReportCaster, this must be set in a procedure, since it is not inherited from cgivars.wfs. Otherwise, a procedure launched by ReportCaster makes use of JSCOM3 or IBIJAVAPATH.

You can disable GRAPHSERVURL and use JSCOM3 or IBIJAVAPATH for a specific procedure by setting GRAPHSERVURL to nothing:

SET GRAPHSERVURL=""

Configuring for JSCOM3 HOLD

JSCOM3 is a listener installed with the WebFOCUS Reporting Server. It normally uses the fourth port used by the server. By default, this is port 8123. It is only used for HOLD graphics if GRAPHSERVURL and IBIJAVAPATH is not set.

To use JSCOM3, you must set the $JDK_HOME variable to your Java JDK installation directory. JSCOM3 is configured to automatically use headless. If you wish to use DISPLAY, you need to disable headless for JSCOM3 and set the DISPLAY variable.

For more information, see How to Verify or Enable the JSCOM3 Listener.

Be aware that if you create graphs that use templates, JSCOM3 uses a different copy of the templates than the WebFOCUS Client. If you modify templates, be sure to modify both. One is installed with the server for JSCOM3 and one is installed with the WebFOCUS Client:

/install_directory/ibi/srv82/home/graph
/install_directory/ibi/WebFOCUS82/ibi_html/javaassist/images/tdg/template

WebFOCUS

Feedback