3.2功能
控制面板 用户命令 1增加商品信息 用户命令处理 2查询商品信息 3修改商品信息 显示商品信息 商品信息库 显示信息 显示器 图5.1:主要功能结构1
商品信息
接收商品信息 判断商品是否存在 商品不存在命令 商品存在命令 自动生成商品信息 转入商品修改系统 写入 显示信息 显示
6
写入 商品信息库 图5.2:主要功能结构2
3.3性能
在录入的时候保证数据的正确性与记录的唯一性,根据编号的唯一性确保记录的准确查询的时候保证查全性,所有相应域包含查询关键字的记录都应能查到。查询的时候保证查准性,查到的记录应与给定的单项或组合查询条件完全匹配。该程序的最长响应时间:1s;更新处理时间: 5s;数据的转换和传送时间:5s;解题时间; 3s。当外部硬件软件发生变化时,要做出及时的改变相适应,有较强的灵活性。
3.4输人项
商品清单(MerchBill)表: 中文字段名 英文字段名 字段类型 长度 主键/外键 字段值约束 char merchID 供货商号 profferID char 名称 fullName varchar 商品编号 条形码 计量单位 类别 产地 单价 备注 barCode kind unitCost others char varchar money text metricUnit varchar birthPlace varchar 6 6 80 15 4 8 50 4 50 P F NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NULL NULL NOT NULL NULL 基本数据都是从键盘输入进入系统。
3.5输出项
商品清单(MerchBill)表: 中文字段名 英文字段名 字段类型 长度 主键/外键 字段值约束 char merchID 供货商号 profferID char 名称 fullName varchar 商品编号 条形码 计量单位 类别 产地 单价 备注 barCode kind unitCost others char varchar money text metricUnit varchar birthPlace varchar 6 6 80 15 4 8 50 4 50 P F NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NULL NULL NOT NULL NULL 输出数据会显示在现显示屏上。
7
3.6算法
主要代码: JSP:
详细说明商品信息管理的算法: 添加一条商品信息
/*添加一条商品信息,输出商品编号和执行结果*/ CREATE PROC dbo.GoodsAddNew (
@ merchID varchar(100), --商品编号 @ fullName varchar(100), --名称 @ barCode varchar(15), --条形码 @Amount decimal(18, 2), --库存数量 @ kind int, --类型编号 @ birthPlace varchar(100), --产地
@ profferID int, --供货商编号 @Introduce varchar(1000), --商品名称 @ others varchar(1000), --备注 @ profferID nt OUTPUT, --商品编号
@ReturnValue int OUTPUT --执行结果(VB组件的自定义枚举值) ) AS
DECLARE @ErrNo int --保存错误号 BEGIN TRANSACTION --开始事务 /*手动维护数据唯一性的代码。*/ DECLARE @ExistName bit
EXEC ExistByName 'Goods', 'GoodsName', @GoodsName, @ExistName OUTPUT IF @ExistName = 1 --当前商品名称已存在 BEGIN
ROLLBACK TRANSACTION --回滚事务
SELECT @ReturnValue = 3 --返回VB组件的自定义枚举值
8
RETURN --结束存储过程 END
/*添加记录*/
INSERT INTO Goods Values(@GoodsName, @Amount, @UnitName, @TypeID,
@SupplierID, @Introduce, @Remark) --记录当前的错误号
SELECT @ErrNo = @@ERROR /*输出参数*/
IF @ErrNo = 0 --没有发生错误 BEGIN
SELECT @ID = (SELECT MAX(GoodsID) FROM Goods) SELECT @ReturnValue = 0 END
ELSE IF @ErrNo = 2627 --违反唯一约束 BEGIN
ROLLBACK TRANSACTION --遇到错误则回滚事务 SELECT @ReturnValue = 3 RETURN END
ELSE --其他未知错误 BEGIN
ROLLBACK TRANSACTION --遇到错误则回滚事务 SELECT @ReturnValue = 1 RETURN END
COMMIT TRANSACTION --提交事务 GO
SET QUOTED_IDENTIFIER OFF GO
SET ANSI_NULLS ON GO
SET QUOTED_IDENTIFIER ON GO
SET ANSI_NULLS ON GO
删除一条商品信息
/*删除一条商品信息,输出执行结果*/ CREATE PROC dbo.GoodsDelete (
@GoodsID int, --商品编号
@ReturnValue int OUTPUT --执行结果(VB组件的自定义枚举值) ) AS
DECLARE @ErrNo int --保存错误号
9
BEGIN TRANSACTION --开始事务
/*验证是否存在当前商品编号,若否则不能删除*/ DECLARE @ExistID bit
EXEC ExistByID 'Goods', 'GoodsID', @GoodsID, @ExistID OUTPUT IF @ExistID = 0 --当前商品编号不存在 BEGIN
ROLLBACK TRANSACTION --回滚事务
SELECT @ReturnValue = 2 --返回VB组件的自定义枚举值 RETURN --结束存储过程 END
/*手动维护数据完整性的代码*/
EXEC ExistByID 'Buy', 'BuyID', @GoodsID, @ExistID OUTPUT IF @ExistID = 1 BEGIN
ROLLBACK TRANSACTION SELECT @ReturnValue = 3 RETURN END
/*验证销售信息是否包含当前商品,若是则不能删除*/
EXEC ExistByID 'Sale', 'SaleID', @GoodsID, @ExistID OUTPUT IF @ExistID = 1 BEGIN
ROLLBACK TRANSACTION SELECT @ReturnValue = 3 RETURN END
/*删除记录*/
DELETE FROM Goods WHERE GoodsID = @GoodsID --记录当前的错误号
SELECT @ErrNo = @@ERROR /*输出参数*/
IF @ErrNo = 0 --没有发生错误 SELECT @ReturnValue = 0
ELSE IF @ErrNo = 547 --发生外键冲突 BEGIN
ROLLBACK TRANSACTION --遇到错误则回滚事务 SELECT @ReturnValue = 3 RETURN END
ELSE --其他未知错误 BEGIN
ROLLBACK TRANSACTION --遇到错误则回滚事务 SELECT @ReturnValue = 1
10
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库网上化妆品先手系统(详细设计说明书)(2)在线全文阅读。
相关推荐: