明白了。
这是我在BeforeLoadOuterTable事件中的代码
Dim dt As DataTable
Dim n As Integer
Dim cmd As new sqlcommand
cmd.C
cmd.CommandText = "s elect distinct 用户名,上分列名 FROM {授权表} WHERE 用户名 = N'" & user.name & "'"
dt = cmd.ExecuteReader
'output.show(user.name)
'output.show(dt.DataRows.Count)
Dim str As String
str = dt.DataRows(0)("上分列名")
'output.show(str)
If e.DataTableName = "学生成绩表" Then
e.S electString = "S elect [_Identify],[检测号]," & str & " From {学生成绩表} where substring([检测号],1,1) = '2'"
End If
运行后出错。
![dvubb 图片点击可在新窗口打开查看](skins/default/filetype/jpg.gif)
此主题相关图片如下:1.jpg
![dvubb 图片点击可在新窗口打开查看](UploadFile/2021-12/2021121922132775758.jpg)
![dvubb 图片点击可在新窗口打开查看](skins/default/filetype/jpg.gif)
此主题相关图片如下:2.jpg
![dvubb 图片点击可在新窗口打开查看](UploadFile/2021-12/2021121922134977561.jpg)
这里出错的原因是:这个事件发生时,datatable还没有形成,故不能引用数据源吗?