Design patterns 会计软件设计模式

Design patterns 会计软件设计模式,design-patterns,accounting,Design Patterns,Accounting,对于包含财务会计功能的软件的设计模式或其他最佳实践,是否有良好的资源(书籍、权威指南等) 具体来说,关于处理以下问题的好信息在哪里 货币量的内部表示 账户、日记账和其他记录的内部表示 协调不一致(自动或通过用户操作) 会计期间结束时的处理(每日、每周、每月) 设计对商务人士有意义的UI和打印财务报告 注:“权威”或其他广泛接受的信息是我们在这里寻找的。否则,这将变成一个关于人们尝试过的所有事情的趣闻轶事的大列表,这使得这个主题非常主观。马丁·福勒的涵盖了其中一些主题。对于UI/报告:查看C

对于包含财务会计功能的软件的设计模式或其他最佳实践,是否有良好的资源(书籍、权威指南等)

具体来说,关于处理以下问题的好信息在哪里

  • 货币量的内部表示
  • 账户、日记账和其他记录的内部表示
  • 协调不一致(自动或通过用户操作)
  • 会计期间结束时的处理(每日、每周、每月)
  • 设计对商务人士有意义的UI和打印财务报告


注:“权威”或其他广泛接受的信息是我们在这里寻找的。否则,这将变成一个关于人们尝试过的所有事情的趣闻轶事的大列表,这使得这个主题非常主观。

马丁·福勒的涵盖了其中一些主题。

对于UI/报告:查看Crystal报告和业务对象。我在投资会计部门的工作地点使用了这两种工具


我们在这里使用了其他材料(JD Edwards),但除了“是的,确实是这样”之外,我无法深入了解更多细节。

不久前,当我被指派在这样一个系统上工作时,我在Martin Fowler的网站上找到了以下链接:

它包含一些会计软件模式,如会计分录、交易和调整。他描述的体系结构是基于事件的。从来没有完全读过它,因为我工作的系统已经处于开发阶段的中间,我不能改变设计。 希望有帮助。

我可以推荐和
Martin Fowler的两篇文章都为常见问题提供了软件体系结构模式。

关于货币的处理,请记住,您不仅需要记住金额输入的货币,还需要记住金额输入的时间,以及当时每种货币的汇率。此外,当涉及到金额的“不准确”时,会计师也不会原谅。如果输入了金额,您必须按输入的方式存储,而不是先转换,因为之后您将无法保证您可以像输入的那样取回输入的金额


这些听起来似乎很明显,但在现实世界中,人们确实会对它们进行犯罪。

我会有以下结构类:

  • 账户-表示金融账户。现金、销售、费用
  • 类别-帐户所属的类别。例如:资产、费用、收入
  • 突变-表示帐户的财务分录
  • 事务-包含一组突变
  • Money—使用Currency对象并将金额存储为长整数的复合类
    当我开始设计时,我一直在思考装饰和建筑模式。税务计算可以使用策略模式。观察者模式可以用来否决事务。

    我发现,这是建模业务结构的一个很好的灵感来源。是围绕本书中的概念构建的。

    您是否正在考虑构建一个基于现金或权责发生制的系统?它确实是基于现金的,但可能会被需要以某种方式将其纳入权责发生制的客户所使用。