库存位号 经手人 备注 销售管理实体 提货单号 出库日期 车辆名称 图1.3 销售管理实体E-R图
单价 供应商名称 金额 数量 车辆资料实体 车辆名称 入库单号 日期 图1.2 车辆资料实体E-R图
三 数据库逻辑设计
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。这里的数据库采用Access,用ADO作为连接数据对象。
建立一个空的数据库carshale.mdb后,建立系统需要的表,具体有:车辆名称表、车辆资料表、入库单表、供应商名称表、系统管理表、销售单表。
各表间的关系如图1.3所示:
图1.3 各表间的关系
连接数据库,需要先在VB中添加ADO库。在VB中选择“工程”?“引
用”命令,在对话框中选择Microsoft ActiveX Data Objects 2.0 Library。在程序设计模块中,定义ADO连接对象。语句如下:
Public conn As New ADODB.Connection '标记连接对象 在子程序中,打开数据库的语句:
&
\
Dim connectionstring As String connectionstring = \source=carshale.mdb\
conn.Open connectionstring
四 结构设计
根据需求,设计好数据库系统,然后通过不同的窗体来实现不同的功能,功能模块如下所示:
入库管理模块:用来实现对入库单的增加、删除和修改等操作。 销售管理模块:用来实现对销售单的增加、删除和修改等操作。
查询管理模块:用来实现对车辆的浏览和查询。
系统管理模块:用来实现对用户的增加、删除和修改等操作。 车辆汇总模块:根据实际情况查询相应的车辆信息。
五 界面设计
最终设计好的界面如图所示:
图1.4 汽车销售管理系统
这是一个多文档界面应用程序,可以同时显示多个文档,每个文档显示在各自的窗体中。菜单应用程序中,有5个菜单选项,每个选项对应着E-R图的一个子项目。
1用户登录
用户登录子窗体是运行的第一个界面。用户登录界面如图1.5所示。
图1.5 用户登录界面
它检查用户名和密码是否正确。由于用户资料是存放在数据库中,所以在启动该子窗体时,就已经连接了数据库。代码如下:
Private Sub Form_Load()
Dim connectionstring As String
connectionstring = \source=carshale.mdb\
conn.Open connectionstring cnt = 0 End Sub 序。
& \
“确定”按钮检查输入的数据是否和数据库中的数据一致。实现代码见源程
2入库管理
入库管理子窗体界面如图1.6所示。该窗体用来添加入库的信息,用ADO 来连接数据库,采用MDI 的子程序。载入窗体时,将自动加入车辆名称和日期信息。选择“确定”按钮要求先填写基本信息,然后与数据库信息比较。先定义几个变量:
Dim rs_checkname As New ADODB.Recordset '车辆名称对应的数据对象 Dim rs_custom As New ADODB.Recordset '供应商名称对应的数据对象 Const row_num = 10 '表格行数 Const col_num = 6 '表格列数 其他控制代码见源程序。
图1.6 入库管理界面
3销售管理
销售管理子窗体界面如图1.7所示。该子窗体设计及代码均与入库管理相似。它是用来添加销售信息的,主要用ADO连接数据库。载入窗体时,将自动加入车辆名称和日期信息。选择“确定”按钮要求先填写基本信息,然后与数据库信息比较。选择“取消”按钮则卸载当前窗体。