Backend Calculation Engine
Overview
Keikai provides the capability to use spreadsheets in a non-UI, headless fashion, like an automated backend calculation engine.
The key is the Book Model, which stores all cell data and formulas. You can directly access and manipulate this model programmatically, without needing to render a visual spreadsheet in a browser.
This enables loading data into a Book Model from any source (e.g. databases), executing calculations with formulas, and reading back results, all without any UI.
Data ----> Book Model ----> Result
With this kind of usage, keikai can be a backend calculation engine or perform a automating operation.
Benefits
Using Keikai as a backend calculation engine provides these benefits:
- No UI required - Automate spreadsheet workflows without rendering a visual interface.
- Update calculations via formulas - Formula logic can be modified without code changes, lowering maintenance effort.
- Leverage spreadsheet calculation power - Harness the calculation capabilities of spreadsheets for backend data processing.
Steps
The general steps to use Keikai in headless way are:
- Import an XLSX file to instantiate a Book model. The file may contain predefined formulas.
- Load input data into the model with
Range
API. Recommend to use named range instead of cell address for readability and stability. - Retrieve calculation output by reading cell values using the
Range
API.
By eliminating UI concerns, Keikai can serve as a powerful calculation engine for server-side automation processes. The XLSX format provides a portable way to apply spreadsheet logic across many use cases.
A Servlet Example
Check ApiServlet.
You can visit http://localhost:8080/dev-ref/api?r=0&c=1
The parameters:
r
: row index, 0-based.c
: column index, 0-based.
Then it will show you the cell value of A2.
The ApiServlet
imports an xlsx file and return a cell value with Range
API. It doesn’t render any spreadsheet on a web page.
Comments