BPM
Software Release 3.1 November 2014
Important Information
SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY (OR PROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THE EMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANY OTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE.
USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND CONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED SOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THE CLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOAD OR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE) OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USER LICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THE
SOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS, AND YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TO BE BOUND BY THE SAME.
This document contains confidential information that is subject to U.S. and international copyright laws and treaties. No part of this document may be reproduced in any form without the written
authorization of TIBCO Software Inc.
TIBCO, Two-Second Advantage, TIBCO Spotfire, TIBCO Enterprise Runtime for R, TIBCO Spotfire Server, TIBCO Spotfire Web Player, TIBCO Spotfire Statistics Services, S-PLUS, TIBCO Enterprise Message Service, TIBCO Hawk, and TIBCO Spotfire S+ are either registered trademarks or trademarks of TIBCO Software Inc. in the United States and/or other countries.
All other product and company names and marks mentioned in this document are the property of their respective owners and are mentioned for identification purposes only.
THIS SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOT ALL OPERATING SYSTEM PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASED AT THE SAME TIME. SEE THE README FILE FOR THE AVAILABILITY OF THIS SOFTWARE VERSION ON A SPECIFIC OPERATING SYSTEM PLATFORM.
THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE CHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCO SOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S) AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME.
THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY OR INDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE,
INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES. Copyright © 2005-2014 TIBCO Software Inc. ALL RIGHTS RESERVED.
Contents
TIBCO Documentation and Support Services. . . .4
IMPORTANT: Restricted Use Case Licensing for Bundled TIBCO JasperReports for ActiveMatrix BPM. . .5
Using TIBCO JasperReports for ActiveMatrix BPM to Visualize TIBCO ActiveMatrix BPM Data. . . .6
Example Files Reference. . . .7
Setting up the Example Dashboards. . . .10
Software Requirements to Use the Example Dashboards. . . .10
Deploying and Setting up the Example BPM Claims Application. . . .11
Deploying the Claims Application DAAs to the BPM Runtime. . . .11
Mapping Users from the EasyAs LDAP Source to the Claims Organization Model. . . .11
Generating Sample Data for the BPM Claims Application. . . .12
Importing Jaspersoft Resources Used by the Example Dashboards to JasperReports Server. . . .13
Configuring the Example JDBC Datasources. . . .14
Adding the Example Dashboard Gadgets to Openspace. . . .15
Changing the Default URL Used by the Openspace Gadget Dashboards. . . .16
The Process Monitor Dashboard. . . .18
Drilling Down and Raising the Priority of a Work Item. . . .21
The Claim Breakdown Dashboard. . . .22
Drilling Down to Find the Current Status of a Particular Claim. . . .24
Process Monitor and Claim Breakdown Dashboard Design. . . .26
Openspace Gadget Dashboard Architecture. . . .29
Standalone Dashboard Architecture. . . 31
Calling ActiveMatrix BPM Web Services From the Example HTML Dashboards. . . .33
Authenticating Calls to BPM Web Services. . . .33
Filtering the Data Shown in a Report Based on the Logged in User's Team Membership. . . .33
Raising the Priority of a Work Item. . . .36
Displaying Process Status (Statistical Data) for a Particular Claim (Case Data). . . 40
Viewing and Modifying Reports Used by Process Monitor and Claim Breakdown Dashboards. . . .43
Process Monitor Dashboard Reports. . . .43
Claim Breakdown Dashboard Reports. . . .44
The Process Performance Dashboard. . . . 45
Viewing the Process Performance Dashboard. . . .46
Process Performance Dashboard Architecture. . . .47
Creating Jaspersoft Domains from BPM Case Data Models. . . .48
TIBCO Documentation and Support Services
All TIBCO documentation is available on the TIBCO Documentation site, which can be found here:
https://docs.tibco.com
Product-Specific Documentation
Documentation for TIBCO products is not bundled with the software. Instead, it is available on the TIBCO Documentation site. To directly access documentation for this product, double-click the following file:
TIBCO_HOME/release_notes/TIB_amx-bpm_version_docinfo.html
How to Contact TIBCO Support
For comments or problems with this manual or the software it addresses, contact TIBCO Support as follows:
● For an overview of TIBCO Support, and information about getting started with TIBCO Support,
visit this site:
http://www.tibco.com/services/support
● If you already have a valid maintenance or support contract, visit this site:
https://support.tibco.com
Entry to this site requires a user name and password. If you do not have a user name, you can request one.
How to Join TIBCOmmunity
TIBCOmmunity is an online destination for TIBCO customers, partners, and resident experts. It is a place to share and access the collective experience of the TIBCO community. TIBCOmmunity offers forums, blogs, and access to a variety of resources. To register, go to:
IMPORTANT: Restricted Use Case Licensing for Bundled
TIBCO JasperReports for ActiveMatrix BPM
The TIBCO JasperReports®
for ActiveMatrix®
BPM software included in the bill-of-materials for TIBCO ActiveMatrix BPM must only be used in conjunction with TIBCO ActiveMatrix BPM. This means that the licensed use cases are restricted.
The following are the only licensed use cases:
● TIBCO JasperReports for ActiveMatrix BPM can be used to analyze usage and performance data
that was generated by TIBCO ActiveMatrix BPM whether that data resides within a TIBCO ActiveMatrix BPM database or an external database.
● TIBCO JasperReports for ActiveMatrix BPM can also be used to analyze business data that is
associated with a customer application built using TIBCO ActiveMatrix BPM whether that data resides within a TIBCO ActiveMatrix BPM database or an external database.
Example Use Case 1
The TIBCO JasperReports for ActiveMatrix BPM software bundled with TIBCO ActiveMatrix BPM can be used to analyze TIBCO ActiveMatrix BPM's operational metadata such as workloads, high priority vs. low priority tasks, or whether Service Level Agreements (SLAs) are being met.
Example Use Case 2
TIBCO ActiveMatrix BPM is being used to build a customer application for insurance claims. As part of this application:
● TIBCO ActiveMatrix BPM is creating, reading, updating and deleting claim data in a Claim
database. This data can be analyzed using TIBCO JasperReports for ActiveMatrix BPM.
● TIBCO ActiveMatrix BPM is reading Policy data from a Policy database:
— The data read in and used as part of the Claims application can be analyzed by TIBCO
JasperReports for ActiveMatrix BPM.
— The rest of the data in the Policy database cannot be analyzed by TIBCO JasperReports for
ActiveMatrix BPM. Example Use Case 3
TIBCO ActiveMatrix BPM is being used to build a customer application to manage Telco orders. As part of this application:
● TIBCO ActiveMatrix BPM is creating, reading, updating and deleting claim data in an Order
database. This data can be analyzed using TIBCO JasperReports for ActiveMatrix BPM.
● TIBCO ActiveMatrix BPM is being used to read product data from a product catalog database: — The product catalog data read in and used as part of the Order Management application can be
analyzed by TIBCO JasperReports for ActiveMatrix BPM.
— The rest of the data in the product catalog database cannot be analyzed by TIBCO JasperReports
for ActiveMatrix BPM.
— In order to provide context to the TIBCO JasperReports for ActiveMatrix BPM dashboard, some
additional product data may be required, such as product codes that were inserted in the database by TIBCO ActiveMatrix BusinessWorks (not TIBCO ActiveMatrix BPM) as part of this same TIBCO-based telco order application. Since this data forms part of the application, it can be included in the dataset analyzed by TIBCO JasperReports for ActiveMatrix BPM.
Using TIBCO JasperReports for ActiveMatrix BPM to
Visualize TIBCO ActiveMatrix BPM Data
TIBCO ActiveMatrix BPM provides three example dashboards that demonstrate different techniques that you can use with TIBCO JasperReports for ActiveMatrix BPM to visualize and manipulate ActiveMatrix BPM data.
Example Dashboards and ActiveMatrix BPM Data
The example dashboards demonstrate how you can access the following types of ActiveMatrix BPM data:
● BPM statistical data: data about processes, work items and user activity, from the central event
database tables in the ActiveMatrix BPM database.
● case data: data about a particular case data model, or a set of case data models, from the
ActiveMatrix BPM case data store.
The Process Monitor and Process performance dashboards demonstrate how you can access BPM statistical data.
The Claim Breakdown dashboard provides an example of how you can access case data.
The standalone version of the Claim Breakdown dashboard accesses just case data. The Openspace gadget version accesses both case data and BPM statistical data.
HTML Dashboards - the Process Monitor and Claim Breakdown Dashboards
The Process Monitor dashboard and Claim Breakdown dashboard are HTML/JS applications that:
● use the Visualize.js JavaScript API framework to embed JasperReports Server reports in dashboard
HTML pages.
● can be used either from Openspace (deployed as Openspace gadgets), directly from a browser URL
(deployed as standalone web applications) or from an HTTP server.
● use reports, developed in TIBCO Jaspersoft® Studio for ActiveMatrix® BPM, that use direct SQL queries to extract data from the ActiveMatrix BPM database.
The Openspace gadget versions of the Process Monitor and Claim Breakdown dashboards also demonstrate how you can use ActiveMatrix BPM web services in conjunction with JasperReports Server reports.
JasperReports Server Dashboards - the Process Performance Dashboard
JasperReports Server domains and Ad Hoc reports offer an elegant and powerful reporting tool that allows users to quickly create reports using business terms and language, hiding the complexity of the underlying data relationships.
See the TIBCO JasperReports for ActiveMatrix BPM documentation for more information about domains, Ad Hoc reports and dashboards, what you can do with them and how you can create or modify them.
The Process Performance dashboard is a JasperReports Server dashboard that:
● demonstrates the use of JasperReports Server domains and Ad Hoc reports, in this case to access
BPM statistical data.
● can be used from JasperReports Server (either directly, or embedded in a web page).
● uses Ad Hoc Views/Reports, that use the AMX-BPM Statistics Domain to extract data from the
JasperReports Server Domains
The AMX-BPM Statistics Domain provides a business view of the data available in the following central event database tables in the ActiveMatrix BPM database.
See TIBCO ActiveMatrix BPM Event Collector Schema Reference for more detailed information about these tables.
Table Stores...
ec_pe_activity information about activities that have been registered by Event Collector. ec_pe_status information about the current status of process instances.
ec_proc_template information about process templates.
ec_stats hourly measures about the usage of process templates. ec_user_activity information about user activity.
ec_wi_status information about the current status of work items.
A JasperReports Server Claims domain is also provided as an example of how you can create a domain from an ActiveMatrix BPM case data model. No dashboard is provided for this domain.
Dashboard Artifacts
For each of the example dashboards, ActiveMatrix BPM provides:
● runtime artifacts, for the BPM runtime and JasperReports Server, which you can quickly deploy so
that you can see the dashboards in action.
● design time artifacts, for TIBCO Business Studio, Jaspersoft Studio and JasperReports Server, so that
you can examine the dashboards and reports to see how they work, or use them as the basis for your own dashboard development.
An example BPM Claims application provides a business object model, organization model and processes that you can use to generate sample data for use with the example dashboards and reports. See Example Files Reference for a complete list of the provided artifacts.
Example Files Reference
All the example files used to build and run the example dashboards are supplied as part of the TIBCO ActiveMatrix BPM installation.
In the following table:
● All paths are relative to the root location of the installed example files, which is:
TIBCO_HOME\bpm\n.n\samples\jaspersoft where:
● TIBCO_HOME is the full pathname of the directory where the ActiveMatrix BPM software is
installed.
● n.n is the version number of the ActiveMatrix BPM software - for example, 3.1.
● dbType is the identifier for the type of database that this file is for, either mssql (SQL Server), oracle (oracle), db2 (DB2) or postgres (PostgreSQL).
Path File Description \Installation Artifacts \DAAs\Claims ● com.example.companyorg anizationmodel.daa ● com.example.claimmodel .daa ● com.example.claimodelp rocess.daa
DAAs of the organization model, business object model and process projects used by the example Claims application. See
Deploying and Setting up the Example BPM Claim
Application.
\Installation Artifacts OpenspaceLDAPImport.txt XML data file that can be imported to the Organization Browser to create an EasyAs LDAP Container and set up the resource mappings needed by the example dashboards. See
Mapping Users from the EasyAs LDAP Source to the Claims Organization Model.
\Installation Artifacts \Jaspersoft Import
jaspersoft-import-dbType.zip
JasperReports Server resources needed by the example
dashboards. See Importing Jaspersoft Resources Used by the Example Dashboards to
JasperReports Server.
\AMXBPM Statistics\Domain schema_dbType.xml JasperReports Server domain design file for the AMX-BPM Statistics domain.
See the TIBCO JasperReports Server for ActiveMatrix BPM documentation for more information about domain design files.
\AMXBPM Statistics \Reports
statsreportarchive_dbType
.zip
Jaspersoft Studio project containing the reports used by the Process Monitor dashboard. See Viewing and Modifying Reports Used by Process Monitor and Claim Breakdown Dashboards.
\Claims Model Demo\Domain schema_dbType.xml JasperReports Server domain design file for the Claim domain. See the TIBCO JasperReports Server for ActiveMatrix BPM documentation for more information about domain design files.
Path File Description
\Claims Model Demo \Reports
claimreportsarchive_dbTyp e.zip
Jaspersoft Studio project containing the reports used by the Claim Breakdown
dashboard. See Viewing and Modifying Reports Used by Process Monitor and Claim Breakdown Dashboards.
\Claims Model Demo\Studio Projects
claimmodelstudio.zip TIBCO Business Studio project used to generate the Claim demonstration.
\Misc\LDAP Configuration applicationContext-externalAuth-LDAP.xml
The XML used to configure the LDAP connection with the EasyAs LDAP container provided with Active Matrix BPM.
\Misc\Openspace Gadget Project
JasperShowCase.zip TIBCO Business Studio project used to create the Process Monitor and Claim Breakdown dashboards.
Setting up the Example Dashboards
ActiveMatrix BPM provides a number of different example dashboards that illustrate different ways of using Jaspersoft domains and reports to visualize ActiveMatrix BPM statistical and/or case data. A number of steps are required to set up Jaspersoft Server and ActiveMatrix BPM to be able to use these dashboards.
Software Requirements to Use the Example Dashboards
Software Version Notes
TIBCO ActiveMatrix BPM 3.1 orlater TIBCO JasperReports® Server for ActiveMatrix® BPM
5.6.1 The JasperReports Server must have an appropriate JDBC driver installed for the database used to host the ActiveMatrix BPM database and the Business Data Services (BDS) case data store.
Openspace's default configuration assumes that the JasperReports Server is hosted locally and using port 8081. If this is not the case, you will need to update the gadget configuration to point to the JasperReports server to be able to use the example Openspace dashboard gadgets.
TIBCO Business Studio - BPM Edition
3.9 or
later (Optional) Only required if you want to examine or modifyeither:
● the example BPM Claims application that provides the data
used in the example dashboards.
● the GWT web application project that is used to create the
Process Monitor and Claim Breakdown dashboards. To be able to open a GWT web application project you must select the Openspace Gadget
Development installation profile when installing TIBCO Business Studio. The Openspace Gadget Development installation profile is available when you select Customize Installation during
installation. TIBCO Jaspersoft®
Studio for
ActiveMatrix® BPM
5.6.1 (Optional) Only required if you want to examine or modify the Jaspersoft reports used in the Process Monitor or Claims Breakdown dashboards.
Internet Explorer Security Settings
If you are using Microsoft Internet Explorer to view the example dashboards, the following Internet Explorer security settings must be enabled:
● Miscellaneous > Allow META REFRESH ● Scripting > ActiveScripting
See the Internet Explorer documentation for more information about how to enable these settings. (For example, select Tools > Internet Options > Custom level).
If these security settings are disabled the Process Monitor and Claim Breakdown dashboards will not load.
Deploying and Setting up the Example BPM Claims Application
The example BPM Claims application provides a business object model, organization model and processes that you can use to generate sample data for use with the example dashboards and Jaspersoft reports.
The TIBCO Business Studio projects for these artifacts are provided in the TIBCO_HOME\bpm\n.n
\samples\Jaspersoft\Claims Model Demo\Studio Projects\claimmodelstudio.zip file, where:
● TIBCO_HOME is the full path of the directory in which ActiveMatrix BPM is installed.
● n.n is the ActiveMatrix BPM version number.
You may want to look at these TIBCO Business Studio projects to understand the example application, but you do not need them to be able to deploy and set it up.
Deploying the Claims Application DAAs to the BPM Runtime
DAAs of the business object model, organization model and process projects used by the Claims application are provided in the TIBCO_HOME\bpm\n.n\samples\Jaspersoft\Installation Artifacts\DAAs\Claims folder. You can deploy these DAAs directly to the BPM runtime.
Procedure
1. Log in to TIBCO Administrator.
2. From the Applications tab, use the New Application wizard to create and deploy new applications from the following DAAs, in the order shown:
a) com.example.companyorganizationmodel.daa b) com.example.claimmodel.daa
c) com.example.claimmodelprocess.daa
See also "Creating an Application" in TIBCO ActiveMatrix BPM SOA Administration. Result
The com.example.companyorganizationmodel, com.example.claimmodel-2 and com.example.claimmodelprocess applications should all be Running and In Sync.
Mapping Users from the EasyAs LDAP Source to the Claims Organization Model
The example Claims application uses resources from the EasyAs LDAP source (the sample LDAP server that is supplied with the BPM runtime). Before you can generate sample data, you need to map specific resources from this LDAP server to the runtime organization model.The organization model provides a simplistic model of EasyAs Insurance's claims processing organization, comprising a front desk team and a back desk team, each with a manager. The following resources from the EasyAs LDAP Container must be mapped to the specified organization model groups.
Group Resources
Team Managers Leon Court, Richard Cresswell
FrontDeskGroup Richard Cresswell, John Eustace, Liam
Lawrence, Tony Pulis
BackDeskGroup Leon Court, Clint Hill, Jon Parkin, Steve
Simonsen
Additionally, the two team managers must have the following values assigned to the TeamName resource attribute. This value is used within the Process Monitor dashboard to determine which team the manager is responsible for, and then to tailor the displayed data accordingly.
Resource Value of TeamName resource attribute
Leon Court BackDeskGroup
Richard Cresswell FrontDeskGroup
Prerequisites
An XML data file is provided that you can import to create the EasyAs LDAP Container and set up the required mappings. If the EasyAs LDAP Container already exists, you cannot use this XML file. Instead, you will need to manually map the resources and edit the resource attributes as shown above. In this case, see the Organization Browser User's Guide for more information.
Procedure
1. Log in to TIBCO Openspace as tibco-admin.
2. Open the Organization Browser, then select LDAP Container. 3. Click Have a LDAP you wish to import?
The Export Resources and Container Definitions dialog is displayed.
4. Copy the contents of the TIBCO_HOME\bpm\n.n\samples\Jaspersoft\Installation Artifacts \OpenspaceLDAPImport.txt file into the dialog, then click Import.
Result
The EasyAs LDAP Container and the required mappings are created.
Generating Sample Data for the BPM Claims Application
You can now run the CreateClaimsAutomatic business service to generate a number of claims with a selection of randomized data.
The CreateClaimsManual business service allows a user to enter full details of a new claim (claimants, notifiers, witness details, vehicle details and so on), along with a simulated claim state (for example, authorization, notification or settlement).
The service invokes the ClaimsProcess business process which simulates an actual claims processing process. The process creates an instance of a Claim object in the case data store, using the data passed down from the business service. It then either, according to the simulated claim state, generates a dummy user activity, or terminates.
The CreateClaimsAutomatic business service allows you to quickly generate simulated data for multiple invocations of the CreateClaimsManual business service, without having to manually run
that process, enter data and process subsequent work items. The CreateClaimsAutomatic business service invokes a GenerateClaimdata business process, which generates randomized data for a claim and claim state, for a specified number of open and closed process instances, which it passes to the ClaimsProcess business process.
Procedure
1. Log in to TIBCO Openspace as the Front Desk Group team leader, Richard Cresswell. (The password is tibco123.)
2. On the Business Services tab, in the All Categories section, expand ClaimModelProcess and select Claims.
3. Select CreateClaimsAutomatic and click . The Get Number Required form is displayed. 4. In the openToCreate field, enter the number of open process instances that you want to create. 5. In the closeToCreate field, enter the number of closed process instances that you want to create. 6. Click Submit.
7. On the Process Views tab, select the ClaimsProcess template, then refresh the view until you can see that the requested number of process instances have been created.
All the process instances are initially Offered.
8. On the Work Views tab, randomly allocate a selection of work items to members of the Front Desk Group, to provide further variety in the data:
a) Select one or more work items then click . The Allocate Work Item to Offer Set dialog is displayed.
b) Select the user to whom you want to allocate these work items, then click OK.
9. Log out, then log in again as the BackDeskGroup team leader, Leon Court. (The password is tibco123.)
10. On the Work Views tab, randomly allocate a selection of work items to members of the Back Desk Group.
Result
The ActiveMatrix BPM database now contains data about the generated process instances of the ClaimsProcess.
The BDS case store now contains data abut the claim objects associated with each process instance. You can now use the Process Monitor, Claim Breakdown and Process Performance dashboards to easily access and visualize this data.
Importing Jaspersoft Resources Used by the Example Dashboards to
JasperReports Server
ActiveMatrix BPM includes previously created and exported Jaspersoft resources needed by the example dashboards, which you must import to JasperReports Server.
Procedure
1. Log in to JasperReports Server as the superuser user.
3. Click Browse and choose the TIBCO_HOME\bpm\n.n\samples\Jaspersoft\Installation Artifacts\Jaspersoft Import\jaspersoft-import_dbType.zip file, where:
● TIBCO_HOME is the full pathname of the directory where the ActiveMatrix BPM software is
installed.
● n.n is the version number of the ActiveMatrix BPM software - for example, 3.1.
● dbType is the identifier for the type of database used by ActiveMatrix BPM, either mssql (SQL Server), oracle (oracle), db2 (DB2) or postgres (PostgreSQL).
4. Leave the remaining Import options unchanged and click Import.
The server uploads the jaspersoft-import_dbType.zip file and imports its contents into the repository. An Import succeeded message is displayed.
5. Select View > Repository and, in the Folders panel, expand the tree to Organizations > Organization > AMX-BPM.
Result
The Organizations > Organization > AMX-BPM folder contains the following resources.
Resource Type Description
AMX-BPM Datasource JDBC
datasource Used to connect to the ActiveMatrix BPM database toaccess statistical data (in the example, about the Claims application).
AMX-BPM Global
Data Datasource JDBCdatasource Used to connect to the BDS case data store to access casedata (in the example, about the different Claim objects). Claims folder Contains the domain and reports used by the Claim
Breakdown dashboard.
Statistics folder Contains the domain and reports used by the Process Monitor dashboard.
Statistics\Ad Hoc folder Contains the Process Performance dashboard and the Ad Hoc reports and views that it uses.
The Process Performance dashboard is a Jaspersoft dashboard, created in JasperReports Server. The Claim Breakdown and Process Monitor dashboards are HTML dashboards, created as web application projects in TIBCO Business Studio.
Configuring the Example JDBC Datasources
You must configure the example JDBC datasources imported to the JasperReports Server to connect to the correct ActiveMatrix BPM database and BDS case data store, to access the data to be displayed in the dashboards.
Prerequisites
A JDBC driver for the appropriate database type(s) must be available in the JasperReports server's classpath. See TIBCO ActiveMatrix BPM Installation and Configuration for details of the JDBC drivers needed to connect to the different databases supported by ActiveMatrix BPM. See the JasperReports Server documentation for information about how to upload and make available the required JDBC driver.
Procedure
1. Log into the Jaspersoft server as a system administrator (by default, the jasperadmin user).
2. Select View Repository and, in the Folders panel, expand the tree to Organizations > Organization > AMX-BPM.
3. In the Repository panel, select AMX-BPM Datasource and click Edit.
The details of the JDBC data source that will be used to connect to the ActiveMatrix BPM database are displayed. Default ActiveMatrix BPM installation values are used, which you should edit as required.
4. Select the correct JDBC Driver for the ActiveMatrix BPM database.
5. Enter the Host IP address, Port number, and database details used by the ActiveMatrix BPM database. (These fields are used to construct the connection URL.) The database detail fields are:
● Database name, for SQL Server or PostrgeSQL. ● Service, for Oracle
● Database, Driver Type and Schema Name, for DB2.
6. If you are using the IBM DB2 JDBC driver, edit the connection URL to remove
the ;currentSchema=schemaname parameter from the connection string. (If you do not do this the
dashboard reports will not show any data, because the underlying queries assume use of a default schema name.)
You do not need to do this if you are using the TIBCO DB2 JDBC driver.
7. Enter the User Name and Password of the database server user account that ActiveMatrix BPM uses to connect to the ActiveMatrix BPM database.
8. Click Test Connection.
A Connection Passed message indicates that connection to the ActiveMatrix BPM database has succeeded.
9. Click Save.
10. In the Repository panel, select AMX-BPM Global Data Datasource and click Edit.
The details of the JDBC data source that will be used to connect to the BDS case data store are displayed (with default ActiveMatrix BPM installation values).
11. Repeat steps 4 to 9 to validate the connection to the BDS case data store. Result
You can now use the Process Performance dashboard to view reports about the Claims process.
Adding the Example Dashboard Gadgets to Openspace
The Process Monitor and Claim Breakdown dashboards can (in the context of the example) be used by the Front Desk and Back Desk team managers. You must add the gadgets for these dashboards to those users' Openspace personas.
See the "Adding Gadgets to a Tab" topic in the TIBCO Openspace User's Guide for detailed information about how to add gadgets to Openspace tabs.
Procedure
1. Log in as the Front Desk group manager, Richard Cresswell. 2. Create a new tab called JasperReports.
3. Add the Process Monitor and Claims Breakdown dashboard gadgets to the JasperReports tab. The default gadget configuration assumes that JasperReports Server is hosted locally and using port 8081. If this is not the case, update the gadget configuration to point to
JasperReports Server.
4. Repeat steps 1 to 3 for the Back Desk group manager, Leon Court. Result
Openspace users Richard Cresswell and Leon Court can now use the Process Monitor and Claim Breakdown dashboards.
Changing the Default URL Used by the Openspace Gadget Dashboards
If JasperReports Server is not running on the expected default host and/or port, you must update the URL used by the Process Monitor and Claim Breakdown gadgets to point to JasperReports Server. By default, Openspace expects JasperReports Server to be running on the same machine as
ActiveMatrix BPM, on port 8081. The Process Monitor and Claim Breakdown gadgets use the following URLs to access JasperReports Server.
Dashboard
gadget Default URL Process
Monitor jaspershowcase/jaspershowcase.html Claim
Breakdown jaspershowcase/claimdashboard.html
If JasperReports Server is hosted remotely and/or is using a different port, you must update these default URLs by adding a path parameter in the following format:
?jasperserver=http://host:port/jasperserver-pro where:
● host is the hostname of the machine that is hosting JasperReports Server.
● port is the port number being used by JasperReports Server.
For example, if JasperReports Server is running on port 8083 on the machine devServer1, you should change the Home URL for the gadgets to:
Dashboard
gadget Required URL Process
Monitor jaspershowcase/jaspershowcase.html?jasperserver=http://devServer1:8083/jasperserver-pro Claim
Breakdown jaspershowcase/claimdashboard.html?jasperserver=http://devServer1:8083/jasperserver-pro Procedure
1. Click Edit gadget properties ( ) on the gadget.
The Process Monitor Dashboard
The Process Monitor dashboard demonstrates some Jaspersoft reports that can be generated from the central event database tables in the ActiveMatrix BPM database. The reports provide statistical information about processes, work items and user activity. The dashboard is an HTML/JS application.
The following table describes the reports used in the Process Monitor dashboard.
Report Description
Key Performance
Indicators Displays statistical information for the outstanding processes on your BPMsystem:
● the percentage of processes that have been escalated ● the percentage of processes that are over 4 hours old ● the number of processes that are over 4 days old
Longest Processes
vs Historic Data This report displays:
● how the average process completion time has improved (or degenerated)
over the time period. (All data is shown in minutes.)
● how the process is behaving currently.
The colored bar illustrates how your process has behaved historically. It calculates the average period of time and maximum period of time that your processes took to complete for a given time period. You can select the time period from the Use data from area of the report. The triangular markers show how the longest process currently on your system compares to the historic data.
Report Description Outstanding
Processes Displays all the outstanding processes on the system and how manyoutstanding process instances there are for each process. If you select an individual process, the dashboard redraws all the other reports to show the data for the selected process and updates the dashboard title accordingly. Outstanding Tasks This report shows different information depending on which version of the
dashboard you are using. Openspace gadget
The report displays the outstanding tasks for all the outstanding processes on the system. If you have selected a process in the Outstanding Processes report, it only displays the outstanding tasks for the selected process.
It shows how the outstanding tasks are distributed between My Team (depending on whether you are logged in as Leon Court or Richard Cresswell), Unallocated (the outstanding tasks that are not allocated to an organizational entity) or Other (the outstanding tasks that are allocated to other teams in the organization).
Standalone
The report displays the outstanding tasks for all the outstanding processes on the system. If you have selected a process in the Outstanding Processes report, it only displays the outstanding tasks for the selected process. It shows how the outstanding tasks are distributed between the different work item states. Work Allocation This report shows different information depending on which version of the
dashboard you are using. Openspace gadget
Displays how the outstanding tasks that are allocated to the team are distributed between individual team members. By default, it shows all the outstanding tasks but if you select a task from the Outstanding Tasks report, the data is filtered for the selected outstanding task (and the dashboard title updated accordingly).
Standalone
This reports shows how the outstanding tasks are distributed between the different work item states. If you selected a task in the Outstanding Tasks report, it shows the work distribution for the selected task and updates the dashboard title accordingly.
Report Description
Work The information displayed in this report depends on what you have selected in the Work Allocation report. The information shown is different depending on which version of the dashboard you are using.
Openspace gadget
If you selected a team member in the Work Allocation report, information displays about the work activity for that team member. The type of
information shown is the age of the activity, the date and time there was last activity on that task and its priority. You can also raise the priority of the activity.
Standalone
If you selected Allocated, the report displays information about the activities that are allocated. The type of information shown is the age of the activity, the date and time there was last activity on that task and its priority.
You can select Clear Filter to clear your filters at any time.
Two versions of the Process Monitor dashboard are provided - Openspace gadget and standalone. Openspace Gadget Version
You can access this dashboard when you are logged in to Openspace as one of the team leaders, Richard Cresswell or Leon Court.
If you try to view this dashboard when logged in as any other user - for example, tibco-admin - you will see a This user is not a manger of a team, cannot display dashboard error. To give the user access to this dashboard you must assign a value of FrontDeskGroup or BackDeskGroup to their TeamName resource attribute. See Mapping Users from the EasyAs LDAP Source to the Claims Organization Model for more information.
The dashboard demonstrates how you can use ActiveMatrix BPM web services to:
● filter the displayed data based on the logged in user's team membership.
● drill down through the reports to view the outstanding tasks for an individual team member and
increase a work item's priority. Standalone Version
You can access this dashboard in any web browser, using the URL:
http://host:port/openspace/jaspershowcase/jaspershowcase_sa.html where:
● host is the DNS name of the server hosting the BPM runtime.
● port is the port being used by Openspace. The default value is 8080.
If JasperReports Server is hosted remotely and/or is using a different port, you must add a path parameter to the URL, in the following format:
where:
● host is the hostname of the machine that is hosting JasperReports Server.
● port is the port number being used by JasperReports Server.
Using the standalone version of the dashboard, you cannot filter the data based on the logged in user's team membership or increase a work item's priority.
Drilling Down and Raising the Priority of a Work Item
Prerequisites
You must use the Openspace gadget version of the Process Monitor dashboard. This functionality is not available from the standalone version.
Procedure
1. Login to Openspace as the Front Desk team leader, Richard Cresswell (password "tibco123"). 2. Open the Process Monitor dashboard on the JasperReports tab.
The data displayed is filtered for the Front Desk team.
3. To drill down and see what work is outstanding for the Claims process, click the Claim process on the Outstanding Processes report.
The other reports are redrawn to show just the data for the Claims process.
4. On the Outstanding Tasks report, click a bar that shows tasks allocated to My Team.
The Work Allocation report is redrawn to show how these tasks are allocated to the team members. 5. Click one of the team members on the Work Allocation report.
The Offered Work report is redrawn to show the details of the tasks allocated to this user. The report's title is also updated to show the user's name.
6. To raise the priority of one of this user's tasks, click the arrow in the Raise Priority column on the
username Work report.
A Priority has been raised message is displayed.
Result
The dashboard sends a request to the BPM runtime to increase the work item's priority by 10. You will not see the new Priority value until:
● the BPM runtime has processed the request and audited the event to the ActiveMatrix BPM central
event database tables, and
● you force the dashboard to redraw the username Work report. You can do this by clicking another
user on the Work Allocation report, then clicking the original user again. (If no other users have work allocated for the selected task, you will need to first click another task on the Outstanding Tasks report, then click the original task.)
See Raising the Priority of a Work Item for more information about how this functionality is implemented by the Process Monitor dashboard.
The Claim Breakdown Dashboard
The Claim Breakdown dashboard demonstrates some reports that can be generated from the case data for a case data model in the ActiveMatrix BPM case data store. The reports provide business data from the case data model used by the example Claims application. The dashboard is an HTML/JS
application.
The Claim Breakdown dashboard provides a number of controls that you can use to tailor and filter the dashboard data.
Control Description
Details Displays the Claim Hot list for the currently displayed data (in a separate window). Clear
Control Description Refresh
Click to manually refresh each report on the dashboard. Use the drop-down menu to select an Auto-Refresh option:
● Auto-Refresh All - automatically refresh all reports every 15 seconds.
● Auto-Refresh Exposure - automatically refresh just the Claim Exposure report every
15 seconds.
● Auto-Refresh None - do not automatically refresh any reports. This is the default
option.
Claims Select whether you want to show data for All claims or only for Open claims. The default value is Open.
The following table describes the reports used in the Claim Breakdown dashboard.
Report Description
Claim Exposure Shows the total value of the claims at the indicated timestamp. Value Shows the number of claims broken down by value band.
If you click a specific value band, the dashboard redraws all the other reports to show the data for the selected value band, and updates the dashboard title accordingly.
Claim By State Shows the number of claims broken down by state.
If you click a specific state, the dashboard redraws all the other reports to show the data for the selected state, and updates the dashboard title accordingly. Age of Comp &
TP Claims Shows the number of claims broken down by age band of the driver.If you click a specific age band, the dashboard redraws all the other reports to show the data for the selected age band, and updates the dashboard title accordingly.
Monthly
Breakdown Shows the number of claims in the current claims selection, broken down bymonth and by type. Average Duration
to finalise Claims Shows the average number of days taken to close claims in the current claimsselection, broken down by claim type. The following table describes the additional reports provided in the Claim Hot list.
Report Description
Exposure
Report Description Top 5 Highest
Claims Shows the details of the five highest value claims.The Openspace gadget version of the dashboard also displays a View Audit column. Click to display the Claim Status for ID:claimID report for the selected claim.
Claim Status for:
ID:claimID Shows the current status of the process associated with the claim selected fromthe Top 5 Highest Claims report. This report is only available in the Openspace gadget version of the dashboard.
Two versions of the Claim Breakdown dashboard are provided - Openspace gadget and standalone. Openspace Gadget Version
You can access this dashboard when you are logged in to Openspace, as any user.
The dashboard demonstrates how you can use ActiveMatrix BPM web services to access information about a particular case (in this example, a claim) from the case data store in one report, and then use that information in another report to extract and display statistical data about the case (in this example, about the current process instance and work item) from the BPM database. See Displaying Process Status (Statistical Data) for a Particular Claim (Case Data)for more information.
Standalone version
You can access this dashboard in any web browser, using the URL:
http://host:port/openspace/jaspershowcase/claimdashboard_sa.html where:
● host is the DNS name of the server hosting the BPM runtime.
● port is the port being used by Openspace. The default value is 8080.
If JasperReports Server is hosted remotely and/or is using a different port, you must update these default URLs by adding a path parameter in the following format:
?jasperserver=http://host:port/jasperserver-pro where:
● host is the hostname of the machine that is hosting JasperReports Server.
● port is the port number being used by JasperReports Server.
Drilling Down to Find the Current Status of a Particular Claim
You can filter the data shown in the Claim Breakdown dashboard according to your requirements, show the top 5 highest claims for the selected data, then view the current status of the process associated with one of those claims. If necessary, you can also raise the priority of that process. Prerequisites
You must use the Openspace gadget version of the Claim Breakdown dashboard. This functionality is not available from the standalone version.
Procedure
1. Login to Openspace as the Front Desk team leader, Richard Cresswell (password "tibco123"). 2. Filter the report data as you choose. For example, you may choose to show just Very High Value
claims in New York.
3. When you have the data you want, click Details. The Claim Hot List is displayed.
4. On the Top 5 Highest Claims report, click in the View Audit column for one of the displayed claims.
A Claim Status for ID:claimID report is displayed, showing:
● the process ID of the ClaimsProcess process instance associated with this claim. ● the current task, who (if anybody) owns it, and its status.
● the task's priority - which you can, if you wish, raise by clicking in the Raise Priority column
of the report.
See Displaying Process Status (Statistical Data) for a Particular Claim (Case Data) for more information about how this functionality is implemented by the Claim Breakdown dashboard.
Process Monitor and Claim Breakdown Dashboard Design
The Process Monitor and Claim Breakdown dashboards are defined in TIBCO Business Studio as a GWT web application project, which is available from TIBCO_HOME\bpm\n.n\samples\jaspersoft \Misc\Openspace Gadget Project\JasperShowCase.zip. You can import the project into TIBCO Business Studio, then examine it to see in detail how the dashboards are constructed, modify them or use them as starting points for your own dashboards.Note that:
● The project provides Openspace gadget and standalone versions of each dashboard.
● If you modify the Openspace gadget version of a dashboard, when you deploy the application to
the BPM runtime it will not overwrite the version that is supplied with Openspace. Instead, you will need to add the dashboard to Openspace as a new gadget, using the following URL.
Dashboard URL Process
Monitor http://jaspershowcase.htmlserver:port/openspace/jaspershowcase/jaspershowcase/ Claim
Breakdown http://claimdashboard.htmlserver:port/openspace/jaspershowcase/jaspershowcase/ See the TIBCO ActiveMatrix Web Client API Developer's Guide for more information about how to recompile and redeploy the application to the BPM runtime, and contribute it as a gadget to Openspace.
● The dashboards use Visualize.js to obtain and display reports from JasperReports Server.
Visualize.js is a JavaScript API framework used to embed JasperReports Server reports &
visualizations inside web applications. See the JasperReports Server Programming Guide supplied with TIBCO JasperReports Server for ActiveMatrix BPM for more information about this API.
● Each dashboard uses asynchronous callback mechanisms for communication between the different
components and layers of the application.
The following tables outline the structure and key functions of each dashboard application. The files can be found in the war\jaspershowcase folder in the project, with the exception of
jaspershowcase.java, which is in the src\com\tibco\jasper\showcase\client folder.
Openspace Gadget Variant Process Monitor
dashboard
Claim Breakdown
dashboard Key Functions
jaspershowcase.html claimdashboard.html
● Obtains the credentials that the
dashboard will use to authenticate its access to JasperReports Server (from jaspershowcase.java).
● Initializes the Visualize.js JavaScript API framework.
Process Monitor dashboard
Claim Breakdown
dashboard Key Functions
jaspershowcase.js claimdashboard.js Provides functions to:
● get the required reports from
JasperReports Server (using Visualize.js).
● define and update the current context
for each report. jaspershowcase.java jaspershowcase.java
● Calls ActiveMatrix BPM web services
using the ActiveMatrix BPM Web Client API.
● Provides methods that the dashboard
page can call to get the username and password needed to access
JasperReports Server. These methods are currently hardcoded to return the Jasperadmin/Jasperadmin credentials, but could be used to provide single sign-on functisign-onality.
● Provides JSNI calls to export required
methods to the dashboard page. oSApi.js oSApi.js Calls ActiveMatrix BPM web services that
are not available via the ActiveMatrix BPM Web Client API, using the ActiveMatrix BPM REST API.
bootstrap.js bootstrap.js HTML, CSS, and JS framework.
jquery-1.11.1.min.js jquery-1.11.1.min.js JavaScript library used by bootstrap.js. jaspershowcase.nocac
he.js
jaspershowcase.nocach e.js
JavaScript compiled version of jaspershowcase.java.
Standalone Variant Process Monitor dashboard
Claim Breakdown
dashboard Key Functions
jaspershowcase_sa.html claimdashboard_sa.html
● Defines the credentials that the
dashboard will use to authenticate its access to JasperReports Server. These credentials are hardcoded as Jasperadmin/Jasperadmin.
● Initializes the Visualize.js JavaScript API framework.
● Defines the dashboard layout.
jaspershowcase.js claimdashboard.js Provides functions to:
● get the required reports from
JasperReports Server (using Visualize.js).
● define and update the current
context for each report. bootstrap.js bootstrap.js HTML, CSS, and JS framework. jquery-1.11.1.min.js jquery-1.11.1.min.js JavaScript library used by
Openspace Gadget Dashboard Architecture
The Openspace gadget dashboards must be hosted in Openspace on the ActiveMatrix BPM runtime. Process Monitor Dashboard
Standalone Dashboard Architecture
The standalone dashboards can be hosted in an HTTP/web server, for example Apache HTTP Server or Internet Information Services (IIS) for Windows® Server.
Calling ActiveMatrix BPM Web Services From the Example
HTML Dashboards
The Openspace gadget versions of the Process Monitor and Claim Breakdown dashboards demonstrate different ways in which you can invoke ActiveMatrix BPM web services from Jaspersoft reports.
Authenticating Calls to BPM Web Services
Security policies are enforced on the endpoint of every TIBCO ActiveMatrix BPM service to ensure that access is restricted to authenticated users. Every API call to a TIBCO ActiveMatrix BPM service must be made using the identity of a user who is registered in the BPM organization model. An API call that does not meet this requirement will be rejected.
Calling ActiveMatrix BPM Web Services From the Openspace Gadget Dashboards
Because they run within an Openspace context, the Openspace gadget versions of the Process Monitor and Claim Breakdown dashboards automatically use the credentials of the currently logged in
Openspace user for authentication whenever they call a BPM web service.
Authorization - whether that user has the necessary permissions required by the system actions needed to execute that particular call - is still checked. The dashboard code displays a suitable error message to the user if they do not have the necessary permissions.
For example, if you try and use the Process Monitor dashboard as tibco-admin, you will see the error message
This user is not a manager of a team, cannot display dashboard
because access to this dashboard is by default restricted to the EasyAs team leaders, Richard Creswell and Leon Court. (See Filtering the Data Visible in a Report Based on the Logged in User's Team Membership for details.)
Calling ActiveMatrix BPM Web Services From the Standalone Dashboards
The standalone versions of the Process Monitor and Claim Breakdown dashboards, as supplied, do not call BPM web services. You could modify them to implement the same functionality as the Openspace gadget versions (or indeed, any functionality available through the BPM web services), but the dashboard code itself would need to provide its own authentication mechanisms.
See "Authenticating Access to a TIBCO ActiveMatrix BPM Service" in the TIBCO ActiveMatrix BPM Developer's Guide for more information.
Filtering the Data Shown in a Report Based on the Logged in User's Team
Membership
The Process Monitor dashboard demonstrates how you can use ActiveMatrix BPM web services to obtain organizational information about the dashboard user (in this case, whether they are a team leader, and of which team), and so restrict the data presented to that user based on their team membership and role.
In the example Claims application, the organization model provides a simplistic model of EasyAs Insurance's claims processing organization, comprising a front desk team and a back desk team, each with a manager:
In TIBCO Business Studio:
● The front desk team, back desk team and managers are each modeled as a Group. ● a TeamName resource attribute is added to the CompanyOrganizationModel project.
At runtime (see Mapping Users from the EasyAs LDAP Source to the Claims Organization Model):
● The following resources are mapped to each group.
Group Resources
Team Managers Leon Court, Richard Cresswell
FrontDeskGroup Richard Cresswell, John Eustace, Liam
Lawrence, Tony Pulis
BackDeskGroup Leon Court, Clint Hill, Jon Parkin, Steve
Simonsen
● The team managers have the following values assigned to their TeamName resource attribute.
(Other team members do not have a TeamName value assigned.)
Resource Value of TeamName resource attribute
Leon Court BackDeskGroup
When the Process Monitor dashboard (jaspershowcase.html) is opened in Openspace, the onReportLoaded function calls getTeam (in Jaspershowcase.java).
function onReportLoaded() {
// This method will be called when the GWT onModuleLoad has run so we // know at this point that it will have exported any methods we may // need.
// Now call into GWT Layer to trigger it to go and work out the team. // Because this is async it will not return it here, but rather will // call a method later to set it.
// We pass in a callback function which we would like to be called when // this operation is complete
getTeam(setMyTeam); }
1. getTeam calls the BPM Web Client API GetAuthenticatedUserName operation to find the name of the logged in user.
2. getTeam now needs to look up the value of that user's TeamName attribute. However, this cannot be done directly from the BPM Web Client API, so it calls getMyResourceAttribute, which is a JSNI method that in turn invokes the callGetResource function in osApi.js.
3. callGetResource uses the following BPM REST API calls to obtain the value of the user's TeamName attribute, which it then passes back to the setResourceAttribute function (in
Jaspershowcase.java):
a. findResources - passing in the user's name and extracting the user's GUID from the returned data.
b. getResource - passing in the user's GUID and extracting the TeamName resource attribute value.
4. setResourceAttribute:
a. calls the BPM Web Client API RunResourceQueryForVersion operation to get the names of the users who are members of the group named in the TeamName resource attribute value. b. calls the doCallback function, which passes the list of team members back to the setMyTeam
function in jaspershowcase.htm.
If the logged in user is not one of the team leaders (so the list of team members is empty), doCallback instead displays the error message This user is not a manager of a team, cannot display dashboard.
5. setMyTeam initializes required variables with the team information and updates the context object. function setMyTeam(teamname, teamnames) {
teamName = teamname; myTeam = teamnames; updateContext(); setTeamMode(true);
//Now we initialise Visualise.js initVisualise(init);
}
The dashboard does not initialize Visualize.js (and consequently the reports) until it has the required context and team information.
The team information can now be passed as a parameter (via context.team) to the various reports when they are called or updated. Each report can use the team information as required to filter, construct and/or display the required data.
Raising the Priority of a Work Item
Both the Process Monitor and Claim Breakdown dashboards demonstrate a simple way of raising the priority of selected work items. This provides an example of how you can both monitor BPM data, and then react to and update that data, in real-time (often referred to as "closing the loop").
The user interface to raise a work item's priority is provided as part of the Offered Work report on the Process Monitor dashboard. When the user clicks the Raise Priority arrow for a specific activity, a Priority has been raised message is displayed, and the work item's priority is raised by 10.
To provide this functionality:
● In the Jaspersoft Studio AMX-BPM Statistics Reports project, in the Work report, the Raise Priority
column of the report table contains the arrow_up.png graphic. This graphic is configured as a RemoteAnchor hyperlink.
● When the user clicks the arrow for a particular activity (work item), the click event in the
getTeamUnallocatedReport function (in jaspershowcase.js) is invoked. This event calls the setPriority function in Jaspershowcase.java, passing the WorkItemId of the selected activity as a parameter.
function getTeamUnallocatedReport(v) { unallocated = v.report( {
resource : pathRoot + "Work", container : "#unallocated", linkOptions : {
events : {
"click" : function(ev, link) { if (link.type == "RemoteAnchor") { setPriority(link.parameters.WorkItemId); } } } } } ) }
● setPriority invokes the BPM Web Client API PrioritiseWorkItem method to increase the work item's
priority by 10. /**
* This method is called by any dashboard which wishes to modify the work * item priority of an item. Within the demonstration it is used by * Jaspersoft page hyperlinks
*/
public static void setPriority(String workItemId) { Set<ManagedId> items = new HashSet<ManagedId>();
items.add(new ManagedId(Long.parseLong(workItemId), -1)); BPMWebClientService.getInstance().execute(
new PrioritiseWorkItem(items, 10, false), new AsyncCallback<VoidResult>() {
@Override
public void onFailure(Throwable caught) {
Window.alert("Failed to change Work Item Priority. Original error message: "+caught.getMessage());
}
@Override
public void onSuccess(VoidResult result) { Window.alert("Priority has been raised"); }
}); }
Authorization
To be able to execute the PrioritiseWorkItem method the calling user - in this case, the user who is logged in to the Openspace session - must have permission to use the changeAnyWorkItemPriority or changeAllocatedWorkItemPriority system action. Access to this functionality should be restricted to the team leaders, Leon Court and Richard Cresswell.
This is configured in TIBCO Business Studio, in the CompanyOrganizationModel project: 1. A privilege, Privilege1, is defined.
2. Privilege1 is associated with the Change Any Work Item Priority system action. 3. Privilege1 is assigned to the TeamManagers group.
At runtime, Leon Court and Richard Cresswell inherit Privilege1 as a result of their membership of the TeamManagers group.
They are therefore authorized to execute the PrioritiseWorkItem method when they click the Raise Priority arrow for a specific activity in the Offered Work report.
Displaying Process Status (Statistical Data) for a Particular Claim (Case
Data)
The Claim Breakdown dashboard demonstrates how you can access information about a particular case (in this example, a claim) from the case data store in one report, and then use that information in another report to extract and display statistical data about the case (in this example, about the current process instance and work item) from the BPM database.
In the Claims Breakdown dashboard, if the user clicks Details to display the Claims Hot List, then clicks View Audit for one of the Top 5 Highest Claims, a Claim Status report for that claim is displayed. This report:
● displays statistical data (from the BPM database) about the current process instance and work item
associated with the selected claim ID.
To provide this functionality:
● In the Jaspersoft Studio ClaimsModelReports project, in the DisplayTopClaims report, the View
Audit column of the report table contains the audit.png graphic. This graphic is configured as a ReportExecution hyperlink.
● When the user clicks the audit button for a particular Claim Id, the click event in the
doTopClaimsReport function (in claimdashboard.js) is invoked. function doTopClaimsReport(v) { topclaims = v.report({ resource: pathRoot+"DisplayTopClaims", container: "#claimtop5", params: context, linkOptions: { events: {
"click": function (ev, link) {
callLookupCaseRef(link.parameters.CLAIM_ID, function reloadClaimStatus(caseRef) {
removeClassFromElement
(document.getElementById("claim_status"),'hide'); $('#claim_status_text').text
("Claim Status for: "+link.parameters.CLAIM_ID);
claimstatus.params({ "CASE_REFERENCE": [caseRef] }).run(); } ); } } }, error: handleError } ); } This event:
1. calls callLookupCaseRef (in osApi.js). That function uses the BPM REST API findbyid operation to get the case reference associated with this claim Id.
openspaceClientApi.prototype.lookupCaseRef = function (id, onSuccess) { var baseUrl = this.host +
"/bpm/rest/globaldata/model/com.example.claimmodel.Claim/2.0.0/findbyid"; var callback = function (data) {
data = JSON.parse(data);
onSuccess(data.caseReference); };
var payload = "<xml-fragment><casePayload><![CDATA[<?xml version=\"1.0\" encoding=\"UTF-8\"?><claimmodel:ClaimElement xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:claimmodel=\"http://example.com/claimmodel\" xsi:type=\"claimmodel:Claim\"><claimID>"+id+"</claimID> </claimmodel:ClaimElement>]]></casePayload></xml-fragment>"; call(baseUrl, callback,"POST",payload);
2. passes that case reference as a parameter to the reloadClaimStatus function, which loads the Claim Status report.
● The Claim Status report:
— queries the BPM database (the ec_proc_template table) and displays the details of the current
work item associated with that case reference.
All other reports used in the Claim Breakdown dashboard run their queries against the case data store.
— provides the ability to raise the work item priority when a user clicks the Raise Priority arrow.
(The report calls the setPriority function in Jaspershowcase.java, passing the WorkItemId of the selected activity as a parameter, in the same way as the Offered Work report on the Process Monitor dashboard.) function doClaimStatusReport(v) { claimstatus = v.report( { resource: pathRoot+"ClaimStatus", container: "#claimstatusdiv", linkOptions: { events: {
"click": function (ev, link) {
setPriority(link.parameters.WorkItemId); } } }, error: handleError, } ); }
Viewing and Modifying Reports Used by Process Monitor
and Claim Breakdown Dashboards
You can view and modify the reports used by the Process Monitor and Claim Breakdown dashboards in Jaspersoft Studio for ActiveMatrix BPM. Jaspersoft Studio allows you to create sophisticated layouts containing charts, images, subreports, crosstabs, and more.
Procedure
1. Open Jaspersoft Studio.
2. Use the Import wizard to import the Jaspersoft Studio projects containing the reports used by the Process Monitor and/or Claim Breakdown dashboards. These projects are supplied as part of the TIBCO ActiveMatrix BPM installation:
● Process Monitor dashboard reports: TIBCO_HOME\bpm\n.n\samples\Jaspersoft\AMXBPM Statistics\reports\statsreportsarchive_dbType.zip
● Claim Breakdown dashboard reports: TIBCO_HOME\bpm\n.n\samples\Jaspersoft\AMXBPM Statistics\reports\claimreportsarchive_dbType.zip
where:
● TIBCO_HOME is the full pathname of the directory where the ActiveMatrix BPM software is
installed.
● n.n is the version number of the ActiveMatrix BPM software - for example, 3.1.
● dbType is the identifier for the type of database used by ActiveMatrix BPM, either mssql (SQL Server), oracle (oracle), db2 (DB2) or postgres (PostgreSQL).
See Example Files Reference for more information.
Process Monitor Dashboard Reports
Default Dashboard Title Report
jaspershowcase.js Function That Invokes the Report KPI-Performance - Processes
escalated HighPriorityKPI getHighPriorityKPIReport
KPI-Performance - Processes
over 4 hours FastResolvedKPI getFastResolvedKPIReport
KPI-Performance - Processes
over 4 days FullyResolvedKPI getFullyResolvedKPIReport
Longest Processes Vs Historic
data ProcessPerformance getPerfReport
Outstanding Processes TemplateAssessment getTemplateReport
Outstanding Tasks TaskBreakdown (in standalone
Default Dashboard Title Report
jaspershowcase.js Function That Invokes the Report TaskTeamBreakdown (in team
dashboard) getTeamTasksReport
Work Allocation OutstandingWork (in
standalone dashboard) getWorkReport OutstandingWorkForTeam (in
team dashboard) getTeamWorkReport
Offered Work Work_Standalone (in
standalone dashboard) getUnallocatedReport Work (in team dashboard) getTeamUnallocatedReport
Claim Breakdown Dashboard Reports
Default Dashboard Title Report
claimdashboard.js Function That Invokes the Report
Claim Exposure TotalClaimExposure doTotalExposureReport
Value ClaimValueBreakdown doClaimValueReport
Claim by State ClaimsByState doStateReport
Age of Comp & TP claims ClaimAgeBreakdown doClaimAgeReport
Monthly Breakdown ClaimsMonthBreakdown doClaimByMonthReport
Average Duration to finalize
Claims AverageTimeToCloseClaim doClaimDurationReport
Claim Hot List > Exposure
Breakdown ClaimExposureBreakdown doExposureBreakdownReport
Claim Hot List > Top 5 Highest
Claims DisplayTopClaimsNoAudit (instandalone dashboard) doTopClaimsNoAuditReport DisplayTopClaims (in team
dashboard) doTopClaimsReport
Claim Hot List > Claim Status