afterload:
Dim school As String = User.Group
If school IsNot Nothing
e.Form.Controls("label1").text = school & "学生基本信息统计"
Else
e.Form.Controls("label1").text = "学生基本信息统计"
End If
Dim lbl As WinForm.Label = e.Form.Controls("Label1")
If e.Form.width > lbl.Width
lbl.Left = (e.Form.width - lbl.Width ) / 2
End If
DataTables("学生统计").loadfilter = "单位全称 = '"& school & "'"
DataTables("学生统计").load
Tables("学生人数统计_table2").sort = "班级"
Tables("学生人数统计_table2").Cols("在读人数").GrandTotal = True '指定要合计的列
Tables("学生人数统计_table2").Cols("男").GrandTotal = True
Tables("学生人数统计_table2").Cols("女").GrandTotal = True
Tables("学生人数统计_table2").Cols("户口性质_农业户口").GrandTotal = True
Tables("学生人数统计_table2").Cols("户口性质_非农业户口").GrandTotal = True
Tables("学生人数统计_table2").Cols("无身份证").GrandTotal = True
Tables("学生人数统计_table2").Cols("无学籍号").GrandTotal = True
Tables("学生人数统计_table2").Cols("残疾").GrandTotal = True
Tables("学生人数统计_table2").Cols("走读").GrandTotal = True
Tables("学生人数统计_table2").Cols("住读").GrandTotal = True
Tables("学生人数统计_table2").GrandTotal = True '显示合计模式
刷新按键:
Dim school As String = User.Group
Tables("学生统计").sort = "班级"
Dim Vals As List(of String())
Dim drf As DataRow
Vals = DataTables("学生信息").sqlGetValues("学校名称|班级","学校名称 = '" & school & "'")
For i As Integer = 0 To Vals.Count - 1
drf = DataTables("学生统计").SQLFind("单位全称 = '" & vals(i)(0) & "' and 班级 = '" & vals(i)(1) &"'" )
If drf Is Nothing
Dim dr As DataRow = DataTables("学生统计").AddNew()
dr("单位全称") = Vals(i)(0)
dr("班级") = Vals(i)(1)
DataTables("学生统计").save()
End If
Next
DataTables("学生统计").DataCols("单位全称").RaiseDataColChanged()
DataTables("学生统计").save()
老师,上面两个代码是用于窗口中统计学生信息表中的数据,但效率太低了,请示帮用sql语句实现上面统计怎样写