Foxtable(狐表)用户栏目专家坐堂 → 查询表列次序的问题


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

主题:查询表列次序的问题

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


加好友 发短信
等级:幼狐 帖子:76 积分:735 威望:0 精华:0 注册:2020/12/20 14:02:00
查询表列次序的问题  发帖心情 Post By:2022/6/18 11:15:00 [只看该作者]

Dim d As Date = e.Form.Controls("DateTimePicker1").value
    Dim b As New CrossTableBuilder("统计表1",DataTables("录入保险明细"))
    b.Filter ="[签单日期] = #" & d & "#"
    b.HGroups.AddDef("承保公司") '添加客户列用于水平分组
    b.HGroups.AddDef("投保性质") '添加客户列用于水平分组
    b.VGroups.AddDef("险种名称") '添加产品列用于垂直分组
    b.Totals.AddDef("数量") '添加数量列用于统计
    b.Totals.AddDef("保费金额") '添加数量列用于统计
    b.Totals.AddDef("保险利润") '添加数量列用于统计
    b.VerticalTotal= True '垂直汇总
    b.HorizontalTotal = True '水平汇总
    b.Decimals = 2
    Tables("查询预览窗口_Table1").DataSource = b.builddatasource
    For Each dc As DataCol In DataTables("查询预览窗口_Table1").datacols
        If dc.caption Like "*保*" Then
            dc.SetFormat("#,###.00")
        End If
    Next
    Tables("查询预览窗口_Table1").AutoSizeCols() '自动设置所有列的宽度


请问老师:以上代码的列为“险种名称”,例如:列名称分别为“交强险,商业险,驾意险,人员险”,但是由于每次查询的时间周期不同,因此,险种也不同,例如查询1月份数据,险种只有“交强险,商业险”,查询2月份数据,险种只有“交强险,驾意险”,如此,我想对列次序进行统一,按照1-交强险,2-商业险,3-驾意险,4-人员险的次序,进行陈列,代码该如何写,您受累给指导下


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111678 积分:568520 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/6/18 11:47:00 [只看该作者]

dim lst as new list(of col)
for i as integer = Tables("查询预览窗口_Table1").cols.count - 1 to 2 step -1
if Tables("查询预览窗口_Table1").cols(i).name like "险种名称_*"
lst.add(Tables("查询预览窗口_Table1").cols(i))
end if
next

for each c as col in lst
select case c.caption
case "交强险"
c.move(2)
case "商业险"
c.move(3)
case "驾意险"
c.move(4)
case "人员险"
c.move(5)
next

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


加好友 发短信
等级:幼狐 帖子:76 积分:735 威望:0 精华:0 注册:2020/12/20 14:02:00
  发帖心情 Post By:2022/6/18 18:48:00 [只看该作者]

谢谢老师


 回到顶部