如何实现WEB报表的打印?急!!!!!急!!!!!急!!!!!急!!!!!

simb 2003-06-27 04:43:45
用INTRAWEB实现WEB报表的打印,
报表控件主要用TMS的iwdbadvwebgrid
或者用DELPHI本身自代的控件!!!
急!!!!!
...全文
38 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tod707070 2003-06-28
  • 打赏
  • 举报
回复
我已经实验了一下,现在我知道如何在intraweb中调用activex了,下面我说一下范例
有这么一个程序,在ActiveXform上有一些报表控件,而在intraweb界面上有一个iwedit,希望通过对iwedit上输入sql语句,来实现报表的产生。
(1)产生一个ActiveXForm,上面有Query\DataSource还有几个报表控件,在Type Libary里增加一个SQL:widestring read Get_SQL的属性,这个是用来接收SQL语句的,在它的Get_SQL中写出调用ActiveForm.Query执行SQL的代码
(2)注册这个ActiveFormX,这个时候,启动FrontPage,建立一个新的页面,然后在这个页面中插入你新建的ActiveXForm
(3)在FrontPage里分析一下你的脚本看看,你有了全新的发现,在加入ActiveXForm的脚本是这么写的
<object classid:....classid....... width........ height......>
<param name="caption“ value="activeXform1">
................
<param name="SQL" value="">
</object>
这个说明了什么呢?说明了IntraWeb完全可以通过产生动态脚本的方式插入ActiveXForm的控件,而且可以通过指定<param name..........value.........>的方式控制ActiveXForm执行什么样的工作。
(4)那么我们回到Intraweb,加入一个iwbutton,再加一个iwedit,我们可以写iwbutton来动态产生插入ActiveXForm的脚本。
这里有个问题,那么由谁加载这个脚本呢?我觉得最好的就是IwText,那么再在Iwform上放一个IwText,这个时候写Iwbutton的OnClick的事件代码
IwText1.lines.clear;
IwText1.lines.add( '<object classid:....classid....... width........ height......>
<param name="caption“ value="activeXform1">
................');
IwText1.lines.add('<param name="SQL" value="'+IwEdit1.text+'">');
IwText1.lines.add('</object>');
(4)OK了,你执行一下,现在的ActivexForm就可以加载到Intraweb上,并且一出现,就执行了IwEdit里指定的SQL语句

(5)一句话"
1.通过动态产生<object>...........</object>脚本的方式加载ActiveForm
2.通过动态产生<param name .... value>脚本的方式与ActiveForm传递参数
最后注意一下,刚才说的IwText的RowLine的属性必须为True,以免IwText自动换行或者加那些不该有的空格
qwertyasd 2003-06-27
  • 打赏
  • 举报
回复
买一个控件吧!
ziqing 2003-06-27
  • 打赏
  • 举报
回复
用DELPHI本身自代的控件实现WEB报表的打印好像不能实现呀!!
还是用其它方法吧!

1,593

社区成员

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

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