cancel
Showing results for 
Search instead for 
Did you mean: 

WEB调用水晶报表ACTIVEX 传参数的问题

Former Member
0 Kudos

在WEB客户端调用水晶报表ACTIVEX来显示带参数的报表,但是ACTIVEX显示报表页面前就弹出一个对话框【请输入报表参数】。为了让这个对话框不弹出来,我想用代码给报表参数赋值。

问题:报表参数赋值的入口在哪里?如何赋值?要有具体代码更好。

请BO技术员或各位高手帮忙,万分感激!----【成都市保安服务总公司】

步骤如下:

-1-引用ACTIVEX控件,

控制ACTIVEX控件的显示属性

-2-加载报表

Sub Page_Initialize

On Error Resume Next

Dim webBroker

Set webBroker=CreateObject "CrystalReports11.WebReportBroker.1")

if err.number <> 0 then

window.alert "The Crystal Report Viewer is unable to create its resource objects."

CRViewer.ReportName = "890"

else

Dim webSource0

Set webSource0 = CreateObject("CrystalReports11.WebReportSource.1")

webSource0.ReportSource = webBroker

webSource0.URL = "http://crystal:8880/businessobjects/viewrpt.cwr?id=890"

webSource0.PromptOnRefresh = true

CRViewer.ReportSource = webSource0

end if

--浏览报表

CRViewer.ViewReport

End Sub

**在哪里赋参数值?

Accepted Solutions (1)

Accepted Solutions (1)

sunny_zhang
Active Contributor
0 Kudos

https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b07a158a-b766-2b10-a79e-bfc6d19c...

下载crsdk_net_samples_12.zip。

crsdk_net_samples_12.zipCrystalReportViewer_Object_Model_TutorialsCRVObjMod_Parameters是给CR传参的例子。

希望对你有帮助。

Former Member
0 Kudos

谢谢你提供的crsdk_net_samples_12.zip文件。

如果是.net 或jsp调用,那很简单,我已经做出来了现成的例题。

但是,现在是调用Activex来显示报表,调用方法和参数赋值完全不一样了。如果您有这方面的例题就更好了,万分感谢!

sunny_zhang
Active Contributor
0 Kudos

你的CR的版本是多少?

你的意思是用CR的 COM SDK?

Former Member
0 Kudos

我的是水晶报表专业版,版本:11.0.0.1282。

你说的对,就是COM.

水晶报表WEB显示模式有4种【activex,Dhtml,高级Dhtml,java】.我选择的是activex查看器,客户端第一次浏览报表会提示下载控件,然后就可以显示报表了。上面是Activex显示报表页面后生成的代码。Activex的原理是接受一个报表URL就可以显示报表,但是它总是弹出【输入参数】对话框,我不知道从哪里入口传参数进去。

请问下您有这方面的例题么?谢谢,很急哈

Former Member
0 Kudos

SORRY,我说错了:不是COM平台,我的是JAVA,TOMCAT 平台。

麻烦您再发一个JAVA的实例,万分感谢!!!

Former Member
0 Kudos

Sunny Zhang,您发给我的都是asp文件,如果有JSP的就更好了,谢谢!

sunny_zhang
Active Contributor
Former Member
0 Kudos

老大,

显示报表有4个方式:activex,dhtml,高级dhtml,java查看器

【dhtml】的技术问题我已经找到了哈

现在,我们需要的是【WEB调用ACTIVEX 通过二次开发代码里传参数的JSP文件】

也就是说,如果你用ACTIVEX 浏览报表,你的参数在代码里是怎么传进去的?

sunny_zhang
Active Contributor
0 Kudos

m.parker, 再多问几个问题:

1.您用的BOBJ的产品是BOE还是单独的CR?

2.如果用的是BOE的话,是用Page Server还是RAS Server看的报表?

Former Member
0 Kudos

Your question:

m.parker, 再多问几个问题:

1.您用的是BOBJ的产品是BOE还是单独的CR?

2.如果用的是BOE的话,是用Page Server还是RAS Server看的报表?

My answers:

1.我的产品是BOE (单独的CR是怎么可能在WEB上调用ACTIVEX浏览报表?)

2.我的是用Page Server 看到报表

再强调一次哈,我需要在WEB客户端调用ACTIVEX (不是DHTML)浏览BOE服务器上的报表,但是参数不知道是从哪里传进去ACTIVEX的。

sunny_zhang
Active Contributor
0 Kudos

m.parker, Page Server只支持以下两种Java的Viewer SDK:

DHTML report page viewer

report parts viewer

Former Member
0 Kudos

恩,你说得很对。

我的BOE服务器上不但有PageServer、CashServer、还有RAS Server.

PageServer、CashServer:用于DHTML模式;

RAS Server 呢?是不是该用于ACTIVEX模式呢?你说呢,老大?

最重要的是解决我的问题:

NOW:我在客户端通过IE访问BOE服务器(TomCat平台)上的报表,我选择了【0-Activex】模式,然后IE提示要下载一个ActiveViewer控件,下载安装完成后,界面会提示输入参数,然后就可以在IE上浏览报表了。我现在想知道,它的工作模式是怎样的?报表上如何加载到ActiveViewer上的?它的参数是如何通过代码传进去的?

S/A:

TomCat平台;【0-Activex】模式;传参数;DEMO(JSP格式的文件);

Former Member
0 Kudos

要不这样吧,你加我QQ:394184878

远程演示给你看,一下就明白了。

sunny_zhang
Active Contributor
0 Kudos

如果你的报表是通过RAS服务器处理的,那么RAS支持以下4种Java的Viewer:

DHTML report page viewer

report parts viewer

DHTML interactive viewer

DHTML grid viewer

Former Member
0 Kudos

麻烦你解决我问题之前先看看【1楼】所提到问题。

折腾了2个礼拜都没能实质性的解决我问题,我不得不怀疑你的技术能力和沟通能力。

换个能力强点的技术员来吧

Edited by: m.parker on Jun 1, 2009 7:39 AM

sunny_zhang
Active Contributor
0 Kudos

m.parker,从你第一次的描述来看,代码更像是用得CR 的COM SDK,但你后来又说是用的Java SDK,现在你又让我看你第一次的类似COM SDK(至少看起来像是)的描述。

你究竟用的是什么SDK,或者说你究竟想用什么SDK,这让我很迷惑。

如果你用的是COM的SDK而不是Java SDK,你可以参考一下CR 的RDC的COM SDK的以下方法,看能否解决你的问题:

用WebReportSource Object的Method Sub AddParameter ( tag As String, value As String )

tag Specifies the prompt for which you want to pass a value.

value Specifies the response string that you want to provide.

这个介绍在我之前给你的回复中的一个超链接可以找到,如果感兴趣你可以再去看看。

虚心接受你的批评,再接再厉,提高水平~

Former Member
0 Kudos

SORRY,是我表达有问题,没能让您听清楚哈。

现在麻烦您加我QQ 394184878 远程看看,只要几秒你就明白我的意思了。我这个项目很急,本周内需要姐姐,麻烦你了,谢谢.

Former Member
0 Kudos

你的服务态度还是蛮好的,现在,我把我的问题以及操作说具体一点,麻烦您耐心把我的问题看仔细就明白了:

【只希望斑竹和各路朋友帮忙解决这个问题】

版本:服务器 【专业版 11.0】

BOE SERVER安装环境:windows2003高级服务器, 【Tomcat6.0】平台,oracle10G数据库服务器

1:为什么IE客户端可以用Activex访问报表呢?看我操作:

登录 InfoView【这个应该晓得吧,是用于浏览报表、做任务计划的管理平台】

>点击 右上角【首选项】>选择【Crystal Report首选项】

-->u201C查看我的报表,方法是使用u201D【○-ActiveX 查看器 ○-DHTML 查看器 ○-高级 DHTML 查看器 ○-Java 查看器】

-->我选择 【○-ActiveX 查看器】

-->点右下角【确定】

-->设置完毕,然后点击某一张报表

-->第一次打开时系统提示【下载ActiveXViewer.cab控件】

-->下载完毕后,就可以用Activex访问报表了

-->有参数报表系统会自动弹出输入参数对话框

>参数输入完毕,【确定】>报表打开。

2:问题:在这种情况下,我在我的WEB业务平台上直接调用【直接连接某一张报表的URI】如:http://服务器名:8080/businessobjects/enterprise11/desktoplaunch/viewrpt.cwr?id=6846&init=actx,但是运行后需要手工输入参数, 你如何在二次开发时把参数赋进去。[activex]

(提示示:不要再发一些DHTML参数赋值的文件哈,谢谢)

Edited by: m.parker on Aug 3, 2009 3:54 AM

Answers (1)

Answers (1)

Former Member
0 Kudos

No body answer to me?