How to implement a simple node-edge graph?

Can any one give me some advice on how to implement a simple node-edge graph in a frame? Every node is a rectangle which can be moved by mouse, and every edge is a arc between two nodes.
Should the node class extend JPanel, and the edge class extend Graphics? and so on?

It is impossible to generate similar update from OWB.
Does your table1 contain primary key columns? What is the number of rows in this table?
The only working solution in this case - use table1 twice in mapping - as source and as target (with UPDATE operation),
link these operators with primary key columns and specify matching by PK columns.
Updated column link to Constant operator attribute.
In this case OWB generate SQL like
merge table1 a
using table1 b
on (a.pk_column=b.pk_column)
when matched then update set column1=1
Regards,
Oleg

Similar Messages

  • How to implement PHP code in Edge

    All-
    I have a site where I need to implement php on a button for a redirect
    How do i do this in edge?
    `Z

    Try something like this, onClick event handler of the button element
    window.open("http://www.someurl.com/myfile.php", "_top");
    Darrell

  • How to implement Dynamic Context Node Mapping between Components

    Hey genuis:
               I am looking for how to implement context mapping bwteen two components. I read some threads, and try to use external context mapping. The example works fine. However, my requirement is more than that.
    I have a context node in Component B, and the attributes in it are dynamically generated. Component A is the main component which use Component B's function. Both A and B work fine by theirselves. 
    When I assemble A and B (external mapping), the system gives me a exception:com.sap.tc.webdynpro.progmodel.context.ContextException: MappedNodeInfo(T8UploadCompInterface.data): cannot create nodes, no mapping defined yet.
    Please give me some suggestion?
    Any responses are appreciated.

    I miss this thread.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/6fdae690-0201-0010-a580-d104b459cb44
    This is almost the right solution for my problem.

  • How to implement a simple paragraph system in CQ

    Hi,
    I have some problems in implementing a paragraph system in CQ.
    I have to implement it in CQ 4.2.
    Does any one explain it to me in simple words?
    Thanks a lot in advance, Seboeh

    I found the solution.
    I could implement a paragraph system now.
    I shortly describe the most important things.
    1. the spooler script should not have any carriage return
    2. for a component the spooling works only with following link.
    <img src='<% cc.getPage().getHandle() + ".spool." + cc.getQualident() + ".jsp" %>' width=200px>
    Further on, in the "Component Definitions" for this script only "spool" should be written as globbing. Not "*spool" or "spool*".
    This is also the reason, why we have cc.getQualident() after spool in the img-tag.
    3. Further on it is important for a paragraph system to include the following initialization.
    <%
    Style actstyle = null;
    %>
    <cfc:initComponent cellId="body" componentId="/libs/Components/body">
    <% actstyle = componentContext.getStyle(); %>
    </cfc:initComponent>
    <cfc:includeComponent cellId="body" componentId="/libs/Components/body" />
    <cfc:includeComponent cellId="parsys"
                            componentId="/apps/emb/Components/parsys" />
    4. in side the spooler script, you get the atom by:
                            String[] selectors = cqReq.getSelectors();
                            String qualident = selectors[1] + "." + selectors[2];
                            Container local = (Container) actpage.getElement(qualident);
                          Atom atom = local.getAtom("myImageSrc");
    where "myImageSrc" is the atom.xml content definition.
    The selcorts[2] is either "Single" or somthing like "parsys.0001".
    5. In simple components, you need also this kind of code to initialize a edit bar.
    <%
    ComponentContext cc = (ComponentContext) request.getAttribute("componentContext");
    ComponentInfo ci = cc.getComponentInfo();
    %>
    <cfc:editbar
                            parName="<%= cc.getContainerList() %>"
                            parNum="<%= cc.getContainerLabel() %>"
                            storagePre="<%= cc.getStoragePre() %>"
                            dialogAny="<%= ci.getContentDialog() %>"
    />
    I hope this could help you creating the paragraph system.
    Kind regards, [email protected]

  • How to implement simple CEV rules?

    Hi,
    I have some doubts how to implement very simple CEV rules (ex: When enddate is filled then determinationdate is sysdate)
    When i follow the CDM Guidelines then I have to create a custom routine and make a derivation expression for the column.
    When i use commom sense I do a update in the BR implementation. Saves a lot of work.
    What is the opinion of the Headstart team?
    Regards, Jan-Derk

    Hi Kathyaini,
    For using a XML connection as data source then you have to follow the below:
    Configure the following elements as described below:
    u2022 <JavaDir>
    u2022 <Classpath>
    u2022 <JDBCURL>
    u2022 <JDBCUserName>
    u2022 <JDBCClassName>
    It will prompt you for the class name and path of the URL using, that also depends upon the data base you use.
    It is different for each database like oracle, sql and DB2.
    For configuring the connection you should follow the process for each database.
    JDBCURL  - The JDBCURL parameter value is the default JDBC connection URL that will be displayed in Crystal Reports when you create a new JDBC data connection. The exact format of the connection URL is specific to the database driver and is provided by the database driver vendor.
    For example, the connection URL for the Oracle JDBC driver is:
    jdbc:oracle:thin:@<hostname>:<port>:<sid>
    Sample for SQL Server:
    jdbc:microsoft:sqlserver://SERVERNAME:1433
    Sample for DB2:
    jdbc:db2:XTREME
    JDBCUserName  - Default username for the Database
    JDBCDriverName - The JDBCDriverName is the default full classname of the JDBC driver that will be displayed in Crystal Reports when creating a new JDBC data connection..
    Oracle: oracle.jdbc.driver.OracleDriver
    Let me know if any.
    Regards,
    Naveen.

  • How to build a simple Editor with GEF 4 MVC

    Hallo,
    I have Experience with GEF 3.x graphical editors, and I would like to make experiments with GEF4 MVC in an Eclipse E4 Application.
    Below there is a schema representing the basic architecture of a GEF 3.x MVC Editor :
    The base Ideas in GEF 3.x are :
    - There is an Editor class containing a Graphical Viewer.
    - There are a Root Edit Part and an Edit Part Factory to initialize the Controllers (EditParts)
    - There are Views (Figures) and Models (POJO), independent each other, and controlled by the Controllers.
    The GEF4 MVC Technology is quite powerful - because one can build Standalone, Eclipse RCP and Web applications.
    Anyway it is not perfectly clear to me - yet , how to implement a Simple GEF4 Editor on E4 Application.
    So, this is what I understood :
    - No more Draw2D in GEF4 - it uses JavaFx Scene and Parent
    - In a Scene graph we can put SWTControls (heavyweight) and Figures (lightweight)
    - a Canvas (heaviweight) will contain the JavaFX Figures and also possibly a CanvasFigure (lightweight)
    So, if I build an Eclipse E4 application with one ViewPart containing a GEF 4 Editor, I suppose the setup of my application will be as follows:
    1. Create An Eclipse E4 Application with JavaFx support
    2. Add a ViewPart that contains a Canvas
    3. Use GEF4 MVC to Create / Edit my MVC tree.
    At this point, it is not very clear to me how to implement the real MVC Architecture in GEF 4.
    I expect GEF4 MVC will work in some way like the GEF 3.x - as visible in the top image - but I'm not clear on that.
    Therefore, these are questions:
    - Is the GEF 4 MVC architecture somewhat equivalent to the GEF 3.x one ?
    - Where I can find details on the MVC implementation of GEF 4 ?
    - Is there any component to provide - out of the box - a Flyout Palette, like it is available in GEF 3.x ?
    Thank you for providing this very powerful library and for spending time on this post.
    By the way, I'm available to contribute the project.
    Kind Regards.
    Patrik

    [quote title=Patrik Suzzi wrote on Tue, 14 July 2015 04:07]Hallo,
    Therefore, these are questions:
    - Is the GEF 4 MVC architecture somewhat equivalent to the GEF 3.x one ?
    - Where I can find details on the MVC implementation of GEF 4 ?
    It is quite comparable in general but has some significant differences in detail. The best entry points for learning about GEF4 MVC is the reference documentation at https://wiki.eclipse.org/GEF/GEF4/MVC. It also provides some information about differences between GEF (MVC) 3.x and GEF4 MVC (last section about migration). The slides provided at http://de.slideshare.net/AlexanderNyssen/gef4-our-mission-to-mars explain some of the concepts (unfortunately the interesting slides concerning MVC seem to have been messed up when uploading the slides; I will try to update them).
    - Is there any component to provide - out of the box - a Flyout Palette, like it is available in GEF 3.x ?
    No, not yet. I was thinking to integrate it into one of our examples after the Mars SR1 release.

  • How to implement a conversion rule in KC7R (External Data transfer-Tool)

    Hi,
    I am familiar with programming conversion rules in ABAP in the LSMW and IS-U Migration workbench.
    Unfortunately we have to work with EDT (transaction KCLJ).
    I need to implement a simple conversion rule: migration file has the external BP number BPEXT and I must retrieve the internalone (PARTNER) for the migration program.
    So I must implement a short ABAP code (select single * from BUT000 ...).
    Now I see that in KC7R you can use constants and conversion rules. There are also "General Ruels" and "conversion routines".
    Can someone explain how to implement this simple ABAP conversion rule in KC7R giving a short example?
    This would be great.
    EDT is the workst of all SAP Standard Migration Tools I have seen.....
    Kind regards,
    Thomas

    Thomas,
    Coud you please share your findings as I am now in a similar to your original post.
    ie I too would like to know how to code convesions for use within the transfer rules used by KCLJ.
    Kind Regards,
    Hiten Mistry.

  • HELP! Export indd- epub AUTOMATION. How to Implement! thanks!

    Hi. In need some help. Im an intermidiate .net programmer. i need  some help on how to implement a simple automation on exporting indd to epub.
    What language suitable to use?
    do i need indesign server ion this simple automation?
    Thanks!

    Jerome,
    These days, Flex is the best way to "drive" InDesign and InDesign Server.
    Because it has all the hooks for telling InDesign what you want it to do,
    and because you can quickly build something with a nice UI. So, I think you
    want to build an InDesign extension, using Flex / ActionScript.
    A big help would be to use the Flex-based new-for-InDesign-5.0 Creative
    Suite Extension Builder system. See
    http://www.adobe.com/devnet/creativesuite/cs-extension-builder.html
    A CS Extension Builder extension is a full AIR application, so it has full
    access to the file system, enabling you to implement hot folders if you
    wish.
    The hard part is figuring out how to "translate" into an ePub format. You
    could have a team of several programmers working for a year and still not
    have a perfect system to do this.  BUT, you're in luck, because Adobe has
    already written software to convert to HTML. It doesn't do a perfect job,
    of course, but Adobe put a lot of effort into it.  And ePub format is
    HTML5-based, I believe.
    So, probably what you want to do is first tell InDesign to run it's
    InDesign-to-HTML conversion feature, and then post-process the result into
    the desired ePub format.
    Cheers,
    Stephen
    http://sterlingcomputing.com

  • How to implement erase function of paint program?

    Hello all:
    there are many demo programs on the website that indicates how to implement
    a simple draw line java program.
    However, i didn't find available source to learn how to implement the erase function,
    so that we can erase part of line or all lines.
    Some programs present the methods to do undo operations, however none of them
    related directly to how to implement erase function.
    thank you for comments
    -Daniel

    Hello all:
    there are many demo programs on the website that
    indicates how to implement
    a simple draw line java program.
    However, i didn't find available source to learn how
    to implement the erase function,
    so that we can erase part of line or all lines.
    Some programs present the methods to do undo
    operations, however none of them
    related directly to how to implement erase function.
    thank you for comments
    -DanielThere are a few ways depending on the app requirement or design.
    The simplest one is to draw with the background color, typically white.

  • How to implement a go to next node button for an ADF Tree backed by ADF Bin

    Dear all,
    I have been trying for quite some time now, and I do not get it. For my ADF Tree component, I want to implement a series of little iconic buttons that my users can press to Expand and Collapse the current node - those I have got to work, sort of - and Move to the Next or Previous node. My definition of Next Node is: the next node you can see on the screen; this can either be a child, a sibling or an ancestor's sibling.
    + A
    - B
    |- C
    |+ D
    + E
    So from A, next means B, from B next means C, from C it means D and from D it should go to E.
    My main question is: how can I programmatically set the currently selected node in the tree? And I mean not just set the focusRowKey...
    My tree is bound to a ADF Tree Iterator Binding.
    My tree nodes are 'clickable through an action link; this informs a managed bean of the currently selected node, a JUCtrlHierNodeBinding instance.
    <f:facet name="DeptView1Node" >
    <h:panelGroup>
    <af:commandLink text="#{node.Dname}"
    immediate="true"
    action="StartHrmTree"
    >
    <af:setActionListener from="#{HrmTreeTree.tree.rowKey}"
    to="#{HrmTreeTree.focusRowKey}"/>
    <af:setActionListener from="#{node}"
    to="#{HrmTreeTree.selectedNode}"/>
    <af:resetActionListener/>
    </af:commandLink>
    </h:panelGroup>
    </f:facet>
    At that point, in my setSelectedNode method, I can access the Node, its children etc. Methods calls to the tree are less successful; despite their description in the JavaDoc, calls like: getTreeModel().getRowKey() or getContainerRowKey() return null.
    From the Next Node button:
    <af:commandButton immediate="true" actionListener="#{HrmTreeTree.nextNode}" text="&gt;">
    </af:commandButton>
    I invoke the nextNode() method on my bean. When I access the selectedNode that I saved on this bean when the node was clicked on, I no longer can access the children of the node. Even the childIterator property returns null.
    Using the RowSetIterator I can access the current Row, go to the next row in the RSI, access children, so that seems a reasonable approach. However, I do not know how I can make the first child the currently selected node or even how to tell the tree that the child iterator is the current one.
    Using this code:
    // find out if the current Node has a child
    DCBindingContainer container =
    (DCBindingContainer)JsfUtils.getExpressionValue("#{bindings}");
    String iterName = "HrmTreeTreeIterator";
    JUIteratorBinding ib =
    (JUIteratorBinding)container.findIteratorBinding(iterName);
    List ibs =container.getIterBindingList();
    FacesCtrlHierBinding tree = (FacesCtrlHierBinding)container.findCtrlBinding("HrmTreeTree");
    RowSetIterator rsi2 = ib.getRowSetIterator();
    I never seem to be able to get beyond the RowSet iterator of the root level nodes. How can I make a child node's row set iterator the current one? How is it that my selected node object does not know how to access its child-nodes or even its childIterator binding? What refresh operation is required here?
    Any help will be very much appreciated (and credited in the blog article I will write when it all works out).
    Lucas

    Can you try setSelectedRowKeys(RowKeySet newSelectionState) API on the tree? That should change the selection.
    You can do some thing like this to populate the RowKeySet:
    RowKeySet oldSelectionState = null;
    RowKeySet newSelectionState = null;
    oldSelectionState = table.getSelectedRowKeys(); //table is the table component
    newSelectionState = oldSelectionState.clone();
    newSelectionState.clear();
    Object oldRowKey = table.getRowKey(); //Save the orginal rowKey in the variable
    String rowKey = "XXXX" // the key of the row you want to select
    table.setRowKey(rowKey); //set the currency of the table to the row you want to select
    newSelectionState.setContained(true); //add the current row to the selection key set
    table.setRowKey(oldRowKey); //Restore the currency to the old one.
    table.setSelectedRowKeys(newSelectionState); //update the table selection
    ///Now Do some partial update here to change display

  • Implementing GrabCut - how to implement graph cut?

    Hi all,
    I'm implementing the GrabCut segmentation technique in java.
    This is a link to the GrabCut paper
    research.microsoft.com/vision/Cambridge/papers/siggraph04.pdf
    I'm working with this paper (explains briefly how to implement the whole system)
    students.cs.byu.edu/~jtalbot/research/Grabcut.pdf
    The last part of the implementation involves finding a minimal cut in a graph
    (I need to build a graph from the image pixels with some constrains).
    Does anybody have an idea how to implement weighted graph class efficiently
    in order the graph cut algorithm to run fast?
    Thanks all
    Edited by: drortrie@ on Aug 17, 2008 5:06 AM

    Hi all,
    I'm implementing the GrabCut segmentation technique in java.
    This is a link to the GrabCut paper
    research.microsoft.com/vision/Cambridge/papers/siggraph04.pdf
    I'm working with this paper (explains briefly how to implement the whole system)
    students.cs.byu.edu/~jtalbot/research/Grabcut.pdf
    The last part of the implementation involves finding a minimal cut in a graph
    (I need to build a graph from the image pixels with some constrains).
    Does anybody have an idea how to implement weighted graph class efficiently
    in order the graph cut algorithm to run fast?
    Thanks all
    Edited by: drortrie@ on Aug 17, 2008 5:06 AM

  • How to implement a foreach cycle through Office 365 Calendar appointments?

    Hi everyone,
    I am looking for a way to implement a foreach cycle that is better than what I could create already, so I would like to have your feedback.
    Basically, I have an Office365 Calendar and I want to count the number of appointments per day, so that I can show that in a line graphic. I was able to get the information but in a "not-so-elegant" way that I hope can be greatly optimized. The
    behavior I have now is the following: when I click a button, on the On Select statement I have:
    Collect(MeetingsCollection, Office365!Calendar(Text(Gallery1!Selected!Value+Today(),"UTC"), Text(Gallery1!Selected!Value+1+Today(),"UTC"))!count); Collect(MeetingsCollection, Office365!Calendar(Text(Gallery1!Selected!Value+1+Today(),"UTC"),
    Text(Gallery1!Selected!Value+2+Today(),"UTC"))!count); Collect(MeetingsCollection, Office365!Calendar(Text(Gallery1!Selected!Value+2+Today(),"UTC"), Text(Gallery1!Selected!Value+3+Today(),"UTC"))!count);
    Collect(MeetingsCollection, Office365!Calendar(Text(Gallery1!Selected!Value+3+Today(),"UTC"), Text(Gallery1!Selected!Value+4+Today(),"UTC"))!count); Collect(MeetingsCollection, Office365!Calendar(Text(Gallery1!Selected!Value+4+Today(),"UTC"),
    Text(Gallery1!Selected!Value+5+Today(),"UTC"))!count); Collect(MeetingsCollection, Office365!Calendar(Text(Gallery1!Selected!Value+5+Today(),"UTC"), Text(Gallery1!Selected!Value+6+Today(),"UTC"))!count);
    Collect(MeetingsCollection, Office365!Calendar(Text(Gallery1!Selected!Value+6+Today(),"UTC"), Text(Gallery1!Selected!Value+7+Today(),"UTC"))!count)
    I am collecting all the appointments 7 days from now, create a collection with 7 entries (each with the total number of appointments on a given day) and the use that collection as the source for the graph.
    Do you know how to implement something similar to a foreach cycle in this situation? I would like to be able to give a start date and an end date and for each day collect the result. How would you do this?
    Thanks a lot for your help and let me know if you need any clarification.
    Sérgio

    Hey Sergio,
    Thanks for posting! You don't necessarily have to collect this data, you can compute it directly in your chart's Items function. In order to maintain your button press functionality and date selection I did two things:
    1) Create an input box for the start date
    I set the Default property of this to be the current day in a short date time format: Text(Today(), DateTimeFormat!ShortDate)
    2) Create a button that updates a context variable, in this case the start date.
    The 'OnSelect' for this button is: UpdateContext({StartDate : DateValue(Text1!Text)})
    Then I built the chart by manually populating its Items with the following:
    [Office365!Calendar(Text(StartDate, "UTC"), Text(StartDate + 1, "UTC"))!count,
    Office365!Calendar(Text(StartDate + 1, "UTC"), Text(StartDate + 2, "UTC"))!count,
    Office365!Calendar(Text(StartDate + 2, "UTC"), Text(StartDate + 3, "UTC"))!count,
    Office365!Calendar(Text(StartDate + 3, "UTC"), Text(StartDate + 4, "UTC"))!count,
    Office365!Calendar(Text(StartDate + 4, "UTC"), Text(StartDate + 5, "UTC"))!count,
    Office365!Calendar(Text(StartDate + 5, "UTC"), Text(StartDate + 6, "UTC"))!count,
    Office365!Calendar(Text(StartDate + 6, "UTC"), Text(StartDate + 7, "UTC"))!count]
    As for computing a range of dates, that becomes a bit trickier (and much more complex). You can use the DateDiff function to get the offset between two dates, and the FirstN function on a Collection similar to the one that you built above containing
    366 Calendar queries to display only that number of days. Given a start date, this would allow you to limit the dates displayed by the DateDiff.
    There may be a simpler solution to this, but it's not coming to me. I'll give this some thought over night and see if I can come up with a solution that is a little more elegant.
    Thanks,
    Evan

  • How to implement a UI similar to a UML Diagram with connections?

    I'm working on an App that has a hierarchy of nodes and connections between them (Similar to Visio, a UML diagram, or Netbeans Visual Library). The nodes can be moved around, connections between nodes are maintained, etc.
    The hierarchy of nodes is easily mimicked as JavaFX Nodes in the scene graph. Implementing the UI for the connections however has proved to be trickier. Here are 2 issues I'm trying to solve:
    1) Connections need to track the positioning of their 'endpoint' nodes. Let's say a connection is an arrow connecting 2 arbitrary nodes in the hierarchy. The connection is itself a JavaFX node but in a different parent than the endpoint nodes. There doesn't seem to be a way to be notified that the endpoint nodes' location in the scene has changed, only their local bounds. Because there could be a whole sub-hierarchy of nodes being moved at a time, the connections need to reposition themselves whenever one of its endpoint nodes move in the scene (or should I say - move with respect to the common 'root' pane of the nodes and connections). Any ideas on how to implement this would be appreciated!
    2) I wanted the connections to 'float' independent of the nodes. I thought the StackPane would be ideal, (back pane for nodes, front pane for connections), however, the front pane "steals" all the mouse events from the back pane! There's an almost useful method called 'setMouseTransparent', but it applies to a Node AND all of its children. Thus calling this on the front pane means the Connections no longer get mouse clicks. Blah... am I missing something here? Why isn't there a setMouseTransparent() method that doesn't apply to the children? I'd like the connections (thin lines using 'Path') to get mouse events, and otherwise nodes in the back plane should get them.
    As a workaround to 2, I bailed on StackPane and use a regular Pane to hold both the nodes and connections. But I need to ensure the connections are always at the 'end' of the list of children... But that's an ugly solution. I feel like either I or JavaFX am missing something here.
    Thanks for any suggestions,
    Craig

    So you need to update the connections between nodes when the nodes are moved around?
    But because the connections aren't in the same immediate parent as the nodes they are in a different "local" coordinate space... you want to somehow listen to a node's location in terms of the scene coordinates? So even though the nodes local coordinates remain the same the node moves because it's parent moves and there is now way to observe that directly. Is that right.

  • How to Implement custom share functionality in SharePoint 2013 document Lib programmatically?

    Hi,
    I have created custom action for Share functionality in document library.
    On Share action i'm showing Model pop up with Share form with addition functionality.
    I am developing custom share functionality because there is some addition functionality related to this.
    How to Implement custom share functionality in SharePoint 2013  document Lib pro-grammatically?
    Regards,
    - Siddhehswar

    Hi Siddhehswar:
    I would suggest that you use the
    Ribbon. Because this is a flexible way for SharePoint. In my project experience, I always suggest my customers to use it. In the feature, if my customers have customization about permission then i can accomplish this as soon
    as possible. Simple put, I utilize this perfect mechanism to resolve our complex project requirement. Maybe we customize Upload/ Edit/ Modify/ Barcode/ Send mail etc... For example:
    We customize <Edit> Ribbon. As shown below.
    When user click <Edit Item>, the system will
    render customized pop up window.
    Will

  • How to get Text for nodes in Tree Structure

    Hi Friends,
    How to get Text for nodes in Tree Structure
    REPORT  YFIIN_REP_TREE_STRUCTURE  no standard page heading.
                       I N I T I A L I Z A T I O N
    INITIALIZATION.
    AUTHORITY-CHECK OBJECT 'ZPRCHK_NEW' :
                      ID 'YFIINICD' FIELD SY-TCODE.
      IF SY-SUBRC NE 0.
        MESSAGE I000(yFI02) with SY-TCODE .
        LEAVE PROGRAM.
      ENDIF.
    class screen_init definition create private.
    Public section
      public section.
        class-methods init_screen.
        methods constructor.
    Private section
      private section.
        data: container1 type ref to cl_gui_custom_container,
              container2 type ref to cl_gui_custom_container,
              tree type ref to cl_gui_simple_tree.
        methods: fill_tree.
    endclass.
    Class for Handling Events
    class screen_handler definition.
    Public section
      public section.
        methods: constructor importing container
                   type ref to cl_gui_custom_container,
                 handle_node_double_click
                   for event node_double_click
                   of cl_gui_simple_tree
                   importing node_key .
    Private section
      private section.
    endclass.
    *&                        Classes implementation
    class screen_init implementation.
    *&                        Method INIT_SCREEN
      method init_screen.
        data screen type ref to screen_init.
        create object screen.
      endmethod.
    *&                        Method CONSTRUCTOR
      method constructor.
        data: events type cntl_simple_events,
              event like line of events,
              event_handler type ref to screen_handler.
        create object: container1 exporting container_name = 'CUSTOM_1',
                       tree exporting parent = container1
                         node_selection_mode =
                cl_gui_simple_tree=>node_sel_mode_multiple.
        create object: container2 exporting container_name = 'CUSTOM_2',
        event_handler exporting container = container2.
    event-eventid = cl_gui_simple_tree=>eventid_node_double_click.
        event-appl_event = ' '.   "system event, does not trigger PAI
        append event to events.
        call method tree->set_registered_events
             exporting events = events.
        set handler event_handler->handle_node_double_click for tree.
         call method: me->fill_tree.
      endmethod.
    *&                        Method FILL_TREE
      method fill_tree.
        data: node_table type table of abdemonode,
              node type abdemonode.
    types:    begin of tree_node,
              folder(50) type c,
              tcode(60) type c,
              tcode1(60) type c,
              tcode2(60) type c,
              text(60) type c,
              text1(60) type c,
              text2(60) type c,
              end of tree_node.
      data:  wa_tree_node type tree_node,
                t_tree_node type table of tree_node.
    wa_tree_node-folder = text-001.
    wa_tree_node-tcode  = text-002.
    wa_tree_node-text =  'Creditors ageing'.
    wa_tree_node-tcode1 = text-003.
    wa_tree_node-text1 =  'GR/IR aging'.
    wa_tree_node-tcode2 = text-004.
    wa_tree_node-text2 =  'Bank Balance'.
    append wa_tree_node to t_tree_node.
    clear wa_tree_node .
    wa_tree_node-folder = text-005.
    wa_tree_node-tcode  = text-006.
    wa_tree_node-text =  'Creditors ageing'.
    wa_tree_node-tcode1 = text-007.
    wa_tree_node-text1 =  'Creditors ageing'.
    wa_tree_node-tcode2 = text-008.
    wa_tree_node-text2 =  'Creditors ageing'.
    append wa_tree_node to t_tree_node.
    clear wa_tree_node .
    wa_tree_node-folder = text-009.
    wa_tree_node-tcode  = text-010.
    wa_tree_node-text =  'Creditors ageing'.
    wa_tree_node-tcode1 = text-011.
    wa_tree_node-text1 =  'Creditors ageing'.
    wa_tree_node-tcode2 = text-012.
    wa_tree_node-text2 =  'Creditors ageing'.
    append wa_tree_node to t_tree_node.
    clear wa_tree_node .
    node-hidden = ' '.                 " All nodes are visible,
        node-disabled = ' '.               " selectable,
        node-isfolder = 'X'.                                    " a folder,
        node-expander = ' '.               " have no '+' sign forexpansion.
        loop at t_tree_node into wa_tree_node.
          at new folder.
            node-isfolder = 'X'.                      " a folder,
            node-node_key = wa_tree_node-folder.
                   clear node-relatkey.
            clear node-relatship.
            node-text = wa_tree_node-folder.
            node-n_image =   ' '.
            node-exp_image = ' '.
            append node to node_table.
          endat.
         at new tcode .
            node-isfolder = ' '.                          " a folder,
            node-n_image =   '@CS@'.       "AV is the internal code
            node-exp_image = '@CS@'.       "for an airplane icon
            node-node_key = wa_tree_node-tcode.
             node-text = wa_tree_node-text .
                     node-relatkey = wa_tree_node-folder.
            node-relatship = cl_gui_simple_tree=>relat_last_child.
          endat.
          append node to node_table.
        at new tcode1 .
            node-isfolder = ' '.                          " a folder,
            node-n_image =   '@CS@'.       "AV is the internal code
            node-exp_image = '@CS@'.       "for an airplane icon
            node-node_key = wa_tree_node-tcode1.
                     node-relatkey = wa_tree_node-folder.
            node-relatship = cl_gui_simple_tree=>relat_last_child.
              node-text = wa_tree_node-text1.
         endat.
          append node to node_table.
           at new tcode2 .
            node-isfolder = ' '.                          " a folder,
            node-n_image =   '@CS@'.       "AV is the internal code
            node-exp_image = '@CS@'.       "for an airplane icon
            node-node_key = wa_tree_node-tcode2.
                     node-relatkey = wa_tree_node-folder.
            node-relatship = cl_gui_simple_tree=>relat_last_child.
            node-text = wa_tree_node-text2.
         endat.
          append node to node_table.
        endloop.
        call method tree->add_nodes
             exporting table_structure_name = 'ABDEMONODE'
                       node_table = node_table.
      endmethod.
    endclass.
    *&                        Class implementation
    class screen_handler implementation.
    *&                        Method CONSTRUCTOR
      method constructor.
       create object: HTML_VIEWER exporting PARENT = CONTAINER,
                      LIST_VIEWER exporting I_PARENT = CONTAINER.
      endmethod.
    *&                 Method HANDLE_NODE_DOUBLE_CLICK
      method handle_node_double_click.
      case node_key(12).
    when 'Creditors'.
    submit YFIIN_REP_CREADITORS_AGING  via selection-screen and return.
    when  'Vendor'.
    submit YFIIN_REP_VENDOR_OUTSTANDING  via selection-screen and return.
    when 'Customer'.
    submit YFIIN_REP_CUSTOMER_OUTSTANDING  via selection-screen and
    return.
    when 'GR/IR'.
    submit YFIIN_REP_GRIR_AGING  via selection-screen and return.
    when 'Acc_Doc_List'.
    submit YFIIN_REP_ACCOUNTINGDOCLIST  via selection-screen and return.
    when 'Bank Bal'.
    submit YFIIN_REP_BANKBALANCE  via selection-screen and return.
    when 'Ven_Cus_Dtl'.
    submit YFIIN_REP_VENDORCUST_DETAIL via selection-screen and return.
    when 'G/L_Open_Bal'.
    submit YFIIN_REP_OPENINGBALANCE via selection-screen and return.
    when 'Usr_Authn'.
    submit YFIIN_REP_USERAUTHRIZATION via selection-screen and return.
    endcase.
      endmethod.
    endclass.
    Program execution ************************************************
    load-of-program.
      call screen 9001.
    at selection-screen.
    Dialog Modules PBO
    *&      Module  STATUS_9001  OUTPUT
          text
    module status_9001 output.
      set pf-status 'SCREEN_9001'.
      set titlebar 'TIT_9001'.
      call method screen_init=>init_screen.
    endmodule.                 " STATUS_9001  OUTPUT
    Dialog Modules PAI
    *&      Module  USER_COMMAND_9001  INPUT
          text
    module user_command_9001 input.
    endmodule.                 " USER_COMMAND_9001  INPUT
    *&      Module  exit_9001  INPUT
          text
    module exit_9001 input.
    case sy-ucomm.
    when 'EXIT'.
      set screen 0.
    endcase.
    endmodule.
            exit_9001  INPUT

    you can read  the table node_table with nody key value which imports when docubble click the the tree node (Double clifk event).
    Regards,
    Gopi .
    Reward points if helpfull.

Maybe you are looking for

  • Itunes Can't See Purchaces Off iTouch When Plugged In?

    Hi, Im sorry if this is in the wrong section. So last night i brought a song off the itunes music store on my iPod Touch and this morning i plugged it in to my computer (XP if that helps??) and i can't find the song in the Purchased playlist, i can s

  • Want to install Windows 8.1 Enterprise on my Yoga 2 8 Android tablet

    I have a tablet Lenovo Yoga2 8 inch android version. but for special software (Meta Stocke) i need to have the Windows operating system. According to this model with Windows8.1 operating system by Lenovo produced. can i install the Windows operating

  • Can I get an online no in a country I don't live i...

    Hello My boyfriend lives in South Africa and I live in Denmark. Can I get a local number in S.A. even though I ldon't live there? That would make his calls to me MUCH CHEAPER for him. Or can I only get a local online number from the country that I li

  • ABAP Proxy timeout issue

    Hi, I have a scenario in where I provide a web service. I get called by this web service and then call a abap proxy (synch). The abap side takes time to gather the data. after 600 secs, the connection gets a timeout. It says, "500 Connection timed ou

  • Trying to move from xslt to jsp - any good tools?

    I'm working on an app where older html is rendered through xslt and newer html is produced with jsp. i really don't care for xslt. I'm curious if there's a good tool that would allow me to use jsp files to access the information in xml. This would al