第 10章 系统开发实例需求分析充分调研写出需求规范说明书数据库设计逻辑设计物理设计数据代码设计应用程序设计创建子类用户界面设计与编码数据输出设计数据库维护功能构造 VFP应用程序软件测试应用程序发布系统运行与维护图 10.1 以处理为中心的数据库应用系统开发示意图
10.1 开发 VFP数据库应用系统的一般步骤
10.2 一个实例,“汽车修理管理系统”的开发需求分析开发目的:
(1) 能对汽车修理有关的各类数据进行输入、修改与查询。
(2) 编制季度零件订货计划。
(3) 打印汽车修理发票和工资月报表。
数据需求输入单据包括修车登记单、汽车修理单、零件入库单和零件出库单等 4种输出单据包括季度零件订货计划、汽车修理发票和工资月报表等 3种。
功能需求
1,数据登记登记功能用于把各种手填单据中的数据及时登记到系统将要定义的表中,还要求能进行修改。这些单据包括修车登记单、汽车修理单、零件入库单和零件出库单。
2,查询能查询登记单、修理单、汽车、车主、修理工、零件库存的有关数据。
3,编制并显示季度零件订货计划编制零件订货计划需要找出要订货的零件,订货条件为:零件库存量 <最低库存量。
订货量可由用户输入或修改。
4,打印发票发票中除包含顾客、汽车及修理项目等数据外,还要计算出修车费,修车费包括修理费和零件费,按下列各式计算,
零件费=?(零件价格 × 耗用数量 )
修理费=小时工资 × 修理工时 × 3
总计=零件费+修理费
5,打印修理工工资月报表某修理工的月工资 =?修理小时 × 小时工资。
数据库设计逻辑设计
(1) 修理单,XLD(编号,牌号,工号,修理项目,修理小时,送修日期,完工日期 )
(2) 汽车,QC(牌号,型号,生产厂,车主名 )
(3) 车主,CZ(车主名,地址,电话 )
(4) 修理工,XLG(工号,姓名,地址,电话,出生日期,进厂日期,小时工资 )
(5) 零件用量,LJYL(编号,零件号,数量 )
(6) 零件库存,LJKC(零件号,零件名,成本,价格,库存量,最低库存,订货量 )
图 10.9 表间关联的设计物理设计
1,修理单 (C:\QCXL\XLD.DBF)
xld(编号 c(4),牌号 c(8),修理项目 c(12),送修日期 d,完工日期 d,工号 c(4) 普通索引,修理小时
n(4.1))
2.汽车 (C:\QCXL\QC.DBF)
qc(牌号 c(8) 普通索引,型号 c(6),生产厂 c(20),车主名 c(8))
3.车主 (C:\QCXL\CZ.DBF)
cz(车主名 c(8) 普通索引,地址 c(16),电话 c(7))
4,修理工 (C:\QCXL\XLG.DBF)
xlg (工号 c(4) 普通索引,姓名 c(8),地址 c(16),电话 c(7),出生日期 d,进厂日期 d,小时工资 n(5.2))
5,零件用量 (C:\QCXL\LJYL.DBF)
ljyl(编号 c(4) 普通索引,零件号 c(6),数量 n(2))
6,零件库存 (C:\QCXL\LJKC.DBF)
ljkc(零件号 c(6) 普通索引,零件名 c(10),成本 n(8.2),价格 n(8.2),库存量 n(3),最低库存 n(3),订货量 n(3))
7,零件入库表为 LJRK.DBF,其结构与 LJKC.DBF相同
8,零件出库表 (C:\QCXL\LJCK.DBF)
ljck(零件号 c(6),数量 n(2))
应用程序设计总体设计初始用户界面设计模块设计与编码
1.主文件 (QCXL.PRG)
SET TALK OFF
SET DEFA TO c:\qcxl && 设置文件默认路径,本例所有文件都应装在该目录中
CLEA ALL
SET VIEW TO sjhj.vue && 统一设置数据环境,自动关闭所有的工作区后打开视图文件
PUBLIC xldh,zljf && xldh用于存储输入的修理单号 ;zljf存储总零件费,打印发票时用
xldh=SPACE(4)
DO FORM fm && 显示封面 (参阅例 7-1,并事先将 fm表单复制到 C:\qcxl)
KEYB '{CTRL+F4}' && 关闭 Command窗口
MODI WIND SCREEN TITL '汽 车 修 理 管 理 系 统 ' && 打开 VFP主窗口并设置窗口标题
CLEA
* 以上为初始化环境代码
DO qcxlcd.mpr && 菜单文件名定为 QCXLCD(汽车修理菜单 )
READ EVENT && 建立事件循环
QUIT && 退出 VFP
图 10.10 总体结构图 图 10.11 汽车修理管理系统的菜单
2,菜单程序 (QCXLCD.MPR)
往命令窗口键入命令 MODI MENU QCXLCD,就会出现菜单设计窗口,此时可按图 10.11建立菜单。
(1),退出”菜单项的命令
CLEAR EVENTS && 停止事件循环,转去执行 READ EVENT后的命令
(2) 按图 10.11设置调用各表单的命令,例如对“修车登记”菜单项可键入命令 DO FORM
xcdj。
(3) 从菜单文件 QCXLCD.MNX生成菜单程序 QCXLCD.MPR。
图 10.12 汽车修理管理系统的数据环境
3.,修车登记”表单 (XCDJ.SCX)
图 10.13,修车登记,表单窗口图 10.14,输入修理单号,表单窗口
4.,输入修理单号,
表单
(SRXLDH.SCX)
5.,汽车修理”表单 (QCXL.SCX)
6.,零件订货计划”表单 (LJDH.SCX)
图 10.16,零件订货计划,表单窗口图 10.15,汽车修理,表单窗口
7.,打印发票,表单 (DYFP.SCX)
8.,发票,报表 (FP.FRX)
图 10.17,打印 发票,表单窗口图 10.18,发票,报表设计器运行设计装载数据设置应用系统程序项
(1) 进入 Windows 98(或 Windows 95);
(2) 选定“开始”菜单中“设置”选项的“任务栏”命令 —— 选定任务栏属性对话框的开始菜单程序选项卡 —— 选定添加按钮 —— 在创建快捷方式对话框中的命令行文本框中键入,c:\vfp\vfp6.exe c:\qcxl\qcxl –
t—— 选定下一步按钮 —— 认同缺省文件夹 programs,选定下一步按钮 —
— 在为程序选定标题对话框中键入:汽车修理管理系统 —— 选定完成按钮返回任务栏属性对话框 —— 选定确定按钮,,汽车修理管理系统”程序项已建立在“开始”菜单的“程序”子菜单中。
10.3 应用程序的管理与发布应用程序管理项目的建立在命令窗口键入命令 MODIFY PROJECT
QCXLGL
项目管理器中的主文件连编文件的包含与排除图 10.19 Qcxlgl项目管理器窗口图 10.20 连编选项对话框应用程序发布发布准备在项目管理器中生成一个,exe可执行程序创建发布树 (目录 )
创建发布磁盘磁盘映象由安装向导生成在硬盘的磁盘映象目录中,选定工具菜单的向导选项的安装命令。
图 10.21
安装向导对话框