文档介绍:第10章系统开发实例
需求分析
充分调研
写出需求规范说明书
数据库设计
逻辑设计
物理设计
数据代码设计
应用程序设计
创建子类
用户界面设计与编码
数据输出设计
数据库维护功能
构造VFP应用程序
软件测试
应用程序发布
系统运行与维护
以处理为中心的数据库应用系统开发示意图
开发VFP数据库应用系统的一般步骤
一个实例:“汽车修理管理系统”的开发
需求分析
开发目的:
(1) 能对汽车修理有关的各类数据进行输入、修改与查询。
(2) 编制季度零件订货计划。
(3) 打印汽车修理发票和工资月报表。
数据需求
输入单据包括修车登记单、汽车修理单、零件入库单和零件出库单等4种
输出单据包括季度零件订货计划、汽车修理发票和工资月报表等3种。
功能需求
1. 数据登记
登记功能用于把各种手填单据中的数据及时登记到系统将要定义的表中,还要求能进行修改。这些单据包括修车登记单、汽车修理单、零件入库单和零件出库单。
2. 查询
能查询登记单、修理单、汽车、车主、修理工、零件库存的有关数据。
3. 编制并显示季度零件订货计划
编制零件订货计划需要找出要订货的零件,订货条件为:零件库存量<最低库存量。
订货量可由用户输入或修改。
4. 打印发票
发票中除包含顾客、汽车及修理项目等数据外,还要计算出修车费,修车费包括修理费和零件费,按下列各式计算:
零件费=(零件价格×耗用数量)
修理费=小时工资×修理工时×3
总计=零件费+修理费
5. 打印修理工工资月报表
某修理工的月工资=修理小时×小时工资。
数据库设计
逻辑设计
(1) 修理单: XLD(编号,牌号,工号,修理项目,修理小时,送修日期,完工日期)
(2) 汽车: QC(牌号,型号,生产厂,车主名)
(3) 车主: CZ(车主名,地址,电话)
(4) 修理工: XLG(工号,姓名,地址,电话,出生日期,进厂日期,小时工资)
(5) 零件用量: LJYL(编号,零件号,数量)
(6) 零件库存: LJKC(零件号,零件名,成本,价格,库存量,最低库存,订货量)
表间关联的设计
物理设计
1. 修理单(C:\QCXL\)
xld(编号 c(4), 牌号 c(8), 修理项目 c(12), 送修日期 d, 完工日期 d, 工号 c(4) 普通索引, 修理小时 n())
(C:\QCXL\)
qc(牌号 c(8) 普通索引, 型号 c(6), 生产厂 c(20), 车主名 c(8))
(C:\QCXL\)
cz(车主名 c(8) 普通索引, 地址 c(16), 电话 c(7))
4. 修理工(C:\QCXL\)
xlg (工号 c(4) 普通索引, 姓名 c(8), 地址 c(16), 电话 c(7), 出生日期 d, 进厂日期 d, 小时工资 n())
5. 零件用量(C:\QCXL\)
ljyl(编号 c(4) 普通索引, 零件号 c(6), 数量 n(2))
6. 零件库存(C:\QCXL\)
ljkc(零件号 c(6) 普通索引, 零件名 c(10), 成本 n(), 价格 n(), 库存量 n(3), 最低库存 n(3), 订货量 n(3))
7. ,
8. 零件出库表(C:\QCXL\)
ljck(零件号 c(6), 数量 n(2))
应用程序设计
总体设计
初始用户界面设计
模块设计与编码
()
SET TALK OFF
SET DEFA TO c:\qcxl && 设置文件默认路径,本例所有文件都应装在该目录中
CLEA ALL
SET VIEW TO && 统一设置数据环境,自动关闭所有的工作区后打开视图文件
PUBLIC xldh,zljf && xldh用于存储输入的修理单号;zljf存储总零件费,打印发票时用
xldh=SPACE(4)
DO FORM fm && 显示封面(参阅例7-1,并事先将fm表单复制到C:\qcxl)
KEYB '{CTRL+F4}' && mand窗口
MODI WIND SCREEN TITL '汽车修理管理系统' && 打开VFP主窗口并设置窗口标题
CLEA
* 以上为初始化环境代码
DO && 菜单文件名定为QCXLCD(汽车修理菜单)
READ EVENT && 建立事件循环
QUIT && 退出VFP
图 总体结构图
图 汽