Skip to Content
0
Former Member
May 02, 2005 at 01:39 PM

htmlb: 2.5 minutes clientside processing on big treeview

37 Views

Hi,

I am having a performance problem with a big htmlb treeview.

The model contains about 1650 element and each method calls a javascript method with the id when clicked. When I now try to run the page, approximately 2.5 minutes are spent on clientside javascript to set up the treeview and the client computer is running on 100% cpu. This is of course not acceptable

I've looked at the generated source code(3.5 MB!), and for each element it seems to generate:

<input type="hidden" name="htmlb_1304_htmlb_540_8Nodes_787" id="htmlb_1304_htmlb_540_8Nodes_787" value="rSVBsCkwa4oCji1ehi14iO15kO11pDhBrD1ErSVBsCkFcj0Pcn40vw0bt00Fhypd84V584hb84lj8ceosTgwa4oCji1ehi14iO15kO33C7dQaj4McP9N07U0">


function Link42e6a1_onclick(htmlbevent){htmlb_formid = 'htmlb_1304_htmlb_540';orgTreeNodeClicked('NG IGAS ALGERIA (NG IGAS DDD)83','NG IGAS ALGERIA (NG IGAS DDD)');}


htmlb_1304_htmlb_540_htmlbElements['NG IGAS ALGERIA (NG IGAS ALGERIA)83Link']='Link42e6a1'

<table border="0" cellpadding="0" cellspacing="0" onkeydown="sapUrMapi_TreeNode_keyDown('htmlb_1304_htmlb_540_8','htmlb_1304_htmlb_540_8-85',event);" ><tbody><tr><td valign="top"><img align="top" id="htmlb_1304_htmlb_540_8-85:exp" src="/irj/portalapps/com.sap.portal.themes.lafservice/themes/portal/customer/Statoil/common/1x1.gif" class="urTreExpNc"><td class="urFontStd" tabindex="-1" width="100%" nowrap="" container="true" id="htmlb_1304_htmlb_540_8-85eventer" level="3" sellevel="0"><a class="urLnk" id="Link42e6a1" onkeydown="if (sapUr_Link_activate('Link42e6a1',event)) { return htmlbDoEvent(this,'C','onclick','2','htmlb_1304_htmlb_540',92,1,'',0); };"  href="javascript:void(0);" onclick="return htmlbDoEvent(this,'C','onclick','2','htmlb_1304_htmlb_540',92,1,'',0);" ><span class="urTxtStd" id=""><nobr>NG IGAS ALGERIA (NG IGAS ALGERIA)</nobr></span></a><td><span id="htmlb_1304_htmlb_540_8-85-controlexit" onfocus="sapUrMapi_Tree_controlExit('htmlb_1304_htmlb_540_8','htmlb_1304_htmlb_540_8-85',event);" ></span></tr></tbody></table></div><div title sellevel="0" id="htmlb_1304_htmlb_540_8-86" status="open" class="urTreNl4 " nowrap="" style="padding-left:33px;">

Any good ideas on how to solve this? At the moment I am leaning towards writing my own treeview component and dynamically populate it from the model server-side.