以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  专业报表数据绑定打印时,如何格式化字符串和数值?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=151540)

--  作者:hzcaqjf
--  发布时间:2020/6/27 11:32:00
--  专业报表数据绑定打印时,如何格式化字符串和数值?
专业报表中数据绑定打印时,为了使报表数据整齐,需要对每个打印对象设定字符串长度和数值长度,不够长度的字符串或数值用空格填充.
比喻:
原来的效果:
车号:AF3028 金额:258.20
车号:J2850 金额:53.30 
车号:582 金额:Format(Fields!金额.Value,""#0.00"")     \'空值不能正确显示

改为想要的效果:
车号:AF3028   金额: 258.20
车号:  J2850   金额:1253.30 
车号:     582   金额:                 \'空值显示为空

代码如下:
......
rt = New prt.RenderText
rt.Text = "车号:[Fields!车号.Value.PadLeft(6)] 金额:[Format(Fields!金额.Value,""#0.00"")]"   \'这里的代码如何改
rt.DataBinding.DataSource = ra.DataBinding.DataSource 
ra.Children.Add(rt)
doc.body.Children.Add(ra)

--  作者:有点蓝
--  发布时间:2020/6/27 12:10:00
--  
要指定一下字体

Dim rt As New prt.RenderText
rt.Style.Font = New Font("宋体", 10)
rt.DataBinding.DataSource = BindTables("订单") \'将rt绑定到订单表
rt.Text= "车号:[Mid(""      "",1,6-len(Fields!车号.Value)) & Fields!车号.Value]  金额:[Format(Fields!金额.Value,""#0.00"")]" \'设置打印表达式
doc.body.Children.Add(rt)
doc.Preview()

--  作者:hzcaqjf
--  发布时间:2020/6/27 13:52:00
--  
蓝老师,当表中某数值为空时,打印时显示不准确(如上只显示一行代码),

要求显示也为空,如何改代码?
[此贴子已经被作者于2020/6/27 13:54:14编辑过]

--  作者:有点蓝
--  发布时间:2020/6/27 14:17:00
--  
没有办法控制。不要使用绑定,改为遍历处理吧