十万火急!!!如何在IntraWeb做的ISAPI里调用Rave?

glassesboy 2003-03-13 05:58:12
我用IntrWeb做好了ISAPI,正常发布了,可是现在要把已经做好的Rave文件在页面上调用,我试过了,没反应!有人说要用Rave Server我去下了一个,可是好像要把数据连接放到.rav文件里,现在已经没有时间重做了!
恳请各位给点方法,分数不够可以再加!
...全文
41 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
x386 2003-05-05
  • 打赏
  • 举报
回复
ActivexForm
glassesboy 2003-03-28
  • 打赏
  • 举报
回复
问题没解决,还是谢谢各位!
结了!

Xiao78:谢谢你能给我回邮件^_^
glassesboy 2003-03-20
  • 打赏
  • 举报
回复
Sorry!在家病了两天,今天才上班!
xiao78:我试试!
glassesboy 2003-03-17
  • 打赏
  • 举报
回复
xiao78(xiao78)、 qxj(borland中国) :

您好!我试过了您留的方法!在Delphi7自带版本的IntraWeb中,如果用生成Html它会自动生成两个.gif用来画表格线的.如果是ISAPI,它就要往系统目录下写,结果是系统不允许它写入,因此报错!
我又升级到了5.1.22,结果是它不能往子目录里面写比如:“files\” 下。读取的时候又会自动的加上端口号,造成不能读取!
我都快疯掉了!!!
xiao78 2003-03-17
  • 打赏
  • 举报
回复
如果是ISAPI,
rvsystem1.outputfilename :='c:\documents and settings\ttt\my documents\yy\test.html'; ///用绝对路径试试, 可以的
glassesboy 2003-03-14
  • 打赏
  • 举报
回复
:(
xiao78 2003-03-14
  • 打赏
  • 举报
回复
我也想不出什么办法.
要不你上http://www.nevrona.com/和news group news.nevrona.com 看看
glassesboy 2003-03-14
  • 打赏
  • 举报
回复
xiao78(xiao78) :
谢谢您!可是我不能保证每个客户机都装Acrobat:(

请问能和我联系一下吗,QQ : 26167952 msn:jackyshen_hf@msn.com
想沟通的快一些!
xiao78 2003-03-14
  • 打赏
  • 举报
回复
Preview确实是问题.
可是你要传到客户端显示, 当然是是用页面.
要不用PDF试试???
glassesboy 2003-03-14
  • 打赏
  • 举报
回复
我试试!
可是这个好像是生成一个页面,打印出来不好看,请问有可以象Rave里直接打印预览的方法吗?
xiao78 2003-03-14
  • 打赏
  • 举报
回复
代码是同事写的, 可以执行, 不过我只知道一点.
需要TRvRenderHTML控件, TRvProject的ProjectFile连接rave report

procedure TformMain.IWButton1Click(Sender: TObject);
begin
rvproject1.selectreport('report',true);
rvsystem1.DoNativeOutput:=false;
rvsystem1.DefaultDest:=rdfile;
rvsystem1.renderobject :=rvrenderhtml1;
rvsystem1.outputfilename :='files\test.html'; //这自动产生,
rvsystem1.systemsetups :=rvsystem1.systemsetups-[ssallowsetup];
rvproject1.execute;
AddToInitProc('open("http://localhost/test/files/test.html","display","toolbar=yes,directories=yes,menubar=yes")'); //IIS 虚拟目录test要建立
end;
glassesboy 2003-03-14
  • 打赏
  • 举报
回复
谢谢各位!帮帮忙!
glassesboy 2003-03-14
  • 打赏
  • 举报
回复
小弟对网络方面(ASP、JSP)一窍不通,照着
AddToInitProc('NewWindow("' + AIPURL + '", "Agenda", "' + AIPOptions+'");');
写可是为什么报Session过期?
qxj 2003-03-14
  • 打赏
  • 举报
回复
不好意思据我所知只能保存为HTML,PDF,RTF,TEXT,还有本身的格式。
PDF不支持中文。
HTML外观不漂亮。:)
你可以试试RTF,不过我想也许还不如HTML
glassesboy 2003-03-14
  • 打赏
  • 举报
回复
qxj(borland中国) :
你的这个代码我以前看过,可是除了用Html、pdf外就没有别的办法了吗

xiao78(xiao78) :
StandAlone模式下我试验成了,可是Dll就有问题:(

我先照二位提供的方法做吧,成功后就给二位发分
qxj 2003-03-14
  • 打赏
  • 举报
回复
对于BS结构的是不能在客户端显示打印预览的,只能通过先保存成PDF或HTML格式的,
如果生成PDF有中文显示的问题。
http://expert.csdn.net/Expert/topic/1315/1315471.xml?temp=.5972254这是我以前回的贴子看看吧。程序如下
我的思路是这样的,先把报表保存在一个文件中(PDF,HTML)然后再打开他.
//生成报表并保存为HTML格式,PDF格式不支持中文
RaveProject1.SelectReport('report1',true);
with RvSystem1 do
begin
DoNativeOutput :=false;
DefaultDest :=rdfile;
RenderObject :=rvrenderhtml;//保存为HTML
OutputFileName :='files/test.html';//要保存在INTRAWEB下FIELS中
SystemSetups :=SystemSetups-[ssallowsetup];
end;
try
raveproject1.Execute;
except
webapplication.showmessage('生成报表错误');
end;

//打开此报表
const
AIPOptions: string ='toolbar=no,status=no,menubar=yes,scrollbars=yes,resizable=yes,location=no,directories=no,width=780,height=580';
AIPNewWindow: string = 'NewWindow("%s", "%s", "%s");';
aipurl :=webapplication.urlbase+'/files/'+'test.html';
AddToInitProc('NewWindow("' + AIPURL + '", "Agenda", "' + AIPOptions+'");');
xiao78 2003-03-14
  • 打赏
  • 举报
回复
把dll转成exe, 运行在application server 中多打开几个session,
把产生的URL放到其它机器上运行, 按下打开RAVE 报表的按钮,
rave的preview window 会产生在server端,
我觉得除了转成html和pdf, 好象没有别的方法了

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧