第1章 管理信息系统基础 1
1.1 管理信息系统概述 1
1.1.1 管理信息系统的发展历史 1
1.1.2 管理信息系统的应用 2
1.1.3 管理信息系统的发展方向 2
1.2 管理信息系统的特点 4
1.2.1 管理信息系统的组成 4
1.2.2 管理信息系统的界面特点 4
1.3 管理信息系统的开发 5
1.3.1 管理信息系统的开发方式 5
1.3.2 系统开发的一般方法 6
1.3.3 管理信息系统的开发过程 8
第2章 PowerBuilder 8.0开发环境 11
2.1 PowerBuilder 8.0的功能和特点 11
2.1.1 专业的客户/服务器开发工具 11
2.1.2 面向对象的编程 11
2.1.3 支持多种关系数据库管理系统 11
2.1.4 丰富的数据表现风格 12
2.1.5 灵活快捷的数据转移方法 12
2.1.6 功能强大的调试器和多种调试方式 12
2.2 开发环境综述 13
2.2.1 主要画板说明与功能简述 13
2.2.2 定制工具栏 16
2.2.3 PowerBuilder 8.0开发环境与开发界面 18
2.3 PowerScript编程语言 19
2.3.1 断行、续行与多条语句 19
2.3.2 注释 20
2.3.3 标识符 20
2.3.4 特殊ASCII码字符 21
2.3.5 空值(NULL) 21
2.3.6 对象、属性、函数和事件的引用方法 21
2.3.7 代词 22
2.3.8 保留字 22
2.3.9 数据类型与变量说明 23
2.3.10 操作符 24
2.3.11 条件语句 25
2.3.12 循环语句 27
2.3.13 返回语句与终止程序运行语句 28
2.3.14 创建自定义函数 29
2.4 PowerBuilder的属性、函数和事件 30
2.4.1 属性 31
2.4.2 对象函数 31
2.4.3 事件 32
2.5 PowerBuilder的应用对象 32
2.5.1 应用对象和应用对象画板 33
2.5.2 设置应用对象的属性 35
2.5.3 应用对象的事件 38
2.6 PowerBuilder的窗口对象 40
2.6.1 新建一个窗口 41
2.6.2 窗口属性 42
2.6.3 窗口事件 43
2.6.4 窗口函数 44
2.6.5 窗口继承 45
2.7 PowerBuilder的菜单对象 46
2.7.1 菜单画笔 46
2.7.2 菜单属性 47
2.7.3 菜单事件 48
2.7.4 将菜单关系到窗口 48
2.8.1 数据窗口对象的工作原理 49
2.8 PowerBuilder的数据窗口对象 49
2.8.2 数据窗口对象的创建过程 50
2.8.3 其他数据源 52
2.8.4 显示风格 53
2.8.5 数据窗口画板 54
2.8.6 数据窗口中的控件 59
2.8.7 数据窗口对数据的过滤 61
2.9 数据窗口控件 63
2.9.1 建立数据窗口控件与数据窗口对象的联系 63
2.9.2 数据窗口控件的其他属性 64
2.9.3 数据窗口控件工作原理 64
2.9.4 访问和修改数据窗口对象的内容 66
2.9.5 常用事件 67
2.10.1 PowerBuilder中的事务管理 69
2.10 PowerBuilder的事务对象 69
2.10.2 创建与删除自定义的事务对象 70
2.10.3 事务对象的属性 70
2.10.4 设置事务对象 72
2.10.5 建立和中断与数据库的连接 74
2.10.6 检索数据 74
2.11 与数据库的连接 75
2.11.1 连接数据库的特点 75
2.11.2 连接数据库的两类接口 75
2.11.3 与数据库专用接口的连接 76
2.11.5 在应用对象中实现与数据库的连接 77
2.11.4 PowerBuilder实现数据库操作 77
2.12 嵌入式SQL 79
2.12.1 数据库连接管理语句 79
2.12.2 事务管理语句 79
2.12.3 游标语句 79
2.12.4 数据操作语句 80
2.12.5 可视化生成内嵌SQL语句 81
第3章 人事管理系统 85
3.1 系统设计 85
3.1.1 系统目标设计 85
3.1.2 开发设计思想 85
3.2 数据库设计 86
3.1.5 系统功能模块设计 86
3.1.3 开发和运行环境选择 86
3.1.4 系统功能分析 86
3.2.1 数据库需求分析 87
3.2.2 数据库概念结构设计 87
3.2.3 数据库逻辑结构设计 89
3.3 数据库结构的实现 91
3.3.1 创建员工基本状况表格EMPLOYEE_BASIC 91
3.3.2 创建员工婚姻状况的表格EMPLOYEE_MARRIAGE 92
3.3.3 创建员工学历状况表格EMPLOYEE_SCHOOL 92
3.3.5 创建部门信息表DEPT 93
3.3.6 增加EMPLOYEE_BASIC表格的外部键 93
3.3.4 创建工作岗位情况表JOB 93
3.4 应用程序对象的创建 94
3.5 登录窗口的设计 95
3.5.1 首次登录窗口的设计 95
3.5.2 重新登录窗口的设计 96
3.6 建立应用程序主窗口 98
3.7 菜单的设计 99
3.8 数据窗口对象的创建 101
3.8.1 d_basic_grid数据窗口对象的创建 101
3.8.2 d_basic数据窗口对象的创建 103
3.9 输入程序的设计 104
3.10 维护程序的设计 108
3.11.1 基本情况查看窗口 111
3.11 查询程序的设计 111
3.11.2 条件查询窗口 114
3.12 报表程序的设计 124
3.13 帮助程序的设计 128
3.14 开发中的难点和解决技巧 128
3.14.1 能将“回车”转化为“Tab”键的单行编辑框 129
3.14.2 具有提示功能的按钮控件 129
3.15 系统的编译和发布 130
3.15.1 创建工程对象 130
3.15.2 编译生成和测试 134
3.15.3 发布 135
3.16 系统的实现 136
3.17 小结 140
第4章 工资管理系统 141
4.1 系统设计 141
4.1.1 系统目标设计 141
4.1.2 开发设计思想 141
4.1.3 系统功能分析 142
4.1.4 系统功能模块设计 142
4.1.5 工资管理系统和企业中其它系统的关系 142
4.2 数据库设计 143
4.2.1 数据库需求分析 143
4.2.2 数据库概念结构设计 144
4.2.3 数据库逻辑结构设计 146
4.3.2 创建考勤管理表格kq 147
4.3.1 创建员工津贴表jt 147
4.3 数据库结构的实现 147
4.3.3 创建工资标准表格gzbz 148
4.3.4 创建医疗保险表ylbx 148
4.3.5 创建员工基本情况表yg 148
4.3.6 创建员工月工资表ygz 148
4.3.7 创建员工年终奖金表nzjj 149
4.4 应用程序对象的创建 149
4.5 登录窗口的设计 150
4.6 建立应用程序主窗口 152
4.7 祖先窗口的设计 155
4.7.1 w_update祖先窗口的创建 155
4.7.2 w_preview 祖先窗口的创建 159
4.8 工资核算模块的设计 163
4.8.1 员工月工资窗口的创建 163
4.8.2 员工月工资报表窗口的创建 167
4.9 工资标准设定模块的设计 170
4.9.1 工资标准设定窗口的创建 170
4.9.2 工种设定窗口的创建 171
4.10 系统模块的设计 171
4.11 开发中的难点和解决技巧 175
4.11.1 自定义RadioButton控件 175
4.11.2 将窗口定位在屏幕的中央 175
4.11.3 窗口关闭时自动询问用户是否进行保存 176
4.11.4 双击数据窗口中标题栏实现升降排序 177
4.12 系统的实现 178
4.13 系统的编译和发布 180
4.14 小结 181
第5章 考勤管理系统 183
5.1 系统设计 183
5.1.1 系统目标设计 183
5.1.2 开发设计思想 183
5.1.3 系统功能分析 183
5.1.4 系统功能模块设计 183
5.1.5 考勤管理系统和企业中其他系统的关系 184
5.2 数据库设计 184
5.2.1 数据库需求分析 184
5.2.2 数据库概念结构设计 185
5.2.3 数据库逻辑结构设计 186
5.3 数据库结构的实现 186
5.3.1 创建考勤管理表kq 186
5.3.2 创建缺勤类型表qqlb 187
5.3.3 创建员工基本情况表yg 187
5.4 应用程序对象的创建 187
5.5 登录程序的设计 188
5.6 建立应用程序主窗口 190
5.7 考勤信息处理窗口的设计 192
5.7.1 考勤信息处理窗口的创建 192
5.7.2 数据窗口对象的创建 193
5.8 缺勤类型设定窗口的创建 195
5.9.1 员工考勤统计窗口的创建 197
5.9 员工考勤统计窗口的创建 197
5.9.2 d_kq_group数据窗口对象的创建 198
5.10 系统的实现 201
5.11 系统的编译和发布 203
5.12 小结 204
第6章 员工培训管理系统 205
6.1 系统设计 205
6.1.1 系统目标设计 205
6.1.2 开发设计思想 205
6.1.3 系统功能分析 205
6.2 数据库设计 206
6.1.4 系统功能模块设计 206
6.2.1 数据库需求分析 207
6.2.2 数据库概念结构设计 208
6.2.3 数据库逻辑结构设计 210
6.3 数据库结构的实现 214
6.3.1 创建员工基本状况表格PERSONNEL 214
6.3.2 创建员工成绩表格SCORE 215
6.3.3 创建课程表格COURSE 215
6.3.4 创建工作岗位情况表JOB 216
6.3.5 创建部门信息表DEPT 216
6.3.6 创建培训需求表COURSE_NEED 216
6.3.7 创建企业培训计划表COURSE_AVAILABLE 216
6.3.10 创建教员信息表TEACHER 217
6.3.9 创建课程评价表COURSE_EVALUATION 217
6.3.8 创建个人培训计划表PERSONNEL_PLAN 217
6.3.11 创建培训资源信息表TM_RESOURCE 218
6.3.12 创建教材信息表BOCK 218
6.3.13 创建管理TMS系统的用户口令表USER_PSWD 219
6.4 创建应用程序对象 219
6.5 创建用户对象 220
6.6 登录窗口的设计 221
6.7 建立程序主窗口 224
6.8 菜单的设计 226
6.9 口令修改窗口的设计 227
6.10 数据窗口对象的创建 228
6.11 员工信息管理模块的设计 230
6.12 培训课程管理模块的设计 241
6.13 培训教材管理模块的设计 247
6.14 培训计划管理模块的设计 251
6.15 帮助程序的设计 254
6.16 开发中的难点和解决技巧 255
6.17 系统的编译和发布 256
6.18 系统的实现 256
6.19 小结 261
第7章 仓库管理系统 263
7.1 系统设计 263
7.1.1 系统目标设计 263
7.1.2 开发设计思想 263
7.2.1 数据库需求分析 264
7.2 数据库设计 264
7.1.3 系统功能分析 264
7.1.4 系统功能模块设计 264
7.2.2 数据库概念结构设计 265
7.2.3 数据库逻辑结构设计 267
7.3 数据库结构的实现 269
7.3.1 创建设备代码表格device_code 269
7.3.2 创建入库表格device_in 269
7.3.3 创建出库表格device_out 269
7.3.4 创建现有库存表device 270
7.3.5 创建部门需求表device_need 270
7.3.6 创建设备还库表device_return 270
7.4 创建应用程序对象 271
7.3.8 创建操作日志表howdo 271
7.3.7 创建设备采购计划表device_wantbuy 271
7.5 建立应用程序主窗口 273
7.6 菜单的设计 274
7.7 登录窗口的设计 277
7.8 设备入库窗口的创建 278
7.9 出库模块的设计 282
7.10 设备采购窗口的创建 286
7.11 设备采购报表窗口的创建 288
7.12 库存报警窗口 291
7.13 操作日志模块的设计 293
7.14 帮助程序的设计 295
7.15 开发中难点和解决技巧 296
7.16 系统的编译和发布 297
7.17 系统的实现 298
7.18 小结 302
第8章 内部行文管理系统 303
8.1 系统设计 303
8.1.1 系统目标设计 303
8.1.2 开发设计思想 303
8.1.3 系统功能分析 303
8.1.4 系统功能模块设计 304
8.2 数据库设计 304
8.2.2 数据库概念结构设计 305
8.2.1 数据库需求分析 305
8.2.3 数据库逻辑结构设计 306
8.3 数据库结构的实现 308
8.3.1 创建员工基本状况表格PERSONNEL 308
8.3.2 创建用户口令表USER_PSWD 308
8.3.3 创建部门信息表DEPT 309
8.3.4 创建内部行文信息表XW 309
8.3.5 创建内部行文处理信息表XWCL 309
8.4 创建应用程序对象 310
8.5 登录模块的设计 311
8.5.1 登录窗口的设计 311
8.5.2 口令修改窗口的设计 313
8.6 建立程序主窗口 315
8.7 菜单的设计 316
8.8 数据窗口对象的创建 317
8.9 拟文功能模块的设计 320
8.9.1 拟文窗口w_nw的设计 320
8.9.2 发送对象选择窗口w_choose_receiver的设计 322
8.10 行文修改模块的设计 325
8.10.1 选择未发送行文窗口w_xg的设计 325
8.10.2 行文修改窗口w_xg2的设计 328
8.11 行文接收模块的设计 330
8.11.1 行文接收选择窗口w_js的设计 330
8.11.2 行文接收处理窗口w_js2的设计 332
8.12.1 行文反馈查询窗口w_cx_fk的设计 334
8.12 查询模块的设计 334
8.12.2 行文反馈查询处理窗口w_cx_fk2的设计 340
8.13 开发中的难点和解决技巧 342
8.13.1 编辑TabOrder顺序 342
8.13.2 将数据窗口中某列设置为不可编辑 343
8.13.3 数据窗口自动换行显示 344
8.13.4 在程序中切换中英文输入法 344
8.14 系统的编译和发布 345
8.15 运行结果 345
8.16 小结 349
9.1 系统设计 351
9.1.1 系统客户要求 351
第9章 进销存管理系统 351
9.1.2 系统开发目标 352
9.1.3 开发设计思想 352
9.1.4 系统功能分析 352
9.1.5 系统功能模块设计 352
9.1.6 进销存管理系统和企业中其它子系统的关系 352
9.2 数据库设计 353
9.2.1 数据库需求分析 353
9.2.2 数据库概念结构设计 354
9.2.3 数据库逻辑结构设计 356
9.3.3 创建库存信息表格kc 358
9.3.2 订单信息表dd 358
9.3.1 创建客户信息表格kehu 358
9.3 数据库结构的实现 358
9.3.4 创建发货信息表fh 359
9.3.5 创建产品信息表product 359
9.3.6 创建产品生产表producting 359
9.3.7 创建产品进库信息表jk 360
9.4 应用程序对象的创建 360
9.5 建立应用程序主窗口 361
9.6 自定义用户对象的创建 362
9.7 菜单的设计 364
9.8 登录程序的设计 366
9.9 祖先窗口的设计 368
9.9.1 w update祖先窗口的创建 368
9.10.1 数据备份窗口的创建 371
9.9.2 w preview祖先窗口的创建 371
9.10 数据库维护模块的设计 371
9.10.2 数据清除窗口的创建 374
9.10.3 数据导入窗口的创建 377
9.11 产品管理模块的设计 378
9.11.1 产品入库管理窗口的创建 379
9.11.2 产品出库管理窗口的创建 383
9.12 计划管理模块的设计 386
9.13 订单管理模块的设计 390
9.13.1 订单查询窗口 390
9.13.2 订单维护窗口 393
9.14.1 主窗口背景 394
9.14 开发中的难点和解决技巧 394
9.14.2 常用Win32 API函数在PowerBuilder中的应用 396
9.15 系统的编译和发布 400
9.16 系统的实现 401
9.17 小结 404
第10章 酒店管理系统 405
10.1 系统设计 405
10.1.1 系统目标设计 405
10.1.2 开发设计思想 405
10.1.3 系统功能分析 405
10.1.4 系统功能模块设计 408
10.2.1 数据库需求分析 410
10.2 数据库设计 410
10.2.2 数据库概念结构设计 411
10.2.3 数据库逻辑结构设计 412
10.3 数据库结构的实现 413
10.3.1 创建菜谱信息表格CP 413
10.3.2 创建值班员表ZBY 414
10.3.3 创建客户信息表KH 414
10.3.4 创建订餐信息表DC 414
10.3.5 创建结算信息表JS 415
10.4 创建应用程序对象 415
10.5 登录模块的设计 417
10.5.1 登录窗口的设计 417
10.5.2 口令修改窗口的设计 419
10.6 建立程序主窗口 420
10.7 菜单的设计 421
10.8 系统维护模块的设计 422
10.8.1 值班员信息维护窗口w_zby的设计 422
10.8.2 菜谱信息维护窗口w_choose_receiver的设计 425
10.9 订餐管理模块的设计 431
10.9.1 订餐窗口w_dc的设计 431
10.9.2 订餐修改窗口w_dc_xg的设计 434
10.10 收款管理模块的设计 437
10.11 系统的编译和发布 442
10.12 系统的实现 442
10.13 小结 445