我有以下会计表:
http://sqlfiddle.com/#!3/b93f3/2
我的交易明细表包含以下字段:
[transdetailid] [int] IDENTITY(1,1) NOT NULL,
[transid] [int] NOT NULL,
[debitaccount] [varchar](10) NOT NULL,
[creditaccount] [varchar](10) NOT NULL,
[amount] [money] NOT NULL,
[isdebit] [bit] NOT NULL,
[isactive] [bit] NOT NULL,
我认为表格还可以,但我的问题是关于会计交易......
示例:电力承办商向我收取1,000美元的电梯服务费,然后我记录下这样的信息:
transdetailid transid debitaccount creditaccount amount isdebit isactive
1 1 REPAIRS INCOME ACC PAYABLE 1300.00 1 1
然后我将付那笔钱,所以我进入下一个交易:
transdetailid transid debitaccount creditaccount amount isdebit isactive
2 2 ACC PAYABLE BANK ACCT 1300.00 0 1
在这里,我可以看到“应付款”余额 0 但是维修收入 ......如果我进行查询,它会说维修收入仍然在1,300,我想我必须添加另一个字段或其他东西,所以我知道支付交易也会导致维修收入。
有任何线索吗?希望我能解释清楚这一点......
答案 0 :(得分:2)
您偶然发现的是交易和报告之间的区别。
您的数据库设计存在缺陷,因为您尚未将帐单与付款相关联。顺便说一句,这可能非常具有挑战性。通常,它是通过使用,因为缺乏更好的词,供应商。该法案来自供应商支付给供应商。
您可能想要在付款记录中包含结算交易。这是一个坏主意,因为这意味着每笔付款必须与一张账单完全匹配。部分付款会怎样?如何同时支付多张账单?滞纳金怎么样?
您需要修改您的结构,以包含有关谁在进行收费以及谁正在收费的信息。