Cognos中通过URL传参访问动态Report

386 阅读1分钟

Cognos中通过URL传参访问动态Report

在浏览器中输入一个url,url后面跟?可访问的数据

比如:

image-20210519163902131

image-20210519163902131.png

二种查询:
方法一:用sql语句查询的
Select * from [UCOM_DW].tumor_trend where tumor_trend.doctor_id =#prompt('did','string')# and tumor_trend.p_id =#prompt('pid','string')#
方法二:注意时间的查询
image-20210519164849550

image-20210519164849550.png

日期的查询用prompt没有作用,需要用?

URL概要

http://http://localhost/: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_pid=2017001

需要修改的是:

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

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

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

image-20210519164446911.png

注释转码之后一定是以%开头