Master column tree - bad performance

Hello,
I have a table with master column that uses recursive node without Load Children event. the whole table loads at startup. I Have very bad performance : every click on the little triangle takes about 6-7 seconds, and there is even no round-trip to server because all data is already at the client!
I need to show list of products by there family (50 families, each has 10 products). How can i imporve my performance (maybe server configuration or my code or another method)
I work with ep 7 sp12.
Thanks
Roni.

Hi Roni,
Yes, you have to manipulate the add element on before loading the tree.  Best Practice is to use onLoadChildren event. Loading the tree at once will always have performance issues.
Refer to these tutorial for creating tree using onLoadChildren event.
<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/wd%20java/wd%20tutorials/constructing%20a%20recursive%20and%20loadable%20web%20dynpro%20tree.pdf">Recursive Loadable Tree</a>
<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/wd%20java/wd%20tutorials/integration%20of%20a%20tree%20structure%20in%20a%20web%20dynpro%20table.pdf">Integration of Tree Structure in Table</a>
There are no limitations on this UI control, you can stay with any number of levels.
Regards
Srikanth

Similar Messages

  • Reporting on master data customer and bad performances : any workaround ?

    Hello,
    I've been asked to investiguate on bad performances encountered when performing reporting
    on the specific master data zcustomer.
    Basically this master data has a quite similar design that 0customer, there are 96000 entries in the master data table.
    A simple query has been developed : the reporting is done on the master data zcustomer and its attributes : no key figure, no calculation, no restriction ...
    Nevertheless, the query can not be executed .. the query runs around 10 minute in rsrt, then the private memory is exhausted and then a short dump is generated.
    I tried to buid a very simple query on 0customer, this time, without the attributes ... and it took more than 30 sec before I get the results.
    I checked the queries statistics :
    3.x Analyzer Server 10 sec
    OLAP: Read Texts : 20 sec
    How is it that it is so long to performthe reporitng on those master data, while in the same time If i try to display the content in SAP by choosing "maintain master data", I have an immediate answer.
    I there any workaround ?
    Any help would be really appreciated.
    thank you.
    Raoul

    Hi.
    How much data have you got in the cube?
    If you make no restrictions, you are asking the system to return data for all 96.000 customers. That is one thing that might take some time.
    Also, using the attributes of this customer object, fx making selection or displaying several of them, means that the system has to run through the 96.000 records in masterdata to know what goes where in the report.
    When you display the masterdata, you are by default displaying just the 250 or so first hits, and you are not joining against any cube or sorting the result set, so that is fast.
    You should make some kind of restriction on other things than zcustomer (time, org.unit, version, etc, to limit the dataset from the cube, but also a restriction on one of the zcustomer attribs, with an index for that maybe, and performance should improve.
    br
    Jacob

  • Table with tree view on master column

    Hi,
    I'm trying to generate a table with tree view on the master column and I get the table values from an RFC.
    The problem is that I need to control some properties like "expanded" or "isLeaf" and I can't add the value attributes to the model node to control the rows.
    Any ideia on how to overcome this (what i  think is a) problem?
    Thanks for the help.
    Pedro Barbosa

    Hi Subramanian,
    Maybe I didn't explain myself right. I also followed that tutorial with success but in this case i have on my custom controller:
    -MyNode (model node)
      - Output
        - MyTable
          - attribute 1 (model attribute)
    In my context/view controller the only way i can map that node is by using a model node referecing "MyTable" but this way i can't add any of my attributes to same level of the attributes (is that the ideia right?).
    I also tried to recreate the structure in the view with value nodes and value attributes with the same type as the model attributes and then bind them but i always get "Incompatible context element type".
    Am i missing something?
    Pedro Barbosa

  • Bad performance when deleting report column in webi(with "Design – Structure only")

    Hi all,
    One of our customer has recently upgraded from BO XI to BO4.1. In the new BO 4.1, they encountered a bad performance issue when they were deleting a column in Webi(using "Design – Structure only" mode).
    With “Design – Structure only" mode,  it took webi about 10 seconds to complete after the customer right-clicked a report column and clicked the "delete".  The customer said that they only need to wait for less than 1 second when they did the same in BO XI old version.
    The new BO version used is 4.1SP02, installed in Windows Server 2008 R2. (Server with 32 core CPU, 32G memory)
    This bad performance happened in both Webi web and Rich Client. (in Webi Rich Client, the performance is a little bit better. The 'delete column' action takes about 8 seconds to complete).
    Do anyone know how to tune this performance in webi?  Thank you.
    Besides, it seems that each time we are making change in the webi report structure in IE or Rich Client, webi need to interact with Server site to upload the changes. Is there any option to change this behavior?  Say, do not upload change to Server for when 'deleting report column', only trigger the upload after a set of actions(e.g. trigger when click the "Save" button).
    Thank you.
    Regards,
    Eton.

    Hi all,
    Could anyone help me on this?  Thanks!
    What customer concerns now is that when they did the same 'column editing' action in BO XI R2 for the same report, they did not need to wait.  And they need to wait for at least 7-8 second in the BO 4.1SP02 environment for this action to complete.(data already purged, in structure-only mode)
    One more information about the webi report being editing is: there are many sheets in the report(about 6~10 sheets in one report). Customer don't want to separate these sheet into different reports  as it will increase the effort of their end users to locate similar report sheets.
    Regards,
    Eton.

  • Selection in table with Master Column

    Hi,
    can anybody explain me how selection works in table with MasterColumn (TreeByNestingTableColumn)?
    I've created a table with several columns and the "master" one behaves differently from others.
    First of all, leaf elements of master column are not clickable (i.e. I don't receive notification "onLeadSelect" from the table, when user clicks in the cell of leaf element of the column). With expandable elements I receive loadchildren event and can react on selection.
    I'm using TextView as cell editor, will try LinkToAction, may be it will resolve situation, but it's rather workaround as solution
    Second, getLeadSelection doesn't work anymore for the table - it works with indexes of top level elements only.
    However onLeadSelect action brings me selected row number, which I somehow should map to the tree.
    I.e. when I get "25" as selected element, I recursively traverse context node to find 25th element. Which is rather slow operation as for any selection I have to reiterate whole structure and I hope that visual appearance is similar to context element order.
    May be there is simplier ways to get selected element by its index in "flat" list?
    And one another strange thing: first click on the table sends me onLeadSelect "0", but highlight points to the element user clicked - not necessary first one.
    Context node is "single" selection, initLeadSelect=true,
    selection = 0..1 (with 1..1 setTreeSelection doesn't work - method I want to use to be able to select a node in hierarchy on my own)
    all quite similar to other tables I have, which works well. Just the problems with the table, where Master Column is used.
    Thank you!
    Best regards,
    Nick

    >Valery's proposal was to perform reverse traverse from current element to root and summarize parent element indexes.
    It seems to work:
    in method, which sets selection I applied
    // we need to know index of the element not in whole context, but in scope of table-relevant node
    int index = getIndexInContext(selElement, wdContext.currentXXXElement());
    IContextElement curContext = wdContext.currentContextElement();
    int firstVisibleRow = curContext.getTableFirstVisibleRow();
    int visibleRows = curContext.getTableVisibleRows();
    if (index < firstVisibleRow || index > firstVisibleRow + visibleRows) {
    curContext.setTableFirstVisibleRow(index);
    and method getIndexInContext looks as:
        private int getIndexInContext (IWDNodeElement element, IWDNodeElement root) {
              int index = element.index();
              if (element == root) {
                   return index;
              IWDNodeElement parent = element.node().getParentElement();
              if (parent == null) {
    // do whatever you like here for error diagnostic
                   myMsgMgr.reportException("Internal Error: getIndexInContext - element is not under passed root", false);
                   return 0;
              // +1 - every level adds 1 (otherwise indexes of first children of hierarchy will be 0)
              return  index + getIndexInContext(parent, root) + 1;
    Best regards,
    Nick

  • CMP 6.1 Entity bad performance.

    I'am using entity 1.1 EJB on WL 6.1 and facing very bad performances:
    around 150ms for an insert (i have 20 columns).
    When accessing an order interface to read 2 fields in a session bean method: around
    90 ms.
    I'am very disapointed and confused. What should I look up for
    to increase the performance ? Any important tuning or parameters ? Should I use EJB
    2.0 to have significant perf ?
    Thanks for any advice because we are thinking to switch all the application on stored
    procedures. A solution without Entity and fewer stateless session beans.
    My config:
    WL: 6.1 on Sun sparc
    SGBD: Sybase
    Entity: WebLogic 6.0.0 EJB 1.1 RDBMS (weblogic-rdbms11-persistence-600.dtd)
    Thanks

    Historically its hard to get good performance & scalability out of sybase
    without using stored procs. Using dynamic sql on sybase just doesnt do as
    well as procs. Oracle on the other hand can get very close to stored proc
    speed out of well written dynamic sql.
    As far as weblogic goes, my experience is the focus of their testing for db
    related stuff is Oracle, then DB2, then MSSQLServer. Sybase is usually last
    on the list.
    As far as the 6.1 cmp, haven't used it much, but because of these other
    things I would be cautious about using it with Sybase.
    Joel
    "Antoine Bas" <[email protected],> wrote in message
    news:3cc7cdcf$[email protected]..
    >
    I'am using entity 1.1 EJB on WL 6.1 and facing very bad performances:
    around 150ms for an insert (i have 20 columns).
    When accessing an order interface to read 2 fields in a session beanmethod: around
    90 ms.
    I'am very disapointed and confused. What should I look up for
    to increase the performance ? Any important tuning or parameters ? ShouldI use EJB
    2.0 to have significant perf ?
    Thanks for any advice because we are thinking to switch all theapplication on stored
    procedures. A solution without Entity and fewer stateless session beans.
    My config:
    WL: 6.1 on Sun sparc
    SGBD: Sybase
    Entity: WebLogic 6.0.0 EJB 1.1 RDBMS(weblogic-rdbms11-persistence-600.dtd)
    >
    Thanks

  • Cannot find Master Column in Outline view

    Hi Guys,
    We are using NWDS 7.1 Composition Environment SP05 for development.
    I am trying to do a Tree control nested in a Table.  I am at the point where I'm supposed to add the Master Column from the context menu in the Outline perspective - but it is not there!  I mean there is no entry called "Add Master Column" or somehting like that.
    What am I missing?
    Thank you.
    Christiaan

    Hi,
    Following is the way to add a master column in CE
    Right click on the table.
    Select Insert-> Row Arrangement->Tree ByNesting Table column.
    Regards
    Ayyapparaj

  • How to populate the master column in a table

    Hi Experts,
    I am trying to implement a hierarchy structure in a table. For that I have inserted a master column of TreeByNestingTableColumn type. The value which are getting displayed in a table are hard coded by me, but I am not able to understand how should I populate the values so that when the table initially appears, it should contain some data (which I hard code) and when I click the master column, it should expand and display value according the master column selected(which I again hard code).
    Please help me in achieving it.
    Regards
    Arjun

    Hi,
    Go throgh the tutorial "Creating a Tree Structure in a Table" in the blow link.
    Web Dynpro Java Tutorials and Samples NW 2004 [original link is broken]
    In these example only the souce of data changes as per your requriement. In the examples they are reading data from java class.
    1. First you need to create a value node with (Parent Id, Boolean Type: isLeaf, Expanded, ChildernLoaded), attributes.
    2. Then you have to create one recursive node under that Value node by selecting that node as reference.
    3. As given in the example create one method called addChildern(Node, ParentId).
    4. Now in the wdDoInit method call this method by passing the Value node and "ROOT" as parent Ids
    5. In addChildern method if parentId is ''ROOT" then populate all the root elements in the parent node.
    6. Now root elements will be populated.
    7. When user clicks on any of the root element then invoke the action loadChildern(this should be binded to Master column) and pass recursive node of that parent element and the parenId (as given in the exmaple).
    8. Based on this parentId now populate the chids in addChildern method.
    See this thread: Helpful:
    Re: Tree implementation in webdynpro project
    Regards,
    Charan
    Regards,
    Charan

  • Insert master column on table not found in NW CE EHP1

    I installed SAP Netweaver CE EHP1 sneak preview. I inserted the table UI element. I am trying to insert a master column in the table. But I was not able to find the option to insert master column from the context menu of the table in NW CE EHP1 sneak preview. I was able to do it with previous versions. I am not sure whether it is a bug on this version. Any help is appreciated.
    Thanks

    Go to Context Menu of the table and select to insert Row arrangement then you see tree by nesting table column.

  • CE 7.1 - Master Column?

    Hi there,
    i'm currently working with WD on CE 7.1 SPS06 and looking for as possiblity to have a tree nested into a table.
    In 7.0 a TableCell called "Master Cell" or "TreeByNestingTableColumn" existed. Well I've been looking for a reference and found this:
    [TreeByNestingTableColumn on Help.sap.com|http://help.sap.com/saphelp_nwce10/helpdata/en/86/bf1c4253afda2ce10000000a1550b0/content.htm]
    [TreeByNestingTableColumn Javadoc 7.1|http://help.sap.com/javadocs/nwce/current/wdr/com/sap/tc/webdynpro/clientserver/uielib/standard/api/IWDAbstractMasterTableColumn.html]
    But i can't find out how to insert such a column to my table any more. I dont have a Contextmenu called "Insert Master Column" which i had in 7.0
    Any ideas? Helpful answers will receive points,
    Best Regards,
    Michael

    Hi Armin,
    thanks alot.
    found it and finished my application. rewarded points for you
    going to like CE more and more.
    btw. any idea if its possible to create context-binding to a recursive node directly? someone here wrote some time ago that this may be possible in later releases.
    best regards,
    michael

  • Multiselection in Tables with Master Column

    The use case is the following:
    I have a table with a master column in which I display a tree. The table is bound to a dataSource with a recursive node.
    I'd like to implement multiple selection for the rows of this table, but it doesn't work (even when making context node's selection 0..n).
    Is there any work-around for solving this problem?

    Thanks for the suggestion.
    But there is still problem with this:
    I will have have two methods for selection of rows of the table - there will be standart one which is provided by webdynpro and additionaly I will have a column of checkboxes. It is not convinient form user-perspective. Furthermore I can't put columns on the left of the master column which is also a problem, the checkboxes should be situated in the firs column.
    Regards, Vasil

  • Bad performance when open a bi publisher report in excel

    We use bi publisher(xml publisher) to create a customized report. For a small report, user like it very much. But for a bigger report, users complain about the performance when they open the file.
    I know it is not a native excel file, that may cause the bad performance. So I ask my user to save it to a new file as a native excel format. The new file still worse than a normal excel file when we open it.
    I did a test. We try to save a bi publish report to excel format, the size shrink to 4Mb. But if we "copy all" and "Paste Special" value only to a new excel file, the size is only 1Mb.
    Do I have any way to improve that, users are complaining everyday. Thanks!
    I did a test today.
    I create a test report
    Test 1: Original file from BIP in EBS is 10Mb. We save it in my local disk, when we open the file, it takes 43 sec.
    Test 2: We save the file in native excel format, the file size is 2.28Mb, it takes 7 sec. to open.
    Test 3: We copy all cell and "PasteSpecial" to a new excel file with value only. The file size is 1.66Mb, it takes only 1 sec to open.
    Edited by: Rex Lin on 2010/3/31 下午 11:26

    EBS or Standalone BIP?
    If EBS see this thread for suggestions on performance tuning and hints and tips:
    EBS BIP Performance Tuning - Definitive Guide?
    Note also that I did end up rewriting my report as PL/SQL producing a csv file and have done with several large reports in BIP on EBS.
    Cheers,
    Dave

  • Warning in WD ABAP Table - Master Column Mapping deprecated

    Hi ,
    I am getting a warning 'Master Column Mapping deprecated' in a WD ABAP component while activating it .
    Can anybody suggest what I have to do to solve this issue .
    Best Regards
    Sid

    Hi,
    Could you please tell me how to take Row Arrangement in Master Column?
    Cheers
    Harkesh Dang

  • Bad performance updating purchase order (ME22N)

    Hello!
    Recently, we face bad performance updating purchase orders using transaction ME22N. The problem occurs since we implemented change documents for a custom table T. T is used to store additional data to purchase order positions using BAdIs ME_PROCESS_PO_CUST and ME_GUI_PO_CUST.
    I've created a change document C_T for T using transaction SCDO. The update module of the change document is triggered in the method POST of BAdI ME_PROCESS_PO_CUST.
    Checking transaction SM13, I recognized that the update requests of ME22n have status INIT for several minutes before they are processed. I also tried to exclude the call of the update module for change document C_T (in Method POST) - the performance problem still occurs!
    The problem only occurs with transaction ME22N, thus I assume that the reason is the new change document C_T.
    Thanks for your help!
    Greetings,
    Wolfgang

    I agree with vikram, we don't have enough information, even not a small hint on usage of this field, so which answer do you expect (The quality of an answer depends ...) This analysis must be executed on your system...
    From a technical point of view, the BAPI_PO_CHANGE has EXTENSIONIN table parameter, fill it using structure BAPI_TE_MEPOITEM[X] alreading containing CI_EKPODB (*) and CI_EKPODBX (**)
    Regards,
    Raymond
    (*) I guess you have used this include
    (**) I guess you forgot this one (same field names but data element always BAPIUPDATE)

  • Bad Performance in a query into table BKPF

    Hi forum i have a really problem in the second query under the table
    BKPF.. some body cans help me, please
    *THIS IS THE QUERY UNDER MSEG
      SELECT tmsegmblnr tmkpfbudat tmsegbelnr tmsegbukrs tmseg~matnr
             tmsegebelp tmsegdmbtr tmsegwaers tmsegwerks tmseg~lgort
             tmsegmenge tmsegkostl
      FROM mseg AS tmseg JOIN mkpf AS tmkpf ON tmsegmblnr = tmkpfmblnr
      INTO CORRESPONDING FIELDS OF TABLE it_docs
      WHERE
        tmseg~bukrs IN se_bukrs AND
        tmkpf~budat IN se_budat AND
        tmseg~mjahr = d_gjahr AND
        ( tmsegbwart IN se_bwart AND tmsegbwart IN (201,261) ).
      IF sy-dbcnt > 0.
    I CREATE AWKEY FOR CONSULTING BKPF
        LOOP AT it_docs.
          CONCATENATE it_docs-mblnr d_gjahr INTO it_docs-d_awkey.
          MODIFY it_docs.
        ENDLOOP.
    THIS IS THE QUERY WITH BAD BAD PERFOMANCE
    I NEED KNOW "BELNR" FOR GO TO THE BSEG TABLE
        SELECT belnr awkey
        FROM bkpf
        INTO CORRESPONDING FIELDS OF TABLE it_tmp
        FOR ALL ENTRIES IN it_docs
        WHERE
          bukrs = it_docs-bukrs AND
          awkey = it_docs-d_awkey AND
          gjahr = d_gjahr AND
          bstat = space .
    THNKS

    Hi Josue,
    The bad performance is because you're not specifying the primary keys of the table BKPF in your WHERE condition; BKPF usually is a big table.
    What you really need is to create a new index on database for table BKPF via the ABAP Dictionary on fields BUKRS, AWKEY, GJAHR & BSTAT. You'll find the performace of the program will significantly increase after the new index is activated. But I would talk to the Basis first to confirm they have no issues if you create a new index for BKPF on the database system.
    Hope this helps.
    Cheers,
    Sougata.

Maybe you are looking for