ACCESS中关于月结存年结存功能的设计原理

博客介绍了月结存年结存功能的设计原理,涉及编程相关内容,与access、vba等信息技术相关知识有一定关联,有助于了解该功能背后的设计逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于月结存年结存功能的设计原理

 

关于月结存年结存功能的设计原理

首先,基础的会计假设就是持续经营,我个人认为没必要每个月做月结存。按以下库存变化的实例来说,先看结构:


存续表        (注意,结存数量这个字段并不一定要存在)
-----------------------------
     日期     进出数量 结存数量                    备注
  2004-12-1      10       10
  2004-12-2      -5       5
  2004-12-3       6       11
  2004-12-31     -2       9
                               此处空一行,表示月结存时间,月结存的数量为9,实际表中不存在这样的行
   2005-1-1      -1       8
  2005-1-31      -2       6
                               此处空一行,表示月结存时间,月结存的数量为6,实际表中不存在这样的行
   2005-2-1       5       11
-----------------------------


结存表
-----------------------------
     日期     结存数量
  2004-12-31      9
  2005-1-31       6
  2005-2-28      11
-----------------------------


在1月中某天查询2005年1月份数据的时候只要

select 日期,0 as 进出数量,结存数量, '期初结存' as 备注 from 结存表 where 日期=#2004-12-31# union all select 日期,进出数量,结存数量 from 存续表

而查询某笔明细的时候直接

select * from 存续表 where 日期=#某日期#

之所以要建立一个结存表,就是为了减少日后的查询量,提高速度。其实,如果不考虑计算机运算性能的情况下,查询 2005年1月份的期初数据时完全可以用代码

select sum(进出数量) from 结存表 where 日期 <#2005-1-1#


来实现,然后再用几个 UNION ALL 语句连接,就可以得到 2005年1月某天的结存数量和明细了。

从上面的数据结构大家就可以看出,其实月结存只是 INSERT INTO 结存表 一个日期和结存数量进去

insert into 结存表 (日期,结存数量) values(#结存日期#,结存日存续表的数量)

注意,上述只是一个简单的结存数量,如果在实际情况中需要生成某个时点的复杂报表,比如资产负债表,其原理也是在某时点统计所有数据,然后按时间存放在“资产负债表”中

当然,实际开发中情况可能复杂得多,但是基本原理和上述情况是一致的。我本人在实际工作中也同样使用上述结构,而且相比要做年结存的软件来说,查上年数据在当前软件界面中就能查询,无需切换,大大方便了用户的使用

access911.net 原创文章,作者本人对文章保留一切权利。
如需转载必须征得作者同意并注明本站链接

各位好!在各位朋友的帮助下,“存货核算系统”正式修改完成。在此我要特别感谢xinreng老师的大力帮助,他对我这个系统起了至关重要的作用。对他的无私奉献精神,以及他的会计专业水平和ACCESS的技能,我无法用语言表达,令我终身难忘。这个系统侧重于财务人员对存货的核算。具有以下特点:1、可以用作会计商品进销存明细帐,销售明细帐。2、成本计价方法采用加权平均法。考虑到加权平均法是按计算,不能即时得出其正确成本价,本系统解决了这个问题,在成本价查询、出库成本查询、销售利润查询、进销存查询均设置了“未结帐”这个选项,只要你选择了“未结帐”就能求出到这个时点的准确成本价。3、具备“末结帐”和“取消结帐”的功能,相信会计朋友对此不会陌生。结后的记录是不能编辑的,只可查看。4、具备“盘点”功能。在数量上可以进行盘点,盘点差异一律在“盘点出库”处理,这样巧妙地利用了出库成本价自动结转功能,到了末结帐,系统会自动计算出盘盈盘亏。成本价也可以进行调整,具体看帮助了。系统还存在以下几个重要问题没有解决好:一是不能分度,无法进行上下结转。二是入出库单“放弃”功能键没法解决,也没有禁止滚轮。三是数量盘点和成本价调整不能做到自动生成出、入库单。四是进销存查询没有明细记录。欢迎大家使用更欢迎大家提意见!在winXP+office2003能正常使用。操作员的密码为:111  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值