Sometimes an organisation needs to provide certain users with simple
query tools over their key applications rather than complete access to
use the application. In this case it may be appropriate to create your
query tool using BIRT and format the output to resemble the original
application. This is part one of a two part series.
The full version of this report, including screen shots, in full
colour pdf is available for free download at
http://www.BIRTReporting.com
INTRODUCTION
============
Do you have Maximo users who, for the most part, only need to run
queries over your Maximo data? Most large organisations do and if you
have not yet identified them then now may be the time. Maximo 7.1 and
above, of course, comes with BIRT 2.3.2 as the budled report writer
software, however the open source community have developed BIRT beyond
this version and at the time of writing 2.6.1 is the current release.
BIRT can be used for more than simple reporting duties so in this
tutorial we look at how to use the latest version of open source BIRT
as a query tool over Maximo, running from outside the Maximo
environment and how to format the resultant “reports” to resemble the
Maximo screen that the user would see if they were logged on to Maximo
itself. Even if you don’t wish to report over Maximo, this tutorial
provides a valuable insight into the advanced formatting capabilities
of BIRT.
The complete design files and all of the image files that were used in
the creation of this report are available free of charge to readers of
my book “BIRT for Beginners” or readers of my “BIRT for Maximo Self
Study Workbook”. Just visit the readers area of my web site:
http://www.birtreporting.com/ReadersEntryPage.html
WHAT YOU WILL NEED
In order to create the “look and feel” of this report you will need
some graphic files. You can create these yourself with any image
editing software or if you are a reader of my books then you can
download the files from my web site.
The files are as follows:
MXReportHeader.jpg
This is an image I created to sit at the top of all the reports and
resembles the Maximo header image. Of course you can create your own
image to resemble your corporate reporting style or just use mine.
MXArrow.jpg
This is the arrow that sits to the left of each detail line of the
report. In this example we are displaying purchase order lines. In the
Maximo application this image would be active and when clicked on it
would reveal more details about the parchase order line. In this case
it is a static image, but could easily be made into a hyperlink which
would run a secondary report to show the line details.
MXFindBG.jpg
This image is the background to the search toolbar, that sits just
beneath the main report header. It is a thin sliver of an image and
the report design uses standard HTML functionality to repeat it to
fill the entire width of the search bar.
MXLookupBtn.gif
This image is the hyperlink that actually runs the report, once the
user has selected the PO Number that they want to view.
You will also need a copy of the open source BIRT Report Designer and
since this report uses a Java Server Page (JSP), you will need
something with which to create and edit one of those. Luckily the BIRT
designer is Eclipse based and so forms an excellent choice for JSP
editing too.
For details on how to download and intall the BIRT Designer please see
my report: The Complete Getting Started Guide to BIRT which is
available for free from the members area of
www.BIRTReporting.com.
THE BASIC REPORT
================
The BIRT report at the heart of this example is a very simple listing
of purchase order lines, combined with a little information from the
report header.
When creating a report with BIRT 2.3.2 for Maximo you need to use the
scripted data source method, however, when creating a report which is
designed to run outside of Maximo there is a much easier way to create
a data source and a data set. Again, follow the example provided in my
beginners guide: The Complete Getting Started Guide to BIRT which is
available for free from the members area of
www.BIRTReporting.com.
To create the example report I used for the Maximo PO Lines I created
2 datasets, one to give me a list of all the PO numbers so that the
user could select one easily and one to source all the PO and POLine
data. Of course you can use your own SQL and select whatever data you
like for your example.
My first SQL query looks like this:
select distinct PONum
from PO
And my second like this:
select
po.description as POHeadDesc,
poline.*,
left(poline.description,60) as LineDesc, left(po.description,50) as
description,
po.status,
po.totalcost
from POLine
inner join po on po.ponum = poline.ponum
where poline.ponum = ?
TIP: It is always a good idea to write your SQL statements in a SQL
query editor such as TOAD or MS SQL Enterprise Manager to ensure they
work, before moving them into BIRT.
The second query uses a parameter to provide the value to the SQL at
runtime. In my example this is going to be the PO Number selected by
the user.
Once you have created your two datasets you should be able to see them
in the BIRT Designer.
POLines is the data set that returns the line details that will be
used to populate the report and POList is the data set that returns
the list of PO’s that the user will select from at runtime.
ADDING THE PARAMETER
====================
To add the report parameter that will be selected by the user at
runtime, right click on the Report Parameters node and select New
Parameter, then complete the parameter dialogue.
Notice how the display type for the parameter is set to Combo Box –
this is because we want the user to be able to either select from a
drop down list of PO numbers or type in their own PO number.
The selection list values are set as Dynamic and the data set is
specified as POList (remember that’s the one that provides the list of
PO numbers to select from).
I also like to provide a default value of a known database record so
that when I test the data set in the next stage, I know if it is
working!
Next we need to join our report parameter to the data set, so reopen
the dataset and select the Parameters node.
You will see an entry here called param_1 – this is created
automatically by BIRT because you put that question mark into the
original SQL statement. Select it and click the Edit button.
Now in the Linked To Report Parameter field, select the report
parameter that you just created. That’s it, now when the report runs,
the user will be asked to select or type a PO Number and this will be
passed into the report SQL replacing the question mark and thereby
filtering the report to select all the lines for just the one selected
PO.
Try this now by previewing the data set results and ensure that data
is being returned. This is where the default parameter value comes in
handy, because without it, no data would be returned!
LAYING OUT THE REPORT
=====================
Next you will want to set up 2 tables on your report layout
andpopulate them with fields from your data set.
The first table will hold details of the PO header information so will
not require any detail or footer rows, sinceit is supposed to only
display a singlerecord. Create the table with 14 columns and 5 header
rows. You will need to edit the table that BIRT creates for you by
default to add in the additional headers and remove the footer.
THE HEADER SECTION
Add the following fields to the third header row:
PONum
Description
SiteID
Status
TotalCost
Add an appropriate label in front of each field and leave a single
column empty between each label/field group.
Next highlight all the cells in the second row, right click and select
Merge Cells. This creates one single cell that fills the entire second
row. Place a label in this cell and set the general and border
properties.
The label border colour as for most of the colours in this example, is
defined using a custom colour. To create the custom colour, click the
colour box, click Define Custom Colours, select the first Custom
Colour box, then enter the RGB values into the appropriate fields and
click Add to Custom Colours. The colour will then be available to
select from the palette for use in other areas of your report.
You may need to play around with the left/right justification of the
fields and format the number fields appropriately. To format number
fields to show two decimal places, select each number field that you
wish to format and set the properties as per the screen shot below.
THE DETAIL SECTION
==================
Now we need to create the header for the detail lines section, which
will appear in the second of the two tables. I chose to place a label
in the fourth row of the first table, but it could equally be placed
into the header row of the second table. Once the field is placed, set
the background colour as per the screen shot below and enter the text
“PO Lines”
THE LINE DETAIL FIELDS
======================
From the POLines dataset place the following fields into the second
table, but this time place them into the detail section, rather than
the header.
POLineNum
ItemNum
LineDesc
OrderQuantity
OrderUnit
UnitCost
Discount
Tax1
LineCost
LoadedCost
Notice again that we separate the individual columns with a blank
column as in the screenshot below:
When you add the data fields you will see that the headers are added
automatically for you, but since they adopt the underlying field
names, you may wish to edit them to a more appropriate value.
Next we need to format the column headers and the field values.
Finally the report date is added to the end of the report. BIRT does
this by default and it is part of the master page. Click on the master
page tab, scroll to the end and modfiy the font and background colours
as we have done previously.
CONCLUSION
That’s about it for the BIRT report part of this. Preview the report
in your browser and see how it looks
You will notice of course that the header image and the parameter
selection are still not present and the default BIRT viewer colour
scheme is occupying the top of the report window.
In order to place a header image and paramter on the screen, above the
report header objects we need to invoke a little Java Server Page
(JSP) and that will be the subject of the next tutorial in this
series.
I hope you enjoy creating this Maximo styled report and I hope it is
useful for you. If you have any difficulties please swing by the forum
at BIRTReporting.com and post your query there. Our members are a
helpful bunch and I pop on there myself from time to time so there is
a good chance you will find a solution to your issue.
Also, don’t forget to become a member of BIRTReporting.com, it’s free
to join and you will automatically be alerted when the next part of
this tutorial becomes available. Plus you will get free access to the
members area where you can find many other tutorials like this.
Finally, don’t forget that if you are a reader of either of my two
books, “BIRT for Beginners” or “BIRT for Maximo Self Study Workbook”
then you can download the source files for this tutorial from the
readers area. This will allow you to use a pre-prepared BIRT report
as a template for creating these examples and any future Maximo styled
reports that you need.
ABOUT THE AUTHOR
================
Paul Bappoo is the author of BIRT for Beginners (which is available in
paperback from BIRTReporting.com, Amazon and Barnes and Noble amongst
others) and the BIRT for Maximo Self Study Workbook, also available
from BIRTReporting.com. He has been an international technical
software consultant and involved with computers for over 30 years.
Paul has an interest in BIRT reporting, enterprise application
integration, automated software testing, computer based training and
enterprise system implementation. Paul runs the BIRT User Group UK and
is a member of the BIRT-Exchange Advisory Council. He would be
delighted to hear from you with your tips, tricks and stories about
your usage of BIRT. If you have a question, a need for training or
consulting or great tip to share with the community then drop him a
line.
HOW TO CONTACT THE AUTHOR
=========================
Email: Pa...@BirtReporting.com
Web Site:
http://www.BirtReporting.com
The full version of this report, including screen shots, in full
colour pdf is available for free download at
http://www.BIRTReporting.com