分享
 
 
 

用ORACLE*Forms和ORACLE*Graphics实现数据与图形动态显示

王朝oracle·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

1 . 引 言

---- ORACLE 关 系 数 据 库 管 理 系 统 是 目 前 世 界 上 最 流 行 的 高 性 能 数 据 库 管 理 系 统 之 一,Developer/2000 是ORACLE 公 司 推 出 的 集 成 化 软 件 开 发 和 运 行 环 境。 ORACLE *Forms 是Developer/2000 的 一 部 分, 它 是 一 种 功 能 丰 富, 用 于 构 建 应 用 的 工 具 产 品, 产 品 化 屏 幕 处 理 存 储 在 数 据 库 中 的 数 据。 在 许 多 实 际 应 用 中, 往 往 需 要 将 数 据 用 很 直 观 的 图 形 表 示 出 来。 例 如: 饼 图, 折 线 图, 直 方 图 等, 从 而 使 数 据 及 其 比 例 关 系 一 目 了 然。Developer/2000 的 另 一 工 具ORACLE *Graphics 提 供 了 丰 富 的 图 形 化 表 示 数 据 的 方 法, 它 可 以 从 各 种 数 据 源 获 得 数 据, 并 可 以 与Forms 模 块 结 合 起 来, 更 有 效 地 表 示 数 据。

---- 笔 者 曾 参 加 某 企 业 决 策 支 持 系 统 的 开 发 工 作, 通 过 在Forms 中 调 用Graphics 中 的 图 形 功 能, 使 数 据 表 示 更 为 直 观, 并 可 根 据Forms 中 数 据 的 变 化 来 动 态 地 显 示 图 形, 从 而 帮 助 决 策 人 员 进 行 数 据 分 析, 达 到 支 持 决 策 的 目 的。 下 文 是 笔 者 在 实 际 开 发 中, 完 成 动 态 显 示 图 形 功 能 制 作 过 程 中 的 一 点 体 会。

2. 动 态 图 形 显 示 的 实 现

---- 本 例 假 设 有 一 个 产 品 销 售 数 据 表SALES, 并 含 有 销 售 时 间, 产 品 名 称, 销 售 量 三 个 字 段( 销 售 时 间 以 年 为 单 位), 其 数 据 字 典 为

字 段 名

字 段 长 度

字 段 含 义

TIME

number(4)

销 售 时 间

NAME

char(10)

产 品 名 称

AMOUNT

number(10,2)

销 售 量

---- 启 动Graphics, 建 立 一 个 新 的 图 形 文 件, 并 命 名 为chart.ogd。 在Queries 中 定 义SQL 查 询 语 句 以 显 示 图 形, 并 在 图 形 的 属 性 栏 中 定 义x 轴 和y 轴 所 需 显 示 的 数 据。 本 例 将 在x 轴 显 示 产 品 名 称,y 轴 显 示 各 种 产 品 的 销 售 量。

---- 启 动Forms, 建 立 一 个 新 的 Forms 应 用 文 件sale.fmb。 在 画 布CANVAS1 中 填 加 一 个List Item 控 件LIST1 , 并 在LIST1 的 属 性 中 填 充 所 要 显 示 的 时 间 值。 然 后 填 加 一 个Chart Item 控 件chart_area1, 并 调 节 好chart_area1 的 边 界 和 大 小, 以 显 示 图 形chart.ogd。

---- 在Forms 中 调 用 图 形, 必 须 与Graphics 进 行 参 数 值 的 传 递。 首 先 回 到Graphics 中, 在chart.ogd 中 设 置 如 下 结 构:

---- (1) 在 参 数 表Parameters 中 定 义 参 数。 本 例 需 传 递 时 间 参 数, 并 设 其 为 m1, 在 参 数 表 中 设 置 其 属 性

parameter m1

name m1

type number

initial value 1998

---- (2) 定 义 图 形 的 查 询 语 句。 在Queries 中 定 义"query0" 查 询, 如 下 所 示:

select product,amount

from sales

where time=:m1

---- (3) 定 义 过 程。 在 Program Unit 中 编 写 update_chart 过 程, 完 成 图 形 随 参 数 变 化 显 示 的 功 能。

PROCEDURE update_chart IS

BEGIN

og_execute_query(og_get_query('query0'));

END;

---- 完 成 以 上 工 作 后, 回 到Forms 中, 首 先 打 开orawin95\forms45\plsqllib\og.pll 文 件, 然 后 定 义 如 下 结 构:

---- (1) 在LIST1 的 属 性List elements 中 填 写 列 表 框 中 所 要 显 示 的 数 值, 然 后 设 置WHEN_LIST_CHANGED 触 发 器, 并 编 写 触 发 器 代 码, 如 下

pl ParamList;

pl := Get_Parameter_List('plist');

IF NOT Id_Null(pl) THEN

destroy_parameter_list(pl);

END IF;

pl := Create_Parameter_List('plist');

add_parameter(pl,'m1',text_parameter,:blk1.list1);

og.interpret('c:\chart.ogd','chart_area1','

update_chart;',true,pl);

---- (2) 在Forms 中 设 置WHEN_NEW_FORM_INSTANCE 触 发 器, 完 成 初 始 化 工 作, 其 程 序 如 下:

Set_Window_Property (Forms_MDI_Window,

Window_State,Maximize);

Show_Window ('sales');

set_window_property('sales',window_state,

maximize);

og.open('c:\chart.ogd','chart_area1');

---- (3) 在Forms 中 设 置POST_FORM 触 发 器, 用 来 在 程 序 结 束 时 关 闭 图 形。

og.close('c:\chart.ogd','blk1.chart_area1');

---- 通 过 以 上 过 程, 动 态 图 形 显 示 得 以 实 现。 当 改 变 时 间 列 表 中 的 数 值 时, 图 形 随 着 时 间 的 改 变 而 变 化, 显 示 另 一 个 时 间 相 应 的 各 种 产 品 的 销 售 量 的 值。

3. 结 论

---- 本 文 介 绍 了 一 些Developer/2000 中Forms 和Graphics 的 开 发 方 法 及 使 用 技 巧。 当 然Developer/2000 中 还 有 许 多 其 他 的 触 发 器 及 内 部 例 程, 需 要 在 实 践 中 不 断 探 索。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有