Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:[求助]专业报表中求如何能打印多个时间的病程记录。

1楼
pc005637 发表于:2011/9/25 9:30:00

设计了一个项目,目的用于打印病程记录。<br>

"病案打印"表和"病程记录"表利用"病案号"列单向关联。<br>

在专业报表管理器已经设计了一个报表模板,能分别打印各个月末的病程记录。<br>

想要的效果,如果在子表"病案打印.病程记录"中选定了数条记录的话,能同时打印出来。这样可以节省很多时间。<br>

能否实现?谢谢。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:病案打印.table

2楼
狐狸爸爸 发表于:2011/9/25 9:43:00
Dim Doc As New PrintDoc
doc.PageSetting.PaperKind = 9 '设定为A4纸
Doc.PageSetting.RightMargin = 5 '设置右边距
doc.AutoRotate = False '禁止自动旋转打印内容
Doc.PrinterName = "IBM Proprinter X24"
doc.Style.FontSize = 14
Doc.Style.F
Dim rx As prt.RenderText
Dim x As Integer = 0 '定义水平偏移参数
Dim y As Integer = 0 '定义垂直偏移参数
Dim g As Integer = 0 '定义不同月末的垂直偏移参数
Dim CurRow As Row = Tables("病案打印").Current
Dim cnt As Integer
For  i As Integer = Tables("病案打印.病程记录").TopPosition To Tables("病案打印.病程记录").BottomPosition
    Dim CurRow6 As Row = Tables("病案打印.病程记录").Rows(i)
    cnt = cnt + 1
    Select Case CurRow6("记录类型")
        Case "三月末","六月末"
            g = 0
        Case  "四月末","七月末"
            g = 88
        Case  "五月末","八月末"
            g = 177
        Case "一月末"
            g = 132
        Case "二月末"
            g = 176
    End Select
    Dim ra As New prt.RenderArea '定义一个容器
    ra.x = 20 + x
    ra.y = 32 + y * cnt + g
    rx = new prt.RenderText
    rx.Text = CurRow6("记录时间").Date
    rx.Style.Spacing.Bottom = 6
    ra.Children.Add(rx)
   
    rx = new prt.RenderText
    rx.Text = CurRow6("记录正文")
    rx.Style.TextIndent = 10
    rx.Width = 168
    rx.Style.LineSpacing = 220
    rx.Style.WordWrap = True
    rx.Style.Spacing.Bottom = 6
    ra.Children.Add(rx)
    doc.body.Children.Add(ra)
Next
doc.Preview()
3楼
pc005637 发表于:2011/9/25 11:35:00
非常感谢!
共3 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 3 queries.