Modified on by gebhardt
by Richard Gebhardt
The progress map is a configurable user interface control that allows an agent to quickly determine an object's status in the context of its lifecycle. The control was updated in IBM SmartCloud Control Desk 7.5.1 to add support for Service Requests, Incidents and Problems in addition to Changes and this tutorial will show you how to add the feature to other applications.
The progress map is instantiated by a control element in the application definition. To see an example:
Go To → System Configuration → Platform Configuration → Application Designer
and export the application definition for the INCIDENT application.
Search the XML for the word 'progressmap' and you'll see the following progress map entry:
flowseqmaxproperty is the name of (pre-processed) System Property that contains the progress map sequence.
flowstatusattribute is the name of the attribute modeled by the progress map
Adding the Progress Map to the Purchase Requisition Application
This exercise will show you how to add a progress map that tracks status to the purchase requisition application.
Create the flow sequence system property
a. Go To → System Configuration → Platform Configuration → System Properties
b. Click on 'New Row' under the Global Properties table
c. Set Property values:
Property Name: pmgui.progressmap.pr.seq
Description: Flow sequence for Purchase Requisition
Set the value of the flow sequence system property
The flow sequence is simply a comma-delimited series of values that typically (and in the case of this example) correspond to domain valueids. Since we're tracking status, we're interested in the PRSTATUS Synonymdomain
We want the following state sequence to represent our PR lifecycle:
Canceled :: Waiting on Approval → Approved → Closed
So we set the value of the pmgui.progressmap.pr.seq property to:
a. (While still on the pmgui.progressmap.pr.seq record), set property values:
Global Value: PRSTATUS|CAN,PRSTATUS|WAPPR,PRSTATUS|APPR,PRSTATUS|CLOSE
b. Click 'save'
c. Check the checkbox next to pmgui.progressmap.pr.seq record
d. Select 'Live Refresh' under common actions
e. Click Ok
Add the progress map element to the Purchase Requisition application
a. Go To → System Configuration → Platform Configuration → Application Designer
b. Search for 'PR'
c. Export and save the application definition
We want to add the progressmap to the top of the application, just above the header details (PR number etc).
d. Open the pr.xml file in your favorite editor and search for the main_grid1 section.
<section border="true" id="main_grid1">
e. Add a new sectionrow
<section border="true" id="main_grid1">
<section border="true" id="main_grid1">
flowstatusattribute="STATUS" height="54px" id="progressmappr"/>
f. Save the file
g. Import pr.xml using Application Designer
When implementing service request, incident, problem or change management processes, you will probably come across situations where you want individuals to affect the progress of these processes through input that they provide by email.
Tivoli's process automation engine provides base capabilities to process transactions that come from e-mail messages. Many customers and solutions already have some level of implementation using the email listener function. Using the email listener, you can create or update tickets. More information about the email listener can be found at the System Administrator Guide
, Chapter 6. These implementations usually require a reasonable level of customization, including Java coding.
In order to ease implementation of email updates, a new accelerator called Maximo for E-mail
has been provided in the ISM Library. This accelerator uses the same base process automation engine capabilities, including email listener, escalations, workflows and communication template, but enhances it by enabling customers to implement solutions that update tickets, work orders, changes based on email input through configuration, thus avoiding the need for Java coding for the most common situations. You can read more about this in the Asset Management blog
We recently expanded our SaaS portfolio to include a highly flexible
service management solution delivered on the IBM Cloud, Tivoli Live -
service manager. This offering leverages the same enterprise-class
software that has been hosted at over 1000 customer sites and delivers a
comprehensive set of Gold and Pink Elephant Certified ITIL processes.
Tivoli Live brings together all these capabilities under a single, yet
modular offering that provides users with the flexibility to focus on
the capabilities that they need and scale up or down as their business
The key capabilities include:
- Problem and incident management
- Change and release management
- Configuration management database
- Service catalog
- IT asset management
You can now experience Tivoli Live first hand through our live demo
! Check it out now and let us know what you think. And visit this site
to learn more about Tivoli Live and connect with our experts through our developerWorks forum. Service Desk Agent Start Center Snapshot
Modified on by alucches
Are you a Developer who configures SmartCloud Control Desk or other process automation engine products to meet your business requirements? Have you wanted to talk to the team members behind the Application Designer and the User Interface framework to ask the best way to configure the user interface?
If so please attend an hour-long session on Thursday May 16th @ 8:00 AM CST and bring your questions. If we have a large number of attendees, we will probably mute the phone conference lines and take questions in the text chat area and respond to them.
Submit your questions here so they can be up or down voted and the most urgent ones can be addressed. Our Maximo and Process Automation Developer Forum located here is also a source of great information sharing between our Developers, so you might search ahead of time there for an answer before bringing it to the session.
Here's the webconference link:
In the Join a Meeting section on the Left, enter the Conference ID below and your user name, and email and company name and click the Submit button.
Conference ID: 3635954
Phone conference numbers are listed at the link below for all countries. Dial into the phone # and give the participant code to hear the session.
Participant Code: 39394312
Modified on by alucches
The ability to easily create Action Scripts in SmartCloud Control Desk 7.5 is a great new feature for Power Users and developers.
The benefits of action scripting vs Java customization are:
– Scripts can be migrated from development to production with Migration Manager.
– No need to rebuild EAR file
– No need to restart the system
– Action scripts are less likely to get trampled in an upgrade
The customer requirement was to create a custom description that updates when the CI is moved from the default "NOT READY" state. The script would update the description with various ci spec's to create a new description like "Virtual - 2 CPU's @ 2.3Ghz - 4.0 GB Mem".
A little analysis shows we need the following CISpec values:
Which we can get with the following relationships from the CI object
Using the Automation Script wizard create a new script using a Object Launch point.
Launch Point "CustomCIDesc"
Events "Add" and "Update"
Since the CI Specs do not exist when a CI is initialized we can't set that as an event.
This is a new script.
Give the script a name and choose a scripting language. I chose jython.
We now need to define the variables that the script will use. There are three type of variables that can be defined:
IN Passes a value into the script
OUT Passes a value out of the script
IN/OUT Which does both.
By defining the following variable as explicit variables the wizard takes care of all the under the covers plumbing.
Variable Variable Type Binding Type Bound to
cpughz IN ATTRIBUTE SCI_CISPEC_CS_CPUSPEED.NUMVALUE
memgb IN ATTRIBUTE SCI_CISPEC_CS_MEMORY.NUMVALUE
numcpus IN ATTRIBUTE SCI_CISPEC_CS_NUMCPUS.NUMVALUE
virtual IN ATTRIBUTE SCI_CISPEC_CS_VIRTUAL.ALNVALUE
srclass IN ATTRIBUTE CLASSSTRUCTURE.CLASSIFICATIONID
customdesc OUT ATTRIBUTE DESCRIPTION
Notice in the script below I came back and added additional logic for when the virtual attribute was null. This is an an example of retrieving a value using the implicit variable mbo.
# * GBSP Confidential
# * Written by Clark Carradine
# This script sets the custom description for a CI
manuf = mbo.getString('SCI_CISPEC_CS_MANU.ALNVALUE')
if srclass.endswith('COMPUTERSYSTEM') :
if memgb is not None:
memgb = round(memgb / 1073741824,2)
if cpughz is not None:
cpughz = round(cpughz / 1000000000,2)
if ( virtual == 'true' ) or ((virtual is None) and ( manuf.startswith('VMware') )) :
type = 'Physical'
customdesc = "%s - %d CPU's @ %sGhz - %s GB Mem" % (type, numcpus, cpughz, memgb )
customdesc = ''
This certainly just scratches the surface with what can be done with Action Scripts.
Unplanned outages are expensive and can lead to service level agreement breaches. Wouldn’t it be nice if you could know which Changes will cause an unplanned outage before they cause the outage? SmartCloud Control Desk can do just that.
SmartCloud Control Desk runs analytics every day and identifies any Change whose implementation schedule has a schedule conflict. Three types of schedule conflicts are detected. First, whether any affected CI will have an outage outside of its Change Window. Second, whether any Blackout Period will be violated. And lastly, whether multiple Change implementations will be affecting the same CI at the same time.
When analyzing Change schedules, the analytics takes into account not only the configuration items (CIs) which will be modified by the Change (the target CIs), but also any CI which will have a service outage during the implementation (impacted CIs). Why is this important? Take the case where a Change implementation will take a computer system offline. What if there is a database server running on that computer system which is needed by a critical business application? It may not be obvious that a service running on that computer system is needed by an application running elsewhere. As a result, the Change Window of that critical business application wasn’t taken into account when the implementation schedule was proposed. No need to worry, because the schedule conflict analytics will see the dependency and report the Change Window conflict.
Similarly, what if a Change to upgrade the database server running on the computer system was scheduled to be done at a time when the computer system will be offline due to another Change implementation? Clearly, that software will not be available to be upgraded, so that Change implementation will either be postponed until the computer system comes back up (thus potentially slipping outside of the Change Window), or have to be rescheduled (thus causing extra work for the change advisory board to discuss and authorize it again). Again, the schedule conflict analytics can identify this issue as soon as schedule dates are entered on the Change records, so the conflict can be resolved before it happens.
Occasionally, these schedule conflicts are intentional. For example, making several updates to a computer system while it is down. In these cases, schedule conflicts can be marked as approved. Once a conflict is marked approved, it will be ignored by future executions of the analytics.
There are several ways to view the results of the schedule conflicts analytics. There is an IT Changes with Schedule Conflicts report. As with any report, it can be scheduled to run automatically and be delivered in email. Another way to view the analytics results is in the Schedule Conflicts section on the Schedule tab of the Changes application. The section lists any identified conflicts, has a button to execute the analytics on demand, and is also where a schedule conflict can be marked approved. Lastly, any Change with a schedule conflict will be displayed in red in the Change Schedule application.
When using products like SRM, CCMDB, TAMIT in an integrated fashion, you may come across requirements to load and extract information to or from the process automation engine environment. For these situations, there is a set of tools that can be used. You should use these tools according the best practices that apply for different scenarios and domains.
To understand the available tools for data loading and extraction and best practices for their usage, please check this paper: http://www.ibm.com/developerworks/wikis/display/maximo/Data+Integration+Best+Practices
The Best Practices for System Performance 7x
white paper has been updated to version 1.5.
This is a minor update to further clarify tuning settings for 32-bit environments.
We value your feedback on this document, so please use the comment
feature for this blog entry and let us know what you like and dislike
about the performance best practices white paper. What has helped you
the most when using the document? Are there topics we should add or
expand on? Please let us know how we can improve the white paper!
Myth versus Truth > Beta tests are costly and heavy.
This is not true.
A classical Beta Test is the perfect opportunity for a customer to learn about new product capabilities, verify improvements and go on to prepare for its adoption and related upgrade. However, this might require time and dedicated resources to fully benefit from the Beta tests.
To remove the time and resource inhibitors, we are now launching the Beta as a Service initiative that needs only 1 hour of your time.
We provide you with a ready test environment, to be accessed through a web meeting session, in which you can choose key new features to test; as many small tests as you can afford.
Give it a try!
1) Send Floriana.email@example.com a request to participate to the current release with the date and time
2) Access the web session and test the new features .. a Lab expert will assist you with your experience and collect your comments and impressions
Information to current release: https://www.ibm.com/developerworks/servicemanagement/pa/twa/index.html
During last week’s reporting web conference, one question that was asked was how you could
configure your favorite reports to display directly on the Start Center. These might be reports you frequently access, or that you
want your users to focus on as they contain critical information.
One way you can do this is by using the Report List
Portlet. Within this portlet, you can select
any number and types of reports to display on the Start Center,
including detail, ad hoc and reports enabled thru report integrations.
Additionally, you could create multiple report list portlets
on a start center page, with each containing groupings of related reports by
application, location or site.
To enable the report list portlet, you must first grant
access to the Report List Setup Application in the Security Group Application.
Another option you have is to set up your KPIs on your start
center to link to related reports.
KPI is displayed in yellow or red status, your user can then click on the
related report to find out what is causing the issue so he can take immediate
Enabling your users to directly access reports on the Start Center via t the Report List Portlet or KPIs is a great way to save them multiple mouse clicks and time.
For additional information on setting up the Report List Portlet or on
configuring KPIs for report drilldown,, please reference this page
On Tuesday, September 20th, I had an amazing
opportunity to host a web conference for our Maximo and Version 7 clients. This session shared the latest information on Business Intelligence and Reporting, but most importantly - was opened up for over 60 minutes to give you - our clients - the opportunity to ask questions.
With representatives from over 15 companies, you asked tremendous, detailed questions on reporting strategy and functionality. Your questions led others to ask questions - so you quickly learned information and best practices from each other.
missed the session, the questions clients asked are detailed here
can also locate this page by scrolling down to the FAQ section of the Report
Wiki Page located here
Please comment back if you would like similar web conferences in the future
- or if you have any other reporting questions. Thanks!
How many custom reports do you have? Do you have 25, 50 – or is your number in the
range of 100 to 250 custom reports? Or
are you in the category where you don’t know how many custom reports you have
because your users are creating their own uncontrolled reports in tools like
Microsoft Access or Microsoft Excel?
The topic of custom reports leads to a myriad of questions
- Is each custom
- What determines if
a custom report is approved, and then developed?
- Should super users be given database and report
- What mechanisms are
in place to insure that correct data is being returned in the custom reports?
- How much do custom reports cost -- in terms of design,
development, test, administration, maintenance dollars and resources?
As John Heywood told us back in the 16th century
that ‘Rome was
not built in one day’. … my thoughts in
the 21st century are that we can’t answer all those questions in
today’s BiLog. However, we can start a
plan to give you ideas on how you can reduce your number of custom reports.
One of the first and directly actionable means to reduce
your custom reports is to begin using V7’s Ad Hoc Reporting feature, QBR. By using QBR within any V7 application, you and/or
your users can quickly create reports that can include complex where clauses,
filters, sorting, grouping, and parameters.
QBR functionality enables key features including -
Enabling users to quickly create their own reports
for their unique business needs
- Does not require technical, development skills,
like Java, or database knowledge to create the report
- Does not consume development hours in creating and
maintaining large numbers of unique reports, which may only be used by a very
small number of users
The cornerstone of QBR functionality are Report Object
Structures, ROS. ROS enable users to
select fields from multiple categories (objects) for their ad hoc reports. ROS are designed to enable
users to quickly visualize their hierarchies and parent/child relationships. They are created in the Object Structure
application of V7, and in the next BiLog, we’ll discuss their key attributes
and how to extend them.
Choices. Every aspect
of our lives is packed with them.
Firefox, Chrome, Safari or IE? Small,
Medium, Large or Jumbo? Mouse or
touchpad? Apple pie – with or
without ice cream? Shoes, Sneakers or
flip flops? To tweet or not to
Keeping with that trend, we are now enabling you additional
choices for your development of V7 reports with the delivery of Portrait Report
Report Templates are one of a few different ways your report
developers can create custom reports in the Version 7 Report Design Tool. Other ways include modifying the delivered
reports, or exporting an ad hoc report from the Maximo applications.
When you use the report templates as a starting point for
your custom report designs, they already contain for you the required library
files and data source to enable the integration between Maximo and
reporting. The templates are available
in a variety of graph types, and include listing and detail report formats.
Currently, the V7 product delivers landscape templates so the
maximum number of fields can be displayed on a report. However, to enable you additional choices and
increasing flexibility to meet your unique business needs, you can now download
a set of portrait report templates from IBM’s ISM Library. You can download these templates here or by accessing its shortened url at http://bit.ly/iwBvoc
Enabling the new portrait report templates is
straightforward. Simply extract the zip
file located in the ISM library to the Maximo report directory of your report
developer. Then, open the BIRT Report
Designer, and select New Report. You will
then see an updated listing of templates, including both the previous Landscape
and New Portrait Templates. The Portrait
templates are identified with the text Portrait in their title, like 'Tivoli
Maximo Portrait Subreport Template'.
Your selection of a landscape versus portrait report
template impacts the amount of page area available to you horizontally. Landscape reports enable 10” of field space
horizontally versus 7.5” of field space with letter size paper.
You can view additional details and on report page size and
orientation on this wiki page or by accessing its shortened url at http://ibm.co/ms8QtD. Additionally, information is also in this V7 Report Page reference
document here . This document additionally details how you can
change all or a subset of your existing reports to use portrait orientation by
either modifying the System Library File or the Master Page.
New features in V7 reporting continually enable you additional
report choices……but for your apple pie selection...we would suggest yes...with a scoop of cold, vanilla ice cream!
When disasters like the massive earthquake earlier this year
in Japan, or the deadly earthquake
that hit Haiti
in 2010, people and organizations from all over the world work together to help
and rebuild these devastated areas.
I am very lucky to have the opportunity to help locally by
rebuilding houses for people in need thru Habitat thru Humanity. Recently, I worked with an amazing team of
individuals, including Power Company Employees, a school teacher, housewife,
retired architect, and high school teenagers, in rebuilding a property that
will soon house 10 families. Although our knowledge of sister joists and
smart squares was minimal, with some explanations we were all quickly on the
path of using our universal knowledge of crowbars, hammers and nails.
So how does rebuiliding tie into today’s BiLog entry on
localization? Some icons like hammers
and nails speak a universal language.
Similar universal icons exist in Version 7 to communicate functionality,
like the save, edit, delete and print icons.
The functionality enabled thru these icons does not have to be explained
in words – their images symbolize their functionality.
However, other items must be explained in a language the
user understands. Whether it is breaking
down the concept of a sister joist to a to a group on non-tradesmen, or detailing
the description of an asset or ticket in the language of the user –
we often need to enable text in localized languages in V7 and in V7
V7 reporting has unique requirements, as there are four
very different components which must be enabled for localized text values. These include
1. Report Description
displayed in Maximo Session
2. Report Request
Page displayed in Maximo Session
Titles/Labels displayed in the Report
4. Report Data
displayed in the Report
Each one of these four components is enabled for
localization in a unique way. Whether it
is it thru the corresponding L_Database tables, or thru the use of unique
scripting code within the report design file, the applicable report
description, parameters, titles, labels and data can all display within the
user’s specified language. You can find
information on how each of these components is enabled here.
To enable localization, there are
a few key setup steps which you must enable if you have a multiple language
environment which are detailed here
And finally, if you have created
custom reports, information on how you can enable them for localization is
This report localization information can also be found in the Report Localization Reference Guide, which contains more details and screenshots, along with detailed sample use cases explaining how you can enable custom report localization. This is listed, along with other report reference guides on this V7 wiki site.
Please comment back if you have
any feedback on this, or other topics you’d like to hear about. Thank you!
This BiLog entry discusses
the key items to consider when defining maxrelationships in your ROS.
One of its major components is
cardinality, which is used to
define the type of the database relationship. In the case of reporting, there are two
types: One-to-one (1:1) or single
relationships, or One-to-many (1:N) or Multiple Relationships.
To highlight the differences in cardinality, let’s use an
example from the Purchase Requisition application.
The relationship between a Purchase
Requisition and a Company is a single relationship, as only a single Company
can be associated to a single PR.
However, the relationship between a
Purchase Requisition and Purchase Requisition Lines is a multiple relationship,
because for each PR (single) there can be multiple PR Line records (multiple).
When creating or modifying Report Object Structures (ROS)
for your QBR reports, you will need to evaluate and define the cardinality of
the relationship as either single, multiple or undefined. If you use the values of undefined or
multiple, the relationship will be treated as a 1:N relationship.
So why is cardinality so important to the ROS
definition? As your users begin adding
fields to their own QBR reports, the relationships of those fields are evaluated
to determine if they are single or multiple relationships. Depending on whether your user has selected
a Summary or Detail Style report, will determine if they can add their selected
For summary reports
- You can select
any number of 1:1 relationships
- You can select only one 1:N
For detail reports
- You can select any number of 1:1
- You can select any number of 1:N
To enable maximum ‘cardinality’ flexibility in QBR Report
creation, you may want to recommend your users select the Detail Report Styles.
You can find more details on cardinality in the Version 7 QBR Ad Hoc Reporting Guides in the section titled 'Understanding Database Joins and Cardinality'. To access this document, click here for the QBR Report Wiki Page or here for the Report User Reference Material Page.