AFC - Abacus Formula Compiler for Java

Integrate Calculations Defined In Spreadsheets Into Java Apps

Let your users model the calculation of key values in spreadsheets, but integrate the computations natively into your Java applications. Users get familiar and versatile modelling. You get little effort, high performance, no deployment hassles, and GPL or commercial licensing.

Calculation of certain key values often varies from user to user, and over time. For example prices and shipping rates in order entry, asset valuations in portfolio management, or insurance premiums in sales force apps.

A B
1 Customer Rebate 3%
2 Article Rebate 6%
3 Customer Category 5
4
5 Rebate 6%
=IF(B3=1.0,SUM(B1:B2),MAX(B1:B2))
(Only the best category gets combined rebates.)

Don’t add endless configuration options to your code for this. Use the power and familiarity of spreadsheets instead. Users model their calculations in Microsoft Excel or OpenOffice Calc.

Using AFC your application compiles the spreadsheet files into Java classes that compute output values, then uses them with actual input values within its business logic.

Overview

The classes are plain, thread-safe, and high-performance so you can recompute the valuations of thousands of assets or the wages of thousands of employees. And for financial applications you can compile for BigDecimal instead of double.

AFC does not need Excel, OpenOffice, or a JDK to be installed, so you can deploy on any platform supported by Java. It is available under the GPL and a commercial license (details).

What now?

News

Release 1.4

cleans up API a bit and can speed up compilation of sheets.
July 23, 2010

Release 1.3

adds logging of intermediate cell values.
July 24, 2009