Using Pentaho with opentaps
How to design and run a report with the pentaho framework
1. Activate the opentaps pentaho component by uncommenting the following line in hot-deploy/component-load.xml :
<!-- <load-component component-location="${ofbiz.home}/hot-deploy/pentaho"/> -->
2. Change the base-url context parameter in the web.xml file located in <OPENTAPS-HOME>\hot-deploy\pentaho\webapp\pentaho\WEB-INF to suit your web url:
<context-param> <param-name>base-url</param-name> <param-value>http://myweburl/pentaho</param-value> <!-- <param-value>http://localhost:8080/pentaho/</param-value> --> </context-param>
3. Change the baseUrlOverride parameter in the file DefaultParameterForm.xsl located in <OPENTAPS-HOME>\hot-deploy\pentaho-solutions\system\custom\xsl folder :
<xsl:param name="baseUrlOverride" select="'https://myweburl/pentaho/control/'" />
4. Download the Pentaho Report Designer (stable version 1.5.6) Pentaho Report Designer 1.5.6 and the Pentaho Design Studio. Please refer to Introducing the Pentaho Report Designer and Setting Up Parameters With the Design Studio for insight into downloading and using these tools.
5. After having designed the report, publish it to the opentaps BI solutions repository :
The opentaps BI solutions repository is located in <OPENTAPS-HOME>\hot-deploy\pentaho-solutions. In the following pictures the TransactionSummary report sample is published in the pentaho-solutions\financials\acctgtrans folder.
Sharing a datasource connection configuration between reports
After designing and publishing the report, open the associated action sequence script (<REPORT_NAME>.xaction) with Pentaho Design Studio and add a Pentaho BI Process action as shown in the next picture :
Configure the XAction File text box so that it points to the datasource.xaction file (which contains the parameter configuration for the database connection). In the Outputs box insert an entry with the name shared_sql_connection and object as type as shown in the next picture :
Select the action that executes the query, set the Database Connection Type to Shared and write <shared_sql_connection> on the Name dropdown as shown next :