It has been a while since I published new code on the Alfresco Business Reporting project. Actually, I still have not. But lots of stuff has happened last 4 months, and some months before that. Partially because I needed the functionality for my customers (or for those testing this tool). And of course, because you were asking for it.
First of all I changed the license from GPL3 to LGPL3. I hope this will increase the use of the tool, and expect it to result in more feedback and patches/improvements.
The two big features were already there from day one:
- Harvest the Alfresco repository and store the metadata in a separate reporting database, respecting the ad-hoc nature of aspects and therefore dynamically maintaining the reporting tables/columns.
- Execute (Pentaho) reports against the reporting database, and store them back into the Alfresco repository. (View them on your tablet)
The Harvesting is made more configurable. Now you can enable or disable sections of harvestable data. You can (still) define queries (e.g. Lucene, cmis) to fill your tables and columns with the results of these queries. The columns will be generated if the new metadata is available in the resultset. This tool will add some additional details as well. You are also able to gather user and group information, as well as Site specific users and groups. Categories can be enabled to be harvested, and he Auditing system is a source of reportable data. The latter is interesting, think of the full list of successful and failed login attempts. Per month, or failed attempts per abused (?) username… Or actually any other Auditing framework application you have defined.
The reporting is now more friendly too. There are ‘Reporting Containers’ that are executed every hour/day/week/month. Just pop your Pentaho report in such a container, and there you go. Reports can be collected in a central Alfresco Space. (Or in some spaces, depending on the report). But think about the opportunities if you can create one report definition and execute against an individual site, and store the result somewhere (safe) within that individual site… Store reports having the user as a central concept in their UserHome. The project manager having direct access to performance metrics, support knowing what Sites have a SiteManager that is not an internal colleague. You are able to dynamically parameterize your reports from the UI to achieve just that.
The Pentaho Reporting is currently supported in JNDI mode only. This is what you need if you develop your reports locally, test them on a test server, and use them business wise on your production environment. You do not want to change the database credentials all the time. The JasperSoft reporting (iReport) support is dropped. I guess it still works, and ‘guess’ is about the right word. There is no way to easily support nested subreports. And this is a feature in Pentaho I use a lot.
Oh, there is one feature requested a lot. It is in development, and did not make it into this release. I feel I have to release something by now. Otherwise the tool will never be released, because there are already quite some enhancements on my list. The tool still is MySQL only. Yes, you requested PostgreSQL too, I know. The good news is: I am working on it.
Have some patience, I plan to have something downloadable and installable (AMP) somewhere March.
2013-04-24: Update project logo to comply with Alfresco’s trademark guidelines and policies