以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 复杂报表 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=28430) |
-- 作者:epsunny -- 发布时间:2013/1/29 14:21:00 -- 复杂报表 请问要在一个报表中包含多个数据表的数据,比如100个,如何用最简单的方法实现呢?可以通过内部函数定义一些文本,然后嵌套调用吗? |
-- 作者:epsunny -- 发布时间:2013/1/29 14:28:00 --
内部函数 report1 的 定义:
Dim rt As prt.RenderText
Return rt
报表1 的定义:
Dim doc As New PrintDoc \'定义一个报表 doc.body.Children.Add(Functions.Execute("report1")) Doc.Preview() \'预览报表
预览报表1 总是出错,请问什么原因? |
-- 作者:狐狸爸爸 -- 发布时间:2013/1/29 14:32:00 -- Dim rt As New prt.RenderText rt.Text = "Hello Panyu" \'设置文本对象的内容 Return rt |
-- 作者:lin_hailun -- 发布时间:2013/1/29 14:34:00 -- 因为rt对象在内部函数执行结束之后,就会消失了,你最好把内容写在全局代码那里。 -------------------- 呵呵说错了,内部函数返回了对象,对象存在引用,所以不会消失的。 [此贴子已经被作者于2013-1-29 14:40:23编辑过]
|
-- 作者:epsunny -- 发布时间:2013/1/29 16:11:00 --
如果要调用一个参数呢? 传入一个参数,在函数内部对其进行设置后然后传出,这样可以吗?(执行出错,说数组的问题)
函数:setFontTitle1
Dim rt As prt.RenderText = Args(0) rt = Args(0)
调用这个函数的报表:
Dim doc As New PrintDoc \'定义一个报表
doc.Preview() \'预览 [此贴子已经被作者于2013-1-29 16:13:54编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2013/1/29 16:23:00 -- Dim rt As prt.RenderText = Args(0) rt = Args(0)
改为:
Dim rt As prt.RenderText = Args(0) rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center \'水平居中 |