Launching Programs

Once you have compiled your program, you are ready to launch it as a browser application.  You can launch it as an anonymous program, or you can require users to sign in to establish a session before calling the program.

Launching an Anonymous Program

To launch an anonymous program, you must first register it.  In the Visual Designer, select Launch → Maintain Anonymous Programs.  Specify library/program, click Add, and then click OK.

Next, select Launch → Launch Anonymous Program.  Type in the program and library name, and then click Launch.

Your program will launch in a new browser window or tab.

Note: If you created a CL program to setup the library list and call your RPG program, you must specify the name of the CL program here, instead of the RPGLE program.

Note: Anonymous Programs can also be configured by directly editing a database file. This is useful for production and QA systems that do not have a visual designer. Details here.

Launching a Session

In order to have users sign in through a session, you must specify an initial program for them.  This can be done individually for each user, or by providing a default program for all users.  In the visual designer, select Launch → Maintain Initial Programs from the ribbon.

In the top section of the dialog, specify the default program for all users.  You can override the initial program for each specific user, in the editable grid, at the bottom of the dialog.

After specifying initial programs, you can start a session by selecting Launch → Launch Session from the ribbon.  A new Profound UI session will open in a separate browser window or tab.

First, the Profound UI sign on will be displayed.  The sign on screen is shipped as a rich display file™ in library PROFOUNDUI.  You can customize the look and feel of the sign on screen by opening source member PUISCREENS in file PROFOUNDUI/QDDSSRC using the Profound UI Visual Designer.
Upon successful sign on, the user’s initial program is called.

Note: Initial programs can also be configured by directly editing database files. This is useful for production and QA systems that do not have a visual designer. Details here.

Passing Parameters to Initial Programs

To use the parameter interface, we’ve implemented query string parameters ‘px’ and ‘lx’ to indicate the parameter values and lengths. It’s very important that the order of the parameters and lengths match up exactly to the parameter list in your CL or RPG program or you’ll get “pointer or parameter” errors when trying to call them. You can pass as many parameters as you like by using p1, l1, p2, l2, etc as many times as you want.

Up to 255 parameters can be passed in this way. 255 is the limit of parameters that an ILE RPG program can receive…

For example, to call an initial program that has a parameter list like this:


Use this link (your data values are represented by X’s, fill in your parameter values there):

If you pass fewer characters than specified by the ‘l’ value for a parameter, it will be blank-filled to ‘l’ number of positions. If you pass more characters, the value passed into the program will be truncated to ‘l’ characters.

Only data types that can be represented as characters can be passed. Primarily this is just *CHAR, but positive zoned decimals and dates can be used if needed.

Launching PHP

To launch a PHP script, you must specify a path to it using the controller query string parameter.  For example: http://yourServer:8080/profoundui/start?controller=/php/profoundui/helloworld.php

PHP must be enabled (see here).  If default settings are used, the above helloworld.php file would be stored in the /www/zendcore/htdocs/profoundui IFS directory.

Launching through Genie

Genie is a browser-based 5250 emulator that can run both Rich Display programs and green-screen programs (refaced on-the-fly).  You can start a Genie session with the following URL: http://yourServer:8080/profoundui/genie.  A simple CALL, just like you would call any other RPG prorgam, is all that's required to launch a Rich Display program from Genie.  For more information about Genie, see here.