本例子附有create tabel 及insert 数据的sql 及forms的源文件, 经测试可以直接运行。
运行界面如下:
trigger; when-new-forms-instance:
set_window_property('window1', window_state, maximize);
declare
rg1 recordgroup;
t number;
uname varchar2(32);
begin
:global.os := get_application_property(operating_system);
rg1 := find_group('rg1');
if not id_null(rg1) then
delete_group(rg1);
end if;
uname := user;
:vdata := uname;
uname := lower(uname);
rg1 := create_group_from_query('rg1','select init,depth,lpad(substr(treeno,-1,2),2,''0'')||''.''||label,'''',data from menu order by treeno');
t := populate_group(rg1);
ftree.set_tree_property('tree',ftree.record_group, rg1);
--psize();
end;
trigger; when-tree-node-activated:
declare
htree item;
node_value varchar2(100);
ftype varchar2(8);
begin
node_value := ftree.get_tree_node_property('tree', :system.trigger_node, ftree.node_value);
ftype:=lower(substr(node_value,-1,3));
--ftype:='fmx';
if node_value <>'node' then
if ftype = 'fmx' then
call_form(node_value ,no_hide);
elsif ftype = 'sql' then -- execute those sql need not parameter --
host('plus80w @'||:vdata, no_screen);
end if;
end if;
end;