Foxtable(狐表)用户栏目专家坐堂 → [求助]统计表的疑问,请大侠帮助


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

主题:[求助]统计表的疑问,请大侠帮助

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/25 9:17:00 [显示全部帖子]

 只能够在生产报表以后再对表头进行处理了,楼主,代码如下。

Dim g As New CrossTableBuilder("统计表", DataTables("产品表"))
g.HGroups.AddDef("大类别")
g.HGroups.AddDef("小类别")
g.VGroups.AddDef("进货日期", DateGroupEnum.Year, "{0}年")
g.VGroups.AddDef("进货日期", "{0}月")
g.Totals.AddDef("进价小计", "进价小计")
g.Totals.AddDef("售价小计", "售价小计")
g.Totals.AddDef("数量", "数量")
g.Build()

With DataTables("统计表")
    For Each dc As DataCol In .DataCols
        If dc.Caption Like "####年_*" Then
            dc.Caption = dc.Caption.SubString(0, 5) & dc.Caption.SubString(6)
        End If
    Next
    .BuildHeader()
End With

MainTable = Tables("统计表")

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/25 11:45:00 [显示全部帖子]

 统计,处理,再设置。

Dim g As New CrossTableBuilder("统计表", DataTables("产品表"))
g.HGroups.AddDef("大类别")
g.HGroups.AddDef("小类别")
g.VGroups.AddDef("进货日期", DateGroupEnum.Year, "{0}年")
g.VGroups.AddDef("进货日期", "{0}月")
g.VGroups.AddDef("进货日期", "{0}日")
g.Totals.AddDef("进价小计", "进价小计")
g.Totals.AddDef("售价小计", "售价小计")
g.Totals.AddDef("数量", "数量")
g.Build()

With DataTables("统计表")
    For Each dc As DataCol In .DataCols
        If dc.Caption Like "####年_*" Then
            Dim idx As Integer = dc.Caption.IndexOf("月")
            dc.Caption = dc.Caption.SubString(0, 5) & dc.Caption.SubString(6, idx-5) & dc.Caption.SubString(idx+2)
        End If
    Next
    .BuildHeader()
End With

With Tables("统计表")
    .MergeMode = MergeModeEnum.Standard
    .MergeCols.Add("大类别")
    .MergeCols.Add("小类别")
    .AllowMerge = True
End With

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/26 9:31:00 [显示全部帖子]

 呵呵,是汇总代码写错了。

Dim g As New CrossTableBuilder("统计表", DataTables("产品表"))
g.HGroups.AddDef("大类别")
g.HGroups.AddDef("小类别")
g.VGroups.AddDef("进货日期", DateGroupEnum.Year, "{0}年")
g.VGroups.AddDef("进货日期", "{0}月")
g.VGroups.AddDef("进货日期", DateGroupEnum.Day, "{0}日")
g.Totals.AddDef("进价小计", "进价小计")
g.Totals.AddDef("售价小计", "售价小计")
g.Totals.AddDef("数量", "数量")
g.Build()

With DataTables("统计表")
    For Each dc As DataCol In .DataCols
        If dc.Caption Like "####年_*" Then
            Dim idx As Integer = dc.Caption.IndexOf("月")
            dc.Caption = dc.Caption.SubString(0, 5) & dc.Caption.SubString(6, idx-5) & dc.Caption.SubString(idx+2)
        End If
    Next
    .BuildHeader()
End With

With Tables("统计表")
    .MergeMode = MergeModeEnum.Standard
    .MergeCols.Add("大类别")
    .MergeCols.Add("小类别")
    .AllowMerge = True
End With
[此贴子已经被作者于2012-10-26 9:32:00编辑过]

 回到顶部