BIEE dashboard的文件夹内容左右联动

浏览: 2318

需求:

点击Biee dashboard的文件夹内容,不用再新开窗口,可以在同一页面,右边栏出现选择的文件夹内容。

之后点击其他的文件夹内容时,右边栏也会相应变化,而不需要整页跳转到新的页面。

注意左边为文件夹内容,指向”我的文件夹”

右边为biee dashboard的文本,内容为包含html标记的

 Clipboard Image.png

 

图1,注意左边选中的文件夹内容

 

图2,注意左边选中的文件夹内容

 

 

解决方法:

修改

D:\app\OBI\user_projects\domains\bifoundation_domain\servers\AdminServer\tmp\_WL_user\analytics_11.1.1\silp1v\war\res\b_mozilla下的common.js文件

将runthisurl 这个function修改为

saw.runThisURL=function(e,b){ if(e.length>2047||b&&b.ensureFreshUrl){var d=saw.createFormFromString(e);if(d){if(saw.userAgent.is_appleapp&&d.mobileNav){var c=d.mobileNav.value;if(c){d.action+=(d.action.indexOf("?")>=0?"&":"?")+"mobileNav="+saw.encodeURIComponent(c);d.removeChild(d.mobileNav)}}if(b&&b.ensureFreshUrl){saw.addSessionSecurityCodeInput(d)}d.submit()}}else{if(e.indexOf("NavFromViewID")>=0&&parent.window.document.getElementById('display_area')){parent.window.document.getElementById('display_area').src='http://use-pc:7001/analytics/'+e+'&Syndicate=Siebel'}else{try{window.location.href=e}catch(a){}}}return false};

 

注意黄色背景,红色字体部分:

e.indexOf("NavFromViewID")>=0表示检查将要新的url是否包含NavFromViewID,如果包含,则是文件夹内容因为跳转所需生成的临时ViewID

(如果没有这个字符串,则很可能是需要跳转到其他仪表盘或其他内容,此时不应该被新脚本影响)

parent.window.document.getElementById('display_area')检查父页面上是否包含display_area这个element,如果包含的话,则将新的url内容显示在其中(见parent.window.document.getElementById('display_area').src部分)

 

如果不能同时满足上述两个条件,则使用原先脚本:try{window.location.href=e}catch(a)

 

 

后续改进:

注意缺省情况下右边栏显示的内容不受提示框(年份:v_year,周次:v_week)影响,需要在新的url后面增加部分内容,如&Action=Navigate&P0=2&P1=eq&P2="维度-日期"."OWC年份"&P3="@{v_year}"&P4=eq&P5="维度-日期"."OWC年中第几周"&P6="@{v_week}"

而文件夹的报表内容则必须包含年份,和周次这两个过滤条件

推荐 0
本文由 newkoa 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册