What problems does it solve?
Centralization of Batch Instance Data
The Zia Ephesoft Transact Batch Instance Viewer—BI Viewer—centralizes all the information that pertains to Batch Instances. Outside of BI Viewer, there is really no place (other than the databases themselves) to query data about a batch’s status, creation date, server IP, executing server, et cetera in the same interface.
Troubleshooting, Analytics, & Auditing
The BI Viewer’s countless filtering and sorting methods make it an excellent place to troubleshoot and investigate issues that may arise in batch processing.
For example, say an Ephesoft environment has issues related to what seems like random batches hitting the Error state. You’ve looked in the Batch Instance Manager for solutions, but the batches that hit error seem to truly be random. BI Viewer can shed some light on the issue. You can filter batches to only show batches within the last month with the status Error. By enabling columns, patterns or matching values in the field emerge. Once you enable the Executing Server, you notice all the batches in Error are running on the same server. That server must have an issue causing batches to fail.
What is it?
The Zia Ephesoft Transact Batch Instance Viewer—BI Viewer—is a web application that is designed to help Ephesoft Transact super users report and dig up information pertaining to every batch instance that has been run through an Ephesoft instance.
Ephesoft Transact moves completed batches quickly to the reporting database. While those batches can be seen in the Reports user interface they are moved to an archive database around 30 days after the batch instances have completed. Often we have customers that desire to see the current and historical data in one place.
The BI Viewer is lightweight with only one interface; The BI table. Upon accessing the BI Viewer for the first time, you will see the following screen:
There are only two components to the interface:
- The checkboxes that show and hide columns within the table
- The batch instances in a table
The Checkbox components are a list of columns that you would like to query. Checking a checkbox will immediately update the table with the proper information for each shown batch instance.
Batch Instance Table
This is where the results of the query are shown. The results are paginated by default by 20 rows. This can be changed on the table footer with the rows dropdown. By default, the results are ordered ascending by batch instance ID, however, this can be changed by clicking on any of the columns headers to sort by ascending or descending values. Additionally, the Bi Viewer allows for a few more criteria in the column headers:
- Batch Status
Because there is a fixed number of batch statuses, the BI Viewer tool has a drop-down menu under the column header for selecting which batch status’ to display.
- Date (Creation, Last-Modified)
Users are also able to create a date and time range for the Creation Date and Last Modified fields with the start and end buttons below each column header. Clicking the buttons will show a calendar month view alongside a time picker. Once selected, users can click the ‘X’ button to clear that date and time.
- Text Matching (all other fields)
Outside of the above criteria, each other header has a text field that will accept any text for a plain-text match. For example, if a user is searching for a specific batch instance, they can enter the BIID in the field under the Batch ID column header:
Or if a user is looking only for batch instances for a specific batch class, they can enter the BCID under the Batch Class ID column header:
- List of Results
Shown at the bottom of the page (below the table) is a number of returned Batch instances. This can be helpful if users need to simply view how many batches match a given criteria created with the filters on the table. For example, there are X number of batches in Error state within a certain time period.
- CSV Download
Also shown below the table is a Download Button. This button downloads every page of the filtered results (current table data) to a CSV file for later parsing or better use in Excel or other spreadsheet processing applications.
With a Java backend and a React driven front-end, the BI Viewer is designed to run on the same tomcat instance and port as Ephesoft.
Future Development Considerations
Database Performance Impact
In some cases with clients that have quite a large number of Batches in the Ephesoft Tables, we’ve found that the act of grabbing all Batches on load can be quite resource intensive. In this case, we have limited the query to only grab the last 90 days worth of batches to alleviate performance issues. Some future features that may help facilitate lightening up the load on the database are as follows:
- Configurable time period & Configurable columns
It may be useful to add a small amount of configurable properties for the DB query for on-the-fly performance improvements if needed. In this case shortening the time period of the Batches that are returned could alleviate some of the performance issues, as could removing unused columns like Executing Server from the query.
- Usage of SQL Server Views or something similar
In the case that the queries are too large for the Database to handle, usage of SQL Server Views that update on a regular basis could help alleviate the performance struggle as well.
Dynamic Title Based on Server IP
For multiple environments, instead of having to build different war files for each, It may be helpful to check the server IP of which the current instance is running on and use that to assign a dynamic title. This way users can be sure of which database they’re querying without having to double check.
At the current moment, logging is very few and far between. for debugging and performance purposes it would be very helpful to have a much more solid basis to log output. Whether that be within the current Ephesoft logs or on its own with configuration.
Centralized Information on Row Click
Something that might be helpful when trying to gather data on a specific Batch would be the ability to view all of the data about the batch when the row is clicked. A small context menu containing all of the reported information for that batch could help simplify some debugging processes.
The current version of the BI View is enabled for anyone that currently has the URL. We believe that some groups may want to secure this further for Active Directory group access.