首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据库设计:多币种账户

数据库设计:多币种账户
EN

Stack Overflow用户
提问于 2012-03-04 11:16:12
回答 3查看 2.8K关注 0票数 2

在您的会计软件中,您如何为COA设计您的帐户数据库

设计1) 1个账户只能持有1种货币

设计2) 1个账户可以持有多种货币,只需按CurrencyId (美元、英镑等)过滤交易即可。

设计1) 1个账户只能持有1种货币

代码语言:javascript
复制
ACCOUNT
Id
AccountNumber
CurrencyCode
...

TRANSACTION
Id
AccountId
Amount
...

设计2) 1个账户可持有多币种

代码语言:javascript
复制
ACCOUNT
Id
AccountNumber
...

TRANSACTION
Id
AccountId
Amount
CurrencyCode
....
EN

回答 3

Stack Overflow用户

发布于 2012-03-04 22:18:41

首先,我不会设计会计软件。我会买的。会计是您需要领域专家(即会计人员)帮助开发软件的领域之一。

其次,如果需要接受多种货币,则必须将货币类型与值一起存储。在这样的系统中,借记30是没有意义的。只有30美元或30欧元的借方才有意义。

但是存储是问题中最简单的部分。您将如何添加涉及多个货币的交易?有不止一种方法可以做到这一点,可能有不止一种“正确”的答案,你的会计可能会为哪种方法才是“正确”的方式而大打出手。

票数 6
EN

Stack Overflow用户

发布于 2012-03-06 14:48:59

你可以使用现有的服务作为指南-例如,Paypal。

在Paypal中,对于每个帐户,您必须为该帐户指定基础货币。然后,任何交易在应用到帐户之前都会转换为该货币。原始金额、货币和当时应用的转换率也可以一起存储,但在进行计算时,您将使用基础货币。

票数 4
EN

Stack Overflow用户

发布于 2012-03-04 12:30:53

作为一般的安全规则,总是选择更灵活的设计。在这个相互联系的世界里,几乎可以肯定会有各种货币的交易(可能除了当地的汽车行李箱销售,尽管我不确定)。因此,将货币代码存储在transaction表中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9552009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档