当前位置:首页 > 【完美升级版】库房库存物资管理系统的设计与实现毕业论文设计
图5.7 物资出库业务管理窗口
关键代码(出库单据审核的存储过程proc_wzck): /*物资出库审核*/
/*作者:黄盛 重大网院 082计算机科学与技术*/ CREATE PROC proc_wzck
@shczybm CHAR(6), @dh CHAR(10) AS
BEGIN TRANSACTION down
--1、设置审核标志,以防别人读取。
UPDATE tb_CKD SET shczy=@shczybm FROM tb_CKD WHERE (shczy='' or shczy is null) AND dh=@dh IF @@error>0
BEGIN
SELECT '设置审核标志时失败。请重试!' ROLLBACK TRANSACTION down RETURN
END
--2、生成流水帐记录
INSERT INTO tb_KCLSZ
([DH],[DJLX],[DJRQ],[WZBM],[DW],[DJ],[KCDJ],[CSKC],[RKSL],[CKSL],[JYKC],[LYQX]) SELECT
a.dh,'O',getdate(),b.wzbm,c.dw,b.dj,c.dj,c.dqkc,0,b.sl,c.dqkc-b.sl,d.khmc
FROM tb_ckd a,tb_rkdmx b,tb_wz c,tb_kh d
WHERE a.dh=b.dh and b.wzbm=c.wzbm and a.khbm=d.khbm and a.dh=@dh
IF @@error>0
BEGIN
SELECT '生成流水帐记录时失败,请重试!'
ROLLBACK TRANSACTION down
RETURN
END
--3、从流水帐记录中计算出加权平均单价及新的库存 UPDATE tb_WZ set dj=b.newdj ,dqkc=b.jykc FROM tb_WZ a,(SELECT
WZBM,JYKC,CONVERT(DECIMAL(12,2),CASE JYKC WHEN 0 THEN DJ ELSE (CSKC*KCDJ-CKSL*DJ)/JYKC END) AS 'newdj'
FROM tb_KCLSZ WHERE djlx='O' and dh=@dh) b WHERE a.wzbm=b.wzbm IF @@error>0
BEGIN
SELECT '更新库存时失败,请重试!'
ROLLBACK TRANSACTION down
RETURN
END
--提交事务 SELECT 'OK'
COMMIT TRANSACTION down
审核过的入库单及出库单均可再查询并打印出来,见图5.8及图5.9所示:
图5.8 物资入库单查询窗口
共分享92篇相关文档