Foxtable(狐表)用户栏目专家坐堂 → word 子表报表例子


  共有2513人关注过本帖树形打印复制链接

主题:word 子表报表例子

帅哥哟,离线,有人找我吗?
ayiken
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:266 积分:2166 威望:0 精华:0 注册:2014/12/16 12:25:00
word 子表报表例子  发帖心情 Post By:2015/6/11 18:01:00 [只看该作者]

1.子表“上级医师查房记录” 应该是按记录日期的顺序来显示的,但是记录日期排列乱,有时重复   。。。?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:例子.rar

子表“上级医师查房记录”的时候,比较乱,我的子表记录有的3条,有的6条,有的5条,每个病人记录不一样,这个怎样自动调整?


 回到顶部
帅哥哟,离线,有人找我吗?
ayiken
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:266 积分:2166 威望:0 精华:0 注册:2014/12/16 12:25:00
  发帖心情 Post By:2015/6/11 18:03:00 [只看该作者]

“窗口管理”中一个窗口上“打印报表”按钮

 回到顶部
帅哥哟,离线,有人找我吗?
ayiken
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:266 积分:2166 威望:0 精华:0 注册:2014/12/16 12:25:00
  发帖心情 Post By:2015/6/11 18:04:00 [只看该作者]

我所使用的按钮代码是:
Dim tm As String  = ProjectPath & "Attachments\查房记录.doc" '指定模板文件
Dim fl As String = ProjectPath & "Reports\知查房记录.doc" '指定目标文件
Dim wrt As New WordReport(Tables("住院记录"),tm,fl) '定义一个WordReport
wrt.Build() '逐行生成报表
wrt.quit
Dim app As New MSWord.Application
try
    Dim fileName = fl
    Dim doc = app.Documents.Open(fileName)
    doc.Protect (Password:="123456", NoReset:=False, Type:= _
    MsWord.WdProtectionType.wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False)
    app.Documents.save
    app.Visible = True
catch ex As exception
    msgbox(ex.message)
    app.Quit
finally
    
End try

 回到顶部
帅哥哟,离线,有人找我吗?
ayiken
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:266 积分:2166 威望:0 精华:0 注册:2014/12/16 12:25:00
  发帖心情 Post By:2015/6/11 18:19:00 [只看该作者]

1楼例子有小问题,重发了
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:例子(新).rar



 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/11 18:23:00 [只看该作者]

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


 回到顶部
帅哥哟,离线,有人找我吗?
ayiken
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:266 积分:2166 威望:0 精华:0 注册:2014/12/16 12:25:00
  发帖心情 Post By:2015/6/11 22:47:00 [只看该作者]

非常感谢,问题基本上解决了
希望帮忙一下几点问题

Dim tm As String  = ProjectPath & "Attachments\查房记录.doc" '指定模板文件

Dim fl As String = ProjectPath & "Reports\知查房记录.doc" '指定目标文件

Dim wrt As New WordReport(Tables("住院记录"),tm,fl) '定义一个WordReport

For i As Integer = Tables("住院记录").TopPosition To Tables("住院记录").BottomPosition

    Dim r As Row =  Tables("住院记录").Rows(i)

    Dim str As String = ""

    For Each cdr As DataRow In DataTables("上级医师查房记录").Select("住院号 = '" & r("住院号") & "'", "记录日期")

         str &= "姓名:" & cdr("姓名") & chr(13)    

         str &= "记录日期:" & cdr("记录日期") & chr(13)

        str &= "记录内容:" & cdr("记录内容") & chr(13) & chr(13)

    Next

    wrt.ReplaceOne("[子表全部内容]", str)

    wrt.BuildOne(r) '逐行生成报表

Next

wrt.quit

Dim app As New MSWord.Application

try

    Dim fileName = fl

    Dim doc = app.Documents.Open(fileName)

    doc.Protect (Password:="123456", NoReset:=False, Type:= _

    MsWord.WdProtectionType.wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False)

    app.Documents.save

    app.Visible = True

catch ex As exception

    msgbox(ex.message)

    app.Quit

finally

   

End try

我的系统是民文系统,比较特殊,所以一定要指定民文字体,

上面代码中"姓名:" "记录日期: "记录内容:(我标记红色)等字段必须使用HuxKalam Ka Aslia 5号字体,其他内容使用KazakhSoft Asilya 5 字体,这样的话上面代码中这两种字体怎么加?

还有一个重要的问题是我们使用的民文方向和中文正相反,就是我的整个文本从右左写,这种代码帮我加上吧!

我的系统很快完成,都是离不开foxtable老师的指导和帮助,再次感谢您


 回到顶部
帅哥哟,离线,有人找我吗?
ayiken
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:266 积分:2166 威望:0 精华:0 注册:2014/12/16 12:25:00
  发帖心情 Post By:2015/6/11 23:15:00 [只看该作者]

我想加这段代码

e.Form.Controls("TextBox?").basecontrol.RightToLeft = Windows.Forms.RightToLeft.Yes

BaseMainform.Controls("C1Ribbon1").Font = New Font("HuxKalam Ka Aslia ",5)

BaseMainform.Controls("C1Ribbon1").Font = New Font("KazakhSoft Asilya ",5)

 其实不知加在哪个位置,对我来说非常困难


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/12 0:02:00 [只看该作者]

回复7楼

 

BaseMainform.Controls("C1Ribbon1").Font = New Font("HuxKalam Ka Aslia ",5)

BaseMainform.Controls("C1Ribbon1").Font = New Font("KazakhSoft Asilya ",5)

 

写到afteropenproject

 

e.Form.Controls("TextBox?").basecontrol.RightToLeft = Windows.Forms.RightToLeft.Yes

 

写到afterLoad

 


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/12 0:50:00 [只看该作者]

 汗.......

 

 

  

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


 回到顶部
帅哥哟,离线,有人找我吗?
ayiken
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:266 积分:2166 威望:0 精华:0 注册:2014/12/16 12:25:00
  发帖心情 Post By:2015/6/12 8:24:00 [只看该作者]

老师我觉得5楼的代码更合适我的系统,9楼代码限制记录数量
就一个问题没解决
代码中"姓名:" "记录日期: "记录内容:(我标记红色)等字段必须使用HuxKalam Ka Aslia 5号字体
此主题相关图片如下:111.png
按此在新窗口浏览图片

 回到顶部
总数 12 1 2 下一页