最近做项目接触到oracle forms开发,(如果以前用过java或者.net工具的人,再使用这个),真的会感觉这个工具真不好用,除了跟数据库交互比较好,速度快之外.其他的都不咱的.尤其是界面.真的把我整的死......
贤话少说.既然用这个,就得学好吧.毕竟这东西还是ORACLE的产品
下面我来介绍通过创建存储过程创建数据块
1.创建存储过程(建立在forms程序单元里建,别在oracle数据库里建)
包头:
PACKAGE PAK_FOR_BLOCKS IS
--元素信息
type Elem_Rec is record(
unit_name VARCHAR2(30),--机组名称
out_weight NUMBER --出口重量
);--记录内容可以自己定义,可以为不同表的内容
--创建全局数据表类型,用于执行查询
------------------------------------------------
type elemtab is table of Elem_Rec index by binary_integer;
--创建数据查询程序包,用于前台Execute_Query
------------------------------------------------
--元素信息
PROCEDURE Elem_Query(Elem_Data IN OUT elemtab);--此参数必须为in out
END;
包体:
PACKAGE BODY PAK_FOR_BLOCKS IS
--------查询
PROCEDURE Elem_Query(Elem_Data in out elemtab) IS
v_count NUMBER;
i NUMBER :=1;
CURSOR cur_tvpp IS
SELECT t.unit_name, sum(t.out_weight) out_weight
FROM vtpp_stat_prod t
GROUP BY t.unit_name;
BEGIN
OPEN cur_tvpp;
LOOP
FETCH cur_tvpp
INTO elem_data(i).unit_name, elem_data(i).out_weight;
EXIT WHEN cur_tvpp%NOTFOUND;
i :=i+1;
END LOOP;
CLOSE cur_tvpp;
END Elem_Query;
END;
2:再通过选择创建数据块.依步骤选择存储过程.填上存储过程名.
3.创建成功.根据自己的需要设置块的属性
阅读(854) | 评论(0) | 转发(0) |