以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  专业报表 如果数据为空  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=57367)

--  作者:freeants
--  发布时间:2014/9/23 16:53:00
--  专业报表 如果数据为空
    rt = New prt.RenderText
    rt.Text = ActiveTable.Rows(i)("R1")
    rt.Style.Font=fnt
    rt.X = 0       \'第一行距离水平上面的距离
    rt.Y = 0         \'第一行距离垂直上面的距离
    ra.Children.Add(rt) \'添加到容器中

    
    rt = New prt.RenderText
    rt.Text = ActiveTable.Rows(i)("R2")
    rt.Style.Font=fnt
    rt.X = 0
    rt.Y = "Prev.Bottom + 0" 
    ra.Children.Add(rt)

    rt = New prt.RenderText
    rt.Text = ActiveTable.Rows(i)("R3")
    rt.Style.Font=fnt
    rt.X = 0
    rt.Y = "Prev.Bottom + 0" 
    ra.Children.Add(rt)

    运行上面代码的时候 ,如果   rt.Text = ActiveTable.Rows(i)("R2")  为空,报表里面会自动跳过,把 rt.Text = ActiveTable.Rows(i)("R3")  写上去,我希望空的时候还是写空, 这个怎么解决。



图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看



--  作者:有点甜
--  发布时间:2014/9/23 17:04:00
--  

改一下

 

rt.Text = IIF(ActiveTable.Rows(i).Isnull("R2"), "     ", ActiveTable.Rows(i)("R2"))


--  作者:freeants
--  发布时间:2014/9/23 17:07:00
--  
有用,多谢