Atrium Database



This document describes the layout of the Atrium database, and how to import users and menu items manually.

Users and Groups

In Atrium, each user and group is assigned a unique identifier. The assigned id must be entirely unique. For example, a user id number must be unique not only among other users, but also among any and all groups.

Unique id zero is reserved and should not be assigned to any user or group.

Users may also be supplemental members of multiple groups. Supplemental membership determines the user's navigation permissions.

Configuration Records

User/group configuration records are keyed on the unique user or group id number. A configuration record with reserved id zero must always be present. This record contains the global configuration settings.

Menu navigation items are also assigned a unique identifier. These identifiers cross reference to entries in the menu permission file to control which users/groups see which menu items.

Macros and Screens

Each Atrium macro has a unique Macro Id. Screen records have a separate Screen Id.

Database Files

Below is a listing of key database files along with field usage.

Unique Ids File (ATUIDSP)

This file controls the next unique id number that is used by the Atrium GUI when creating new users, groups, and menu items.

This file always must contain 2 records, one with AUIFIELD = ‘GRPUSRID’ (next user or group id) and one with AUIFIELD = ‘ANITEM’ (next navigation item id).

If importing users and menu items programmatically, care must be taken to update field AUINEXT on these records so that the next number to be used is greater than the highest id number on the imported items.

If this is not done, the GUI will attempt to use invalid ids when adding users, groups, or navigation items and an error will result.

Example:

If your ATUIDSP file contains the following:

Then the next navigation item created (ATNAVP) would have the ANITEM value 255.

Configuration File (ATCONFIGP)

This file controls display options in Atrium. Each user or group and have their own settings. Or, they can inherit from their parent groups, or from a set of global defaults.



Option

Description

Values

Option

Description

Values

ACID

This is the unique key for this file.

When the portal loads, Atrium looks for a record in this file with the user id number. This will be present if the user has his own settings.  If not, a record might not be present for the user. In this case, group settings will be checked using the user’s parent group id. This record also may not be present. In this case, prior parent group ids (if any) will be checked.

If nothing is found, the record with ACID = 0 (global settings) will be used.

This record must always be present, or an error will occur.

any unique user or group id

ACBTITLE

This controls the title displayed in the browser title bar and/or browser tab. Can be set to any desired text.

any valid text

ACBAN

Flag that controls whether a banner is displayed at the top of the portal.

1/0

ACBANHEIGHT

Controls the height (in pixels) of the banner.

If ACBAN = ‘0’, this field is ignored .

any valid pixel value

ACBANURL

Sets the URL of the external HTML file that provides the banner content. The URL can be either a fully qualified URL, or an absolute path to an HTML file within the Profound UI http server’s document root folder.

If ACBAN = ‘0’, this field is ignored .

fully qualified URL or absolute path

ACTHEME

Sets the color theme.

‘blue’, ‘gray’, ‘olive’, or ‘slate’

ACUTHEME

Controls whether or not the user gets an option on the Settings menu to set their own color theme.

1/0

ACSHOWHOME

Controls whether or not a home page is shown automatically when the portal loads.

1/0

ACHOMEURL

Sets the desired homepage.

any unique navigation item number

(field ANITEM in file ATNAVP)

ACNTITLE

Controls the text that is displayed in the title bar of the navigation panel.

any valid text

ACNWIDTH

Sets the starting width (in pixels) of the navigation panel when the portal loads.

The user can resize the navigation panel during the session.

any valid pixel value

ACNTYPE

Controls whether the navigation panel is shown in the Tree or Accordion style.

'T'/'A'

ACNSCLICK

Controls whether navigation items will launch with single (1) or double (0) click.

1/0

ACSEARCH

Controls whether Menu Search feature is enabled.

1/0
default: 1

ACFAV

Controls whether Favorites system is enabled.

1/0
default: 1

ACLIMIT

Limit of number of Atrium sessions, per web browser.

any valid positive number value

0 = no limit

ACMINSRCH

Minimum number of characters for menu search.

any valid positive number value

ACJOBD

Specifies a job description to set the library list from.

*USRPRF can be specified if the Atrium users are IBM i user profiles.

To use, the field ACLIBL must be blank.

any valid job description

ACJOBDLIB

Specifies the library for the job description.

*LIBL or *CURLIB can be specified.

any valid library

ACCURLIB

Specifies the current library.

any valid library, *USRPRF, or *CRTDFT

ACLIBL

Contains a set of libraries to use as the library list.

 To use, both ACJOBD and ACJOBDLIB must be blank.

any valid libraries



NOTE

To use the Atrium defaults, ACJOBD, ACJOBDLIB, ACCURLIB, and ACLIBL must be blank.

Groups File (ATGROUPSP)

This file contains Atrium groups. Users and other groups can be assigned into a group to inherit display settings and/or menu permissions.

Option

Description

Values

Option

Description

Values

AGGROUP

Specifies a unique group identifier.

Value 0 is reserved and must not be used as a group id in this file.

any unique and valid positive number value

AGPARENT

Specifies a unique parent group identifier.

Value 0 is for a top-level group which is not a member of any other.

any unique and valid positive number value

AGNAME

Sets the display name for the group.

any valid text



IMPORTANT!

Identifiers must be unique among users and groups.

Users File (ATUSERSP)

This file contains a repository of users who are capable of signing into Atrium.

Option

Description

Values

Option

Description

Values

AUUSER

Specifies a unique user identifier.

Value 0 is reserved and must not be used as a group id in this file.

any unique and valid positive number value

AUGROUP

Specifies the unique parent group identifier of the user.

All users must be assigned to a valid group.

any valid parent group identifier

AUROLE

Sets the user's access role.

0 - user is a User with permission to sign in and use navigation items for which they were given permission to use.

1 - user is a Manager with permission to add, remove, or update users within their own groups and subgroups of their groups.

2 - user is an Administrator with permission to perform any function in the portal.

AUEDIT

Controls whether user can access My Settings option in the Settings menu. My Settings allows the user to control some of their own

1/0

AUNAME

Sets the user's display name.

any valid text

AUPROF

Sets the user's profile name.

When IBM i profiles are used, this field must be set in uppercase. For all other types of users, the case used must match EXACTLY to the user profile name in the user repository.

any valid name that corresponds to the user repository used to authenticate with the HTTP server.

(i.e. IBM i operating system, Kerberos, LDAP, validation list, etc.)

AULANG

Sets the user's language code. Is used as a key to find menu item translations in file ATNTRANSP .

If the language code is left blank, or there are no matching records in ATNTRANSP, the normal menu item texts are used.

As of Profound UI Version 6 Fix Pack 1.0, if the language code matches a language defined for Atrium, such as de_DE, fr_FR, it_IT, then the Atrium user interface will use that language when pui["language"] is not set in an extensions/atrium/ JavaScript file (e.g. settings.js).

Optional

any valid language code



IMPORTANT!

Identifiers must be unique among users and groups .

Supplemental Groups (ATSUPGRPP)

This file contains supplemental members of groups. Both ASUUSER and ASUGROUP are primary keys; so, a user can be a member of multiple groups.

ASUUSER: User Id

ASUGROUP: Group Id

ANITEM: Unique key for this file. Provides an entirely unique identifier for this menu item. A server side program determines new values for ANITEM based on an entry in ATUIDSP (see above).

ANSECT: Controls the section of the portal this navigation item will display in. Set to ‘N’ (navigation panel), ‘T’ (toolbar), or ‘H’ (home pages).

ANPARENT: The parent item identifier. Set to a valid parent item identifier, or 0 for a top-level item with no parent. Top level toolbar items will show as a push button. Top level navigation items will show as an Accordion Panel or a Tree folder. Home page items MUST always be top-level items.

ANSEQ: Controls sequencing of child items within a parent. Must be unique within a parent/child combination. A server side program determines new values for ANSEQ: the next new value will be MAX(ANSEQ) + 1 for the given parent.

ANTYPE: Sets the type of item. Valid values are:

‘0’: Navigation panel menu group.  Cannot be used to launch an action – these simply contain other items. Valid only when ANSECT = ‘N’.

‘1’: Navigation panel menu item. Used to launch an item. Contained within a menu group. Valid only when ANSECT = ‘N’.

‘2’: A push button. Valid only  ANSECT = ‘T’.

‘3’: A separator bar. Provides visual separation of items in the toolbar. Valid only  ANSECT = ‘T’.

‘4’: A spacer. Provides spacing between items in the toolbar. Valid only  ANSECT = ‘T’.

‘6’: Pull down menu. Valid only  ANSECT = ‘T’. Can be top-level, or contained within another pull down menu. Cannot be used to launch an action – these simply contain other items.

‘7’: Pull down menu item. Valid only  ANSECT = ‘T’. Contained within a pull down menu. Used to launch an action.

ANACTNTYPE: Action type. Valid action types are:

‘0’: Web application.

‘1’: Profound UI Genie macro.

‘2’: Profound UI Rich Display File application.

'3': PC Command

ANACTN: Action. Set to the following, by action type:

Web application: Set to URL. The URL will simply be launched in the portal.

Profound UI Genie macro: Set to the unique macro id from ATMACROSP.

Profound UI Rich Display File application: Set to the qualified program name, for example:

mylib/mypgm

ANTEXT: Sets the display text for the menu item. Can be set to any desired text.

ANICON: Set to the URL to provide a JPG, GIF, or PNG icon for this menu option. Recommended to use an absolute path to a file inside the Profound UI http server’s document root folder.

ANWINDOW: Flag that controls whether the item launches in a new portal tab, or a new browser window/tab. Set to ‘1’ for browser window/tab, set to ‘0’ for portal tab.

ANGURL: Alternate Genie URL when launching Genie macro. This can be used to launch to a specific skin, for example. Leave blank to use default Genie URL.

ANONCE: Set to ‘1’ if only one portal tab should be allowed for this menu item. Set to ‘0’ to allow opening multiple tabs for this item.

This file provides text translation for navigation items. It can be used to present item text in different languages, based on the user profile.

ANTITEM: The navigation item to provide a translation for. This is set to the unique item id from ATNAVP.

ANTATTR: The attribute type to provide a translation for. Currently only item text is supported. All records should have this field set to 'MENUITEMTEXT'.

ANTLANG: The language code the translation is for. This is matched to the current user's language code setting (if provided) to determine which translations to use. The current user's language code is in the ATUSERSP.AULANG field.

ANTTEXT: The translated text.

This file controls which users are allowed to access which menu items. The file uses the unique user/group and menu item ids to control access.

There is also a “public” permission record for each menu item that can be set to Allow or Deny. Optional user/group records can be added with Allow or Deny permission.

Authority is checked according to rules in Rules For Determining Permissions.

Authorities are checked starting with parent items. So, to get access to a menu item, the user must be allowed to access all parents in the hierarchy, in addition to the child item.

AAITEM: The unique menu item identifier, field ANITEM from file ATNAVP.

AAID: The user/group id for this permissions record, or 0 for the public permissions record. There is no need to have user/group permissions records, but there must always be a public permissions record for each and every menu item, or the portal will fail to load.

AAALLOW: Set to ‘1’ for Allow, ‘0’ for Deny. 

This file can be used to filter menu items for a user or group based on user defined criteria. See Menu Item Filter  for more information. 

ANFITEM: Menu item number, this corresponds to field ANITEM in ATNAVP.

ANFID: User / group id, this corresponds to field AUUSER in ATUSERSP, or to field AGROUP in ATGROUPSP.

ANFFILTER: Filter string. 

Favorites File (ATFAV)

AFUSERID: User Id

AFID: Unique Id

AFPARENT: Parent Id

AFSEQ: Sequence Number

AFFOLDER: Folder Flag. Set to 1 if this is a folder; set to 0 otherwise

AFCODE: Item Code

AFTEXT: Text

AFICON: Icon

Atrium Macro Files

Macros File (ATMACROSP)

This file describes Atrium Macros.

AMID: Macro id

AMNAME: Macro Name

Screens File (ATSCRNSP)

This file describes Screens used by Atrium Macros.

ASID: Screen Id

ASNAME: Screen Name

Identifiers File (ATIDSP)

This file describes screen identifiers used by Atrium Macro screens.

AISCRNID: Screen Id

AIIDENID: Identifier Id

AIROW: Field Row

AICOL: Field Column

AIVALUE: Field Value

Macro Screens (ATMSCRNSP)

This file identifies to which screens each macro applies.

AMSID: Macro Id

AMSSCRNSEQ: Screen Sequence

AMSSCRNID: Screen Id

AMSONCE: Screen is identified only once. Set to '1' to indicate a screen should only be detected once in the macro. '0' means it can be detected repeatedly.

Macro Actions (ATMACTNSP)

This file defines the action(s) to be taken for each macro on particular screens.

AMAID: Macro Id

AMASCRNSEQ: Screen Sequence. This is the Screen Id. Each screen is detected in the same order that its Id was added to this file. A screen may be added multiple times per macro.

AMAACTNSEQ: Action Sequence. This is the Macro Action Id. Each action occurs in the same order that its Id was added to this file. An action may be added multiple times per macro and screen.

AMAACTN: A single-character Action Id. Valid Actions are:

  • 0: Write a value into a field

  • 1: Press a key

  • 5: Close the browser window or tab

AMAROW: Field Row. Value is 0 unless the action is 0–write a value into a field. For action 0, this identifies the terminal row where the field exists.

AMACOL: Field Column. Value is 0 unless action is 0. As with AMAROW, this this identifies the terminal column where the field exists.

AMAVARTYPE: Variable Type. A single-character Type Id. This field is ignored when action is 5. This describes the data in the AMAVAR field. Valid Types are:

  • 0: A literal value. When action is 0, the value of AMAVAR is to be entered literally. When action is 1, the value of AMAVAR is the key to be pressed.

  • 1: A variable value. Valid for action 0 or 1. When configuring a navigation item to use this macro, you will be prompted for the variable name. The value entered on the navigation item will be written into the field when the macro is run.

  • 2: The current user profile. Valid only for action 0. Indicates that the current user profile should be entered into a field.

  • 3: The result of a JavaScript expression. Valid only for action 0.

AMAVAR: Variable. This field is ignored when action is 5. This way this field's value is used depends on the Action (AMAACTN) and the variable type (AMAVARTYPE).

Variables File (ATNVARSP)

This file contains variable values used for macros. 

ANVITEM: Navigation Item

ANVNAME: Variable Name

ANVVALUE: Value