King

business intelligence ,is my love。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  300 随笔 :: 0 文章 :: 117 评论 :: 168万 阅读

一、需求:

在浏览器输入一个URL,在URL后面加上参数就可以访问一个有提示值的报表?比如下面的报表

二、解决办法

Cognos  Model 查询主题设计层概要

1
2
3
4
5
6
7
Select
    *
from
    [UCOM_DW].tumor_trend
where
    tumor_trend.doctor_id =#prompt('did','string')#
    and tumor_trend.p_id =#prompt('pid','string')#

URL概要


http://king:9300/bi/v1/disp?b_action=cognosViewer&run.outputFormat=HTML&run.prompt=false&ui.object=storeID(%22i35C733A8A0BA418DB767C34831807957%22)&ui.action=run&cv.header=false&cv.toolbar=false&p_did=15267120752&p_pid=2017001

需要注意的是:如何获取cognos11报表的URL访问方式请看我的另一篇博文 Cognos11中通过URL访问report的设置 

获取到之后是这个样子的:

-----------------------------------------------------------------------------------------------------------------------------------------------

http://king:9300/bi/v1/disp?b_action=cognosViewer&run.outputFormat=HTML&run.prompt=true&ui.object=storeID(%22i35C733A8A0BA418DB767C34831807957%22)&ui.action=run&cv.header=false&cv.toolbar=false
------------------------------------------------------------------------------------------------------------------------------------------------

需要修改的是:

1:把run.prompt=true改为run.prompt=false这样就不会走提示页,直接提交到报表页

2:在URL后面加上&p_did=15267120752&p_pid=2017001,注意用&符号区分每一个参数,另外需要注意的就是在原始的参数名前面加上p_告诉cognos是参数的含义

3:如果参数值是英文或者数字可以直接写在后面,如果是中文请先进行URL-UTF8转码操作,然后赋值给参数,可以借助《Encode_ Decode Tools URL编码解码工具.》

  

   中文转码后参数格式&p_name=%E5%BC%A0%E4%B8%89

   下面就可以进行集成了,集成方式有两种:

  (1):URL集成,直接通过浏览器访问URL,如下图

  

  (2):IFRAME集成,通过IFRAME集成在HTML中然后访问HTML,如下图

    IFRAME集成的HTML代码如下  wxj.html

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<!doctype html>
<html lang="en">
 <head>
   <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><meta name="HandheldFriendly" content="true">
 
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>一个技术界的小人物</title>
 
 
 </head>
 <body>
 
 
 
<iframe src="http://king:9300/bi/v1/disp?b_action=cognosViewer&run.outputFormat=HTML&run.prompt=false&ui.object=storeID(%22i35C733A8A0BA418DB767C34831807957%22)&ui.action=run&cv.header=false&cv.toolbar=false&p_did=15267120752&p_pid=2017001" width="100%" height="600"></iframe>
 </body>
</html>

如下图所示

 

posted on   kingstudy  阅读(2667)  评论(1编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
历史上的今天:
2015-06-26 RS报表自动适应屏幕分辨率大小
点击右上角即可分享
微信分享提示