Open Text Transactional Content Processing 10.0.1 Scenario Guide
Open Text Transactional Content Processing 10.0.1 Scenario Guide
Processing
Scenario Guide
08. Feb. 2010
TCP100001-GCS-EN-2
Open Text® Transactional Content Processing
Scenario Guide
TCP100001-GCS-EN-2
Rev.: 08. Feb. 2010
This documentation has been created for software version 10.0.1.
It is also valid for subsequent software versions as long as no new document version is shipped with the product or is
published at https://knowledge.opentext.com.
Open Text Corporation
275 Frank Tompa Drive, Waterloo, Ontario, Canada, N2L 0A1
Tel: +1-519-888-7111
Toll Free Canada/USA: 1-800-499-6544 International: +800-4996-5440
Fax: +1-519-888-0677
E-mail: [email protected]
FTP: ftp://ftp.opentext.com
For more information, visit http://www.opentext.com
PRE Introduction 7
i What is Open Text Transactional Content Processing? .......................... 7
ii About this documentation ...................................................................... 10
ii.i Target Readership ................................................................................. 10
ii.ii Structure of this documentation ............................................................. 11
ii.iii Documentation overview........................................................................ 12
ii.iv Further documentation ........................................................................... 14
ii.v How to find documentation .................................................................... 14
ii.vi Conventions ........................................................................................... 14
iii Contact information ................................................................................ 16
1 Overview .................................................................................. 19
2 Customization Overview ......................................................... 23
3 Prerequisites ........................................................................... 25
4 Customizing classifications for Records Management ........ 27
5 Customizing Open Text Enterprise Library Services units
for TCP ..................................................................................... 29
5.1 Creating an application for TCP............................................................. 29
5.2 Defining item types................................................................................. 30
5.3 Importing the basic TCP folder type....................................................... 31
Presentation layer
There are two ways to access a TCP application:
• TCP Web Client – TCP Web Client is what you see, when you access a TCP
application in a Web browser. It is your interface to the system and lets you
interact.
• Enterprise Connect – With Enterprise Connect, you can upload and access
Open Text TCP documents using Microsoft Office and Windows Explorer.
Application layer
TCP Application Server – TCP Application Server is the core of TCP. It controls
the services for document archiving and retrieving. The services communicate
with the connected repositories and handle requests, such as queries from the
TCP application.
Enterprise Process Services – As a member of the Open Text Content Services
family, Enterprise Process Services provides functionality for managing
structured business processes functionality. Enterprise Process Services is a
multi-purpose process engine that drives business processes and brings all
required documents to each process step. Through the technical interface of
Enterprise Process Services - available as Web Service (SOAP) - other systems
can interact and utilize its functionality. Enterprise Process Services is tightly
integrated into TCP and provides tools for designing, running, monitoring and
analyzing business processes.
Repository layer
TCP Context Server along with the process database and other external
repositories (databases and other data sources) stores all data except for attached
content files. These are stored by Open Text Enterprise Library Services.
Customization and Administration tools
Customization and Administration tools help you to set up, customize and
manage the system.
• TCP Modeler – creates and customizes a TCP application.
• Process Designer – implements business processes for a TCP application.
• Process Administrator – monitors and administers the process flow.
• TCP Configuration (Web-based) – allows the administrator to control
access to the system and to the documents contained within it. Furthermore,
general project administration and availability is handled here.
• TCP Context Server Administration / Context Server Configuration – are
two Web-based tools for administering TCP Context Server.
• User Management Client – manages users and user rights which are stored
on User Management Server.
• User Management Server Configuration – is a Web administration tool for
configuring User Management Server.
ii.vi Conventions
Read the following conventions before you use this documentation.
Typography In general, this documentation uses the following typographical conventions:
New terms
This format is used to introduce new terms, emphasize particular terms,
concepts, long product names, and to refer to other documentation.
User interface
This format is used for elements of the graphical user interface (GUI), such as
buttons, names of icons, menu items, names of dialog boxes, and fields.
Filename
command
sample data
This format is used for file names, paths, URLs, and commands in the command
line. It is also used for example data, text to be entered in text boxes, and other
literals.
Note: If a guide provides command line examples, these examples may
contain special or hidden characters in the PDF version of the guide (for
technical reasons). To copy commands to your application or command
line, use the HTML version of the guide.
Key names
Key names appear in ALL CAPS, for example:
Press CTRL+V.
<Variable name>
The brackets < > are used to denote a variable or placeholder. Enter the correct
value for your situation, for example: Replace <server_name> with the name of
the relevant server, for example serv01.
Hyperlink
Weblink (e.g. http://www.opentext.com)
These formats are used for hyperlinks. In all document formats, these are active
references to other locations in the documentation (hyperlink) and on the Inter-
net (Weblink), providing further information on the same subject or a related
subject. Click the link to move to the respective target page. (Note: The hyperlink
above points to itself and will therefore produce no result).
Cross- The documentation uses different types of cross-references:
references
Internal cross-references
Clicking on the colored part of a cross-reference takes you directly to the target
of the reference. This applies to cross-references in the index and in the table of
contents.
External cross-references
External cross-references are references to other manuals. For technical reasons,
these external cross-references often do not refer to specific chapters but to an
entire manual. If a document is available in HTML format, external references
can be active links though, that directly lead you to the corresponding section in
the other manual.1
Tip: Tips offer information that make your work more efficient or show
alternative ways of performing a task.
Note: Notes provide information that help you avoid problems.
Important
If this important information is ignored, major problems may be
encountered.
Caution
Cautions contain very important information that, if ignored, may cause
irreversible problems. Read this information carefully and follow all
instructions!
1 This applies, if target and source document are shipped together, e.g. on a product or documentation CD-ROM.
When you declare a TCP document as EL record or prepare a TCP record type for
EL record creation, you select one of these Records Management types. As a result
of the declaration, Records Management creates a corresponding record entry
within the Enterprise Library, linked to the TCP document.
After a TCP document was declared as EL record, the user will not be able to
perform any actions that change the record (e.g. delete, check-out). Only the
following actions are allowed for TCP documents that are under Records
Management control:
• Add notes
• Add and modify annotations
• Add and modify Add-On components (e.g. Pagelist)
• Add renditions
• Put a document under version control.
The TCP document may only be deleted by Enterprise Library Records
Management officers. If a Records Management officer deletes a TCP document, it
will be removed from Enterprise Library, TCP Context Server and archive server
(Archive and Storage Services). For details on the Records Management
functionality, see Livelink ECM™— Records Management - User's Guide (LLESRCM-
UGD).
This scenario requires components of the Enterprise Library that are not installed by
default. These have to be connected to the TCP Context Server and vice versa. For a
description of the installation of these components, see Open Text Enterprise Library
Services - Installation and Upgrade Guide (EL-IGD).
2. For all TCP documents declared as records, TCP Context Server proceeds as
follows:
• TCP Context Server requests Enterprise Library Services to put the TCP
documents under Records Management control.
• TCP Context Server treats them as records. This means that these TCP
documents cannot be modified or deleted by standard means. Only
Enterprise Library Services can request TCP Context Server to delete such
TCP documents if the retention period is expired.
3. For each requested TCP document, Records Management creates a (logical) EL
record entry within the Enterprise Library, linked to the TCP document. This EL
record entry is stored on the Livelink ECM – Enterprise Server.
4. An Enterprise Library Services plug-in informs the TCP Context Server that the
EL record entry within the Enterprise Library is created. This is done by storing
the EL record entry creation date as property for each requested TCP document.
The EL record entry is now accessible in a special application workspace of the
Livelink ECM – Enterprise Server.
Services – Storage Providers node. You have to specify the server and the
port of TCP Context Server.
c. Configure the connection from TCP Context Server to Enterprise Library in
TCP Context Server Web configuration via the RM configuration package.
5. To view the item types (Records Management types) immediately that are
available on TCP Context Server, refresh the TCP Context Server
Administration window.
6. Assign Records Management types to record types in TCP Modeler.
7. Import the certificate of Livelink ECM – Enterprise Server into TCP Context
Server. In the User Management Client, assign the user that was generated
during the certificate import to the PropertyReadGrantees and RMGrantees
groups.
To define codes:
1. Log on to Livelink ECM – Enterprise Server (Enterprise Server for short) as
administrator.
2. From the Enterprise menu, choose Records Management.
3. On the Records Management page, click the Records Management
Administration link.
4. On the Records Management Administration page, click the Table
Maintenance link.
5. On the Records Management Table Maintenance page, add at least the
following codes to each for these tables:
Table Code to Add (Description)
Essential record ESS (Essential)
Status ACT (Active)
Storage Medium ARC (Archive)
a. Click the link for the table you want to add a code to.
b. Choose a code type from the Add item menu.
c. Enter a code and a description.
d. Click Submit.
To define RM classifications:
1. Log on to Enterprise Server as administrator.
2. From the Enterprise menu, select Classifications. From the Add Item menu,
select RM Classification.
3. Enter the details for the classification:
• Name: Any name, e.g. Basic RM Classification.
• Description: Optional. Enter a description.
• Selectable: Select to specify that the classification can be applied to
Enterprise Server objects.
• File number: Select a unique value that does not exist yet in this part of the
classification tree, e.g. 0001.
• Creation date: Default is the current date.
• Status: Select one (see codes defined above).
• Status date: Default is the current date.
• Essential: Select one (see codes defined above).
• Storage medium: Select one (see codes defined above).
Add additional information if required.
To create an application:
1. Start the Administration client, see section 8.1 "Working with Administration
Client" in Open Text Enterprise Library Services - Installation and Upgrade Guide
(EL-IGD).
2. In the console tree, expand Content Services and log on to the Library Server.
3. Select the Enterprise Library Services > Applications node.
4. From the action pane, select New Application....
5. In the New Application wizard, specify the following settings:
• Application name: Enter an application name, for example, TCP.
• Description: Optional: Enter a description of the application, for example
TCP Context Server.
6. Click Next.
7. Optional: On the Audit interests page, specify the audit interests.
8. Click Finish.
For details on creating applications, see section 2.1 "Creating and modifying
applications" in Open Text Enterprise Library Services - Administration - Applications
and Document Model (ELWS-AGD)
For details on creating item types, see section 4.2 "Creating and modifying item
types" in Open Text Enterprise Library Services - Administration - Applications and
Document Model (ELWS-AGD)
For details on importing folder types, see section 4.5.3 "Importing types" in Open
Text Enterprise Library Services - Administration Online Help - Applications and
Document Model (ELWS-H-AGD).
2. In the log-in window, enter Admin as the user name and geheim as the
password.
3. Select the RM package.
4. Specify the following settings:
• Enabled: select on to enable Records Management for TCP.
• Enterprise Library Services Application Name: Enter name and password
of the Enterprise Library application you created in “Creating an application
for TCP” on page 29.
• Enterprise Library Services Application Password: Enter the password you
specified for the application.
• Enterprise Library Services Folder Type: Enter the name of the folder type
you created in “Importing the basic TCP folder type” on page 31.
• Enterprise Library Services Host: Enter the host.
• Enterprise Library Services Port: Enter the port.
• Enterprise Library Services User: Enter the user.
• Enterprise Library Services User Password: Enter the password for the user.
2. In the log-in window, enter DMSAdmin as the user name and your password and
select Server Information.
The Context Server Info section shows the following:
• RM Enterprise Library Host
• RM Status
The Record Management Types show the item types you specified in “Defining
item types” on page 30.
• For record types and query specification types below the Forms node in
GUI profiles, there is the Enable records management option on the
Features tab in the properties area.
Property types
• ixos.dms:RMDate: Date on which an object was technically declared as
record.
• ixos.dms:RMTypeName: Name of the item type defined in “Defining item
types” on page 30.
• ixos.dms:RMTypes: Name list of item types.
Added fields
• Fields tab in list area: The fields for the ixos.dms:RMDate and
ixos.dms:RMTypeId property types are added as well as the
ixos.dms:RMTypes relationship. For the relationship field, the Displayed
property type is set to ixos.dms:RMTypeName.
• Inspect form: Property types ixos.dms:RMTypeId and ixos.dms:RMDate
become visible.
• Edit form: ixos.dms:RMTypes relationship becomes visible.
• New form: ixos.dms:RMTypes relationship becomes visible.
• Hit list form: Property types ixos.dms:RMTypeId and ixos.dms:RMDate
become visible.
• Query form: Property type ixos.dms:RMDate and relationship
ixos.dms:RMTypes become visible.
If you remove one of the fields, the Enable records management check box is
disabled.
1. Import the certificate for the Livelink ECM – Enterprise Server. Proceed as
described in section 25.5.3 "Protecting the client connection" in Open Text
Transactional Content Processing - Administration Guide (TCP-AGD). When you
import the certificate, a user is created automatically.
2. Start the Open Text User Management Client. Proceed as described in section 28
"Working with User Management Client" in Open Text Transactional Content
Processing - Administration Guide (TCP-AGD).
3. Assign the generated user to the following groups:
• PropertyReadGrantees
• RMGrantees
This part of the Scenario guide describes the installation and configuration of the
fulltext solution for Open Text TCP on all supported operating systems. For the
installation, operating system knowledge is required.
Recommended In this fulltext solution, Enterprise Server is used as fulltext search engine.
reading The complete fulltext concept is described in the following documents. You find
them in the Knowledge Center in subfolders of the following URL:
https://knowledge.opentext.com/knowledge/llisapi.dll?func=ll&objId=8848105.
• Livelink Search – Advanced Indexing and Searching Guide 9.7.0
• Livelink ECM - Enterprise Server 9.7.1 Online Help for Administrators
• Livelink ECM - Enterprise Server 9.7.1 Installation Guide
For a description how you use the error queues to monitor fulltext servers, see
section 25.10.2 "Using the Fulltext Server error queues" in Open Text Transactional
Content Processing - Administration Guide (TCP-AGD).
Content This part contains the following chapters:
Chapter “Installation of Livelink ECM – Enterprise Server 9.7.1”
This chapter describes the installation and configuration of Livelink ECM –
Enterprise Server in a nutshell.
Chapter “Setup of the XML Activator”
This chapter describes how to configure the XML Activator.
Chapter “Configuring the fulltext engine”
This chapter describes how to set up the fulltext engine.
Chapter “Configuring the fulltext carrier”
This chapter describes how to configure the fulltext carrier.
10.1 Prerequisites
For detailed prerequisites please refer to the Release Notes of Open Text
Transactional Content Processing and Livelink ECM – Enterprise Server.
10.2 Installation
Perform the Enterprise Server installation as described in Livelink ECM™ - Enterprise
Server - Installation Guide (LLESCOR-IGD).
10.3 Configuration
Perform the Enterprise Server configuration as described in section 6 "Configuring
Livelink" in Livelink ECM™ - Enterprise Server - Installation Guide (LLESCOR-IGD).
4. Create the Enterprise Database Source. For details, refer to section 8.3 "Creating
the Enterprise Index" in Livelink ECM™ - Enterprise Server - Installation Guide
(LLESCOR-IGD)).
5. Change the Administrator password. For details, refer to section 8.6.1
"Changing the Admin User Password and Profile" in Livelink ECM™ - Enterprise
Server - Installation Guide (LLESCOR-IGD).
a. Open the data source folder that you have added in the last step.
b. Click Data Flow Manager and then XML Activator.
The properties of the XML Activator are displayed.
c. Define the scheduling in Start Options and confirm with the Update button.
d. To start the scheduling of the XML Activator select the Start item in the
dropdown list of the XML Activator.
Important terms
Data Source
A Data Source is a part (Slice) of the indexed data in an Enterprise Server. It
contains an indexing and search engine. There are several types of Data Sources,
each representing data from different sources (e.g. file system or data from other
systems).
Partitions
Partitions within a Data Source allow distributing the data to smaller sized
indexes.
Data Flow Manager
The Data Flow Manager of a Data Source controls the indexing of the data.
XML Activator
The XML Activator is reading the document content, which is stored as XML file,
and then writing the content to the document conversion process.
Document Conversion Process
A document conversion process extracts the raw data.
Fulltext Carrier
The fulltext carrier is transmitting the documents from the Context Server to the
fulltext engine data source.
Enterprise The name of the Enterprise Server and the URL must be defined. The
Server URL is by default http://<Enterprise Server>/livelink/livelink.-
exe.
The mode for the requests to the Enterprise Server can also be defined.
By default, the mode is post. This mode is recommended.
Admin User The configuration tool for the fulltext needs access to the Enterprise
Server as an Admin user. The name and the password for this user must
be defined.
Query User For the queries on the Enterprise Server, a fulltext query user must be
defined. Normally the name of the user is fulltext as described in
step 1 on page 49.
Slice(s) Each fulltext Id has an associated Data Source (Slice) on Enterprise
Server side. The name of the Slice and their input directory must be de-
fined. The input directory must be accessible from the computer where
the carrier is running.
Search Tem- The name of the search template used for the fulltext queries for this Id
plate can be defined for each fulltext Id. If not, the name of the first Slice is
used.
Note: The fulltext query user for the queries on the Enterprise Server is a
different user than the TCP Context Server fulltext user.
The filter settings for the fulltext server (filter on/off, log level, update configuration
interval, filter user password and fulltext user password) have default values which
you need only to reconfigure in rare cases, e.g. if you changed the fulltext user
password, see Open Text Transactional Content Processing - Administration Guide (TCP-
AGD).
Enabled
Select this check box to enable this configuration.
Description
Short description of the fulltext engine
Host name
Name of the Enterprise Server fulltext host
Fulltext server URL
URL of the fulltext host, for example
http://ll_server/livelink/livelink.exe
<query>
Information about name of the Enterprise Server fulltext query user,
password (encrypted) and query fetch limit
<id>
Information about the ID of the fulltext configuration. This element must
also contain the information about the corresponding search template ID, for
example <id name="My_Fulltext_Solution"
template="MY_FULLTEXT_OWNERID_208">, see “Specifying the search
template ID in XML configuration file” on page 63.
<mimetypes>
List of MIME types which should be indexed or not.
<contentnames>
List of TCP Context Server component names which should be indexed or
not
<propertymappings>
List of additional properties which should be indexed. This element is
currently not supported.
<slices>
List of slices. Currently, only one slice is supported.
Important
Follow these instructions after the fulltext configuration:
1. After creating the search template, you must specify the search template
ID in the <id name> tag (of the XML configuration file) to avoid errors,
for example <id name="My_Fulltext_Solution"
template="MY_FULLTEXT_OWNERID_208">. For details, see “Specifying
the search template ID in XML configuration file” on page 63.
2. The fulltext configuration must not be changed if it is already used for
indexing, that is a fulltext filter that uses this configuration is defined
and documents are created with this document type.
3. You can define only one fulltext filter for a document type (= record
type).
4. Define the filter for exactly that operation that TCP Modeler delivers via
the Fulltext button. For details, refer to section 2.2.4 "Filters - fulltext and
rendition jobs" in Open Text TCP Modeler - Customization Guide (TCP-
CGD).
5. New configurations may be added, but the new configuration can only
be used for document types that are not already used for storing
documents.
6. Use only one single fulltext carrier per fulltext configuration, even if the
other carrier runs on a different computer.
9. Click the Save button to save the configuration and get back to the search
template.
10. Click the Save Template button and enter a name for this search template.
Open Text recommends using the same name as for the Slice (Data Source).
Otherwise you have to define the search template in the XML configuration file
on the Context Server side, see “Fulltext server configuration on TCP Context
Server side (Fulltext server Configuration)” on page 55.
5. Open the drop-down menu of your fulltext search template and select
Properties - General.
The Search Template Properties page for the selected template opens.
6. Note the template ID that is available in the Nickname field.
2. Select an RecordType, go to the Filter tab and choose New Filter with the right
mouse.
4. Select the appropriate action handler, click Fulltext and then Edit.
5. Define the parameter that holds the Fulltext ID and click OK.
13.1 Requirements
The carrier needs a Java Runtime 1.4.2.06 or higher installed on the machine.
Furthermore access to the Context Server via HTTP must be available and the slice
directories of the fulltext server must be accessible for writing. It is recommended to
install it on Enterprise Server.
13.2 Installation
Expand the otFulltextApp.zip file into any directory you want to install the
carrier. You find the zip file on the TCP product CD-ROM in the fulltext
directory.
Scheduled tasks must be configured on the computer which starts the fulltext
carrier. Scheduled tasks can be used on a Windows system and cron jobs on UNIX
systems. Open Text recommends configuring a job in Enterprise Server, see
“Configuring a carrier as job in Livelink ECM – Enterprise Server ” on page 73.
The access rights on UNIX systems should be at least read (and execute for the
directories) for the Enterprise Server user.
The default password of the TCP Context Server FulltextUser is geheim. The
encrypted version of this password is irokWj7rpDw=.
Note: The TCP Context Server FulltextUser is defined in Open Text User
Management.
4. Open the command prompt and change the current directory to
<CARRIER_HOME>: on the command line, enter cd <CARRIER_HOME>. The
directory is configured in the Enterprise Server field Start Directory, see
“Configuring a carrier as job in Livelink ECM – Enterprise Server ” on page 73.
5. To start the fulltext carrier, call:
Windows: <JAVA_HOME>\bin\java –jar Carrier.jar –
config=my_fulltext_solution.properties
You need more than one connection in the list if you have a Context Server
cluster. The carrier tries to establish each connection specified in the list until a
connection to a Context server is successful.
Examples:
Single Context Server with SSL:
https://host:18090/archive
Clientele (required)
Clientele of the Context Server user FulltextUser
Password (required)
Password of the Context Server user FulltextUser. The password must be
encoded with the enc tool (use the second string in the result).
DMS_PROTOCOL
Connection protocol to be used. Can be http or https (default is http). All
connections specified in the Hosts option must start with this protocol. https
needs some additional configuration (see “To configure a carrier with SSL” on
page 72)
Threads
The amount of threads started to process the jobs.
LifeBeatPort
The port where the carrier sends a life beat signal (default is 6789)
Runs
The count of batches (default is 1)
MaxJobs
The maximum amount of jobs to be processed within one batch (default is 1000)
FtxtId
A comma separated list of fulltext configurations for which the carrier should
fetch jobs. If this parameter is not set, all fulltext configurations found on the
Context server are used.
LogFile
The location of the log file. The directory name on Windows must contain two
backslashes. The default log file is the file FulltextCarrier.log in the current
directory, i.e. the directory where the carrier is started. This is configured in
Enterprise Server in the field Start Directory.
MaxLogSize
The maximum size of the log file in bytes (default is 1000000).
LogLevel
The log level can be FATAL, ERROR, WARN, INFO or DEBUG. The DEBUG level gener-
ates maximum logging information, FATAL generates minimum logging informa-
tion. The default log level is WARN
Important
To use this option, you must call the carrier with the additional
command line option
–configStore=carrier.properties
Important
Run only one fulltext carrier per fulltext configuration at the same time. If
you use several carriers, specify the option FtxtId for each fulltext
configuration. On the other hand you can configure one carrier for all
fulltext configurations.
Before the fulltext carrier begins to process jobs it checks if itself is already running.
This can be the case if the periods between scheduled tasks are too short to process
the configured amount of jobs. If it is already running it quits otherwise the fulltext
carrier begins its work.
DS_CRYPTO_PROPERTIES=<ClientIxosCrypto.properties>
DS_PROTOCOL_HANDLER=JAKARTA
DMS_REMOTE_USER_MGMT=true
HTTP_BUILTIN_SSL_TRUST_EXPIRED_CERTIFICATE=true
HTTP_BUILTIN_SSL_TRUST_WRONG_SERVER=false
HTTP_INIT_BUILTIN_SSL=true
c. In the Command Line Template field enter the command to start the
carrier. If you start your carrier with a config file, enter the following
command:
d. In the Start Directory field, enter the directory of your fulltext carrier
installation i.e. the directory where Carrier.jar is placed.
e. In the Start Options section (left bottom corner), select Scheduled in the
drop down menu. Select the check box Every and enter a time interval you
want to run your carrier e.g. every 20 Minutes.
f. In Stop Options section, select Terminate.
g. Click Add. The data flow manager page opens.
7. Open the context menu of the process (small arrow right of the name of your
process) and select Start.
(1) Customizing
Any process that has a Metrics Completion Action can be monitored with BAM.
You configure the process with Process Designer. For details, see “Configuring a
process for BAM ” on page 81.
In Process Administrator you can manage BAM reports. For details, see section
12 "Managing BAM reports" in Open Text Process Administrator - Administration
Guide (PR-AGD).
Presentation and query are controlled by an XML file which requires a strict
structure. For details, see “XML schema” on page 82.
In TCP Modeler, you configure users, user groups and GUI profiles so that only
a certain group of users has access to BAM reports.
(2) BAM data generation
There are two ways to transfer data from the process database to a dedicated
BAM database. In this procedure, TCP Application Server aggregates the data
and already calculates measures such as time durations.
• Create a process with a Completion Action of the type Metrics (for details, see
section 10 "Completion actions" in Open Text Process Designer - Customizing
Guide (PR-CPD)), or
Tip: To create an XML schema more quickly, you can use one of the templates
provided on the TCP product CD-ROM. They are located in the <TCP product
CD-ROM>:\templates\bam directory. For a description of the templates, see
“Examples of use” on page 101.
<ID>
Unique ID of the report
Important
The ID has to be unique over all TCP reports, not only BAM.
<ShortName>
Short name of the report. This name is displayed in the Reports drawer of the
TCP application.
<LongName>
Long name of the report. Reserved for future use.
<Description>
Description of the report. Displays as a description in the report.
<Chart>
Definition of the displayed chart and the evaluation of the report. For details,
see “Chart types” on page 84.
<Type> – Type of the report chart.
<Axes> – The axes displayed in the chart. An axis has a <Name>, a
<DisplayName> and an <Expression>. The expression can be a single property
(e.g. “name”) or an expression. Supported are x and y axis. If multiple values
are used, only one axis is supported.
Note: The x-axis expression result must be a text. This can be achieved
using the Concat() operator.
<Values> – Values to be displayed in the chart. Each value is included in a
<Value> tag. A value contains a <Name>, a <DisplayName> and an
<Expression>. The expression can be a single property (e.g. count) or formula
containing operators. Example for a formula:
(Sum(durationIdle+durationExec)/Sum(count)/60) . The expression
must return a single value if the x axis and the y axis are defined. This
requires that mathematical operators in the formula must be included in an
aggregation operator like Sum(x) or Min(x), see “Expressions” on page 91.
BAM supports multiple values if only one axis is defined. Only one value
element is supported is if x and y axes are defined. Multiple values are
supported if only one axis is defined. Optionally, you can define a list of
thresholds.
For a Gauge chart, you can define thresholds. Thresholds define the green,
yellow and red segments of the gauge. A threshold contains a lower and an
upper value and a status.
<Query>
The query must be supported by the Repository Bridge search getHits
method.
For details on how to use the Query Language, see Open Text Transactional
Content Processing - Using the TCP Context Server Query (TCP-PQU).
Note: With the query you can retrieve properties from the BAM
database tables, see “Database tables” on page 95. To retrieve a specific
property, use the column name starting with a lower case letter, e.g. to
retrieve the ProcessInstanceId use processInstanceId.
To follow a relation use the column name and add a to as prefix and
remove the Id suffix, e.g. use toStartDate for StartDateId.
Axes
Requires the X and the Y axis definition.
Values
Supports only one value definition.
Titles
The display name of the value definition is shown as Y axis title. The display
name of the X axis is shown as X axis title. The description of the report is shown
as report title.
Legend
The values are shown on the legend.
Code sample
<Chart>
<Type>LineChart</Type>
<Axes>
<YAxis>
<Name>Process</Name>
<DisplayName>Process name</DisplayName>
<Expression>name</Expression>
</YAxis>
<XAxis>
<Name>Hour</Name>
<DisplayName>Hour</DisplayName>
<Expression>Concat(hour)</Expression>
</XAxis>
</Axes>
<Values>
<Value>
<Name>Count</Name>
<DisplayName>Finished processes</DisplayName>
<Expression>Sum(count)</Expression>
</Value>
</Values>
</Chart>
Axes
Requires the X, and the Y axis definition
Values
Supports only one value definition
Titles
The display name of the X axis is shown as X axis title. The display name of the Y
axis is shown as Y axis title. The description of the report is shown as report title.
Code sample
<Chart>
<Type>ColumnChart3D</Type>
<Axes>
<YAxis>
<Name>Step</Name>
<DisplayName>Step name</DisplayName>
<Expression>name</Expression>
</YAxis>
<XAxis>
<Name>User</Name>
<DisplayName>User name</DisplayName>
<Expression>displayName</Expression>
</XAxis>
</Axes>
<Values>
<Value>
<Name>Duration</Name>
<DisplayName>Average duration in
minutes</DisplayName>
<Expression>(Sum(durationIdle+durationExec)/Sum(count)/60)</Expressio
n>
</Value>
</Values>
</Chart>
Axes
Requires either the X or the Y axis definition
Values
Supports more than one value definition. Each value definition is displayed as a
chart line.
Titles
The display name of the axis is shown as X axis title. The description of the
report is shown as report title.
Legend
The display name of the values are shown in the legend.
Code sample
<Chart>
<Type>MultiValueChart</Type>
<Axes>
<XAxis>
<Name>Process</Name>
<DisplayName>Process
name</DisplayName>
<Expression>name</Expression>
</XAxis>
</Axes>
<Values>
<Value>
<Name>Duration</Name>
<DisplayName>Overall
duration</DisplayName>
<Expression>(Sum(durationIdle+durationExec)/Sum(count)/60)</Expressio
n>
</Value>
<Value>
<Name>DurationExec</Name>
<DisplayName>Execution
duration</DisplayName>
<Expression>(Sum(durationExec)/Sum(count)/60)</Expression>
</Value>
</Values>
</Chart>
Axes
Requires either the X or the Y axis definition
Values
Supports more than one value definition. Each value definition is displayed as a
gauge. You can define up to four gauges. To define the color segments, use the
<Treshold> parameter; see “XML schema” on page 82.
Legend
The display name of the value is shown as gauge chart title.
Code sample
<Chart>
<Type>GaugeChart</Type>
<Axes>
<YAxis>
<Name>Year</Name>
<DisplayName/>
<Expression>year</Expression>
</YAxis>
</Axes>
<Values>
<Value>
<Name>Count</Name>
<DisplayName>Count of finished
processes.</DisplayName>
<Expression>Sum(count)</Expression>
<Thresholds>
<Threshold>
<Status>Green</Status>
<Lower>0</Lower>
<Upper>20</Upper>
</Threshold>
<Threshold>
<Status>Yellow</Status>
<Lower>20</Lower>
<Upper>50</Upper>
</Threshold>
<Threshold>
<Status>Red</Status>
<Lower>50</Lower>
<Upper>100</Upper>
</Threshold>
</Thresholds>
</Value>
</Values>
</Chart>
15.2.3 Expressions
The <Expression> element can contain the following properties:
Variable
A variable must be a property returned by the repository query (search).
Operator
With the operators you can execute typical calculations.
Note: The operator names are case-sensitive. This means, for example, that
only the notation Sum(x) is correct, but not sum(x).
The input variable x can be either an expression or a variable that contains a list
of values.
The following operators are available:
• Sum(x)
Returns the sum of x.
• Avg(x)
Returns the average value of x.
• Count(x)
Returns the number of values contained in x.
• Max(x)
Returns the maximum value contained in x.
• Min(x)
Returns the minimum value contained in x.
• Concat(x0, x1, x2, …)
Joins separate values into a single text string, where x0...xN are single text or
numeric values.
• Mathematical operators
Addition (+), Subtraction (-), Multiplication (*) and Division (/). In contrast
to the operators listed above, a mathematical operator can return a list of
values (array) if the input values are also lists.
Operators for parameter expressions
For these date/time related expressions it is possible to define an offset. x is the
offset unit and y is the offset value.
Offset units – y = year; M = month; d = day; h = hour; m = minute; s = second.
Note: The date/time related expressions must be used with either no
parameter or both.
• Year(x,y) – Returns the actual year.
• Month(x,y) – Returns the actual month (1-12).
• DayOfMonth(x,y) – Returns the actual day of month (1-31).
Examples
• Calculate the average of the result of the expression (a*b).
Avg(a*b)
• Calculate the year in 100 days. For instance, on November 1, 2007, the result is
2008.
Year(d, 100)
• Calculate the year a month ago. For instance, on January 1, 2008, the result is
2007.
Year(M, (0-1))
• Calculate the month seven days ago. For instance, on January 1, 2008, the result
is 12 (for December).
Month(d, (0-7))
• Concatenate the values for year, month, dayOfMonth to a single text that looks
like 1970/01/01.
Concat(year, "/", month, "/", dayOfMonth)
Fact tables Fact tables store numerical values of the process steps and process instances. They
are in the center of the star schema.
Dimension Dimension tables store data related to the axis of investigation of a fact. The most
tables popular tables of this type are information about time and users.
Note: With the query you can retrieve properties from the BAM database
tables, see “Database tables” on page 95. To retrieve a specific property, use the
column name starting with a lower case letter, e.g. to retrieve the
ProcessInstanceId use processInstanceId.
To follow a relation use the column name and add a to as prefix and remove
the Id suffix, e.g. use toStartDate for StartDateId.
Level Aggregated data is stored in the Level column. This column identifies the raw
values or numeric values aggregated for the existing dimensions over a certain
period of time. The following table lists the supported aggregation levels:
Level Description
0 Raw
3 Hour
4 Day
6 Month
8 Year
<BAMReport>
<Id>CC-AvgStepDuration</Id>
<ShortName>Step Duration</ShortName>
<Expression>(Sum(durationIdle+durationExec)/Sum(count)/60)</Expression>
</Value>
</Values>
</Chart>
<Parameters>
<Parameter>
<Name>endMonth</Name>
<Expression>Month()</Expression>
<Type>Integer</Type>
</Parameter>
</Parameters>
<Query>
<search>
<queries>
<query>
<from>
<itemtype name="/bam/BAM_F_SubActivity"
/>
<itemtype name="/bam/BAM_D_ProcessStep"
/>
<itemtype name="/bam/BAM_D_User" />
</from>
<select>
<property name="count" />
<property name="durationIdle" />
<property name="durationExec" />
<relationship name="toUser">
<property name="displayName"/>
</relationship>
<relationship name="toProcessStep">
<property name="name"/>
</relationship>
</select>
<where>
<and>
<equal>
<property name="level"/>
<literal value="4"
datatype="Integer"/>
</equal>
<equal>
<relationship
name="toEndDate">
<property
name="month"/>
</relationship>
<parameter
name="endMonth" datatype="Integer"/>
</equal>
</and>
</where>
</query>
</queries>
</search>
</Query>
</BAMReport>
<BAMReport>
<Id>GC-FinishedProcesses</Id>
<ShortName>Finished Processes Gauge</ShortName>
<LongName>Count of finished processes</LongName>
<Description>Displays the processes finished.</Description>
<Chart>
<Type>GaugeChart</Type>
<Axes>
<YAxis>
<Name>Year</Name>
<DisplayName/>
<Expression>year</Expression>
</YAxis>
</Axes>
<Values>
<Value>
<Name>Count</Name>
<DisplayName>Count of finished processes.</DisplayName>
<Expression>Sum(count)</Expression>
<Thresholds>
<Threshold>
<Status>Green</Status>
<Lower>0</Lower>
<Upper>20</Upper>
</Threshold>
<Threshold>
<Status>Yellow</Status>
<Lower>20</Lower>
<Upper>50</Upper>
</Threshold>
<Threshold>
<Status>Red</Status>
<Lower>50</Lower>
<Upper>100</Upper>
</Threshold>
</Thresholds>
</Value>
</Values>
</Chart>
<Parameters>
<Parameter>
<Name>currentYear</Name>
<Expression>Year()</Expression>
<Type>Integer</Type>
</Parameter>
</Parameters>
<Query>
<search>
<queries>
<query>
<from>
<itemtype
name="/bam/BAM_F_ProcessInstance" />
<itemtype name="/bam/BAM_D_ProcessClass"
/>
<itemtype name="/bam/BAM_D_Date" />
</from>
<select>
<property name="count" />
<relationship name="toEndDate">
<property name="year"/>
</relationship>
</select>
<where>
<and>
<equal>
<property name="level"/>
<literal value="6"
datatype="Integer"/>
</equal>
<equal>
<relationship
name="toEndDate">
<property
name="year"/>
</relationship>
<parameter
name="currentYear" datatype="Integer"/>
</equal>
</and>
</where>
</query>
</queries>
</search>
</Query>
</BAMReport>
<BAMReport>
<Id>LC-FinishedProcesses</Id>
<ShortName>Finished Processes</ShortName>
<LongName>Finished processes by process and hour</LongName>
<Description>Displays the finished process by process and
hour.</Description>
<Chart>
<Type>LineChart</Type>
<Axes>
<YAxis>
<Name>Process</Name>
<DisplayName>Process name</DisplayName>
<Expression>name</Expression>
</YAxis>
<XAxis>
<Name>Hour</Name>
<DisplayName>Hour</DisplayName>
<Expression>Concat(hour)</Expression>
</XAxis>
</Axes>
<Values>
<Value>
<Name>Count</Name>
<DisplayName>Finished processes</DisplayName>
<Expression>Sum(count)</Expression>
</Value>
</Values>
</Chart>
<Query>
<search>
<queries>
<query>
<from>
<itemtype name="/bam/BAM_F_ProcessInstance" />
<itemtype name="/bam/BAM_D_ProcessClass" />
<itemtype name="/bam/BAM_D_Time" />
</from>
<select>
<property name="count" />
<relationship name="toProcessClass">
<property name="name"/>
</relationship>
<relationship name="toStartTime">
<property name="hour"/>
</relationship>
</select>
<where>
<and>
<equal>
<property name="level"/>
<literal value="3" datatype="Integer"/>
</equal>
</and>
</where>
<order>
<relationship name="toStartTime">
<property name="hour"/>
</relationship>
</order>
</query>
</queries>
</search>
</Query>
</BAMReport>
<BAMReport>
<Id>MC-AvgProcessDuration</Id>
<ShortName>Process Duration</ShortName>
<LongName>Average duration by process</LongName>
<Description>
Displays the execution and overall duration per process in minutes.
</Description>
<Chart>
<Type>MultiValueChart</Type>
<Axes>
<XAxis>
<Name>Process</Name>
<DisplayName>Process name</DisplayName>
<Expression>name</Expression>
</XAxis>
</Axes>
<Values>
<Value>
<Name>Duration</Name>
<DisplayName>Overall duration</DisplayName>
<Expression>(Sum(durationIdle+durationExec)/Sum(count)/60)</Expression>
</Value>
<Value>
<Name>DurationExec</Name>
<DisplayName>Execution duration</DisplayName>
<Expression>(Sum(durationExec)/Sum(count)/60)</Expression>
</Value>
</Values>
</Chart>
<Query>
<search>
<queries>
<query>
<from>
<itemtype
name="/bam/BAM_F_ProcessInstance" />
<itemtype name="/bam/BAM_D_ProcessClass"
/>
<itemtype name="/bam/BAM_D_Date" />
</from>
<select>
<property name="count" />
<property name="duration" />
<property name="durationExec" />
<property name="durationIdle" />
<relationship name="toEndDate">
<property name="year"/>
</relationship>
<relationship name="toEndDate">
<property name="month"/>
</relationship>
<relationship name="toEndDate">
<property name="dayOfMonth"/>
</relationship>
<relationship name="toProcessClass">
<property name="name"/>
</relationship>
</select>
<where>
<and>
<equal>
<property name="level"/>
<literal value="3"
datatype="Integer"/>
</equal>
</and>
</where>
<order>
<relationship name="toProcessClass">
<property name="name"/>
</relationship>
</order>
</query>
</queries>
</search>
</Query>
</BAMReport>
a document of a specific record type via Add -< Specific attachment type>, for
example Add Invoice.
The specifics of both variants are:
Add -< Specific attachment type>
Embed a record type in a process by specifying process attributes to add record
type properties in Open Text Process Designer (Process Designer for short), see
section 7.1 "Adding record type properties" in Open Text Process Designer -
Customizing Guide (PR-CPD). At this stage, you have to specify a data object
name for the attributes. The data object name cannot be localized. It appears in
the TCP GUI as defined in Process Designer.
TCP Web Client displays the data object name as a separate menu item in the
Add menu of work items. When the user selects this menu item, searches for
documents and selects a document for being added, the attachment is “filled”
with real content.
Note: The record type of the record (document) selected by the user must
match with the one used for the attachment. Otherwise the user receives an
error message.
Add - Attachments
The name of the attachment is created by using the short name of the record
(type) the user adds to the process.
Notes:
• The access from the process to the properties of the record type is only
possible in very rare cases, because it requires that the short name of the
record type equals the data object name used in the process.
• If the short name of the record type is localized, the properties of the
record type are not available for all languages in the localized TCP GUI.
For information about localization, see section 15.2 "Localizing a TCP
project" in Open Text TCP Modeler - Customization Guide (TCP-CGD).
Keep this in mind when defining record types in TCP Modeler and data
objects in Process Designer.
Typography 14
X
XML Activator 49
XML schema
BAM 82