Skip to main content

Iron POI Excel Server (Fe)

Iron POI Excel Serwer

Iron POI Excel Server is a service server supporting reading MS Excel files (*.xlsx) for process applications created using the IBM BAW tool (IBM Business Automation Workflow) and IBM BPM (IBM Business Process Manager). Implementation based on, among others, Apache POI (Poor Obfuscation Implementation) libraries.

Iron was created in response to the need to process large amounts of data stored in MS Excel files. Previous solutions consisted of building Java integrations that read data into the IBM BAW/BPM server memory, which often caused “Out Of Memory” exceptions of the server itself. In order to prevent such exceptions, the appropriate configuration of the use of a very large memory pool is carried out, which in turn causes performance problems in cleaning up this space by the Java virtual machine (JVM) mechanisms.

The new solution allows for separating the Excel file reading mechanisms from the IBM BAW/BPM server, or even placing the Iron service server on a separate machine. At the same time, the minimum, processed amount of data necessary to continue the process is sent to the process instances. The MS Office Toolkit (IBOOT) tool library has been prepared for communication with the server, allowing for quick integration with process applications. We can use any number of Iron instances to process Excel documents, which means that the overall solution is characterized by high scalability, allowing for mass file processing.

As the product developed, mechanisms related to report generation were also implemented. Generation was based on solutions available in JasperReports® Library. Thanks to integration with Mercury DB 3.0 (HgDB), which was defined as a data source, reports and documents defined in templates can be generated, and these can be created and edited using Jaspersoft Studio.

Integration architecture with IBM BPM

iron_01

Below is a description of the elements of the integration architecture with the IBM BAW/BPM system:

  1. Iron POI Excel Server service server instance
  2. IBM BAW/BPM server instance (process management server)
  3. IBM BPM Portal - presentation layer supporting process task forms
  4. Communication with the server using toolkit components. Loading data contained in files via REST services displayed on the Iron POI Excel Server. Communication is mediated by HTTP/HTTPS client integration.
  5. Direct communication of task form components with the Iron Iron POI Excel Server via REST services. The services allow for loading data into the table, filtering it and selecting rows without the intermediation of the IBM BAW/BPM server.
  6. Using integration, sending only the necessary data to the Process Application process instance.

API (REST)

Iron POI Excel Server has the following REST services implemented:

  1. Downloading data from an Excel file using the GET method. As a result, we will receive a list of rows corresponding to the defined results page.
  2. Downloading unique values ​​from a given column of an Excel file with the possibility of filtering them (the possibility of using the so-called ‘wildcard’ comparison, where the ‘*’ character represents any string of characters, and the ‘?’ character any single character).
  3. Filtering Excel file rows based on given criteria
  4. Downloading indicated (marked) rows from an Excel file.
  5. Saving data to Excel files.

As part of the services related to generating reports and documents based on templates, the following have been made available:

  1. Service for loading/updating files with templates created via Jaspersoft Studio.
  2. Review of active transactions related to document generation.
  3. Possibility to stop (kill) an active transaction with document generation.

Iron POI Excel Server in action

Support

In case of problems, please contact me by e-mail at info@scisoftware.pl. In the subject of the message, please include the prefix: [Iron POI Excel Serwer].

Companies that have already used the product

logo_wiener