Dim g As New CrossTableBuilder("统计表2", DataTables("鼎城区狂犬病暴露门诊登记表"))
g.HGroups.AddDef("县区")
g.VGroups.AddDef("暴露分级", "暴露分级_{0}") '统计生成的列根据输入的值不同 是动态的,有时可能只有一列,有时可能有四列.
g.Totals.AddDef("暴露分级", AggregateEnum.Count, "暴露分级")
g.Build()
MainTable = Tables("统计表2")
Dim dict As new Dictionary(of String,Integer)
dict.Add("Ⅰ",-1)
dict.Add("Ⅱ",-1)
dict.Add("Ⅲ",-1)
dict.Add("Ⅳ",-1)
For Each c As Col In Tables("统计表2").Cols
If c.Name.StartsWith("暴露分级_") Then
dict(c.Caption.Split("_")(1)) = c.Index
End If
Next
For Each key As String In dict.Keys
If dict(key) = -1 Then
DataTables("统计表2").DataCols.Add("暴露分级_" & key,Gettype(Integer))
End If
Next
Dim idx As Integer = 1
For Each c As Col In Tables("统计表2").Cols
Select Case c.Caption
Case "暴露分级_Ⅰ"
c.Move(1)
Case "暴露分级_Ⅱ"
c.Move(2)
Case "暴露分级_Ⅲ"
c.Move(3)
Case "暴露分级_Ⅳ"
c.Move(4)
End Select
Next