Home » Developer & Programmer » Forms » How to use Tree Node.
How to use Tree Node. [message #77850] Tue, 04 December 2001 01:01 Go to next message
rajesh
Messages: 173
Registered: November 1998
Senior Member
Hi ALL

Can any body tell me how I can use the tree node by way
in explaining some codes.

Thanks

Rajesh

----------------------------------------------------------------------
Re: How to use Tree Node. [message #77858 is a reply to message #77850] Tue, 04 December 2001 09:54 Go to previous messageGo to next message
Srinivas Konda
Messages: 29
Registered: October 2001
Junior Member
Answer
------
Add a hierarchical tree to the canvas.
The hierarchical tree must be the only item in the block.
Add the following code to the When-New-Form-Instance and run the form.

MAKE SURE THAT YOU HAVE EMP AND DEPT tables.

WHEN-NEW-FORM-INSTANCE :
--------------------------------------------------------------
Declare

Cursor c1 Is Select * From dept;
Cursor c2( n_deptno Number) Is Select * From emp Where deptno=n_deptno;
n_level Number :=1;
n_row Number :=1;
rg_id RecordGroup;
node Ftree.Node;

Procedure Add_Record
( rg_id RecordGroup , n_state Number, n_row Number, n_level Number,
v_label Varchar, v_icon Varchar, v_data Varchar) As

Begin
Add_Group_Row( rg_id, END_OF_GROUP );
Set_Group_Number_Cell( 'Tree_Group.state', n_row, n_state);
Set_Group_Number_Cell( 'Tree_Group.dept',n_row, n_level);
Set_Group_Char_Cell( 'Tree_Group.label', n_row,v_label);
Set_Group_Char_Cell( 'Tree_Group.icon', n_row,v_icon);
Set_Group_Char_Cell( 'Tree_Group.data', n_row,v_data);
END;

FUNCTION Create_Record_Group RETURN RecordGroup IS

rg_id RecordGroup;
gc_id GroupColumn;
rg_name VARCHAR2(40) := 'Tree_Group';

Begin
rg_id :=find_group(rg_name);
If NOT Id_Null(rg_id) THEN
Delete_Group (rg_id);
End If;

IF Id_Null(rg_id) THEN
rg_id := Create_Group(rg_name);
-- intial state
gc_id := Add_Group_Column(rg_id, 'state',NUMBER_COLUMN);
-- node tree dept
gc_id := Add_Group_Column(rg_id, 'dept', NUMBER_COLUMN);
-- label
gc_id := Add_Group_Column(rg_id, 'label',CHAR_COLUMN,50);
-- Icon
gc_id := Add_Group_Column(rg_id, 'icon', CHAR_COLUMN,10);
-- Data
gc_id := Add_Group_Column(rg_id, 'data', CHAR_COLUMN,50);
End if;
Return rg_id;
END;

Begin
rg_id := Create_Record_Group; -- From own made PLL
FOR C1_Loop IN C1 LOOP
Add_Record (rg_id, Ftree.Collapsed_node, n_row, n_level,
C1_Loop.dname, null, 'Label_Dept');
n_row := n_row+1;
n_level := n_level+1;
FOR C2_Loop IN C2(c1_Loop.deptno) LOOP
Add_Record (rg_id,Ftree.Collapsed_node, n_row, n_level,
C2_Loop.ename, null, 'Label_Emp');
n_row := n_row+1;
END LOOP;
n_level := n_level-1;
END LOOP;
Ftree.Add_Tree_Data('BLOCK3.tree4' , Ftree.ROOT_NODE , Ftree.PARENT_OFFSET,
Ftree.LAST_CHILD , Ftree.RECORD_GROUP,rg_id);
END;

----------------------------------------------------------------------
Re: How to use Tree Node. [message #77863 is a reply to message #77858] Wed, 05 December 2001 00:21 Go to previous messageGo to next message
rajesh
Messages: 173
Registered: November 1998
Senior Member
I have pasted the the above code in when new form trigger but running is not displaying any thing except the scroll bar pls let me know is any change is required

----------------------------------------------------------------------
Re: How to use Tree Node. [message #77866 is a reply to message #77858] Wed, 05 December 2001 09:33 Go to previous message
Srinivas Konda
Messages: 29
Registered: October 2001
Junior Member
I sent a FMB, which is working. Hope it will work for you.

----------------------------------------------------------------------
Previous Topic: Re: free material for oracle
Next Topic: change background color of text item at run time.
Goto Forum:
  


Current Time: Thu Mar 28 11:36:26 CDT 2024