【DELPHI设计栏目提醒】:网学会员,鉴于大家对DELPHI设计十分关注,论文会员在此为大家搜集整理了“Delphi库存管理系统”一文,供大家参考学习!
摘要
库存管理系统是一个企业单位不可缺少的部分,它的内容对于各类生产企业的决策者和管理者来说都至关重要.生产企业库存管理广泛地应用计算机网络系统,将会大大提高效率,减少费用,促使企业走向正规化,科学化,与世界接轨.因此,为生产企业开发计算机库存管理系统意义重大.
随着市场经济在我国的蓬勃发展,商业运作现代化管理的不断提高,功能越来越齐全,信息管理计算机化的要求日趋激烈,对商品入库、出库等原始的人工处理已不适应发展要求,提高对商品库存高效的现代化管理势在必行,因而开发此信息管理系统。
本文中首先介绍了开发库存管理系统的必要性及所采用的技术,并对软件工程思想、Delphi数据库开发技术作了阐述,接着对系统的需求分析及设计做了叙述,给出了DELPHI7.0下的系统实现,最后介绍了该系统的测试及系统性能的简单评价。
关键词 : 库存管理系统 软件工程 Delphi 数据库系统开发
目 录
摘要 1
ABSTRACT 2
第一章 绪 论 4
1.1 开发背景 4
1.2 国内外同类管理软件现状及发展趋势 5
1.3库存管理系统开发意义 8
第二章 软件生存周期简介 8
2.1 软件生存周期和瀑布模型 8
2.2 软件工程思想在本系统开发中的应用 10
第三章 数据库理论基础及开发工具 10
3.1数据库系统设计 10
3.2 SQL语言介绍 12
3.2.1 SQL基础 12
3.2.2 SQL语句 13
3.2.3 Access2000简介 13
3.3 开发工具简介 14
第四章 库存管理系统的总体设计 15
4.1需求分析 15
4.2 库存管理系统的功能模块分析 16
4.3 数据库的设计实现 17
4.4 各主要模块结构与实现 19
4.4.1 系统登录的设计 19
4.4.2 基本操作模块的设计 22
4.4.3查询操作模块的设计 31
4.4.4报表操作模块的设计 35
4.4.5系统维护模块的设计 35
第五章 设计总结 43
致 谢 43
参 考 文 献 44
第四章 库存管理系统的总体设计
4.1需求分析
本套应用程序名称为“库存管理系统”,主要用于库存商品信息的管理,系统包括库存管理、入库、出库、一些统计查询和报表等几部分组成。
库存管理系统需满足库存管理员及工作人员的需求,他们具有登陆应用系统的权限,所以需要对工作人员的登陆本模块进行更多的考虑,设计不同用户的操作权限和登陆方法。
对于一个库存来说,最大的功能就是存储商品,所以库存管理就是对商品信息,出入库存信息的管理,用户可以根据实际情况对各种货品信息进行分类管理,包括添加,删除更新数据库等。
当然,库存中商品入库也是常有的事,入库管理操作就是对于货品入库情况的管理,用户可以方便地输入一些货品的信息。
有了货品的入库,自然也就有货品的出库,这部分提供的功能与入库操作流程差不多,有所区别的只是对一些出库货品的管理,也很方便数据的输入。
库存货品的信息量大,数据安全性和保密性要求高。本系统实现对货品信息的管理和总体的查询等,库存信息,管理员信息的查看及维护。库存管理员可以浏览、查询、添加、删除等货品的基本信息以及统计等,并可以对一些基本的信息生成报表形式,并打印输出的功能。
报表是一个数据库中最重要的功能之一,有了报表才能清楚地知道货品的出入库情况,在数据报表功能中包括出库报表,库存报表及经办人员报表等一些基本信息的打印,方便简洁。
本系统基本涵盖了库存管理的主要需求,具有完善细致的功能、友好的用户界面、强大的数据处理功能和完备的安全机制;随心所欲的查询和所见即所得的打印功能,并全面支持分析和决策的功能。
●系统特色:
1.设置系统用户登陆功能,即时对系统数据进行安全设置与保护。
2.友好的用户界面,业务操作简单,进入系统即能使用。
3.成熟先进的技术和系统构架,采用先进的数据库访问方式,数据更安全,性能更稳定。
4.强大的数据处理能力和开放的数据接口,选用具有大型数据库安全机制的数据库系统,提供各种级别的数据保护和权限控制方式,确保数据的安全可靠。
5.系统每种操作都可以通过菜单来进行。操作快捷、方便。易懂易会。系统集输入、维护、查询、统计和各种处理为一体,信息导入导出方便共享。
4.2 库存管理系统的功能模块分析
根据需要分析,将库存管理系统的模块划分如下:
4.3 数据库的设计实现
本库存管理系统是应用在单机系统上的,所以只需建立起一个数据库,数据库名为kcgl.mdb,在此数据库基础上建立起表格,现将部分数据结构表描述如下:
入库表:
字段名 数据类型 字段长度 是否为空
编号 自动编号 长整型
材料编号 文本 10
材料名称 文本 25
品类 文本 10
数量 数字 整型
单位 文本 4
总金额 货币 整型
进货单位 文本 100
进货人 文本 10
进货日期 日期时间 日期时间
检验人 文本 50
经手人 文本 10
入库日期 日期时间 日期时间
保管人 文本 10
货位 文本 50
单据编号 文本 10
库存表:
字段名 数据类型 字段长度 是否为空
编号 自动编号 10
名称 文本 50
品类 文本 10
单位 文本 4
数量 数字 整型
总金额 货币 货币
货位 文本 50
出库登记表:
字段名 数据类型 字段长度 是否为空
编号 自动编号 10
名字 文本 25
品类 文本 10
单位 文本 4
数量 数字 整型
总金额 货币 货币
领货人 文本 10
领货日期 日期时间
经手人 文本 10
出库日期 日期时间
审核人 文本 10
货位 文本 50
单据编号 文本 10
操作员表:
字段名 数据类型 字段长度 是否为空
姓名 文本 10
权限 文本 20
密码 文本 10
4.4.2 基本操作模块的设计
在基本操作模块中,主要设计了入库管理与出库管理,其中入库管理的运行界面如下:
其入库按钮的代码分析如下:
begin
if (clmcbox.Text='''') or (sledit.Text='''') or (zjeedit.Text='''') or (djbhedit.Text='''') then
begin
showmessage(''请输入完整信息!'');
exit;
end;
try
with adoquery do
begin
close;
sql.Clear;
str:=''insert into rkb (材料名称,材料编号,品类,数量,单位,总金额,进货单位'';
str:=str+'',进货人,进货日期,经手人,入库日期,货位,保管人,单据编号,检验人)'';
str:=str+'' values(:clmc,:clbh,:pl,:sl,:dw,:zje,:jhdw,:jhr,:jhrq,:jsr,:rkrq,:hw,:bgy,:djbh,:jyr)'';
sql.Add(str);
Parameters.ParamByName(''clmc'').Value:=trim(clmcbox.Text);
Parameters.ParamByName(''clbh'').Value:=trim(clbhedit.Text);
Parameters.ParamByName(''pl'').Value:=trim(clplbox.Text);
Parameters.ParamByName(''sl'').Value:=trim(sledit.Text);
Parameters.ParamByName(''dw'').Value:=trim(dwbox.Text);
Parameters.ParamByName(''zje'').Value:=trim(zjeedit.Text);
Parameters.ParamByName(''jhdw'').Value:=trim(jhdwbox.Text);
Parameters.ParamByName(''jhr'').Value:=trim(jhrbox.Text);
Parameters.ParamByName(''jhrq'').Value:=datetostr(jhrqbox.date);
Parameters.ParamByName(''jsr'').Value:=trim(jsrbox.Text);
Parameters.ParamByName(''rkrq'').Value:=datetostr(rkrqbox.date);
Parameters.ParamByName(''hw'').Value:=trim(hwedit.Text);
Parameters.ParamByName(''bgy'').Value:=trim(bgybox.Text);
Parameters.ParamByName(''djbh'').Value:=trim(djbhedit.Text);
Parameters.ParamByName(''jyr'').Value:=trim(jyybox.Text);
execsql;
end;
//adoquery.Close;
with adoquery do
begin
close;
sql.Clear;
sql.Add(''select * from kcb where 编号=:bh'');
Parameters.ParamByName(''bh'').Value:=trim(clbhedit.Text);
open;
if recordcount>0 then
begin
sl:=fieldbyname(''数量'').AsInteger+strtoint(sledit.text);
je:=fieldbyname(''总金额'').AsInteger+strt
上一篇:基于Delphi学生成绩管理系统