# tJasperOutput

Creates a report in rich formats using Jaspersoft's iReport.

This component is closely related to Jaspersoft's report designer -- iReport. It reads and processes data from an input flow to create a report against a .jrxml report template defined via iReport.

tJasperOutput reads and processes data from an input flow to create a report against a .jrxml report template defined via iReport.

Information noteNote: Jaspersoft's report designer, iReport, has reached its end of life. As the replacement, TIBCO Jaspersoft Studio is now the official design client for JasperReports.

## tJasperOutput Standard properties

These properties are used to configure tJasperOutput running in the Standard Job framework.

The Standard tJasperOutput component belongs to the Business Intelligence family.

The component in this framework is available in all Talend products.

## Basic settings

| Properties | Description |
| --- | --- |
| Version | Select the Jasper version. Note that Jasper v6 is deprecated. |
| Property type | Either Built-in or Repository.<br><br><ul> <li><span>Built-in</span>: No property data stored centrally.</li> <li><span>Repository</span>: Select the repository file in which the                        properties are stored. The fields that follow are completed automatically                        using the data retrieved.</li> </ul> |
| Jrxml file | Select or enter the path to the report template file created via iReport.<br><br>Information noteNote: The Jrxml file is compiled into a Java Class that requires a JDK when the<br>Job is executed. Make sure the current JDK is compatible with the JRE that runs<br>the Job to prevent Java runtime version errors. |
| Report type | Select the file type of the final report. |
| Schema and Edit schema | <ul> <li> <p>A schema is a row description. It defines the number of fields            (columns) to be processed and passed on to the next component. When you create a Spark            Job, avoid the reserved word <kbd>line</kbd> when naming the            fields.</p> <p>Click <span>Edit        schema</span> to make changes to the schema. If the current schema is of the <span>Repository</span> type, three options are available:</p> <ul> <li> <p> <span>View schema</span>: choose this                option to view the schema only.</p> </li> <li> <p> <span>Change to built-in property</span>:                choose this option to change the schema to <span>Built-in</span> for local changes.</p> </li> <li> <p> <span>Update repository connection</span>:                choose this option to change the schema stored in the repository and decide whether                to propagate the changes to all the Jobs upon completion.</p> <p>If you just want to                propagate the changes to the current Job, you can select <span>No</span> upon completion and choose this schema metadata                again in the <span>Repository Content</span>                window.</p> </li> </ul> <p>The component supports a dynamic schema. The columns in the <span>Talend</span> schema and the columns defined in the JasperReports JRXML template must match. Extra input columns are discarded, and missing input columns are filled with null values.</p> </li> <li> <p> <span>Built-in</span>: The schema is created								and stored locally for this component only. For more information about a component schema in its <span>Basic settings</span> tab, see <a href="https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/basic-settings-tab" target="_blank">Basic settings tab</a>. </p> </li> <li> <p> <span>Repository</span>: The schema already								exists and is stored in the Repository, hence can be reused. For more information about a component schema in its <span>Basic settings</span> tab, see <a href="https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/basic-settings-tab" target="_blank">Basic settings tab</a>. </p> </li> </ul> |
| Sync columns | Click to synchronize the output file schema with the input file<br>schema. The Sync function only displays once the Row connection is linked with the output component. |
| Destination folder | Select or enter the path of the final report file. |
| File name | Enter the name of the final report. |

## Advanced settings

| Properties | Description |
| --- | --- |
| tStatCatcher Statistics | Select this checkbox to collect log data at the component<br>level. |
| Specify Locale | Select this checkbox to choose a locale from the Report Locale list.<br><br>Information noteNote: The first line of the Report<br>Locale list is empty. You can click it to customize a<br>locale. |
| Encoding | Select an encoding mode from this list. You can select Custom from the list to enter an encoding<br>method in the field that appears. |

## Global Variables

| Variables | Description |
| --- | --- |
| Global Variables | NB\_LINE: the number<br>of rows read by an input component or transferred to an output component. This is an<br>After variable and it returns an integer.<br><br><br>ERROR\_MESSAGE: the error message generated by the<br>component when an error occurs. This is an After variable and it returns a string. This<br>variable functions only if the Die on error checkbox is<br>cleared, if the component has this checkbox.<br><br>A Flow variable functions during the execution of a component<br>while an After variable functions after the execution of the component.<br><br>To fill up a field or expression with a variable, press Ctrl+Space to access the variable list and choose the variable to use from<br>it.<br><br>For more information about variables, see [Using contexts and variables](https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/contexts-and-variables). |

## Usage

| Usage guidance | Description |
| --- | --- |
| Usage rule | The input date pattern in the Talend schema must match the format of the incoming date values. Define output date patterns in the JasperReports JRXML template.<br><br>The columns in the Talend schema and the JRXML template must match. Extra input columns are discarded, and missing input columns are filled with null values.<br><br>In Metadata Drag and Drop, select the non-Base64 tJasperOutput component. The Base64 variant cannot inherit preset metadata values.<br><br>The old Jasper component remains available but is deprecated. The new v7 unified components do not migrate existing Jobs automatically. An existing user-defined JRXML template may require migration: open and save it in Jaspersoft Studio 7 before using it with this component. |

**Related concepts**

* [Generating a report against a .jrxml template](https://help.qlik.com/talend/en-US/components/8.0/jasper/tjasperoutput-tfileinputdelimited-generating-report-against-.jrxml-template-standard-component-the "Use a matching Talend schema and JasperReports JRXML template to generate a report.")