会计软件设计模式
时间:2020-03-06 15:02:18 来源:igfitidea点击:
是否有用于包含财务会计功能的软件的设计模式或者其他最佳实践的良好资源(书籍,权威指南等)?
具体地说,哪里有关于处理以下问题的良好信息:
- 数量的内部表示
- 帐户,日记帐和其他记录的内部表示
- 协调不一致(自动或者通过用户操作)
- 处理会计期间(每天,每周,每月)的结束
- 设计对商人有意义的UI和打印的财务报告
注意:我们正在这里寻找"权威"或者其他广泛接受的信息。否则,这将变成人们尝试过的所有事情的轶事清单,使该主题变得非常主观。
解决方案
马丁·福勒(Martin Fowler)的分析模式涵盖了其中一些主题。
对于UI /报表:研究Crystal报表和业务对象。两者都在我的投资会计部门的工作地点使用。
我们在这里使用其他东西作为内部组件(JD Edwards),但是除了"是的,它确实可以做到"之外,我真的不能深入探讨其他细节了。
前一段时间,当我被分配使用这样的系统时,我在Martin Fowler网站上找到了此链接:
马丁·福勒会计模式
它包含一些会计软件模式,例如会计分录,交易和调整。他描述的体系结构基于事件。永远不要完全阅读它,因为我正在研究的系统已经处于开发阶段的中期,我无法更改设计。
希望能帮助到你。
我可以推荐企业应用程序架构的模式和
Martin Fowler的分析模式和可重用对象模型都为常见的问题提供了软件架构模式。
在处理货币时,请记住,我们不仅要记住输入金额的货币,还需要记住输入时间以及每种货币当时的汇率。同样,对于金额的"不准确性",会计师也不宽容。如果输入了金额,则必须将其存储为输入的内容,而不是先进行转换,因为在此之后,我们将无法保证可以像输入时一样取回输入的金额。
这些听起来像是显而易见的事情,但是人们在现实世界中确实对他们犯了罪。
我将具有以下结构性类:
- 帐户-代表财务帐户。例如。现金,销售,费用;
- 类别-帐户所属的类别。例如。资产,费用,收入;
- 突变-代表帐户的财务条目。
- 交易-包含突变的集合。
- Money-一个使用Currency对象并将金额存储为长整数的复合类;
最初接触设计时,我一直在思考Decorator和Builder Patterns。税收计算可以使用策略模式。观察者模式可用于否决交易。