目录 2
第1部分 系统简介 2
第1章 系统简介 2
1.1 黑布林购物中心介绍 2
1.2 功能模块介绍 3
1.2.1 客户管理模块 3
1.2.2 供应商管理模块 4
1.2.3 商品管理模块 4
1.2.4 订单管理模块 5
1.2.5 进货管理模块 6
1.2.6 库存管理模块 7
1.2.7 销售管理模块 7
1.2.8 财务报表模块 8
1.2.9 其他辅助模块 9
1.3 关键技术简介 10
1.3.1 数据库技术 10
1.3.2 软件工程知识 10
1.3.3 PowerBuilder开发技术 10
第2部分 数据库设计 12
第2章 数据库设计理论 12
2.1 关系模型基本概念 12
2.1.1 关系模型基本术语 13
2.1.2 键(key) 13
2.1.3 关系的定义 14
2.2 实体联系模型 16
2.3 数据的并发控制 16
2.4.2 域完整性 17
2.4.1 实体完整性 17
2.3.1 排它(X)锁 17
2.4 数据的完整性 17
2.3.2 共享(S)锁 17
2.4.3 引用完整性 18
2.4.4 用户定义完整性 18
2.5 数据的安全性 18
2.6 数据库的规范化设计 19
2.6.1 表应该有一个标识符 19
2.6.2 表应只能存储单一类型实体的数据 20
2.6.3 表应避免可为空的列 20
2.6.4 表不应有重复的值或列 20
2.7 数据库设计考虑事项 20
2.8.1 创建数据库 21
2.8 SQL语言介绍 21
2.8.2 创建新表 22
2.8.3 创建视图 23
2.8.4 存储过程 24
2.8.5 触发器 25
2.8.6 删除表、视图、存储过程和触发器 27
2.8.7 数据查询语句 28
2.8.8 数据插入语句 29
2.8.9 数据删除语句 29
2.8.10 数据更新语句 30
2.9 PowerBuilder中的SQL语句 30
第3章 SQL Server 2000基本概念及工具介绍 31
3.1 Microsoft SQL Server 2000特性 31
3.2 SQL Server 2000的各种版本 32
3.3 使用企业管理器 33
3.3.1 新建SQLServer注册 34
3.3.2 连接数据库服务器 37
3.3.3 创建数据库 37
3.3.4 创建表 39
3.3.5 定义主键 40
3.3.6 创建索引 41
3.3.7 建立表间关系 42
3.3.8 备份和恢复数据库 50
3.4 使用查询分析器 52
3.4.1 连接SQL Server数据库服务器 53
3.4.2 选择适当的数据库 54
3.4.3 SQL查询分析器的颜色代码 55
3.4.4 在SQL查询分析器中执行SQL语句 55
3.4.5 在SQL查询分析器中执行存储过程 56
3.4.6 取消运行时间过长的查询 57
3.4.7 在SQL查询分析器中解决错误 57
3.4.8 在SQL查询分析器中返回结果集 57
第4章 PowerBuilder与数据库连接 59
4.1 PowerBuilder连接SQL Server 60
4.2 PowerBuilder连接Adaptive Server Anywhere 63
4.3 PowerBuilder连接Sybase Adaptive Server Enterprise和Sybase SQL Server 65
4.4 PowerBuilder连接Oracle 67
5.1 需求定义 72
5.2 软件需求规格说明书 72
第3部分 系统开发 72
第5章 实例分析 72
5.3 软件需求规格说明书模板 73
5.3.1 介绍 74
5.3.2 综合描述 75
5.3.3 外部接口需求 78
5.3.4 系统特性 78
5.3.5 其他非功能要求 82
5.3.6 其他需求 82
5.3.7 附录A:词汇表 83
5.3.8 附录B:待定问题列表 83
5.4 程序模块划分 83
5.5 生成实例数据库 83
5.5.1 利用企业管理器建立实例数据库 83
5.5.3 设置PowerBuilder的数据库配置文件 85
5.5.2 利用查询分析器建立实例数据库 85
第6章 建立实例对象 89
6.1 建立实例工作区 89
6.2 建立实例目标 90
6.3 指定应用程序框架名称 98
6.4 指定应用程序图标 98
6.5 处理系统运行错误信息 100
6.6 实现软件单运行 102
6.6.1 调用Windows的应用程序接口(API)函数 102
6.6.2 直接使用PowerBuilder的Handle()函数 102
第7章 建立启动窗口 104
7.1 建立启动窗口 104
7.2 设置软件基本信息 107
7.2.1 INI文件读取 108
7.2.2 注册表读取 110
8.1 建立登录窗口 115
第8章 建立登录窗口 115
8.2 连接数据库 116
8.2.1 Case IS_USE_INIFILE 119
8.2.2 Case IS_USE_REGISTRY 120
8.2.3 Case IS_USE_SCRIPT 121
8.3 用户合法性检验 123
8.4 建立菜单框架 126
9.1.1 部门信息更改 135
9.1.2 部门信息增加 135
9.1.3 部门信息删除 135
9.1 功能要求 135
第9章 部门基本信息维护 135
9.2 部门划分 136
9.3 部门属性设计 136
9.4 表结构设计 137
9.5 部门基本信息窗口设计 137
9.5.1 设置窗口属性 138
9.5.2 创建部门信息明细数据窗口 139
9.5.3 编写事件代码 140
第10章 员工基本信息维护 144
10.1 功能要求 144
10.1.1 员工信息增加 144
10.1.2 员工信息修改 144
103.1 员工编号 145
10.3 员工属性设计 145
10.2 员工分类 145
10.1.3 员工信息删除 145
10.3.2 部门 146
10.3.3 姓名 146
10.3.4 性别 146
10.3.5 绩考核 146
10.4 表结构设计 146
10.5 员工基本信息维护窗口设计 147
10.5.1 窗口属性设计 148
10.5.2 创建员工信息数据窗口 148
10.5.3 创建弹出式菜单 152
10.5.4 编写事件代码 153
11.1.1 系统用户新增 159
11.1 功能要求 159
第11章 系统用户维护 159
11.1.2 系统用户删除 160
11.1.3 系统用户密码清除 160
11.2 系统用户属性设计 160
11.2.1 员工编号 160
11.2.2 登录ID 160
11.2.3 登录密码 160
11.3 表结构设计 161
11.4 系统用户维护窗口设计 161
11.4.1 窗口属性设计 162
11.4.2 创建员工信息数据窗口 162
11.4.3 创建系统用户信息数据窗口 162
11.4.4 编写事件代码 166
12.1 功能要求 173
第12章 用户权限设计 173
12.2 权限划分 174
12.3 表结构设计 174
12.4 用户权限窗口设计 178
12.4.1 窗口属性设计 179
12.4.2 创建用户权限数据窗口 179
12.4.3 编写事件代码 182
12.4.4 权限在菜单中的运用 185
第13章 客户管理 193
13.1 功能要求 193
13.2 客户基本资料分析 194
13.3 表结构设计 196
13.4 客户基本资料维护设计 196
13.4.2 客户基本资料列表窗口设计 198
13.4.1 创建继承用的祖先窗口 198
13.4.3 客户基本资料信息列表窗口属性设计 199
13.4.4 创建客户基本资料列表数据窗口 199
13.4.5 编写事件代码 200
13.4.6 客户基本资料编辑窗口设计 200
13.5 VIP管理设计 206
13.5.1 VIP管理窗口属性设计 207
13.5.2 关联VIP显示数据窗口 207
13.5.3 编写事件代码 207
13.6 购物查询设计 209
13.6.1 客户购物查询结果窗口设计 211
13.6.2 客户购物查询结果窗口属性设计 211
13.6.3 创建客户购物查询结果数据窗口 211
13.6.4 编写事件代码 213
13.6.5 创建查询条件窗口 214
13.7 购物统计设计 216
13.7.1 客户购物查询结果窗口设计 217
13.7.2 客户购物查询结果窗口属性设计 217
13.7.3 创建客户购物查询结果数据窗口 218
13.7.4 编写事件代码 219
13.7.5 创建查询条件窗口 219
13.7.6 创建购物统计存储过程 220
第14章 供应商管理 222
14.1 功能要求 222
14.1.1 基本资料维护 223
14.1.2 特殊属性维护 223
14.1.3 供货查询 223
14.1.7 欠款查询 224
14.2.1 供应商编号 224
14.2 供应商基本资料分析 224
14.1.4 供货统计 224
14.1.6 退货统计 224
14.1.5 退货查询 224
14.2.2 全称 225
14.2.3 简称 225
14.2.4 省份 225
14.2.5 邮编 225
14.2.6 地址 225
14.2.7 联系人 225
14.3.4 最大欠款额度 226
14.3.3 最大退货期限 226
14.3.2 最大退货折扣 226
14.3 供应商特殊属性分析 226
14.2.8 电话 226
14.3.1 进货折扣 226
14.3.5 最大欠款期限 227
14.4 表结构设计 228
14.5 供应商基本资料维护设计 228
14.5.1 供应商基本资料列表窗口设计 229
14.5.2 供应商基本资料信息列表窗口属性设计 230
14.5.3 创建供应商基本资料列表数据窗口 230
14.5.4 编写事件代码 232
14.5.5 供应商基本资料维护窗口设计 235
14.6.2 供应商特殊属性编辑窗口设计 242
14.6 供应商特殊属性维护设计 242
14.6.1 编写事件代码 242
14.7 供应商查询设计 247
14.7.1 功能要求 247
14.7.2 查询窗口设计 247
14.7.3 编写事件代码 248
14.8 供货查询设计 250
14.8.1 供货查询窗口设计 251
14.8.2 创建供货查询结果数据窗口 251
14.8.3 编写存储过程proc_SupplierQuery 252
14.8.4 编写事件代码 252
14.8.5 查询条件录入窗口设计 253
14.10 退货查询设计、退货统计设计 254
14.9 供货统计设计 254
14.11 欠费查询设计 255
第15章 商品管理 256
15.1 功能要求 256
15.1.1 基本资料 256
15.1.2 商品特殊属性维护 257
15.1.3 价格调整 257
15.1.7 畅销排名 258
15.2 商品基本资料分析 258
15.1.8 滞销排名 258
15.1.9 滞销份额 258
15.1.6 利润分布 258
15.1.5 条码打印 258
15.1.4 条码生成 258
15.2.1 商品编码 259
15.2.2 条形码 259
15.2.3 名称 260
15.2.4 型号 260
15.2.5 单位 260
15.2.6 产地 260
15.2.7 价格 260
15.2.8 照片 260
15.3 商品特殊属性分析 260
15.3.1 最低售价 260
15.3.2 最高库存界限 260
15.3.6 进价 261
15.3.5 是否允许退货 261
15.3.7 批价 261
15.3.4 商品活动状态 261
15.3.3 最低库存界限 261
15.4 表结构设计 262
15.5 商品基本资料维护设计 262
15.5.1 商品基本资料列表窗口设计 264
15.5.2 商品基本资料信息列表窗口属性设计 264
15.5.3 创建商品基本资料列表数据窗口 264
15.5.4 编写事件代码 265
15.5.5 基本资料编辑窗口设计 267
15.6 商品属性设计窗口 277
15.6.1 “商品属性”编辑窗口属性设计 278
15.6.2 创建“商品属性”编辑数据窗口 279
15.6.3 编写事件代码 280
15.7 商品查询设计 284
15.7.1 功能要求 284
15.7.2 查询窗口设计 284
15.7.3 编写事件代码 285
15.8 价格调整模块设计 288
15.8.1 价格调整窗口及其控件属性设计 289
15.8.2 编写事件代码 290
15.9 条码生成模块设计 294
15.9.1 条码生成窗口属性设计 295
15.9.2 创建条码显示数据窗口 295
15.9.3 编写事件代码 298
15.10 条码打印模块设计 300
15.10.1 条码打印窗口属性设计 301
15.10.3 编写事件代码 302
15.10.2 创建条码显示数据窗口 302
15.11 利润分布设计 304
15.11.1 利润分布窗口设计 304
15.11.2 创建利润分布数据窗口 304
15.11.3 创建存储过程proc_salesorder 305
15.11.4 编写事件代码 306
15.11.5 查询条件录入窗口设计 306
15.12 畅销排名设计 307
15.13 滞销排名设计 307
15.14 滞销份额设计 308
第16章 订单管理 310
16.1 功能要求 310
16.1.1 订单录入 310
16.1.3 订单查询 311
16.1.2 订单审核 311
16.1.4 完成率统计 312
16.2 订单基本属性分析 312
16.2.1 订单表头 312
16.2.2 订单明细 314
16.3 表结构设计 315
16.4 订单录入设计 316
16.4.1 订单信息列表窗口设计 317
16.4.2 创建订单信息列表弹出式菜单 317
16.4.3 创建订单信息列表数据窗口 318
16.4.4 编写事件代码 319
16.4.5 订单明细录入窗口设计 323
16.4.6 订单打印格式设计 334
16.5 订单审核设计 336
16.6 订单查询设计 337
16.7.1 订单完成率统计窗口设计 341
16.7 完成统计设计 341
16.7.2 创建订单完成率统计数据窗口 342
16.7.3 编写存储过程 342
16.7.4 编写事件代码 343
第17章 商品进货管理 344
17.1 功能要求 344
17.1.1 进货录入 344
17.1.2 进货审核 345
17.1.3 退货录入 345
17.1.4 退货审核 345
17.1.5 进货查询 345
17.1.8 退货统计 346
17.2 进货单属性分析 346
17.1.7 进货统计 346
17.1.6 退货查询 346
17.3 表结构设计 348
17.4 进货单录入设计 349
17.4.1 进货单列表窗口设计 350
17.4.2 创建进货单列表数据窗口 350
17.4.3 编写事件代码 351
17.4.4 进货单明细窗口设计 356
17.4.5 订单选择窗口设计 368
174.6 进货单打印格式设计 369
17.5 进货审核设计 371
17.7.1 进货统计窗口设计 373
17.7.2 创建进货统计数据窗口 373
17.7 进货统计设计 373
17.6 进货查询设计 373
17.7.3 编写存储过程proc_importtotal 374
17.7.4 编写事件代码 375
17.7.5 查询条件录入窗口设计 376
17.8 退货录入、退货审核、退货查询和退货统计 376
第18章 商品销售管理 377
18.1 功能要求 377
18.2 销售单基本属性分析 378
18.3 表结构设计 380
18.4 商品零售设计 381
18.4.1 销售单录入界面设计 382
18.4.2 创建销售单数据窗口 382
18.4.3 编写事件代码 383
18.5 商品批发设计 392
18.6 销售明细设计 393
18.7 销售统计设计 394
18.8 批发明细和批发统计 396
18.9 退货明细 396
18.10 退货统计 397
18.11 销售分布图 398
18.12 退货分布图 400
18.13 销售趋势图 401
第19章 商品库存管理 403
19.1 功能要求 403
19.2 日结操作设计 404
19.3 盘点操作设计 408
19.4 盘点单设计 411
19.5 日结报告设计 414
19.7 库存分布设计 415
19.6 库存查询设计 415
19.8 出入明细设计 416
第20章 财务报表 418
20.1 进销存日报表 418
20.2 进销存月报表 419
20.3 月进货统计表 420
20.4 月销售统计表 421
20.5 月出入库统计表 422
20.6 收银员销售日报 423
20.7 财务接口文件 424
20.8 供应商付款提醒 424
第21章 系统功能 425
21.1 操作日志 425
21.2 重新登录 428
21.3 修改密码 429
21.4 打印机设置 430
21.5 计算器 430
21.6 记事本 431
21.7 电子邮件 431
21.8 音乐欣赏 431
21.9 休闲游戏 432
第22章 基本资料 433
22.1 省份设置 433
22.1.1 功能要求 433
22.1.2 省份属性字段设计 433
22.2 单位设置 434
22.2.1 功能要求 434
22.1.4 省份设置窗口设计 434
22.1.3 表结构设计 434
22.2.2 单位属性字段设计 435
22.2.3 表结构设计 435
22.2.4 单位设置窗口设计 435
第23章 制作帮助文件 436
23.1 生成.Rtf文件 436
23.2 生成.Hpj文件 437
23.3 编译.Hpj文件 437
23.4 编写帮助菜单事件 438
第24章 制作安装程序 439
24.1 安装前的准备工作 439
24.2 制作安装程序 439
24.3 运行安装程序 442
24.4 完善安装程序 443
第4部分 结束 447
第25章 项目验收 447
25.1 为什么要验收 447
25.2 验收的注意事项 447
25.3 验收清单的内容 448
第26章 项目总结 451
26.1 引言 451
26.2 实际开发结果 451
26.3 开发工作评价 452
26.4 经验与教训 452
第27章 系统维护 453
27.1 软件维护的内容 453
27.2 软件维护报告 453
附录 黑布林购物中心销售管理系统需求规格说明 454