Foxtable(狐表)用户栏目专家坐堂 → [求助]word模板中替换统计数据时,是统计的后台数据,而不是显示的数据,如何修改,请专家指导


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

主题:[求助]word模板中替换统计数据时,是统计的后台数据,而不是显示的数据,如何修改,请专家指导

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


加好友 发短信
等级:五尾狐 帖子:1142 积分:8894 威望:0 精华:0 注册:2012/7/10 9:09:00
[求助]word模板中替换统计数据时,是统计的后台数据,而不是显示的数据,如何修改,请专家指导  发帖心情 Post By:2020/5/20 16:29:00 [显示全部帖子]

问题症结:窗口中用筛选树,进行数据筛选,目的是,当点击筛选树的数据进行选择后,下述代码生成,可是生成的“[总件]”、“[办结]”、“[处理]”不是选择的数据合计,而是整个表的数据合计;为解决这个问题,把窗口中的表设为副表,同时将Tables("案件统计")换成:Tables("案件统计_table1"),可以生成数据,但筛选树不能选择了,点击筛选树节点时,在窗口中的表没反应。这个问题怎么解决?谢谢
Word模板代码如下:
Dim tm As String  = ProjectPath & "Attachments\信访分析报告.doc" '指定模板文件
Dim fl As String = ProjectPath & "Reports\信访分析报告.doc" '指定目标文件
Dim wrt As New WordReport(Tables("案件统计"),tm,fl) '定义一个WordReport
wrt.Replace("[总件]",Tables("案件统计").DataTable.Compute("Sum(合计)")) 
wrt.Replace("[办结]",Tables("案件统计").DataTable.Compute("Sum(办结状态_办结)")) 
wrt.Replace("[处理]",Tables("案件统计").DataTable.Compute("Sum(正在处理案件)")) 
wrt.Build() '生成报表
wrt.Show() '显示报表

筛选树代码:

将窗口的AfterLoad事件设为:

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv
.BuildTree("案件统计""年度|季度|月份")
trv
.Nodes.Insert("显示所有行",0)


将目录树的NodeMouseDoubleClick事件设为:

Dim Filter As String
Dim
 dr As DataRow = e.Node.DataRow '获取生成此节点的行
If
 e.Node.Text <> "显示所有行" Then
    
Select Case e.Node.Level
        Case 0
            Filter = "[年度
] = '" & dr("年度") & "'"
        Case 1
            Filter = "[年度
] = '" & dr("年度") & "' And [季度] = '" & dr("季度") & "'"
        Case 2
            Filter = "[年度
] = '" & dr("年度") & "' And [季度] = '" & dr("季度") & "' And [月份] = '" & dr("月份") & "'"
    End Select

End
 If
Tables
("案件统计").Filter = Filter


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


加好友 发短信
等级:五尾狐 帖子:1142 积分:8894 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2020/5/20 16:45:00 [显示全部帖子]

谢谢,

 回到顶部