首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >储存财务账簿的好方法是什么?

储存财务账簿的好方法是什么?
EN

Stack Overflow用户
提问于 2014-02-24 23:35:56
回答 2查看 2.8K关注 0票数 3

假设您需要实现一个记录您的支票帐户事务的系统。一般情况下,事务按月对语句进行分组。每个月都有期初余额和期末余额。开始日期和结束日期之间的每个事务都会增加或减少余额。你希望能够告诉你当前的余额。

表示这些数据的好方法是什么?我想出了两个基本的选择:

  • 所有交易的一张大桌子。若要确定当前余额,请汇总所有事务。最大的缺点是:交易列表增长得越长,就越慢。因此,我怀疑这不是银行会做的事,也不是任何为reals实施这一计划的人。
  • 与以前相同,但有额外的“快照”信息,例如“月底余额”表。这样,要确定当前余额,只需要将当前月份的事务添加到最近的快照中,这要快得多。缺点是,如果一个事务出现得很晚,或者在过去记录的不正确,就必须更新快照。(对于银行来说,这种情况不应该经常发生--我希望-但如果你的会计期--比如你的私人生活-超过一个月的话,其他人可能会这样。)

我在想现实世界的系统是怎么做到的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-24 23:43:22

大多数银行对交易和余额采取以下做法:

代码语言:javascript
复制
Transactions (acct,date,tran_code,amount....)
Balances (acct, date, ledger_Bal,avail_bal....) 

余额通常每天记录,通常反映一天的期末分类账/可用余额(在一天结束时处理,使用交易和前一天余额之和计算新余额)。每日余额大大减少了与每天需要运行的流程相关的开销(如透支费的计算)。

当然,还有许多其他表格可供参考。有趣的是,平衡表通常比事务表大,因为大多数系统处理每日余额,而不管当天是否有事务。

票数 7
EN

Stack Overflow用户

发布于 2014-02-24 23:53:00

您可能会在三个主表中找到一个表,一个用于Account,一个用于Transactions,另一个用于Corrections

因此,您可能会有这些表和字段,如下所示:

代码语言:javascript
复制
Account (AcctNo, AcctName, Address, Street, State, Zip, AcctCreationDate, LastBalance)
Transactions (TransNo, AcctNo, TransDate, TransType, TransAmount, EndingBalance, AgentID) 
TransactionCorrection (TransCorrID, RefTransNo, RefAcctNo, forTransDate, AgentID)

您可能还可以添加进行事务处理和更正的用户。

代码语言:javascript
复制
Agent(AgentID, AgentLastname, AgentFirstname)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22001484

复制
相关文章

相似问题

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