2019独角兽企业重金招聘Python工程师标准>>>

今天有网友问到怎样在叙述视图中进行导航?

叙述图不同于表格,相要在其中进行导航的话只能借用GO URL或者javacript函数的方式,并且同时还有一个难点在于,其无法像直接在表格字段属性中

设置导航action那样直接将源报表上的条件作为参数传递到目标报表。那怎么办呢?

好在BIEE给我们提供了两种方法,一种是基于URL的,一种是利用导航函数的。

先来看基于导航函数的吧

语法如下:

function GoNav(event, sPath, sTbl, sCol, sVal, sTarget)

where:

event = event indicator.

sPath = the catalog path of the destination search.

sTbl = the logical table name to filter.

sCol = the logical column name to filter.

sVal = the value to filter by.

sTarget (optional) = "_blank" to open a new browser window with the results.

PortalNav Function

function PortalNav(event, sPortal,sTbl,sCol,sVal)

event = event indicator.

sPortal = the catalog path of the destination portal.

sTbl = the logical table name to filter.

sCol = the logical column name to filter.

sVal = the value to filter by.

两个函数,第一个函数是用来导航到请求(11g叫分析)的,第二个函数是用来导航到dashboard的。

下面让我们使用导航函数来完成导航吧,叙述图格式如下:

我想要实现当我点击金额的时候 跳转到目标报表,并将金额所对应的月份作为参数传过去,那么我们可以编写如下代码:

[html] view plaincopyprint?

  1. <font class=nav onclick="JavaScript:GoNav(event, '/shared/demo/target','Calendar','Calendar Quarter Desc','@1 ');">@2</font>

其中/shared/demo/target是目标请求的路径,Calendar是需要过滤字段所在的逻辑表名称,Calendar Quarter Desc是需要过滤字段的字段名称

@1是参数值(叙述视图中的语法,用于引用第一列值)

注:font标签只是用于承载onclick事件的,大家可以根据自己的需要选择相应的标签。另外经过测试,使用<a></a>标签会报找不到对象的错误,解决变法暂时没有

目标请求定义如下:

注意需要对Calendar Quarter Desc字段添加过滤器

OK,至此我们就用GoNav函数完成了在叙述视图中的导航,至于PortalNav的用法同理,只不过Path为仪表盘的Path。

不知道大家有没有发现,GoNav有一个很明显的缺点,那就是只能传一个参数,这在很多场合下不太适用,那如果我们传递多个参数应该怎么办呢?

答案是使用Go URL,有关Go URL的语法在此不在详述,请参阅

Integrator's Guide 之

8 Integrating Oracle BI Presentation Services into Corporate Environments Using HTTP and JavaScript

下面直接给出实现代码:

[html] view plaincopyprint?

  1. <a href="saw.dll?Go&Path=/shared/demo/target&Action=Navigate&P0=2&P1=eq&P2=Products.%22Prod%20Subcategory%22&P3=@3&P4=eq&P5=Calendar.%22Calendar%20Quarter%20Desc%22&P6=@1">@2</a>

其实现了如下效果:

当我点击红色方框中的金额时,导航到目标请求,并同时传将月份和产品类型两个参数传递过去

需要注意的是,对于有字段名中含有空格的情况,我们需要用引号将其包起来,并将空格编码为%20,同时还需要将引号进行URL编码

例如:

"Calendar"."Calendar Quarter Desc"

应做如下编码:

Calendar.%22Calendar%20Quarter%20Desc%22

注:不含空格的名称无需引号

如果字段名称和参数值均是中文的话,你需要对其进行编码,可以使用JS来完成

用记事本新建一个文档,拷贝下面的代码然后保存为test.html(注意后缀名),然后用IE打开就可以得到编码的字符串了

10G的做法:

[html] view plaincopyprint?

  1. <html>

  2. <body>

  3. <script>

  4. var u=  encodeURI('saw.dll?Go&Path=/shared/0.人力资源分析/组件/分析/员工基本信息_test2&Action=Navigate&P0=1&P1=eq&P2="人员类型"."人员类型名称"&P3=实习');

  5. document.write(u);

  6. </script>

  7. </body>

  8. </html>

11G的做法

[html] view plaincopyprint?

  1. <html>

  2. <body>

  3. <script>

  4. var u=  encodeURI('saw.dll?Go&Path=/shared/0.人力资源分析/组件/分析/员工基本信息_test2&Action=Navigate&P0=1&P1=eq&P2="人员类型"."人员类型名称"&P3='+encodeURI('实习'));

  5. document.write(u);

  6. </script>

  7. </body>

  8. </html>

注意在11G中我们需要参数值使用了两次编码!否则会有乱码问题!

另外还需要注意的是,我们也对中文字段加了引号!

本文所提到的所有内容均来自Oracle BIEE 11g官方文档

Integrator's Guide 之

8 Integrating Oracle BI Presentation Services into Corporate Environments Using HTTP and JavaScript

强烈建议人手一份官方文档,以便随时查阅。

转载于:https://my.oschina.net/china008/blog/367071

BIEE叙述图导航实例相关推荐

  1. python雷达图数据_PYTHON绘制雷达图代码实例

    这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.雷达图 import matplotlib.py ...

  2. java开源库生成折线图_Android HelloChart开源库图表之折线图的实例代码

    前面我们介绍了开源图表库MPAndroidChart,请参考: 我们今天介绍的将是一个更为优秀的图表库,比MPAndroidChart性能更好,功能更完善,UI风格更美观,坐标轴更精细. 支持缩放.滑 ...

  3. python话雷达图-PYTHON绘制雷达图代码实例

    这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.雷达图 import matplotlib.py ...

  4. python绘制雷达图代码实例-PYTHON绘制雷达图代码实例

    这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.雷达图 import matplotlib.py ...

  5. python画出的雷达图效果-PYTHON绘制雷达图代码实例

    这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.雷达图 import matplotlib.py ...

  6. itextsharp php,C#_C#使用iTextSharp设置PDF所有页面背景图功能实例,本文实例讲述了C#使用iTextSharp - phpStudy...

    C#使用iTextSharp设置PDF所有页面背景图功能实例 本文实例讲述了C#使用iTextSharp设置PDF所有页面背景图功能的方法.分享给大家供大家参考.具体如下: 在生成PDF 的时候,虽然 ...

  7. python饼状图教程_Python数据可视化:饼状图的实例讲解

    使用python实现论文里面的饼状图: 原图: python代码实现: # # 饼状图 # plot.figure(figsize=(8,8)) labels = [u'Canteen', u'Sup ...

  8. python雷达图怎么做_PYTHON绘制雷达图代码实例

    这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.雷达图 import matplotlib.py ...

  9. 5种样式实现div容器中三图摆放实例对比说明

    代码地址如下: http://www.demodashi.com/demo/11593.html 效果演示: demo点查看效果 需求说明: 如下图所示为设计图,希望在图片上传无规则无规律的情况下实现 ...

最新文章

  1. ktor框架用到了netty吗_教你如何构建异步服务器和客户端的 Kotlin 框架 Ktor
  2. 通过共享内存进行进程间通信
  3. python点击按钮浏览本地文件_Python button选取本地图片并显示的实例
  4. 【C/C++多线程编程之八】pthread条件变量
  5. 引入其他配置文件(分模块开发)
  6. V神:区块链跨链技术大规模应用将在一到两年内爆发
  7. apache启服务命令_Linux系统重启apache服务命令详解
  8. matlab 拟合瑞利分布公式_概率论3「学生成绩转化」为正态分布和偏态分布的方法...
  9. Windows下IIS搭建Ftp服务器
  10. 简单的javascript计算器
  11. 如何将谷歌地图叠加到MapGIS三维地球场景
  12. swift html5 跳转页面跳转,Swift - 纯代码实现页面segue跳转,以及参数传递
  13. DNS配置错误如何修复
  14. YDLIDAR G4雷达的unity使用相关+北阳雷达
  15. 第四章 web前端开发工程师--JavaScript京东商城项目开发 4-2 京东商城导航栏
  16. discuz db_mysql.calss.php,discuz 7.0 db_mysql.php 详解
  17. C# 递归的应用 TreeView递归绑定数据
  18. 论文笔记:高精度室内定位研究评述及未来演进展望
  19. nacos配置中心指定配置文件为yml格式
  20. 使用百度地图工具进行坐标转换

热门文章

  1. [转]MySQL忘记密码的正确解决方法
  2. 问号和点运算符是什么? 在C#6.0中意味着什么?
  3. 如何在终端窗口中在Linux中创建文件?
  4. 除了允许变量被const函数修改之外,'mutable'关键字是否有任何其他用途?
  5. 为什么null为对象,并且null和undefined有什么区别?
  6. MS Expression Web中的Asp.net mvc(和其他网络编辑工具)
  7. android中上拉下滑布局,3年以上勿进!最简单的Android自定义ListView下拉刷新与上拉加载,代码直接拿去用~...
  8. mysql获取多张表中的数据_mysql之多表查询
  9. 日常生活开支记账明细_做好这3点,不再白记账
  10. wangeditor中添加超链接校验