Using the PROACTIS dashboard

Introduction

The PROACTIS dashboard is a collection of modules whose purpose can be anything from a shortcut to some common PROACTIS functions, quick view reports and even graphs of data held in external systems such as financial systems. It acts as a portal or gateway page for providing condensed, meaningful and intuitive information.

Perhaps the biggest strength of the PROACTIS dashboard is its ability to provide customized information from a variety of data sources. These data sources are not limited to PROACTIS itself, but could be provided from anywhere. Data could be collected from a web service located anywhere in world, a local file or an external financial system, and need not be limited to PROACTIS subject matter.

Layout

In order to provide the user with the best possible view of their data, a dashboard layout is automatically chosen for each specific user. The layout groups all the modules together by their size; small, medium and large modules, to offer the user the best, most optimal use of their available screen space. The following screen resolutions are supported by PROACTIS dashboard layouts:

  1. 800x600
  2. 1024x768
  3. 1152x864
  4. 1280x1024 and 1600x1200

If PROACTIS is unable to determine a user’s screen resolution, it will default to 800x600 layout. Both 1280x1024 and 1600x1200 resolutions share the same layout.

Modules

Modules are small, self-contained units of functionality. These offer user such diverse packages as simple lists of information, colourfulgraphs of information or external websites brought directly to the dashboard.

Modules can be divided into two distinct flavours, ones that make use of data collectors and others that operate as pass-though modules.

Pass-through modules

Pass-though modules are perhaps the least complex of the PROACTIS dashboard modules. When the module is being constructed on the dashboard, a call is made to an external web page to provide the content. An example of a pass-though page can be seen in figure 1 below where the Google search engine homepage has been embedded into the dashboard.

Figure 1

In this example, the Google homepage hasn’t been provided by the PROACTIS dashboard module, but rather the module acts as a container through which the Google homepage is being called and subsequently embedded.

When setting up a pass-through module, discussed later in this document, apart from the module dimensions, only the URL, or web address, of the page to be embedded needs to be completed. This leaves the developer of the external page or site to develop his or her application completely independently of PROACTIS, without the need to knowvery much if anything at all about how it being consumed or used.

Data collector modules

Data collector modules, on the other hand, format their content internally. These modules coordinate the collection of data through data collectors and the transformation of this data using in-build transformers. Data collector modules can be divided into two distinct parts; data collectors and transformers.

Data collectors

The data is collected from an external source using the PROACTIS dashboard protocols component. This component allows us to connect to external data collectors from where the data is retrieved. Data collectors may be 3rd party components written in a variety of programming languages, which retrieve the data from a number of sources, or in-build data collectors offered by PROACTIS. For instance, suppose that we required particular data from our financial management system that we would like to be presented as a pie chart. In this instance, a data collector would be required that would facilitate the collection of this data from the FMS to be handed to the PROACTIS dashboard module.

Illustration1

Transformer

The transformer is responsible for turning the data into presentable information, such as a pie chart. There are a number of transformers built into the PROACTIS dashboard that the developer can make use of. These range from a variety of charts to a many types of lists that may perform specific functions such as providing a preview of a purchase order in a popup window. Choosing a transformer is as simple as selecting a desired format from a drop-down list.

Developing transformer-type moduleshas great advantages over pass-through modules. They provide standardised content that has been tested and optimised, and that fulfil the stringent look and feel requirements demonstrated in PROACTIS. They eliminate the need for developers to concern themselves with creating HTML and graphical content, with the knowledge that it has been optimised both in size and content, to ensure that it fits perfectly within the dashboard.

Adding new modules

Adding new modules is done through the PROACTIS management console snap-in. This allows the user to choose a transformer to present the data, a data collector to provide the data, and to set any required properties such as chart titles, etc. In other words, setting up a module is simply a way of connecting a data collector to a transformer, one to provide the data and the other to present that data in meaningful format.

Before creating a module, it is important that you decide, up front, what type of module you require, pass-through or transformer. If you have decided to use a transformer module, you should first make sure that both your transformer and data collectors are set up correctly first.

Transformers

Transformers are all built into PROACTIS, and are not editable. As a result, there should be no setup required. However, it is a good idea to review that transformers requirements, detailed at later on in this document, to see if there are any special requirements.

Data Collectors

After choosing your transformer, the next step is to choose a data collector. As mentioned, a data collector’s sole purpose is to provide the data and nothing else. The data collector will normally have an id that is used to create, or instantiate, it. To create a data collector, please review the data collector guidelines mentioned later in the document.

After having chosen your transformer and data collector, you can begin putting them together to form your new module. This is done by following steps (see figures 2 through 6):

  1. Select the Modules group from the dashboard tree view pane.
  2. Click the New button from the modules box on the right hand pane.
  3. Decide whether the module is to be a pass-through module or whether it will, alternatively, make use of a data collector, from the popup dialog. If you have chosen a data collector, select the appropriate data collector from the drop-down list provided.
  4. The next dialog allows you to set the module title, its description and which aspects are user configurable.
  5. The following dialog is different depending on whether you’ve chosen a pass-though module or a data collector module.
  6. Pass-through modules – Set the modules properties and enter a valid URL that should be called when the module is constructed.
  7. Data collector modules – Choose the appropriate transformer and set he module properties.
  1. Once you’ve created your module, it will be added to the Modules group in the dashboard tree view pane, from where you’ll be able to review its settings and complete any data collector and transformer properties.
  2. Complete any data collector or transformer properties by selecting the appropriate tab and editing that property.
  3. The last thing to complete, in order to allow access to your newly created module, is to complete the User Security. Expanding your module’s tree will reveal a User Security node. Simply use this to add and remove user and user groups, granting and denying them access to your module.
  4. Check and test your module. If it doesn’t appear, check the PROACTIS log file for any reported errors.

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Module settings described

Below is a list of the possible module properties and their corresponding descriptions.

Pass Through

This sets the module to be a pass-through type module. It means that the module will be expected to create a frame on the dashboard into which it will load an external HTML document.

Data Collector

This sets the module to be a data collector type module. By choosing a data collector from the list provided, the module will be set up to connect to and communicate with the data collector, using all of its required properties. It also implies that the module will be using an internal transformer to present the data.

Title

This is the title for the module. It is this that will be seen by the user on the blue bar above the module, and by the administrator in the various lists and tree views.

Description

The description is simple a short prose describing the module, useful to others who cannot discern a modules use from its title. It also appears to the user as a tooltip as they hover their mouse above the module title.

Can user choose not to display this module?

With this checkbox you may decide whether the user has control over whether to display the module or not. This is useful if there are any modules that must be viewed by all users. Check if users are able to hide this module themselves.

Can users change the title?

If checked, allows the user to change the title of their module.

Can users change the description?

If checked, allows the user to change the description of their module.

Transformer

This is a list of internal dashboard transformers. Choosing a transformer sets the module to use that transformer and imports all of its properties.

Width

Modules come in three widths; small, medium and large. Depending on the transformer you have chosen, not all of these widths may be available. All three widths are available to pass-through modules.

Height

This property is intended only for pass-through module types, since the module cannot automatically calculate the height to allocate for the module. If this is set to zero (0), the default height of theIFRAME is assumed.

URL

This property is intended to be used with the pass-through module types, and provides

Property Cache Type

There may be up to three possible settings for the property cache type, and, depending on which transformer has been chosen and whether the module is pass-through or not, not all of them may be available to you at the time. The possible values are:

  1. None – The module properties are never cached. This will be slower and less efficient since each module request initiates a new request for the module properties. This has a greater impact where SVG transformers are concerned, since the properties could be requested twice per module request.
  2. Transient – This setting is mainly aimed at SVG transformer, and is similar to the ‘None’ settings but eliminates a potential second request.
  3. Session – This is the fastest and most efficient setting, since the module properties are cached for the duration of the user’s session, i.e. while they are logged onto the system. The downside to this, however, is that should the administrator make changes to the module properties, the user will only see these changes the next time they log in.

Data Cache Type

As with theproperty cache type, mentioned above, there may be up to three possible settings for the data cache type, and, depending on which transformer has been chosen and whether the module is pass-through or not, not all of them may be available to you at the time. The possible values are:

  1. None – The module datais never cached. This will be slower and less efficient since each module request initiates a new request for the module data. This has a greater impact where SVG transformers are concerned, since the properties could be requested twice per module request. The plus side is that the data is always fresh when the module has been requested.
  2. Transient – This setting is mainly aimed at SVG transformer, and is similar to the ‘None’ settings but eliminates a potential second request. Again, the plus side of this, as with the ‘None’ setting, is that the data is always fresh.
  3. Session – This is the fastest setting, since the module datais cached for the duration of the user’s session, i.e. while they are logged onto the system. The obvious problem with this is that the data may become stale.

Module Specifications

Core Pass-Through modules

Below is a list of all the current core pass-through modules and their requirements.

PROACTIS Menu

  • Name – PROACTIS Menu
  • Description – Provides access to the PROACTIS top-level menu system.
  • Type –[Pass-through]
  • Width –[Small]
  • Height –160
  • URL–Custom Path/Home/Dashboard/PROACTISMenu/Home.asp
  • Notes
  1. The height of the module should be adjusted to best suite the users who are using it. At 160, the module height should accommodate most, if not all, of the options without the need for scroll bars. Users should be encouraged to adjust the module height to their specific conditions, eliminating wasted space and the scroll bars.
  2. The Custom Path of theURL property should be replaced with the customers specific setting, and can either be a virtual path or an absolute path, viz:

/PROACTIS/Home/Dashboard/PROACTISMenu/Home.asp

or

/Home/Dashboard/PROACTISMenu/Home.asp

Quick Links Menu

  • Name – Quick Links Menu
  • Description – Provides shortcut access to some regular PROACTIS tasks.
  • Type –[Pass-through]
  • Width –[Small]
  • Height –240
  • URL–Custom Path/Home/Dashboard/QuickLinksMenu/Home.asp
  • Notes
  1. The height of the module should be adjusted to best suite the users who are using it. At 240, the module height should accommodate most, if not all, of the options without the need for scroll bars. Users should be encouraged to adjust the module height to their specific conditions, eliminating wasted space and the scroll bars.
  2. The Custom Path of theURL property should be replaced with the customers specific setting, and can either be a virtual path or an absolute path, viz:

/PROACTIS/Home/Dashboard/QuickLinksMenu/Home.asp

or

/Home/Dashboard/QuickLinksMenu/Home.asp

Core Data Collector Modules

Below is a list of the core PROACTIS data collector modules. These are not intended to be used with data collectors other than those specified.

Summary Message Menu

  • Name – Summary Message Menu
  • Description – The PROACTIS summary messages menu is a shortcut menu whose items only appear when the user’s attention is required to complete a specific task. When a message appears, the user may click on it to be taken the appropriate PROACTIS page.
  • ID –transformer-proactis-summary-messages.xslt
  • Width –[Small]
  • Data Cache Types – [None | Session]
  • Property Cache Types – [None | Session]
  • Data format – Only intended to operate with the grsDashboardDC.SummaryMessages data collector.

Expected Deliveries Grid

  • Name – Expected Deliveries Grid
  • Description – The PROACTIS expected deliveries grid makes use of the expected deliveries grid to offer the user the ability to view items that require receipting. The user may view the original document in a popup window and receipt it by clicking aspects of the grid.
  • ID – transformer-HTML-grid-expected-deliveries.xslt
  • Width – [Large | Medium]
  • Data Cache Types – [None | Session]
  • Property Cache Types – [None | Session]
  • Data format – Only intended to operate with the grsDashboardDC.MyExpectedDeliveries data collector.

Data TotalRows="2">

ColumnHeadings

ColumnHeading Number="1">Type</ColumnHeading

ColumnHeading Number="2">Date Due</ColumnHeading

ColumnHeading Number="3">Item</ColumnHeading

ColumnHeading Number="4">Quantity</ColumnHeading

ColumnHeading Number="5">UOM</ColumnHeading

</ColumnHeadings

Rows

Row Number="1" Type="Purchase Order" CanReciept="Yes" GUID="{...}">

Column Number="1" Type="Standard">Ord</Column

Column Number="2" Type="Date" Format="d MMM yyyy">2003-06-21T15:33:22</Column

Column Number="3" Type="Standard">Sellotape</Column

Column Number="4" Type="Number">65</Column

Column Number="5" Type="Standard">Roll</Column

</Row

Row Number="1" Type="Purchase Order" CanReciept="Yes" GUID="{...}">

Column Number="1" Type="Standard">Ord</Column

Column Number="2" Type="Date">2003-06-21T15:33:22</Column

Column Number="3" Type="Standard">Sellotape</Column

Column Number="4" Type="Number">65</Column

Column Number="5" Type="Standard">Roll</Column

</Row

</Rows

</Data

  • Transformer properties:
  • Date Format(Textbox) [d MMM yyyy]Optional – This property, again, is a format pattern, but for date/times. The pattern contains a format string, according to Win32 API GetDateFormat functions, i.e. the same as that used in VB. Again, if the Format attribute exists for the column/row value, it will override this value.
  • Colour Scheme (Dropdown) [Default | Beige] Mandatory– Sets the grid colour scheme.

General Data Collector Module Transformers

Below is a list of all of the current general transformers and their requirements. These transformers may be used with any data collector that returns the data in the correct format, i.e. either PROACTIS built data collectors or external 3rd party build data collectors.