在设计用于销售和购买的库存管理数据库系统时,存储各种税收和其他此类金额的最佳方式是什么?
可以保存的一些字段是:
目前,迄今为止最合理的解决方案是存储(大致)项目,数量,不含税总额(四舍五入)和总税额(四舍五入)。
是否有更好的方法来存储通用系统的这些细节?
鉴于系统需要健全,如果有多个税收价值可能需要分开(例如州和市),应该怎么办?在这种情况下,一个单独的表将按顺序排列,但只有一个rowID和一些taxID映射到totalTax列会被认为是过多吗?
澄清:询问如何存储有关个别交易及该方面的数据;与税收特定税率的细节不同。
答案 0 :(得分:8)
方法的问题是,如果税收变化,英国的增值税(销售税)在过去12个月内发生了两次变化。
当我在电子商务网站工作时,我们有一张表Tax_Rate
,其中包含商店可以处理的不同税率,例如。
然后您的库存表字段可能
您的invoice_detail行表将是
您的发票表将是
其中fk_denotes是外键。请注意,OrderId在您的发票行表中不是唯一的。
编辑:今天头到处都是。
您需要对发票行总计和税率总额进行非规范化,因为您不希望项目价格或税率的未来变更会影响历史发票。