前言 1
第1章 概述 1
1.1 PowerBuilder简介 1
1.1.1 可视化的编程方法 2
1.1.2 面向对象的编程思想 3
1.1.3 优秀的数据库应用开发工具 4
1.1.4 基于多平台的交叉开发 6
1.1.5 专业的客户机/服务器及组件应用开发工具 7
1.1.6 对Web应用的强大支持 9
1.1.7 简洁强大的 PowerScript 语言 10
1.1.8 强大的源码管理功能 11
1.2 PowerBuilder8.0的新特性 14
1.2.1 新的用户接口和开发方法 14
1.2.2 新的 Web 特性 15
1.2.3 新的 EAServer 集成特性 16
1.2.4 新的数据库连接特性 16
1.2.6 其他新特性 17
1.2.5 对双字节字符集(DBCS)的支持 17
1.3 数据窗口技术简介 18
1.3.1 丰富的数据源 19
1.3.2 多样的显示格式 19
1.3.3 数据窗口表达式 20
1.3.4 数据窗口对象 20
1.3.5 数据窗口控件 21
1.3.7 增强数据窗口对象 22
1.3.6 数据存储对象 22
1.3.8 动态数据窗口技术 23
1.3.9 数据库事务对象 24
1.4 使用数据窗口的一般步骤 25
1.5 小结 25
第2章 PowerBuilder与数据库管理系统 27
2.1 数据库描述文件 27
2.2 数据库接口 28
2.2.1 查看安装的数据库接口 28
2.2.2 通用数据库接口 30
2.2.3 专用数据库接口 32
2.2.4 通用接口和专用接口的比较 33
2.3 创建ODBC数据源 34
2.3.1 通过Windows的ODBC配置工具创建ODBC数据源 34
2.3.2 在程序中通过注册表来创建ODBC数据源 38
2.4 创建ODBC数据库描述文件 40
2.5 小结 41
第3章 创建数据窗口对象 42
3.1 理解数据窗口对象 42
3.2.1 连接数据库 43
3.2 数据窗口对象向导 43
3.2.2 选择显示风格 44
3.2.3 选择数据源 45
3.2.4 选择并设计字段 46
3.2.5 设置颜色和边框信息 47
3.2.6 确认先前的设置 47
3.2.7 进入数据窗口画板 48
3.2.8 预览数据窗口 49
3.2.9 保存数据窗口对象 51
3.3 数据窗口对象选项 52
3.3.1 General选项卡 52
3.3.2 Generation选项卡 53
3.3.3 Prefixes选项卡 54
3.4 本章小结 56
第4章 使用数据源 57
4.1 Quick Select数据源 57
4.1.1 理解 Quick Select 数据源 57
4.1.2 使用 Quick Select 数据源 58
4.2 SQL Selece 数据源 68
4.2.1 理解 SQL Selece 数据源 68
4.2.2 选择数据库表 69
4.2.3 浏览SQL Select 画板 70
4.2.4 使用SQL Select画板 72
4.2.5 检索参数 85
4.2.6 定义连接 (Join) 91
4.2.7 定义联合 (Union) 100
4.3.1 理解 Query 数据源 104
4.3 Query数据源 104
4.3.2 创建 Query 对象 106
4.3.3 创建 Query 数据源 107
4.4 Stroed Procedure数据源 108
4.5 External 数据源 115
4.5.1 理解 External 数据源 115
4.5.2 定义 External 数据源 116
4.5.3 使用 External 数据源 117
4.6 小结 119
5.1 Freeform显示风格 121
第5章 使用显示风格 121
5.2 Grid显示风格 122
5.3 Tabular显示风格 122
5.4 Label显示风格 123
5.5 RichText显示风格 128
5.6 N-Up显示风格 131
5.7 Crosstab显示风格 133
5.8 Group显示风格 139
5.9 Graph显示风格 145
5.10 OLE 2.0显示风格 149
5.11 Composite显示风格 156
5.12 小结 157
第6章 设计数据窗口对象 158
6.1 数据窗口画板简介 158
6.1.1 Design 视图 159
6.1.5 Column Specifications 视图 162
6.1.4 Preview 视图 162
6.1.3 Control List 视图 162
6.1.2 Properties 视图 162
6.1.6 Data 视图 163
6.2 数据窗口对象的属性页 165
6.3 设置字段对象的属性 166
6.3.1 添加和删除字段对象 166
6.3.2 字段对象的显示格式 167
6.3.3 字段对象的编辑样式 170
6.4 操纵数据窗口对象的行 175
6.3.4 字段的有效性规则 175
6.4.1 定义过滤条件 176
6.4.2 定义排序字段 176
6.4.3 定义检索条件 177
6.5 数据窗口的更新属性 178
6.5.1 Where Clause for Update/Delete 组框 179
6.5.2 Key Modification 组框 180
6.5.3 Identity Column 下拉列表框 180
6.6 预览数据窗口对象 180
6.7 数据窗口的其他设置 182
6.7.1 压缩重复值 182
6.7.2 压缩字段间空间 183
6.8 小结 184
第7章 数据窗口增强对象 185
7.1 理解数据窗口增强对象 185
7.2 数据窗口增强对象的作用 185
7.3.1 Button对象 186
7.3 数据窗口增强对象详解 186
7.3.2 Text对象 196
7.3.3 Picture对象 196
7.3.4 Line对象 196
7.3.5 Oval对象 196
7.3.8 Column对象 197
7.3.9 Computed Field对象 197
7.3.7 Round Rectangle对象 197
7.3.6 Rectangle对象 197
7.3.10 Graph对象 201
7.3.11 Report对象 216
7.3.12 Group Box对象 218
7.3.13 OLE Object对象 218
7.3.14 OLE Database Blob对象 219
7.4 小结 222
第8章 数据窗口控件 223
8.1 理解数据窗口控件 223
8.2 创建数据窗口控件 224
8.3 数据窗口控件的属性 225
8.4 数据窗口控件的事件 226
8.4.1 检索与更新事件 226
8.4.2 单击事件 229
8.4.3 错误处理事件 229
8.4.4 记录处理事件 230
8.4.5 打印事件 231
8.5 数据窗口控件的函数 232
8.5.1 几个重要的概念 232
8.5.2 数据库数据操纵函数 236
8.5.3 缓冲区数据操纵函数 239
8.5.4 数据行滚动函数 241
8.5.5 数据行操纵函数 244
8.5.6 可编辑控件函数 246
8.5.7 数据项操纵函数 247
8.5.8 有效性规则函数 248
8.5.9 数据共享函数 249
8.5.10 打印函数 251
8.5.11 页面生成函数 253
8.6 数据窗口控件使用示例 254
8.6.1 DWExample示例程序的外观 254
8.6.2 创建应用程序及窗口对象 254
8.6.3 创建一个数据窗口对象 256
8.6.4 往窗口对象上放置各种控件 257
8.6.5 添加连接数据库和断开数据库的函数 258
8.6.6 编写命令按钮的Clicked事件 260
8.6.7 编写数据窗口控件的DBError事件 265
8.7 小结 266
第9章 数据存储对象 267
9.1 理解数据存储对象 267
9.2 添加数据存储对象 267
9.3 数据存储对象的属性 270
9.3.1 ClassDefinition属性 270
9.3.2 DataObject属性 270
9.3.3 Object属性 270
9.4 使用数据存储对象举例 271
9.4.1 进行后台数据库处理 272
9.4.2 以多种视图显示相同的数据 274
9.4.3 代替嵌入式SQL语句来操纵表中的数据 279
9.4.4 在分布式应用中代替客户机存取数据 284
9.5 使用数据存储对象的注意事项 284
9.6 小结 285
第10章 数据窗口表达式 286
10.1 数据窗口表达式的应用场合 286
10.2.1 算术运算符 287
10.2 数据窗口表达式的运算符 287
10.2.2 关系运算符 288
10.2.3 连接运算符 291
10.2.4 逻辑运算符 291
10.2.5 运算符优先级 291
10.3 编辑数据窗口表达式 292
10.4 测试数据窗口表达式的值 294
10.4.1 使用Describe函数来测试数据窗口表达式的值 295
10.4.2 用当前的数据来测试条件表达式 296
10.5.2 定义过滤器 298
10.5 数据窗口表达式使用举例 298
10.5.1 定义计算字段 298
10.5.3 定义有效性规则 299
10.6 小结 300
第11章 数据窗口表达式函数 301
11.1 理解数据窗口表达式函数 301
11.1.1 使用数据窗口表达式函数的场合 301
11.1.2 数据窗口表达式函数的返回值 301
11.1.3 数据窗口表达式函数中的聚集函数 302
11.1.4 使用用户自定义的数据窗口表达式函数 302
11.1.5 数字显示格式的本地化 302
11.2 聚集函数 303
11.2.1 Avg函数 304
11.2.2 Count函数 306
11.2.3 CumulativePercent函数 308
11.2.4 CumulativeSum函数 310
11.2.5 First函数 312
11.2.6 Large函数 313
11.2.7 Last函数 315
11.2.8 Max函数 317
11.2.9 Median函数 318
11.3 类型检查与转换函数 320
11.3.1 Integer函数 320
11.3.2 IsDate函数 321
11.4 数据窗口信息函数 321
11.4.1 CurrentRow函数 322
11.4.2 Describe函数 323
11.4.3 GetRow函数 325
11.4.4 GetText函数 325
11.5 时间日期函数 326
11.5.1 Date函数 327
11.5.2 DateTime函数 328
11.5.3 Day函数 328
11.5.4 DayName函数 329
11.5.5 DayNumber函数 329
11.5.7 Hour函数 330
11.5.6 DaysAfter函数 330
11.6 字符串操作函数 331
11.6.1 Fill函数 331
11.6.2 WordCap函数 332
11.7 交叉表函数 332
11.7.1 CrosstabAvg函数 333
11.7.2 CrosstabCount函数 337
11.7.3 CrosstabMax函数 339
11.7.4 CrosstabMin函数 340
11.7.5 CrosstabSum函数 342
11.8 数值运算函数 343
11.8.1 Abs函数 344
11.8.2 Exp函数 344
11.8.3 Fact函数 344
11.8.4 Int函数 345
11.9 其他函数 345
11.9.1 If函数 346
11.9.2 Case函数 347
11.10 小结 348
第12章 使用动态数据窗口 349
12.1 属性表达式 349
12.1.1 理解属性表达式 349
12.1.2 使用DataWindow Syntax工具 351
12.1.3 使用PowerBuilder Help联机帮助 353
12.2 访问数据窗口中的数据 354
12.2.1 SetItem函数 354
12.2.2 GetItem系列函数 355
12.2.3 属性表达式 357
12.2.4 两种方法的比较 358
12.3 Describe函数 358
12.3.1 语法定义 359
12.3.2 使用方法 359
12.3.3 用法举例 361
12.4 Modify函数 362
12.4.1 语法定义 362
12.4.2 使用方法 363
12.4.3 典型应用 369
12.5 Create函数 369
12.5.1 语法定义 370
12.5.2 使用方法 370
12.5.3 用法举例 371
12.6 SyntaxFromSQL函数 374
12.6.1 语法定义 374
12.6.2 使用方法 375
12.6.3 用法举例 377
12.7 增强检索功能 380
12.7.1 QueryMode属性 380
12.7.2 QuerySort属性 383
12.7.3 QueryClear属性 384
12.8 利用库函数来生成数据窗口对象 384
12.8.1 PowerBulider库函数简介 384
12.8.2 利用库函数生成数据窗口对象的一般步骤 388
12.9 小结 389