Should journal entries be recorded in a database design?
日记帐分录是否应记录在数据库设计中?
In the real world it makes sense to keep a daily entry book, then later transfer the daily entry book into double entry accounts. but in the computerized version, doing this produces duplicate records and that doesn't quite make sense?
在现实世界中,保留每日入门书是有意义的,然后将每日入门书转移到双重入账。但在计算机化版本中,这样做会产生重复的记录,这是不是很有意义?
Real life:
User ---> journal day book (single entry) ---> ledgers account (double entry)
3 个解决方案
#1
2
The point about double entry book-keeping is that any trained accountant would understand it immediately. So if you are building a system for accountants then it will make communication easier if you model their domain exactly. There may also be business rules which can only be implemented in a double entry model (just a guess on my part).
关于复式簿记的要点是,任何训练有素的会计师都会立即理解。因此,如果您正在为会计师构建系统,那么如果您准确地对其域进行建模,它将使通信更容易。可能还有业务规则只能在双入口模型中实现(我只是猜测)。
It also provides a good audit trail, which is always useful.
它还提供了良好的审计跟踪,这始终是有用的。
edit
"i was more interested to know if I should record the journal entries or not"
“我更想知道我是否应该记录日记条目”
If I were presenting a logical data model to a bunch of users from an accounting background I would definitely include the Journal as an Entity. However when it came to the physical database I would prefer to implement it as a view over the Ledger table.
如果我从会计背景向一堆用户呈现逻辑数据模型,我肯定会将Journal作为实体包含在内。但是当涉及到物理数据库时,我更愿意将其作为Ledger表的视图来实现。
#2
1
Your question is really about accounting systems design. The operative consideration is audit trail.
您的问题实际上是关于会计系统设计。实际考虑是审计跟踪。
In my opinion, if you skip the daybook stage, it may be difficult to trace back from what's recorded in the database and what the user(s) entered. If the user interface for data entry is going to look like a daybook, you should record a daybook, if you want to be able to trace back. An accountant can help you evaluate the importance of this issue.
在我看来,如果你跳过日记本阶段,可能很难追溯数据库中记录的内容以及用户输入的内容。如果数据输入的用户界面看起来像日记本,则应记录日记簿,如果您希望能够追溯。会计师可以帮助您评估此问题的重要性。
The resulting redundancy can cost in terms of computer resources. It can also result in a database that's internally inconsistent, if there are bugs in the processing. It's probably worth the pain of inconsistency to be able to tell the difference between system screwups and human error in data entry.
由此产生的冗余可能会耗费计算机资源。如果处理中存在错误,它还可能导致内部不一致的数据库。在数据输入中能够区分系统螺旋和人为错误之间的差异可能是值得的。
Again, an accountant can tell you. If there are no accountants advising the project, get one.
会计师再一次可以告诉你。如果没有会计师建议项目,请获得一个。
#3
0
Double entry accounting does not produce duplicate records because each side of the double entry goes to a different nominal ledger account. Not sure if that's what you meant by "duplicate records" but I just thought that ought to be cleared up. Obviously creating duplicate rows in a database is generally not a good idea.
双重记帐会计不会产生重复记录,因为双重记录的每一侧都会转到不同的名义分类帐帐户。不确定这是不是“重复记录”的意思,但我只是认为应该清除它。显然,在数据库中创建重复行通常不是一个好主意。
#1
2
The point about double entry book-keeping is that any trained accountant would understand it immediately. So if you are building a system for accountants then it will make communication easier if you model their domain exactly. There may also be business rules which can only be implemented in a double entry model (just a guess on my part).
关于复式簿记的要点是,任何训练有素的会计师都会立即理解。因此,如果您正在为会计师构建系统,那么如果您准确地对其域进行建模,它将使通信更容易。可能还有业务规则只能在双入口模型中实现(我只是猜测)。
It also provides a good audit trail, which is always useful.
它还提供了良好的审计跟踪,这始终是有用的。
edit
"i was more interested to know if I should record the journal entries or not"
“我更想知道我是否应该记录日记条目”
If I were presenting a logical data model to a bunch of users from an accounting background I would definitely include the Journal as an Entity. However when it came to the physical database I would prefer to implement it as a view over the Ledger table.
如果我从会计背景向一堆用户呈现逻辑数据模型,我肯定会将Journal作为实体包含在内。但是当涉及到物理数据库时,我更愿意将其作为Ledger表的视图来实现。
#2
1
Your question is really about accounting systems design. The operative consideration is audit trail.
您的问题实际上是关于会计系统设计。实际考虑是审计跟踪。
In my opinion, if you skip the daybook stage, it may be difficult to trace back from what's recorded in the database and what the user(s) entered. If the user interface for data entry is going to look like a daybook, you should record a daybook, if you want to be able to trace back. An accountant can help you evaluate the importance of this issue.
在我看来,如果你跳过日记本阶段,可能很难追溯数据库中记录的内容以及用户输入的内容。如果数据输入的用户界面看起来像日记本,则应记录日记簿,如果您希望能够追溯。会计师可以帮助您评估此问题的重要性。
The resulting redundancy can cost in terms of computer resources. It can also result in a database that's internally inconsistent, if there are bugs in the processing. It's probably worth the pain of inconsistency to be able to tell the difference between system screwups and human error in data entry.
由此产生的冗余可能会耗费计算机资源。如果处理中存在错误,它还可能导致内部不一致的数据库。在数据输入中能够区分系统螺旋和人为错误之间的差异可能是值得的。
Again, an accountant can tell you. If there are no accountants advising the project, get one.
会计师再一次可以告诉你。如果没有会计师建议项目,请获得一个。
#3
0
Double entry accounting does not produce duplicate records because each side of the double entry goes to a different nominal ledger account. Not sure if that's what you meant by "duplicate records" but I just thought that ought to be cleared up. Obviously creating duplicate rows in a database is generally not a good idea.
双重记帐会计不会产生重复记录,因为双重记录的每一侧都会转到不同的名义分类帐帐户。不确定这是不是“重复记录”的意思,但我只是认为应该清除它。显然,在数据库中创建重复行通常不是一个好主意。