汽车配件管理系统的设计与开发.docx
《汽车配件管理系统的设计与开发.docx》由会员分享,可在线阅读,更多相关《汽车配件管理系统的设计与开发.docx(18页珍藏版)》请在冰豆网上搜索。
汽车配件管理系统的设计与开发
VisualFoxpro
课程设计实习报告
题目:
汽车配件管理系统的设计与开发
班级:
171081
姓名:
康健
学号:
20081004239
指导教师:
宋麦玲
2009年7月
一、系统开发背景-----------------------------------------------------------(3)
二、课程设计要求-----------------------------------------------------------(3)三、业务流程---------------------------------------------------------------(4)
四、分析与设计--------------------------------------------------------------(4)
1、系统分析------------------------------------------------------------(4)
2、系统设计------------------------------------------------------------(4)
3、项目管理------------------------------------------------------------(7)
4、结构设计------------------------------------------------------------(8)
5、程序设计------------------------------------------------------------(8)
五、系统实施---------------------------------------------------------------(16)
六、系统测试---------------------------------------------------------------(16)
七、结束语------------------------------------------------------------------(16)
附录--------------------------------------------------------------------------(18)
汽车配件管理系统的设计与开发
(20081004239康健)
一、系统开发背景
目前汽车配件销售企业大多数在其连锁店的管理还是手工进行,随着汽车配件行业的迅速发展,手工管理的种种弊端暴露无疑,给销售企业的发展带来了不必要的麻烦。
为了规范企业内部管理,提高企业业务管理水平,更好的为客户服务,应采用计算机来管理汽车配件的进销存业务。
汽车配件管理系统的目的是为企业提供一个计算机化的管理平台,实践企业内部科学有效的管理,促进企业管理信息化,规范化,将能使管理人员从繁琐的杂务工作中解脱出来,真正从事管理工作。
本系统实在vf理论学习的基础上,在老师的帮助下,针对具体项目进行了详细的设计,在设计与实现过程中,结合源代码具体的描述出整个项目的开发过程。
二、课程设计要求:
要求:
1、本系统包括数据录入,数据修改,数据添加,数据查询,数据备份和报表生成。
2、数据库信息包括配件名称,配件代码,配件型号,配件价格,配件库存量,配件所属车型,出厂日期等。
3、查询应可以提供多种查询方式。
4、汇总报表等。
三、业务流程
打开程序可直接进行相关操作和查询,具体业务流程如下:
四、分析与设计
1、系统分析
该系统可以达到以下几个目的:
汽车配件代码,配件型号,配件价格,配件库存量,配件所属车型,出厂日期等信息的查询;上述信息的添加与删除等。
在软件开发分析阶段,信息收集是决定软件项目可行性的重要环节。
程序设计者要通过对开发项目信息的收集,确定系统目标,软件开发的总体思路。
2、系统设计
数据库文件设计
(1)、用程序文件建立数据库文件“汽车配件管理系统.dbf”,程序如下;
Createtable汽车配件管理系统.dbf配件代码char
(2);配件名称char(10);配件型号char
(2);配件价格char(5);库存量char(3);所属车型char(10);出厂日期出厂日期char(8);
(2)、用程序文件建立数据库文件“xs.dbf”,程序如下;
Createtablecar.dbf配件代码char
(2);配件名称char(10);配件型号char
(2);配件价格char(5);库存量char(3);所属车型char(10);出厂日期char(8);
字段名称
字段类型
字段宽度
小数位数
是否索引
配件代码
字符型
2
0
普通索引
配件名称
字符型
10
0
无
配件型号
字符型
2
0
无
配件价格
数值型
5
0
无
库存量
字符型
3
0
无
所属车型
字符型
10
0
无
出厂日期
日期型
8
0
无
(3)、建立“登录main.SCT”
3、项目管理
建立“car.PJT”
4、结构设计
各控件属性及其程序
登陆菜单结构如图:
因其直接可以进入主程序,故没有click程序;
关闭按钮的click程序如下:
thisform.release
5、程序设计
在程序设计里需要完成配件名称,配件代码,配件型号,配件价格,配件库存量,配件所属车型,出厂日期等的查询,数据的添加和修改,退出程序的程序设计。
VF不但拥有大量的交互式数据管理工具,而且还拥有一套功能完善的程序语言系统,下面是每个环节的程序原代码。
本系统的程序语法简单易懂,没有错误,可以完成基本的程序要求。
全部查看汽车配件信息的程序如下:
docase
casemandgroup1.value=1
thisform.label2.caption="请输入配件代码:
"
casemandgroup1.value=2
thisform.label2.caption="请输入配件名称:
"
casemandgroup1.value=3
thisform.label2.caption="请输入所属车型:
"
casemandgroup1.value=4
thisform.label2.caption="请输入出厂日期:
"
casemandgroup1.value=5
thisform.label2.caption="请输入库存量:
"
endcase
thisform.text1.value=""
thisform.text1.setfocus
thisform.refresh
(2)数据录入、数据修改、数据添加系统
其结构如下图所示
其代码如下:
doformadd.scx
docase
casemandgroup1.value=1
setfilterto配件代码=alltrim(thisform.text1.value)
casemandgroup1.value=2
setfilterto配件名称=alltrim(thisform.text1.value)
casemandgroup1.value=3
setfilterto所属车型=alltrim(thisform.text1.value)
casemandgroup1.value=4
tj=""
ifnotempty(thisform.text1.value)
tj="出厂日期=ctod(thisform.text1.value)"
endif
setfilterto&tj
casemandgroup1.value=5
nj=""
ifnotempty(thisform.text1.value)
nj="库存量=val(thisform.text1.value)"
endif
setfilterto&nj
endcase
thisform.refresh
(3)数据查询系统
其结构图如下
其代码程序如下:
docase
casemandgroup1.value=1
thisform.label2.caption="请输入配件代码:
"
casemandgroup1.value=2
thisform.label2.caption="请输入配件名称:
"
casemandgroup1.value=3
thisform.label2.caption="请输入所属车型:
"
casemandgroup1.value=4
thisform.label2.caption="请输入出厂日期:
"
casemandgroup1.value=5
thisform.label2.caption="请输入库存量:
"
endcase
thisform.text1.value=""
thisform.text1.setfocus
thisform.refresh
docase
casemandgroup1.value=1
setfilterto配件代码=alltrim(thisform.text1.value)
casemandgroup1.value=2
setfilterto配件名称=alltrim(thisform.text1.value)
casemandgroup1.value=3
setfilterto所属车型=alltrim(thisform.text1.value)
casemandgroup1.value=4
tj=""
ifnotempty(thisform.text1.value)
tj="出厂日期=ctod(thisform.text1.value)"
endif
setfilterto&tj
casemandgroup1.value=5
nj=""
ifnotempty(thisform.text1.value)
nj="库存量=val(thisform.text1.value)"
endif
setfilterto&nj
endcase
thisform.refresh
(4)报表制作与
其结构图如下:
其代码如下:
reportformtotal.frx
docase
casemandgroup1.value=1
setfilterto配件代码=alltrim(thisform.text1.value)
casemandgroup1.value=2
setfilterto配件名称=alltrim(thisform.text1.value)
casemandgroup1.value=3
setfilterto所属车型=alltrim(thisform.text1.value)
casemandgroup1.value=4
tj=""
ifnotempty(thisform.text1.value)
tj="出厂日期=ctod(thisform.text1.value)"
endif
setfilterto&tj
casemandgroup1.value=5
nj=""
ifnotempty(thisform.text1.value)
nj="库存量=val(thisform.text1.value)"
endif
setfilterto&nj
endcase
thisform.refresh
(3)、退出系统
退出系统的程序如下:
thisform.release
五、系统实施
在软件开发实施阶段,要按系统的思想,把程序对象视为一个大的系统,然后将这个的大系统分为若干个小的系统,保证高级控制程序能够控制各个功能模块。
一般采用“自顶向下的“的设计思想开发高级控制程序,并逐级控制更低一层的模块,每一模块执行一个独立、精确的任务,而且受控与高级程序。
此系统简单容易阅读,易维护,达到了各个模块间的接口数目尽量小的原则。
六、系统测试
在软件维护阶段,要经常修正系统程序的缺陷,增加新的性能。
在这个阶段测试系统的性能尤为关键,要通过调式检查语法错误和算法错误,并加以改正。
此系统也是按照以上的原则开发的,经过测试基本可以满足以上要求。
七、结束语
(1)设计题目分析
这次课设有一定难度。
比如要用代码来完成一些操作。
。
通过设计与实现,基本完成了课设任务,取得了较大收获。
(2)需要完善之处
在设计过程中,感觉有以下几点可以进行完善:
汽车配件的数据录入、数据修改、数据添加系统做到了一起;查询目标不明确;虽然系统的整体运行良好,但整个系统的形式过于单一,需要加以补充和完善。
(3)总结
经过一个礼拜的设计和开发,汽车配件管理系统基本开发完毕。
其功能基本符合需求,能够完成汽车配件的查询、修改、添加等工作。
用户也可较方便进行数据备份和恢复、数据删除。
对于数据的一致性的问题也通过程序进行了有效的解决。
但是由于设计时间较短,所以该系统还有许多不尽如人意的地方,比如用户界面不够美观,出错处理不够等多方面问题。
这些都有待进一步改善。
本次课程设计,是在老师的指导下,借助VisualFoxpro相关案例,运用老师所授的《VisualFoxpro及其应用系统开发》课程中的理论知识,经过长时间的酝酿和修改,最终完善而成。
在老师的悉心指导下,在同学们的热情帮助下,我对VisualFoxPro有了更深一层的理解,除自己翻阅资料外我门还在一起讨论,有好多的好的思想,但是我无法把他表达出来,我对VF运用还不熟练,我想通过自己的努力在以后作的更好。
只学习了半年的课程,对许多东西理解还是不够深入,运用不够熟练,以及存在一些问题,敬请谅解。
【参考文献】
[1]史济民主编,VisualFoxpro及其应用系统开发,清华大学出版社,2004年1月
[2]白永军,VisualFoxpro程序开发项目案例,清华大学出本社,2004年5月
[3]明日科技,VisualFoxpro数据库系统开发案例精选,人民邮电出版社,2006年8月
[4]朱静、李向,VFP课程设计指导手册,中国地质大学计算机学院,2007年7月
[5]李雁翎.VisualFoxPro应用基础与面向对象程序设计教程(第二版).北京:
高等教育出版社.2002
[6]李雁翎.VisualFoxPro实验指导、习题集与系统开发案例(地二版).北京:
高等教育出版社.2003;
[7]黄梯云.计算机软件技术基础.北京:
高等教育出版社,1999
[8]萨师煊,王珊.数据库系统概论(第三版).北京:
高等教育出版社,2000
附录:
VisualFoxPro命令一览表:
CREATEDATABASE:
建立并打开一个数据库文件命令
CREATEFORM:
打开表单设计器命令
APPANDFROM:
从另一个文件添加记录到当前表的末尾命令
CREATE:
创建一个新的VisualFoxPro数据库表命令
COUNT:
统计表中的记录数命令
BLANK:
清除当前记录中字段的数据命令
DELETE:
为指定记录加上删除标记命令
PACK:
永久性的删除当前表中加有删除标记的记录命令
DELETEFILE:
从磁盘中删除指定的文件命令
DIR:
显示一个目录或文件夹中的文件信息命令
DISPLAY:
在窗口中显示当前表的信息命令
DISPLAYFILES:
显示文件的有关信息命令
DISPLAYMEMORY:
显示当前内存变量和数组元素的内容命令
EDIT:
显示要编辑的字段命令
EXIT:
退出DOWHILE、FOR、DCAN循环语句结构的命令
IF…ENDIF:
根据逻辑表达式的值有条件地执行一组命令
INDEX:
建立一个索引文件,按某个逻辑顺序显示和访问表中的记录命令
INSERT:
在当前表中插入一条新记录,然后显示该记录并进行编辑命令
LIST:
显示库文件命令
HELP:
打开帮助窗口命令
DOCASE…ENDCASE:
将执行第一个逻辑表达式中为真的那个分支后面的一组
FOR…ENDFOR:
将一组命令反复执行指定的次数
DOWHILE…ENDDO:
根据指定的条件循环执行一组指定的命令
GO/GOTO:
移动记录指针到指定记录号的记录中命令
MODIFYDATABASE:
打开数据库设计器,允许用户按交互方式编辑当前数据库
MODIFYCOMMAND:
打开编辑窗口,以便能编辑或者建立程序文件
RENAME:
更换一个文件的名称
MODIFYSTRUCTURE:
打开表设计器,以便修改表的结构
REINDEX:
重建当前打开的索引文件
RECALL:
去除当前表中记录的删除标记
SET:
打开数据会话窗口
SEEK:
查找表中索引关键字值与指定的表达式相匹配的第一条记录
SELECT:
选择指定工作区
REPLACE:
更新表中记录
APPEND:
添加一个或多个新记录到表的末尾
BROWSE:
打开窗口并显示当前表或指定表的记录
LOCATE:
顺序查找表中满足指定条件的第一条记录
CONTINUE:
继续执行以前的LOCATE命令
SETTALKON…SETTALKOFF:
确定VisualFoxPro是否显示命令的结果
SETDELETEDON…SETDELETEDOFF:
指示是否处理带有删除标记的记录