以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于数据输入  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=160072)

--  作者:wugang0131
--  发布时间:2021/1/19 14:35:00
--  关于数据输入
想达到如下目的:“会议表中,”如果“缺席人员”列中有名字,则“发言人”列中改名字就不能输入。为此我写了如下代码:

If e.DataCol.Name = "发言人" Then
    If e.DataRow.IsNull("缺席人员")=False Then
        Dim  r As Row = Tables("会议").Current
        For Each s As String In r("缺席人员").split(",")
            Dim pr As DataRow
            pr = DataTables("会议").Find("[发言人] = \'"& s &"\'")
            If e.DataRow("发言人")=pr("发言人")   Then
                e.DataRow("发言人")= e.OldValue
            End If
        Next
    End If
End If

运行下来,可以实现目的,但同时系统总是提示“调用目标异常”。不知问题出在哪里?请各位老师指教,谢谢


--  作者:有点蓝
--  发布时间:2021/1/19 14:39:00
--  
prepareedit事件

If e.Col.Name = "发言人" Then
if e.Row.IsNull("缺席人员")=False then
e.cancel = true
end if
end if

--  作者:wugang0131
--  发布时间:2021/1/19 14:54:00
--  
蓝老师,“缺席人员”列有多个名字,“发言人”列只有一个名字,您的代码好像不能实现我的目的啊
--  作者:有点蓝
--  发布时间:2021/1/19 15:25:00
--  
没看懂举例说明一下
--  作者:wugang0131
--  发布时间:2021/1/19 15:39:00
--  
蓝老师,请指教
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试1.table


--  作者:有点蓝
--  发布时间:2021/1/19 16:02:00
--  
解释一下?
--  作者:wugang0131
--  发布时间:2021/1/19 16:04:00
--  
意思是只要“缺席人员”列出现的名字,“发言人”列就禁止输入,谢谢蓝老师
--  作者:有点蓝
--  发布时间:2021/1/19 16:11:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试1.zip


--  作者:wugang0131
--  发布时间:2021/1/19 16:29:00
--  
谢谢蓝老师,搞定了!