连续套打
怎样在连续套打中日期为空,不要显示0000-00-00?
如果要连续套打,必须在打印每一个单据后,能够自动换页,准备套打下一个单据。
因为套打中的对象都是直接指定坐标后加入到到表中的,所以我们只能通过插入RenderEmpty来实现换页。
下面的代码,套打选定行的员工资料卡,请在员工表中选定多行进行测试:
Dim doc As New PrintDoc '定义一个报表
Dim rx As prt.RenderText '定义一个文本对象
Dim rm
As prt.RenderImage
'定义一个图形队形
Dim Currow As
Row
Dim tbl As
Table = Tables("员工")
For i as
Integer = tbl.TopRow To tbl.BottomRow
CurRow =
tbl.rows(i)
Dim
rep As New prt.RenderEmpty '定义一个新的空对象
rep.BreakBefore =
prt.BreakEnum.Page '打印前换页
doc.Body.Children.Add(rep ) '加入到报表中
rx = new
prt.RenderText
rx.Text = CurRow("姓名")
rx.x = 51
rx.y = 36
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("出生日期")
rx.x = 109
rx.y = 36
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("部门")
rx.x = 51
rx.y = 43
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("雇佣日期")
rx.x = 109
rx.y = 43
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("性别")
rx.x = 51
rx.y = 50
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("职务")
rx.x = 109
rx.y = 50
doc.body.Children.Add(rx)
rx = new
prt.RenderText
rx.Text = CurRow("城市")
rx.x = 51
rx.y = 57
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("邮政编码")
rx.x = 109
rx.y = 57
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("地址")
rx.x = 51
rx.y = 63
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("家庭电话")
rx.x = 51
rx.y = 69.5
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("办公电话")
rx.x = 109
rx.y = 69.5
doc.body.Children.Add(rx)
rx =
new prt.RenderText
rx.Text = CurRow("备注")
rx.x = 26.5
rx.y = 76
rx.Width= 163
doc.body.Children.Add(rx)
rm=
New prt.RenderImage
rm.Height = 38
rm.Width = 34
rm.Image = GetImage(CurRow("照片"))
rm.x= 149.5
rm.y = 36
doc.body.Children.Add(rm)
Next
Doc.Preview() '预览报表