Dim drs As List(Of DataRow)
Dim Result As DialogResult
Result = MessageBox.Show("将删除<季度评优>表的所有数据,是否继续?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
drs = dty.Select("[在职] = 'True' And [职位等级] > 3","部门,职位等级")
dtj.DeleteFor("")
Dim i As Integer
For Each dr As DataRow In drs
dbj.AddNew()
i = Array.Indexof(Y部门,dr("部门"))
dbj.Current("分组") = S分组(i)
dbj.Current("次序") = 次序(i)
dbj.Current("姓名") = dr("姓名")
dbj.Current("级别") = dr("职位等级")
Next
dtj.Save()
i = 1
If i = 1 Then
Vars("kh") ="季度评优"
Dim Builder As New ADOXBuilder
Dim tbl As ADOXTable
Builder.Open()
If DataTables.Contains(Vars("kh")) '如果存在表
For Each dc As DataRow In DataTables(Vars("kh")).DataRows
Dim Name As String = dc("姓名")
If dbj.Cols.Contains(Name) Then
Builder.Tables(Vars("kh")).DeleteColumn(Name) '删除含"姓名"的列
End If
Next
DataTables(Vars("kh")).Save()
For Each dc As DataRow In DataTables(Vars("kh")).Select("","次序,级别")
Dim Name As String = dc("姓名")
Builder.Tables(Vars("kh")).AddColumn(Name ,ADOXType.Integer) '添加(姓名)列
Next
End If
Builder.Close()
'DataTables.load("季度评优")
dbj.Sort = "次序,级别"
dtj.ResumeRedraw()
'Forms("季度评优").ReseumeRedraw() '停止绘制窗口
Syscmd.Project.Open(ProjectFile)
End If
'dtj.ResumeRedraw()
End If
##昨晚可以生成(姓名)列,后来不行??