Table of Contents |
---|
Introduction
...
Basic Concepts:
Query:
is a search to the database to find the information that we need.
...
Design:
In this section we can see the UI of the report to be created.
...
Expand | ||
---|---|---|
| ||
Layout of Jaspersoft Studio Source |
...
|
...
Preview |
...
We cab generate the report to test it from this window. Considerations: Always select the database we are using if not will default to ‘One Empty Record’. If exists, put the values for the report parameters. The parameters can be mark to not be seen on preview, unclicking the property ‘Is For Prompting’ of that parameter. To download a copy in a format you can click the icon Export and select the file format. |
...
Repository explorer |
...
In this section we can see all 'Data Adapters' created and you are able to query. The data adapters are repositories that we create inside Jaspersoft and where we extract the information to generate reports. |
...
Repository Creation
Open JasperSoft Studio.
Expando data adapter on the top left.
Right click on data adapter by default.
Click ‘Create Data Adapter’.
...
The following window will pop-up and choose 'Database JDBC Connection' then Next.
Expand |
---|
...
|
...
|
...
(See screenshots example). |
...
Once driver is added, we click 'Test' to check if the connection is OK. A message must appear saying that the connection was Ok. |
...
Properties
Properties
Property of a selected element on the Report.
...
Palette
This section has all the elements we can include inside a report.
...
Outline
Bottom left we have this window, we can see the report structure in a tree format.
...
Element of the Outline
...
Expand | ||
---|---|---|
| ||
|
...
|
...
|
Expand |
---|
...
| ||
|
...
|
...
|
Expand |
---|
...
| ||
Example |
...
Expression: $F{comision} * ($F{over_total}==true$F{import_agent}:$F{from}) + $V{comisioncamp} |
...
|
...
|
...
|
...
|
...
Edit Expressions |
Expand |
---|
...
| ||
|
...
As explained above, the query returns the data that we want to show. The question is: |
...
Detail By default the report creates an element Detail. Detail is where the rows returned from the query are inserted. For each row of the query we will have a detail withe the data of the fields. |
...
Group Allow us to group collection of rows of the details in real groups. Example: If you want to group by Client, Agent, Campaign in that order. Is important to show the different between the Groups and the Group By of SQL. Groups: Group rows of a column in a secuencial way. Example: |
...
If we create a group for Columna 1 |
...
the result is |
...
|
...
|
...
...
|
...
...
|
...
|
...
...
|
...
No all elements foo are under the same row, this is the main difference with GroupBy. The way to solve this is to create a query that orders first by the column we want to group, in our case columna 1. Example Query:
|
...
|
...
|
...
In this case the result is: |
...
To create a new group:
Click on finish |
...
If we want the group header to repeat on every page we have to set on the group header property Reprint Header On Each Page = true. For the header to be on the same page and no pass to the next we have to assign the max height, we do this from the properties of the header group under the attribute Min Height to start new page. In this way we avoid it is the header without the associated detail. TextField Free text field. Used to assign variables, parameters and fields. To show a textfield element we can do it in 2 ways, draggin the same textfield or modifying the regular expression of the textfield. |
Expand | ||
---|---|---|
| ||
Appearence: Modify the look and feel of the textfield. location, size and color. |
...
Borders |
...
Edit the borders of a textfield. |
...
Textfield: Allow us to modify the expression of the textfield. |
...
Internationalization
To add a file of internationalization of Integra, we must follow some steps:
Select the report on the outline.
On the properties we select Report.
Inside the dataset property ‘Resource Bundle’ click on examine.
Select the internationalization file integra.resources.language
...
You have to add the variables to the properties files in all the languages: language_es.properties, language_en.properties y langauge_pt.properties
The notation is: KEY=VALUE in the language.
If has especial characters (accent, ñ, others) use unicode example ó = \u00f3. Distribution would be Distribuci\u00f3n.
...
Then on the report we put the titles and headers with TextField that point to this values: Example: INITIAL_DATE a Text Field with the Expression $R{FROM}.
...
To test this you have to have a copy of the properties files on the directory where you have the report. Then you change Respurce bundle for: language. Then you can see the values in the correct language.
To change the language : Menu Window -> Preferences -> Jaspersoft Studio -> Report Execution -> Locale.
If you want to test a particular language you have to import the resource for that language, this is done on the proyect properties on the attribute Resource Bundle.
Example to test español put resource bundle ‘language_es’.
Subreports
The subreport is to decouple login inside the same report.
To add a subreport we have to drag the control subreport from the palette on the right top.
...
In our case we want the report that already exists so we click in the option select report file, otherwise we create a new one.
...
We add an existing one.
Expand |
---|
...
|
...
From the main report we can pass parameters to the subreport to filter the subreport query. Take the values return of the query of the father report like parameters to filter the consult of subreport. Example: The main reports returns AGENT and CAMPAIGN, then the parameters or filters we can pass to the subreport are the values returned by (AGENT and CAMPAIGN). |
...
We make a relation between the subreport parameter that we want to return as a global variable (from our main report) |
Expand | ||
---|---|---|
|
...
The subreports can return values to the main report. The way to do this is assigning a variable of the main report the value of the subreport result. In the window of properties of subreport, under the tag off subreport we click in Return values. |
...
We make a relation between the variable of the subreport that we want to return with a global variable (of our main report).
|
...
|
DataSets
Collection of data.
Has different columns (fields).
When a new record is created on the dataset, this fields are added.
Each dataset is independent, has its own datasource.
Expand | ||
---|---|---|
|
...
Right click on the report outline and select Create DataSet. |
...
Assing a name and create a dataset from a connection datasource, and click Next. |
...
Select database, and add a query, then Next. |
...
Select the fields we want to get. In case to use group by click Next if not finish. If not group and want to finish, click Finish. |
...
If we want to add parameters to the dataset on the control dataset of the outline right click on Parameters and Create parameter. |
Expand |
---|
...
| ||
Tables are a way to show data from a dataset. Use it from the Palette. |
...
Select the dataset for the source of the table content. |
...
Select same connection and click Next. |
...
Select fields of the dataset to show on the table. |
...
Edit table layout, and click in Finish. |
...
After table created, go to properties under dataset and Parameter button. Add a line to add the expression of the parameter from the main report to associate. |
...