跪求,如何算出库存数量.急急急!!!!!! ( 积分: 150 )

  • 主题发起人 主题发起人 IT菜鸟
  • 开始时间 开始时间
I

IT菜鸟

Unregistered / Unconfirmed
GUEST, unregistred user!
已知进货表(包括进货数量),出货表(包括出货数量),库存表(包括库存数量)3个表
如何算出库存数量
跪求高手
如有源码,本人非常感激
还有treeview的添加子节点,删除子节点,重命名子节点如何实现
提供者,狂+分,希望有源程序
急啊
 
没高手知道吗
 
进货数量-出货数量+原库存数量=现库存数量
 
ACCESS數據厙的:
select item_no,(today_hand+int_qty-out_qty)as on_hand_qty
(select k.*,b.outqty as OUT_QTY
from(select m.ITEM_NO,m.TODAY_HAND,a.intqty as INT_QTY
from inv_mast m
Left outer join (select item_no,sum(int_qty)as intqty from inv_int group by item_no) a
on m.item_no=a.item_no ) k
Left outer join (select item_no,sum(out_qty)as outqty from inv_out group by item_no) b
on k.item_no=b.item_no)

ORACLE數據厙的:
select item_no,(today_hand+int_qty-out_qty)as on_hand_qty
from(select m.ITEM_NO,m.TODAY_HAND,a.intqty as INT_QTY,b.outqty as OUT_QTY
from inv_mast m
Left outer join (select item_no,sum(int_qty)as intqty from inv_int group by item_no) a
on m.item_no=a.item_no
Left outer join (select item_no,sum(out_qty)as outqty from inv_out group by item_no) b
on m.item_no=b.item_no)
 
有个入库表
有个库存表
有个出库表
入库的时候
判断库存表有没有库存
没有的话就插入一条
有的话就更新库存数量
出库就是减少库存数量

treeview的操作?与数据库挂钩吗?
是的话 数据库用2个字段来表示节点 ID(自身ID) PID(父类ID)
哎 这些都是基本的组件应用
treeview 你最好用他的DATA属性来存放指针信息 指针指向一个RECORD信息
多看看书吧
 
在出/入库表写个触发程序:
入库时,检查库存表是否存在此物品,无则INSERT TO库存表;
有则库存数量=库存数量+入库数量;
出库时,检查出库数量是否大于库存数量,小于则可以出库:库存数量=库存数量-出库数量
 
目前是用存储过程做的
2个存储过程如下
CREATE PROCEDURE sf_ck
AS
begin transaction

update 库存 set 库存数量=库存数量-al
from
(select 货物单号, 物料编号,'al'=实际出库数量 from 出库明细)
as temp where 库存.物料编号=temp.物料编号 and 库存.货物单号=temp.货物单号
commit
GO

CREATE PROCEDURE sf_rk
AS
begin transaction
insert into 库存 (货物单号,物料编号,库存数量)
select distinct j.货物单号, j.物料编号,j.实收数量 from 入库明细 as j left join 库存 as i on (j.物料编号=i.物料编号 and j.货物单号=i.货物单号)
where i.物料编号 is null
update 库存 set 库存数量=库存数量+al
from
(select 物料编号,'al'=实收数量 from 入库明细)
as temp where 库存.物料编号=temp.物料编号
commit
GO

现在的问题是,如果库存内没有插入,在算总是多+了次实收数量
什么原因啊????????
树型新增子节点为何总是把父节点的名字也改了啊 ???????????
 
[:(][:(]大哥们搞下啊
 
学习~还是做触发器来得直接!
 
你在插入时已经有入库数量了,
然后又UPDATE那里加一次入库数量,这样当然会多加了一次呀.
所以你要先判断物料编号不存在则INSERT ;
存在则UPDATE.
要不你就要把插入时的库存数量设为0.
 
后退
顶部