我们正在开发一个系统,可以处理财务报表和其他与财务相关的事情。我们正在使用 Java/Java EE 开发应用程序,特别是 JBoss Seam(Richfaces、a4j)+ Javascript 和其他技术。
现在我们有很多或公式来计算财务报表科目。我们需要构建一些可用于存储公式并以简单的方式或在数据结构中使用它们的东西,这样公式就不会在所有代码中使用固定数字/引用来杀死应用程序。 (可维护性问题。)
现在我们在 MS Excel 工作表中拥有了公式。这里有 Excel 中的常用公式 (=A30+B40)。 Excel 中的每一行都是一个帐户,我们最终将其存储在 SQL Server 数据库表中(account
),但这里的要点是如何存储/管理公式,以便比在某处硬编码更好地使用公式。
我知道金融系统会这样做,但我找不到太多相关信息。
最佳答案
如果您主要关心的是公式的可维护性,我可以想到两种可能有所帮助的不同方法。
将公式保留在 Excel 中,并使用 Apache POI 之类的工具将值写入电子表格,然后读回计算后的公式。 (请参阅 http://poi.apache.org/spreadsheet/eval.html 。)不确定其扩展或性能如何,但明显的优势是,如果您的客户不断调整 Excel 工作表中的公式,则更改会立即生效,而不是不断追赶。
将公式转换为 Java POJO,但将它们全部合并到单个类或纯业务逻辑包中,不依赖于 Java EE、Seam 或 JSF。尽管每次 Excel 版本更改时您都必须重新转换为 Java,但至少一切都集中在一个位置,并且原始 Excel 源之间有清晰的映射。您还可以使用脚本语言来更改公式,而无需重新启动/重新部署周期。
关于java - 存储公式来计算财务报告的有效方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8694560/