此主题相关图片如下:001.jpg
标记了红色代码部份...我想两个日期在同一行,但一个左对齐,一个右对齐,怎么改?暂时只会用空格来代替.....Dim doc As New PrintDoc
Dim rt As Prt.RenderTable
Dim rx,ry As prt.RenderText
Dim Rq As String= Forms("一日清单").Controls("DateTimePicker1").text
Dim tbl As Table = Tables("一日清单")
Dim Rows As List(Of DataRow)
Dim Regions As List(Of String) = tbl.DataTable.GetUniqueValues("","患者ID")
doc.Pagesetting.LandScape = false
For Each Region As String In Regions
rx = New prt.RenderText
rx.Style.FontSize = 10
'rx.Style.FontBold = True
rx.Style.Spacing.Bottom = 2
rx.Text = "患者ID: " & Region
doc.Body.Children.Add(rx)
ry = New prt.RenderText
ry.Style.FontSize = 8
'ry.Style.FontBold = True
ry.Style.Spacing.Bottom = 2
ry.Text =
"清单日期: " & Rq & " 打印日期:" & date.today
doc.Body.Children.Add(ry)
rt = New prt.RenderTable
rt.Style.Font = Tables("一日清单").Font
rt.Style.TextAlignVert = prt.AlignVertEnum.Center
rt.Style.GridLines.All = New prt.LineDef(0.3,Color.LightGray)
rt.Style.Spacing.Bottom = 5
rt.CellStyle.Spacing.All = 1
rt.Style.Font = tbl.Font
Rows = tbl.Datatable.Select("[患者ID] = '" & Region & "'")
For c As integer = 0 To tbl.Cols.Count - 1
rt.Cells(0,c).Text = tbl.Cols(c).Name
rt.Cols(c).Width = tbl.Cols(c).PrintWidth
For r As integer = 0 To Rows.Count -1
rt.Cells(r + 1, c).Text = rows(r)(tbl.Cols(c).Name)
Next
Next
rt.RowGroups(0,1).Header = prt.TableHeaderEnum.All
doc.Body.Children.Add(rt)
Next
doc.preview()
[此贴子已经被作者于2008-12-22 10:42:03编辑过]
用表格...设二列,清单日期写在第一列,打印日期写在第二列,然后设置对齐方式.
又钻牛角尖了....没想到用表格....
另外问个,在每个表格结尾加上一个小计列的合计值,怎么写代码比较好?
[此贴子已经被作者于2008-12-20 18:40:28编辑过]
看楼主的图,应是属于分组统计,得到结果,然后分别填在需要的位置.(或者在帮助中找找答案) 思路应有不少吧...
或者应要发文件上来了...
g = New SubtotalGroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "患者ID"
g.TotalOn = "小计"
g.Caption = "{0} 小计"
t.SubtotalGroups.Add(g)分组统计代码是这样...但用在专业报表里就不会了....
呵,我在foxtable中找个文件来试试.....
[此贴子已经被作者于2008-12-20 19:55:11编辑过]
是合计每个患者的小计? 如果是,在主表中加一列:患者小计列(这个计算也简单),报表中的引用位置放在 :清单日期/打印日期 这行....
不知这样行不行了?
[此贴子已经被作者于2008-12-20 21:07:54编辑过]
Excel报表里有个方便的,不知道能否移植过来...
此主题相关图片如下:001.jpg
是5楼的情况(如果是,也不复杂,因为平时录单时就做好了计算) 还是你要做每页统计吗?
以下是引用gdtgl在2008-12-20 21:05:00的发言:是合计每个患者的小计? 如果是,在主表中加一列:患者小计列(这个计算也简单),报表中的引用位置放在 :清单日期/打印日期 这行....
不知这样行不行了?
[此贴子已经被作者于2008-12-20 21:07:54编辑过]
这个好象不行吧.主表本身就有小计列,只是想把不同ID的小计列分别合计....