Hierarchical tree traversal..!!

Hi all,
I've populated a tree (Hierarchical tree - Ftree in Forms6i). Now I want to traverse it from the root node to the last nodes' last leaf....
How can i achieve this...
Please guide me through...
Very urgent
Thanx in advance...
RK Raju

a control block is one not based on a table/view/procedure . check the block's query data source name. its must be blank.
I suggest you create a procedure where you create the record_group using
CREATE_GROUP_FROM_QUERY,populate_group and ftree.set_tree_property
Here is my code that I i used to populate my tree .it works:
PROCEDURE populate_the_tree IS
grp recordgroup;
error_number number;
grpname varchar2(20) :='rg_group';
tree_id item :=find_item('ctrl.tree');
grp_qry2 varchar2(500) :='select -1,level,ename,null,empno from emp start with mgr is null connect by prior empno=mgr';
begin
     grp := find_group(grpname);
     if not id_null(grp)
          then delete_group(grp);
     end if;
--     grp := create_group_from_query(grpname,grp_qry1||grp_qry2);
     grp := create_group_from_query(grpname,grp_qry2);
     error_number:=populate_group(grpname);
     if error_number <> 0
          then message('Error while populating tree');
          raise form_trigger_failure;
     end if;
     ftree.set_tree_property(tree_id,ftree.record_group,grp);
END;
Message was edited by:
lewismak2000

Similar Messages

  • Can i have a check box in the hierarchical tree in the icons place, urgent!!! please

    Hi,
    I'am working on the Hierarchical Tree structure which should have three levels, I need to have a check box in the place of the icon & if i select a node that node & the child nodes should get selected.
    After this when i say move selected ( i'am trying to use picklist class also) the entire checked tree has to move to the display area to the right & should display as tree structure & after this if i save then the checked records which are moved to another text area should get saved!!
    How to achieve this? I have the tree structure ready but the check box part is the worrying factor! & then moving the checked records to the right using picklist class is the second problem & finally saving records to database.
    Any help in this regard will be deeply appreciated:)
    If check box is not possible then i will have to look at other methods, will the tree structure allow checkboxes????
    Thanks
    Mahesh

    No the tree will not allow checkboxes

  • How to go to a particular node in a hierarchical tree?

    I want to do this simple thing with a Forms hierarchical tree.
    Since tree has lots of levels and branches I want to give a search box.
    User types the label and press a button. The form then has to query the tree node and expand ONLY the path where the node is (if found) and highlight it. If a node with a label is NOT found I give an error message to the user.
    I got hold of a code segment to explode a tree and modified it, but it does not work. The entire tree is expanded and you don't know where you are.
    Any help will be greatly appreciated?
    PROCEDURE Expand_All_Nodes_in_Tree IS
         node ftree.node;
         htree ITEM;
         state varchar2(30);
    BEGIN
         -- Search the tree identifiant --
         htree := Find_Item('menu.tree');
         -- Search the root --
         node := Ftree.Find_Tree_Node(htree, '');
         -- Expand all nodes --
         WHILE NOT Ftree.ID_NULL(node) LOOP
         state := Ftree.Get_Tree_Node_Property(htree, node, Ftree.NODE_STATE);
         IF state = Ftree.COLLAPSED_NODE THEN
         Ftree.Set_Tree_Node_Property(htree, node, Ftree.NODE_STATE, Ftree.EXPANDED_NODE);
         END IF;
         node := Ftree.Find_Tree_Node(htree, '', ftree.find_NEXT,Ftree.NODE_LABEL,'', node);
    IF Ftree.Get_Tree_Node_Property(htree, node, Ftree.NODE_LABEL) = :ctrl.node_lable_to_search THEN
    EXIT;
    END IF;     
         END LOOP;
    END;

    Hi Channa,
    Try this code with you tree i am using the same situation and this code is working perfect with me.
    PROCEDURE find_node_in_tree(search_string varchar2, find_type varchar2) IS
    htree ITEM;
    search_start_node ftree.node;
    find_node ftree.node;
    BEGIN
    htree := Find_Item('blk_tree.main_tree');
         search_start_node := nvl(ftree.get_tree_selection(htree,1),ftree.root_node);
         find_node := ftree.find_tree_node(htree,upper(search_string)||'%',ftree.find_next,ftree.node_label,ftree.root_node,search_start_node-1);
         if find_node = 0 then
              find_node := 1;
    end if;
    Ftree.Set_Tree_selection(htree, find_node, Ftree.SELECT_ON);
    exception
         when others then
              NULL;
    END;
    -Ammad

  • URGENT *** Hierarchical Tree in Forms 9i *** URGENT

    Hello everybody,
    for my company I need to build a hierarchical tree item, that will display static data over three levels. Let's say: departments, employees and employee projects.
    How do I fill the Item?
    When do I fill the Item?
    Where do I fill the Item?
    What are the elements of the SQL query, that fills the hierarchical tree?
    Any help will be appreciated
    [email protected]

    Note:210663.1 helped a bit.
    I used the database column as the third element in the select part and put NULL as the fifth element. Then it worked.
    Now I am looking for the way to add the employees, when the user selects / activates a department node.

  • Hierarchical Tree error - fighting for over a year

    For over a year now, our Oracle forms have presented an elusive problem with Hierarchical Trees. First some core information:
    We are running Developer 6i, patchset 8, on a Sun host and an Oracle 8i database. Our forms are deployed over the web on the
    Oracle Application Server using J-Initiator 1.1.7.27.
    Now, only on our Production platform, and only during busy times of the day, we randomly get the error "Invalid Query for Hierarchical
    Tree" when one of our tree-based forms populates the tree. This error is sometimes followed by the infamous
    FRM-92100 "connection has been terminated" error. This happens whether building the tree with a single Selec and Populate Treet,
    or via a systematic series of Add Tree Node calls.
    We have tried rebuilding the form logic to eliminate form corruption, (form corruption - happens if you open a large FMB in the
    forms developer without first being connected to the database, manifests itself as random and odd form behaviour,
    or FRM-92100 errors, Oracle product support denies it really happens), we have added debug code, we've even tried generating
    the FMX on the Production platform as part of our deployment (normally we generate FMX files on our Integration platform
    which mirrors Production).
    We are not scheduled to upgrade for Forms 9i and the 9IAS for several more months, so upgrading isn't an immediate option for us.
    Any and all ideas welcome.
    Jeff Cline

    Hi Nigel,
    Two questions:
    1. When the publisher sends the access permission to the subcriber by:
    netStream.send("|RtmpSampleAccess", true, true)
    , on the subscriber side, what event or function can handle the guaranteed receipt of the access permission? Currently it is possible to draw the incoming stream video upon receiving NetStream.Play.Star and waiting for 5 seconds or so:
    public class MyWebcamSubscriber extends WebcamSubscriber {
    override protected function layoutCameraStreams():void
    // trying the event listener seems to work here.
    _streamManager.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
    override protected function onNetStatus(e:NetStatusEvent):void
    super.onNetStatus(e);
    case "NetStream.Play.Start":
    setTimeout(function():void {
    // draw the video from the incoming stream here.
    }, 5000);
    The questions is, which event can let the subscriber know that it has the access permission to the video stream?
    2. In WebcamPublisher, why is that the access permission is sent 3 times?
    a. Once on receiving NetStream.Connect.Success with 0.5 second delay, as in below.
    b. Once immediately upon receiving NetStream.Connect.Success, as in below.
    protected function onNetStatus(p_evt:NetStatusEvent):void
    if (p_evt.info.code=="NetStream.Connect.Success") {
    setTimeout(sendSnapShotPermission, 500);
    _stream.send("|RtmpSampleAccess", true, true);
    protected function sendSnapShotPermission():void
    _stream.send("|RtmpSampleAccess", true, true);
    c. Once in onConnectionTypeChange() with 2 seconds delay:
    protected function onConnectionTypeChange(p_evt:StreamEvent):void
    if ( _streamManager.isP2P) {
    _stream= new NetStream(_connectSession.sessionInternals.session_internal::connection as NetConnection,NetStream.DIRECT_CONNECTIONS);
    setTimeout(sendSnapShotPermission, 2000);

  • It's possible to make Hierarchical Tree from multiple tables ?

    the famous example for Hierarchical Tree is about employee_id and manager_id field in employees table ............ so I was wondering it's possible to make[b] Hierarchical Tree from multiple tables ? and How ??
    if the answer associate with example that will be so kind of you :D
    and thanks in advance.

    HI
    use curose in when new form instance or procedure then u can got data more then one table like that
    DECLARE
    htree ITEM;
    top_node FTREE.NODE;
    new_node FTREE.NODE ;
    child_node ftree.node ;
    item_value VARCHAR2(30);
    cursor prime_cur is select main_desc mgr_name, main_code dept
    from pur_item_group_mst;
    cursor child_cur(v_dept number) is select sub_desc,sub_code
    from pur_item_group_dtl where main_code = v_dept ;
    BEGIN
    htree := Find_Item('tmp.tree4');
    for dummy in prime_cur loop
    new_node := Ftree.Add_Tree_Node(htree,
    ftree.root_node,
    Ftree.PARENT_OFFSET,
    Ftree.LAST_CHILD,
    Ftree.EXPANDED_NODE,
    dummy.mgr_name,
    'D:\ORYX_POLYBAGS\accept',
    dummy.dept);
    for child in child_cur(dummy.dept) loop
         child_node := Ftree.Add_Tree_Node(htree,
    new_node,
    Ftree.PARENT_OFFSET,
    Ftree.LAST_CHILD,
    Ftree.EXPANDED_NODE,
    child.sub_desc||' '||'('||child.sub_code||' '||')',
    'D:\ORYX_POLYBAGS\next',
    child.sub_code);
    end loop;
    end loop;
    END;
    Rizwan Shafiq
    www.rizwanshafiq.blogspot.com

  • How to set the control-on hierarchical tree nodes

    Hi,
    I have created form in which at the left it has hierarchical tree structure(BOM) and towards the right it brings up the query results for selected node.
    Now, I have a button upon clicking which I navigate to the root node by issuing
    "Ftree.set_Tree_selection(htree, 1, Ftree.select_on);".
    But, it cannot automatically run the ' when-tree-node-selected' trigger '.
    any solution???
    Its really urgent.I have a customer demo on monday.
    Please help me asap.
    regards,
    Nagadeep.

    Hello Nagadeep,
    couldn't you just put the code from the trigger into a procedure
    and run that after the navigation to the item?
    Just a thought,
    Bernd
    The docs state that:
    No programmatic action will cause the When-Tree-Node-Selected trigger to fire. Only end-user action will generate an event.
    Probably due to performance reasons.
    Bernd
    Message was edited by:
    Bernd Prechtl

  • Finding proper help on Hierarchical Trees

    Have spent a couple of hours trying to navigate the sprawling website of oracle.com with the purpose finding and then downloading the appropriate help file. I downloaded
    Oracle9i Developer Suite Release 2 Documentation Library
    from
    http://www.oracle.com/technology/documentation/ids.html
    Its about 130Mb, installed it, but could i find comprehensive documentation on using Forms 9i (in particular Hierarchical Trees) no, but everything else it seemed yes. The original doc that pre-installed with the 9i DS 'online help' is reasonably helpful but like some others on this forum I could not find proper help on how to use Hierarchical Trees all i could find was few descriptive portions of text and believe me i have looked.
    Others have said they found examples of Hierarchical Trees usage i can only assume they are using 10g. So this is a desperate plea to you. Can you point me to an online resource that deals with Hierarchical Trees in Forms 9i (intro, usage, examples, etc). If you can i would deeply appreciate it.
    Mr Frustrated :)

    Hi,
    You have a lot of sample With the Forms Help.
    If you search in the index with "htree."
    The command hierarchical tree complete list appear.
    L.

  • Add checkbox on the nodes of Hierarchical tree in oracle forms 9i

    Hi,
    I am working on oracle forms 9i.I have to add checkbox at the place of node(+/-) in Hierarchical tree so,
    that user can select or deselect the Tree.That can do in oracle forms but how i don't know.
    can anybody help me.....
    Regards,
    Hemant

    You can't change this aspect of the Tree Control in Oracle Forms using built-in functionality. You might be able to extend the Tree Control using Java, but you have to do this yourself. : (
    Craig...

  • Can I use Hierarchical Tree from Forms6.0 in Forms5.0

    Hello
    The Oracle Custumer Support tell me that it should be possible to
    use Hierarchical Trees also in Forms5.0
    I look for a possibility to build a Navigator in Forms5.0
    with Symbols. (look and feel like the Navigator in Forms6.0 if I
    use Symbols in the Record Group).
    I Description should be on
    http://developer.us.oracle.com
    but either i have no access to this side or
    the URL is false.
    Sure is that there is a description over this Problem.
    And i have to get this description ;-)))
    Thanks for Help
    JK
    null

    That is not recommended. The new code editing features do not play well with an old workspace.
    Please create a new workspace and import your projects into that.
    -Anirudh

  • Make an hierarchical Tree in oracle Forms 6i

    Hi everybody,
    I want to make an hierarchical tree. I work in Forms 6i
    I create one non database block e.g. 'Bloc2' then
    add hierarchical control item in that. e.g 'Menu'.
    I create a record group named 'RG_DATA_TEST'
    Before I use a table in this record_group.
    I want a tree as this :
    - Menu1
    Menu1 option1
    Menu1 option2
    - Menu1 option3
    Menu option3 Sub opt 3
    + Menu2
    the table 'Menu_tree' is described' :
    CREATE TABLE MENU_tree
    ID NUMBER(5),
    LABEL VARCHAR2(128 BYTE),
    ICON VARCHAR2(40 BYTE),
    MASTER NUMBER(5),
    STATUS NUMBER(1) DEFAULT 1,
    VALUE VARCHAR2(128 BYTE)
    Here the data in the table :
    INSERT INTO MENU_tree ( ID, LABEL, ICON, MASTER, STATUS, VALUE ) VALUES (1, 'Menu1', 'mainmenu', NULL, 1, NULL);
    INSERT INTO MENU_tree ( ID, LABEL, ICON, MASTER, STATUS, VALUE ) VALUES (
    2, 'Menu1 Option 1', 'optionmenu', 1, 1, 'Dialog11');
    INSERT INTO MENU_tree ( ID, LABEL, ICON, MASTER, STATUS, VALUE ) VALUES ( 3, 'Menu1 Option 2', 'optionmenu', 1, 1, dialog12');
    INSERT INTO MENU_tree ( ID, LABEL, ICON, MASTER, STATUS, VALUE ) VALUES (4, 'Menu1 Option 3', 'optionmenu', 1, 1, NULL);
    INSERT INTO MENU_tree ( ID, LABEL, ICON, MASTER, STATUS, VALUE ) VALUES ( 5, 'Menu1 Opt 3 Sub Opt 3', 'suboptionmenu', 4, 1, 'Dialog131');
    INSERT INTO MENU_tree ( ID, LABEL, ICON, MASTER, STATUS, VALUE ) VALUES ( 6, 'Menu2', 'mainmenu', NULL, -1, NULL);
    INSERT INTO MENU_tree ( ID, LABEL, ICON, MASTER, STATUS, VALUE ) VALUES ( 7, 'Menu2 Option1', 'optionmenu', 6, 1,'Dialog21');
    The record_group use this instruction SELECT :
    SELECT STATUS, LEVEL, LABEL, ICON, VALUE
    FROM MENU_tree
    CONNECT BY PRIOR ID = MASTER
    START WITH MASTER IS NULL
    And At the trigger When_new_form_instance , i do this code :
    DECLARE
    htree ITEM;
    V_IGNORE number;
    BEGIN
    HTREE := FIND_ITEM('BLOC2.MENU');
    V_IGNORE := POPULATE_GROUP('RG_DATA_TEST');
    FTREE.POPULATE_TREE(htree);
    END;
    When i run the forms, It don't give me a structure of node.
    It give me only a icon with two arrows.
    Where is the problem ?
    Must I add code somewhere ?
    Help me for your ideas.
    Regards.
    Edited by: 794982 on 17 sept. 2010 04:55
    Edited by: 794982 on 17 sept. 2010 05:01
    Edited by: 794982 on 17 sept. 2010 05:04
    Edited by: 794982 on 17 sept. 2010 05:06
    Edited by: 794982 on 17 sept. 2010 05:13
    Edited by: 794982 on 17 sept. 2010 05:19
    Edited by: 794982 on 17 sept. 2010 05:23

    Ok Francois Thanks for your response.
    Just I pricise i work with oracle forms version 9.0.4.0.19 .
    But I am putting this code in trigger When_New_form_Instance but it didn't work.
    When I execute it just shows a line with two arrows but not a real tree.
    Then I do a block-non based and a elemnt with type hierarticall tree and a canevas.
    and i create a record_group. and in a palette property of the element i precise the canevas and the record_group
    I don't khnow where is the problem ?
    Any other suggestion ? please
    Regards.

  • Hierarchical tree item - how to improve performance

    I'm loading hierarchical tree item with query.
    Problem is that it takes very long to load all the items(300, but can be more) to the hierarchical item.
    Query takes 0.5 sec., but loading it into the item with Set_Tree_Property(htree, Ftree.RECORD_GROUP
    the code:
    PL1 := Create_Group_From_Query('pl1', query);
    v_ignore := Populate_Group(PL1); -- 0.5 sec
    Ftree.Set_Tree_Property(htree, Ftree.RECORD_GROUP, PL1); -- 3 sec.
    Does anyone have any idea what to do to improve tree loading?

    Hello,
    try to play a little bit with the state-column of your query. If you only display the first hierarchy level
    and set the state of the "hidden" nodes to open, I think ist is the state 1, then it works much faster.
    cu
    Matthias M|ller

  • Connect by prior working in sql but not in forms 10g hierarchical tree

    Hello Friends,
    I have the following connect by prior example which is working in sql command prompt but not in Forms 10g hierarchical tree item type. Can you please let me know why ?
    configuration: Forms 10g patchset 10.1.2.0.2 and oracle 11g database on windows 7
    SQL> SELECT 1 InitialState,
    2 level Depth,
    3 labeller NodeLabel,
    4 NULL NodeIcon,
    5 to_char(reportno) NodeValue
    6 FROM reports where formname = 'billinin.fmx' or reportno > 9999
    7 start with reportno > 9999
    8 CONNECT BY PRIOR reportno = labelno
    9 /
    INITIALSTATE DEPTH NODELABEL N NODEVALUE
    1 1 FIRST 10000
    1 2 report1 UD Label 1
    1 2 report2 UD Label 2
    1 2 report3 UD Label 3
    1 1 SECOND 10001
    1 1 THIRD 10002
    If I write this command in forms hierarchical tree, then it is working, why not the above code ?
    SQL> SELECT 1 InitialState,
    2 level Depth,
    3 labeller NodeLabel,
    4 NULL NodeIcon,
    5 to_char(reportno) NodeValue
    6 FROM reports
    7 start with reportno > 9999
    8 CONNECT BY PRIOR reportno = labelno

    Thanks Room,
    This command worked ! I will put the sample working code here. It will help you to filter the records in a tree in sql command prompt as well as in forms hierarchical tree 10g.
    SELECT 1 InitialState,
    level Depth,
    labeller NodeLabel,
    NULL NodeIcon,
    to_char(reportno) NodeValue
    FROM reports
    start with reportno > 9999
    CONNECT BY PRIOR reportno = labelno
    AND FORMNAME = :reports.testitem

  • Problem when selecting child node in Hierarchical Tree

    I have a hierarchical tree on a form populated thru a table query(form1). When I click on a child node, it opens form2 which contains a tab canvas. After closing forms, I return to the form1(containing Tree). At this point If I want to click on the same child node, I should be able to open form2 again. This doesn't happen.
    I have the following code in my When-Tree-node_selected trigger:
    Declare
    htree item;
    vnode_label varchar2(50);
    node_clicked FTREE.NODE;
    vnode_value number;
    vnode_depth number;
    v_type number;
    v_value varchar2(100);
    v_form_name varchar2(100);
    v_alert_return number;
    begin
    -- Find the tree itself.
    htree := FIND_ITEM('tree_block.tree');
    node_clicked := :SYSTEM.TRIGGER_NODE;
    vnode_value := FTREE.NODE_label;
    -- Find the value of the node clicked on.
    vnode_label := FTREE.GET_TREE_NODE_PROPERTY (htree,:SYSTEM.TRIGGER_NODE,FTREE.NODE_label);
    vnode_depth := to_number(ftree.get_tree_node_property(htree,:SYSTEM.TRIGGER_NODE,ftree.Node_depth));
    --Open form for node selected on tree and/or specific tab page
    if vnode_depth <> 1 then
    if :system.trigger_node_selected = 'TRUE' then CASE vnode_label
    WHEN 'Personal' then
    v_form_name :='HR_PERSONAL_INFO_UPDATE';
    WHEN 'Citizenship' then
    v_form_name :='HR_PERSONAL_INFO_UPDATE';
    WHEN 'Emergency Contact' then
    v_form_name :='HR_PERSONAL_INFO_UPDATE';
    if id_null(Find_form(v_form_name)) then
    open_form(:global.application_path || v_form_name,ACTIVATE,NO_SESSION,SHARE_LIBRARY_DATA);
    else
    go_form(v_form_name);
    end if;
    END IF;
    elsif vnode_depth = 1 then
    if :system.trigger_node_SELECTED = 'TRUE' then CASE vnode_label
    WHEN 'EMPLOYEE INFO' then
    v_form_name :='HR_PERSONAL_INFO_UPDATE';
    vnode_label := 'Personal';
    WHEN 'REPORTS' then
    v_form_name :='HR_REPORTS';
    vnode_label := '';
    if id_null(Find_form(v_form_name)) then
    v_form_name := :global.application_path || v_form_name;
    open_form(v_form_name,ACTIVATE,NO_SESSION,SHARE_LIBRARY_DATA);--,p_list);
    else
    go_form(v_form_name);
    end if;
    end if;
    end;
    Can anyone please help me? I don't want the user to double click. They should only click once.
    Thanks,
    Mercedes

    Right clicking does not change the current selection. The tree has no way to report what node was right clicked. Only work around is to left click the node you wish then right click it.
    --pat                                                                                                                                                                                                                                                                                                                                                                                                       

  • Hierarchal tree in FORMS

    Hi,
    I have a hierarchal tree table that I want to represent using forms (insert and update data in the tree table).
    Are there any LINKS or documentation that can help me with my little project :-)
    Thanks,
    Marc.

    The help file has a fairly detailed description of how to manipulate the tree control.
    Provided you have a table that can do this I would do "connect by prior" and "start with" SQL statement and use the pseudo column called "level" to determine when to create a new sub tree and when to end it.

Maybe you are looking for

  • Validating a text field that has date in the format mm/dd/yyyy

    How can I validate a text field such that it should be in the format mm/dd/yyyy and it should not be greater that a particular date. for example the date I enter should not be greater than 01/01/2007

  • Customer heirachy 3data is not populating in condition record(vk11)- urgent

    Gurus Please some one can help me on this issue , very urgent. also ask me if you have any further questions. my access seuqence  key combination are sales org, Distribution channel, customer heirarchy3 , product heirachy1, product heirachy2, product

  • BPC MS - Custom copy Package

    Hi guru, I need to copy a selection of data but with a custom package because I need to fix a parameter: E.g.: Source: CATEGORY TIME          DATASOURCE   value B                   2011.10            DS_P               100 Target: CATEGORY TIME      

  • Safri browser 3.1.2 SOAP Request HTTP 400 Error

    Hi, I have a simple html making ajax calls (XMLHttpRequest) to our webservice on a button click. The code works fine with major browsers like FireFox, IE and Opera. But if i load the html in Safari and send the SOAP request to the webservice using XM

  • [solved] urxvt no longer underlines URLs

    I'm afraid I don't recall when I first noticed this change, so I can't be really sure about what update changed it.  I'm using rxvt-unicode-patched 9.15-5 from AUR.  It used to underline URLs so I could middle-click them and have them open in Firefox