• No results found

Using TIBCO JasperReports for ActiveMatrix BPM

N/A
N/A
Protected

Academic year: 2021

Share "Using TIBCO JasperReports for ActiveMatrix BPM"

Copied!
54
0
0

Loading.... (view fulltext now)

Full text

(1)

BPM

Software Release 3.1 November 2014

(2)

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.

(3)

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

(4)

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:

(5)

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.

(6)

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

(7)

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).

(8)

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.

(9)

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.

(10)

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 REFRESHScripting > ActiveScripting

(11)

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.

(12)

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

(13)

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.

(14)

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.

(15)

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.

(16)

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.

(17)
(18)

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.

(19)

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.

(20)

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:

(21)

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.

(22)

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

(23)

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

(24)

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.

(25)

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.

(26)

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.

(27)

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.

(28)

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

(29)

Openspace Gadget Dashboard Architecture

The Openspace gadget dashboards must be hosted in Openspace on the ActiveMatrix BPM runtime. Process Monitor Dashboard

(30)
(31)

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.

(32)
(33)

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.

(34)

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

(35)

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.

(36)

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.

(37)

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); } } } } } ) }

(38)

● 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.

(39)

At runtime, Leon Court and Richard Cresswell inherit Privilege1 as a result of their membership of the TeamManagers group.

(40)

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.

(41)

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.

(42)

● 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, } ); }

(43)

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

(44)

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

References

Related documents

When AMX composite applications run in RAD, or a remote admin is connected through TIBCO Business Studio, you can view information about the WebApp components using the internal

● TIBCO ActiveMatrix BusinessWorks Plug-in for Microsoft Dynamics CRM Release Notes ● TIBCO ActiveMatrix BusinessWorks Plug-in for Microsoft Dynamics CRM Installation ●

TIB, TIBCO, TIBCO Adapter, Predictive Business, Information Bus, The Power of Now, TIBCO ActiveMatrix BusinessWorks, TIBCO Foresight Instream, and TIBCO Foresight Translator are

TIB, TIBCO, TIBCO Adapter, Predictive Business, Information Bus, The Power of Now, TIBCO ActiveMatrix BusinessWorks, , TIBCO Foresight Community Manager, TIBCO Foresight EDISIM,

The BPM database user is the database server user account that ActiveMatrix BPM should use to connect to the BPM database, as specified in the ActiveMatrix BPM: Runtime

The sample project shows how to use TIBCO ActiveMatrix BusinessWorks Plug-in for Big Data to manage and query data, for example, how to operate files in HDFS, transfer files between

TIBCO, The Power of Now, TIBCO Hawk, TIBCO Rendezvous, TIBCO Runtime Agent, TIBCO ActiveMatrix BusinessWorks, TIBCO Administrator, TIBCO Designer, TIBCO BusinessConnect, and

A host runs TIBCO ActiveMatrix platform services, manages the life cycle of nodes, and maintains software features and resources shared between nodes.. Nodes run