万卷书>>电脑书籍>>程序设计>>pb程序设计>>PowerBuilder使用技巧集

WANJUANSHU.COM

用POWERBUILDER6.0绘制对比图形

山 东 胜 利 石 油 管 理 局 收获



 

---- 作 为 一 个 完 善的 信 息 系 统, 它 给 用 户 的 界 面 应 该 是 图 文 并 茂 的, 尤其 是 在 同 一 坐 标 内 绘 出 各 种 指 标 对 比 曲 线, 就 更 加 生动 和 直 观 了, 目 前 这 种 需 求 是 比 较 迫 切 的, 为 此, 笔者 以POWERBUILDER6.0 作 为 开 发 工 具, 数 据 库 选 用ORACLE7, 作 了本 文, 详 解 一 下 这 种 对 比 图 的 产 生 方 法。


 

---- 一、 建 表


 

---- 如 果 在 同 一 坐标 系 内 绘 制 多 条 曲 线, 在 建 表 的 过 程 中 就 应 该 考 虑 到表 的 结 构 问 题, 一 般 建 立 三 个 字 段 就 行 了。 举 一 个 例子, 我 们 要 在 同 一 坐 标 系 内 绘 出 钢 材、 煤、 水 泥 和 石灰 的 进 货 曲 线, 表(JHTAB) 的 结 构 包 含 时 间(SJ)、 类别(LB)、 数 量(SL) 三 个 字 段 就 行 了, 并 将SJ 和LB 设 为 主键。


 

---- 二、 所 用 到 的数 据 窗 口 介 绍


 

---- 建 立 窗 口W_1, 在上 边 建 立 两 个 数 据 窗 口DW_1、DW_2,DW_1 的 数 据 窗 口 类 型 选图 形 格 式, 用 来 产 生 对 比 图;DW_2 为 数 据 维 护 窗 口, 选择GRID 式, 数 据 维 护 完 毕,DW_1 中 立 即 动 态 地 刷 新 图 形。


 

---- 三、 详 细 编 程过 程


 

---- 1、 和ORACLE 数 据库 连 接 的SCRIPT 语 句


 


//dbt
SQLCA.DBMS       ="o72"
SQLCA.LogID      ="zb"
SQLCA.LogPass    ="zbpasswd"
SQLCA.UserID     ="zb"
SQLCA.ServerName="@snt2"
Connect using sqlca;
open(w_1)


 

---- 2、 建 立 窗 口W_1


 

---- 3、 数 据 窗 口dw_1 的 制 作 过 程


 

---- 选 择 图 形 类 型GRAPH,在 图 形 中 选 择 折 线 型。 横 坐 标(CATEGORY) 选 择SJ( 时间), 纵 坐 标(VALUE) 选 择SL( 数 量), 类 别(SERIES) 选 择LB,即 建 立 一 折 线 图 形 的 数 据 窗 口。


 

---- 4、 数 据 窗 口dw_2 的 制 作 过 程


 

---- 数 据 窗 口dw_2 是为 维 护 数 据 用 的, 选GRID 型。


 

---- 5、 填 写 窗 口W_1 的OPEN 事 件


 


dw_1.SetTransObject(sqlca)
dw_1.Retrieve()
dw_2.SetTransObject(sqlca)
dw_2.Retrieve()


 

---- 这 样 以 来, 只要 运 行 程 序, 就 会 将 原 有 的 数 据 调 入 数 据 窗 口, 并 显示 图 形 和 数 据。


 

---- 6、 数 据 维 护 过程 所 用 的SCRIPT 语 句( 各 按 钮 介 绍)


 

---- 增 加( 记 录):dw_2.insertrow(dw_1.getrow()+1)


 

---- 删 除( 当 前 记录):dw_2.deleterow(0)


 

---- 放 弃( 当 前 的修 改):dw_2.retrieve()


 

---- 存 盘( 并 刷 新dw_1 的 图 形):


 


dw_2.update()
commit;
dw_1.Retrieve()


 

---- 四、 结 语


 

---- 通 过 上 边 的 介绍, 读 者 也 许 会 感 叹 竟 然 如 此 简 单, 但 这 种 思 路 来 之不 易, 笔 者 深 有 体 会, 希 望 能 对 关 心 这 方 面 编 程 的 用户 带 来 帮 助。

 
上一页 WanJuanShu.COM 下一页
WANJUANSHU.COM 万卷书