Pentaho Reporting Plugin for Apache Fineract
Go to file
Víctor Romero b232d170f5
Merge pull request #369 from dr-fuch/develop
MX-43: Fix Report Standard Savings Contract
2026-02-04 19:14:52 -06:00
.github/workflows Merge pull request #299 from openMF/renovate/actions-checkout-6.x 2025-12-22 10:54:23 -06:00
.mvn/wrapper chore(deps): update dependency maven to v3.9.12 2025-12-17 04:32:56 +00:00
img Add Output 2023-01-02 19:28:41 -06:00
pentahoReports MX-43: Fix Report Standard Savings Contract 2026-02-04 19:13:37 -06:00
src Rollback changes, the pool connection is not working on multi tenant setup 2026-01-30 21:17:13 -06:00
.gitattributes initial PentahoReportingProcessServiceImpl 2020-10-01 01:03:31 +02:00
.gitignore Update Spring version 2023-03-23 00:11:54 -06:00
LICENSE change license from MIT (in ./LICENSE file) and ASL (in .java) to MPL 2020-10-04 21:37:48 +02:00
mvnw chore(deps): update dependency maven-wrapper to v3.3.4 2025-10-21 09:08:56 +00:00
mvnw.cmd chore(deps): update dependency maven-wrapper to v3.3.4 2025-10-21 09:08:56 +00:00
nb-configuration.xml Initial commit 2025-05-10 10:08:54 -06:00
pom.xml chore(deps): update dependency com.diffplug.spotless:spotless-maven-plugin to v3.2.1 2026-01-28 02:58:16 +00:00
README.md Update README.md 2025-09-05 01:53:55 -06:00
renovate.json Add renovate.json (#26) 2021-06-29 06:17:48 -05:00
TODO.md Update TODO.md 2023-01-02 19:33:57 -06:00

Mifos® Reporting Plugin for Apache Fineract®

For Users

  1. Create a directory for the Mifos® reports and copy the PRPT files in it
    mkdir pentahoReports
  1. Export the FINERACT_PENTAHO_REPORTS_PATH variable
    export FINERACT_PENTAHO_REPORTS_PATH="$PWD/pentahoReports/"
  1. Download the Mifos® Security Plugin and extract the files (all the libraries required for running it are included). It is very important to use the specific version according to the Apache Fineract
Apache Fineract Mifos Reporting Plugin Download Link
1.12.0 1.12.1 Mifos® Security Plugin v1.12.1
1.11.0 1.11.0 Mifos® Security Plugin v1.11.0

4a. Execute only for Docker® - Create a directory, copy the Mifos® Reporting Plugin and the Pentaho® libraries in it

    mkdir fineract-pentaho  && cd fineract-pentaho

4b. Execute only for Apache Tomcat® - Copy the Mifos® Reporting Plugin and Pentaho® libraries in $TOMCAT_HOME/webapps/fineract-provider/WEB-INF/lib/

  1. Restart Docker® or Apache Tomcat®

  2. Test the Mifos® reports.

For Developers

This project is currently only tested against the very latest and greatest bleeding edge Apache Fineract® develop branch on Linux Ubuntu® 24.04LTS. Building and using it against other Apache Fineract® versions may be possible, but is not tested or documented here.

  1. Download and compile
    git clone https://github.com/openMF/mifos-reporting-plugin.git
    cd mifos-reporting-plugin && ./mvnw -Dmaven.test.skip=true clean package && cd ..
  1. Export the Location of Mifos® reports (PRPT files) in the following variable
    export FINERACT_PENTAHO_REPORTS_PATH="$PWD/fineract-pentaho/pentahoReports/"
  1. Execute Apache Fineract® with the location of the Mifos® Reporting Plugin library
java -Dloader.path=$MIFOS_PENTAHO_PLUGIN_HOME/libs/ -jar $APACHE_FINERACT_HOME/fineract-provider.jar
  1. Test the Mifos® reports execution using the following curl example or through the Mifos Web App in the Reports Menu
    curl --location --request GET 'https://localhost:8443/fineract-provider/api/v1/runreports/Expected%20Payments%20By%20Date%20-%20Formatted?tenantIdentifier=default&locale=en&dateFormat=dd%20MMMM%20yyyy&R_startDate=01%20January%202022&R_endDate=02%20January%202023&R_officeId=1&output-type=PDF&R_loanOfficerId=-1' \
--header 'Fineract-Platform-TenantId: default' \
--header 'Authorization: Basic bWlmb3M6cGFzc3dvcmQ='
  1. The output must be a PDF with the Expected Payment By Date Formated information in it (maybe it could have blank or zeroes if it is a fresh Apache Fineract® setup)

alt text

The API call (above) should not fail if you follow the steps as shown, and all conditions met for the version of Apache Fineract®

If the API call (above) fails with "There is no ReportingProcessService registered in the ReportingProcessServiceProvider for this report type: Pentaho", then this Pentaho® Plugin has not been correctly registered & loaded by Apache Fineract®.

Please note that the library will work using the latest Apache Fineract® development branch (30th December 2024), also make sure you got installed the type fonts required by the reports. This Mifos® Reporting Plugin will work only on Apache Tomcat® version 10+.

See also PentahoReportsTest and the test script.

License

This code used to be part of the Mifos® codebase before it became Apache Fineract®. During that move, the Pentaho® related code had to be removed, because Pentaho®'s license prevents code using it from being part of an Apache Software Foundation® hosted project.

The correct technical solution to resolve such conundrums is to use a plugin architecture - which is what this is.

Note that the code and report templates in this git repo itself are licensed to you under the Mozilla® Public License 2.0 (MPL). This is a separate question than the license that Pentaho® itself (i.e. the JAR/s of Pentaho®) are made available under.

Important

  • Mifos® and Mifos® Reporting Plugin are not affiliated with, endorsed by, or otherwise associated with the Apache Software Foundation® (ASF) or any of its projects.
  • Apache Software Foundation® is a vendor-neutral organization and it is an important part of the brand is that Apache Software Foundation® (ASF) projects are governed independently.
  • Apache Fineract®, Fineract, Apache, the Apache® feather, and the Apache Fineract® project logo are either registered trademarks or trademarks of the Apache Software Foundation®.
  • Mifos® and Mifos® Reporting Plugin are not affiliated with, endorsed by, or otherwise associated with Hitachi Vantara LLC or any of its projects.
  • Hitachi® and Hitachi Vantara® are registered trademarks of Hitachi, Ltd. in the U.S. and other countries. Pentaho® is a registered trademark of Hitachi Vantara LLC in the U.S. and other countries.

Contribute

If this Mifos® Reporting Plugin project is useful to you, please contribute back to it (and to Apache Fineract®) by raising Pull Requests yourself with any enhancements you make, and by helping to maintain this project by helping other users on Issues and reviewing PR from others (you will be promoted to committer on this project when you contribute).
We recommend that you Watch and Star this project on GitHub® to make it easy to get notified.

History

This is a Mifos® Reporting Plugin for Apache Fineract®. The original work is this one https://github.com/vorburger/fineract-pentaho.

See TODO for possible future follow-up enhancement work.

The Mifos® Reporting Plugin has been updated to the Pentaho® version 9.5, please use the Pentaho® Report Designer version 9.5