Report Generation feature within Java Softwares using APIs

PAMS 3.0 (Parent Assessment Manual Software) is a complete Parent Assessment Application used by Social Workers, Psychologists and other professionals across the UK and abroad. PAMS 3.0 was written by nationally renowned Clinical Psychologist Dr Sue McGaw. Essentially PAMS 3.0 is an extensive professional software application that includes Clinical Assessment Forms, Worksheets, Graphical Parent Summaries and Profiling. PAMS 2.0 was launched in 2007 and the successor PAMS 3.0 will be released in 2010 with many additional functionalities; the main one being the ability to produce detailed reports in an MS Word/OpenOffice document file format for the end-user.

Requirements Scenario

We decided that one of the new features in our new product (PAMS 3.0) would be producing a report in MS Word or OpenOffice format. The report would contain several pages of dynamically produced text, tables and screenshot images. An important feature was that this report file is processed quickly and efficiently with minimal delay to the user.

Solution Implementation

Our main development programming language is Java and our team spent several weeks looking for the best solution within the Java framework. Aspose.Words for Java was by far the easiest, best and most cost-effective solution.

The solution comprises of loading from Java (using Apose.Words) the required template Word document. The template contains static text and also many field names (e.g. #Name). Using the Aspose syntax “Document.getRange().replace()” all these field names are replaced with their dynamic content. New lines of text, sections and page breaks are dynamically written to the Word document from the Java code.

Finally, several JPEG files are inserted at the end of the document as screenshots. The generated document is then saved in the desired file format back to disk and then opened externally by the default Windows application.

Benefits

It quickly became apparent to our team that the best solution for generating documents from Java is Aspose.Words. There were no other products that could offer the same ease of use, vast functionality and quick processing that Aspose.Words provided.

For our development team to build from the bottom up, the same document processing functionality offered by Aspose.Words would have been extremely complicated and highly time-consuming.

The documentation support provided for Apose.Words is extremely well presented and written in a way to allow any proficient programmer to get started developing applications with reporting abilities very quickly.

Future Implementations

Aspose.Words offers a wide variety of functionality in producing documents. This gives a large scope for many additional reporting abilities for future versions of the PAMS 3.0 software. Aspose.Words would again be the product of choice given the large development time saved.

Conclusion

Working with Aspose.Words has been a very satisfying and easy to implement solution. One of the best features being the quick time in which large documents are generated.

Tom Daniels
Pill Creek Publishing

Download this success story in PDF format.