New Phantom Session Booster features in NetPhantom

From NetPhantom 3.61 Build 1628, the following new features in Phantom Session Booster has been added. Some of these features were implemented earlier, but this document describes all new features in NetPhantom compared to Phantom Hurricane.

The following features are added:

Follow the links above for more information, or see below.

Note: below all entries that can be specified refer to the PSB.INI file in the [APPLICATIONDATA] section.
 

Integration of a second Phantom Session Booster application

Phantom Session Booster now supports initialization of two Phantom Session Booster applications, downloading the user authorization of both applications during the initialization process from the AS/400, including possible combination box files.

To use this feature, specify GGGAPPNAME2=AppName2. The first application (specified using GGGAPPNAME=AppName) will set the AS/400 library list and initialize the user authorization, download possible combination box files, initialize group jobs, database files, etc, for the application as before. The second application will only download the user authentication and possibly update any combination box files, i.e. there will be no initialization of group jobs, database files, etc.

To start AS/400 functions in the second application, specify a menu item ID or push button ID as OPEN2_nn and/or O2_nn where nn is a valid integer (>0). The menu item or push button must be connected to an object (either GGGMAC or another object that eventually calls GGGMAC using e.g. the REXX function rc=CallObject('GGGMAC','OPEN2_nn','CMD',''). See associated Object ID's for valid object IDs.

If the second application to integrate using Phantom Session Booster requires settings for the library list, initialization of group jobs, opening of database files (and possibly commit options), etc, these settings must be manually integrated using the Phantom Session Booster AS/400 Administration program for the first application.
 

Extension of user authorization to panel menus, panel push buttons and/or pop-up menus

NetPhantom now supports extensions in the default user authorization to panel menus, panel push buttons and any pop-up menus associated with any panel control. This is done by checking when new panels are created and before the panel definition is sent to the NetPhantom Client to be displayed. Phantom Session Booster uses the Java method addVirtualPanelCreationListener in the VirtualSessionManager instance of the client session.

Whenever a new panel is created, it is optionally checked for any menu items, push buttons and/or pop-up menus that belong to Phantom Session Booster (i.e. control or menu ID as OPEN_nn, OPEN2_nn, O_nn and O2_nn, with associated Object ID's).

The settings that enable these checks are:

  • includePanelMenus=1
  • includePushButtons=1
  • includePopupMenus=1
If none of these settings are specified, the panels will not be checked at all.
 

Association of valid Object ID's for menu items and/or push buttons

When an item (menu item or push button) is not authorized for a user to access, this item is normally disabled. Previously, all items in the application panel that were not authorized for a user were disabled once the application is initialized by Phantom Session Booster. These items have menu item ID's OPEN_nn or O_nn where nn is a valid integer (>0), and/or OPEN2_nn and/or O2_nn for a possible second application integrated with the first one.

As new functionality has been added (e.g. integration of two applications and/or disabling/hiding menu items, optionally at application start), it is sometimes required to add extra rules to identify the items that really belong to the Phantom Session Booster authorization functions.

Specify GGGOBJECTS=object1,object2,...,object_NN. If this entry is not found, all items with valid ID's (i.e. OPEN_nn, OPEN2_nn, O_nn and O2_nn) are processed.

The GGGOBJECTS entry should specify all valid Object ID's that should belong to the Phantom Session Booster authorization process, in addition to the default Object ID GGGMAC. Menu items or push buttons that are not associated with objects specified in this list (along with GGGMAC) will not be included in the authorization process, i.e. will not be disabled or hidden.
 

Hiding unauthorized menu items instead of disabling them

NetPhantom now supports hiding of menu items (note: not push buttons, these will always be disabled, if included in the authorization process) instead of disabling them.

Specify the option hideUnauthorizedMenuItems=1 to enable this feature.

When a menu item is disabled or hidden, this might result in all menu items in a submenu becoming disabled or hidden. If this is the case, the option includeUnauthorizedParentMenus=1 can be specified. This will automatically will disable or hide the corresponding submenu item (including its parent submenus, if this applies, recursing all the way up to the top menu as required), when all its child items are disabled or hidden.

Example: hide unauthorized menu items and its parent submenus (if this applies):

hideUnauthorizedMenuItems=1
includeUnauthorizedParentMenus=1
 

Unauthorizing all Phantom Session Booster bound menu items at application start

When the option unauthorizeMenusAtStart=1 is specified, all menu items in the application panel that have a valid associated Object ID's to the Phantom Session Booster with a valid menu item ID are disabled or hidden (depending on the setting hideUnauthorizedMenuItems=1).
 

Saving the AS/400 user ID for NetPhantom Server Administration

Phantom Session Booster now supports setting the AS/400 User ID as the NetPhantom logged-on User ID that is visible in the Server Administration program. Specify GGGSAVEUSERID=1. Once the AS/400 user is signed in and has accessed the main Phantom Session Booster initialization screen, the user ID is set for the client session for the Server Administration program.