大富翁,快帮帮忙,小可的分全送上 (0分)

  • 主题发起人 主题发起人 liyufei
  • 开始时间 开始时间
L

liyufei

Unregistered / Unconfirmed
GUEST, unregistred user!
我建立了一库,
类别 上期库存 本期收入 本期发出 本期结存
到了月底汇总后,我要把库中‘本期结存’数转换成 下月初的 ‘上期库存’数
请问如何做?

现在我按楼下这些好心的朋友的办法可以实现把
库中‘本期结存’数转换成 下月初的 ‘上期库存’数
但是这库存中其它的无用的字段怎么办呢,如转下月时本期收入字段,本期发出字段
要清除该怎么办
 
update table set 上期库存=本期结存
 
同意楼上
 
似乎缺一个月份字段呀。
 
加上月份字段后,需要使用嵌套SQL来完成。推荐使用Delphi的逻辑判断来实现。
我对嵌套SQL用的不是特别好,尤其是这种。
 
可不可以建这样的视图:
create view v as
select a.上期库存,b.本期结存 from table a,table b where a.月份=本月 and b.月份=上月

然后
update v set 上期库存=本期结存
 
从应用的角度应该加一个[月份]字段。
insert into TableName(月份,类别,上期库存,本期收入,本期发出,本期结存))
select :本月,类别, 本期结存,0,0,本期结存
from TableName where 月份=:上月
我认为在每月应新增一条记录,那本期收入,本期发出的初始值为0
若不需要新增记录,而是每月更新记录的话
只要‘update table set 上期库存=本期结存’就可

 
可以增加一个月份,另外用‘update table set 上期库存=本期结存’就可
 
我觉得你建这样的数据表有点问题,如果要查询的期限不是固定的话,你的数据表根本没用,只是占用空间,
譬如说:期限可以是一天、一周、一月、一季或一年,也有可能是xxxx年xx月xx日-xxxx年xx月xx日,这种
情况下你怎么处理?还有如果原始数据表一有改动的话,你是否重建这个库存表,如果不重建的话,你的数据
就没有正确性可言。这些你怎么处理?
我认为根本的办法是建视图及存储过程对给定的期限作实时查询。
 
to zjjzl前辈
若是以月为期限呢?,如我查一月的或者三月的
 
若以月为期限的话还是存在问题,就是我提到的第二点情况,例如:当前月为2月,现在如果
发现一月的数据有错需修改,怎么处理?是否需同步修改上月库存?
以月为期限的话可以使用xxxx年xx月1日-(下月1日-1)范围进行查询,同样如果需查询一年的
数据只要xxxx年1月1日-(下一年1月1日-1)为范围进行查询。因为是实时查询,不论你修改了
那段时间的数据,均不会影响查询结果的正确性。
你的方法只适合期限固定、不能修改非本期数据、报表查询在期末汇总以后、汇总后如果发现
数据错误可以取消当前汇总的情况下。
 
to zjjzl前辈
我也发现这个库存在巨大的隐患,你可以帮我出出主意吗?单位领导要我帮他们做一个
这样的系统,我一个人真有点力不从心的感觉,但也只硬着皮头在做了
 
我认为,首先数据库要使用SQL Server、MYSQL、Interbase等数据库服务器(推荐Interbase),这些都支持
SQL92及可使用存储过程,然后建立带日期范围参数的统计汇总存储过程或查询,程序中只要调用存储过程或
查询就可以获取相应的库存数据。
 
to zjjzl前辈
我用的是桌面数据库,这个系统都差不多了,我还可以转到interbase中去吗
 
你还是不要转了,有点烦,数据库存储过程能完成的功能你可以在程序中用过程或函数及内存表或临时表实现,
只不过效率差点,单机使用还可以,网络应用数据量大的话,网络传输就有点拥挤。
 
to zjjzl
当前月为2月,现在如果
发现一月的数据有错需修改,怎么处理?是否需同步修改上月库存?
我来回答你这个问题。根据财务制度,结转过的帐目是不允许修改的,只能用冲帐红字来
调整,同时各期(一般以月为单位)的结存数据应该保留三年以上。这个制度也适用于仓
库等类似的领域。

to hwzpg
我到不认为你这个表设计的有问题(但是缺少了一个年份月份字段),一般来说表只能是
存放数据的地方,至于数据的准确性应该由软件设计的思路和企业的管理制度来来保障。
加上时间字段以后,只需要一个期末字段即可。因为下期的期初即是上期的期末。不需要
考虑复制等问题。如下
年 月 本期收入 本期发出 本期结存
2002 1 200 150 50
2002 2 50 100 0
这样设计以后,当发现以结帐的单据中有错误,应该增加一条调整单据。例如2月实际是发
90,3月发现了这个问题,就在3月生成一发出为-10的单据,如下
年 月 本期收入 本期发出 本期结存
2002 1 200 150 50
2002 2 50 100 0
2002 3 0 -10 10
 
to mat:
是否严格按照财务制度来设计,往往不是我们来决定的,我以前也是这样做的,但就是不适合
他们的要求,后来干脆使用以上的方法,很灵活又随他们的意,如果说作弊那是他们的事,是
他们管理制度的问题,当然安照我的方法也可以设置不让修改,或设置修改的特殊权限,
这在程序中是可以做到的。
按照你的方法是绝对不能修改以前的数据了,但用户有时一定要修改怎么办?
就算象用友软件,表面上看是这样的,但实际上在某些地方还是留有后门,这些你知道吗?
另外有些仓库管理,本身并没有完善的管理制度,只是根据需要指定的,难道做程序的也要为他们
制订科学的管理制度吗?
你所说的只是适合那些有严格的管理制度,完全绝对遵守财务制度的企业,这样的企业多吗?
另外还有一些问题,现在不想说了...以后讨论吧。
 
我也在写一个类似的系统,用的是Interbase
建议你使用这个数据库:免费 又是 支持网络多用户操作!
 

Similar threads

后退
顶部