以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何判断表达式A列已经是其他表达式的一部分了 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=171079) |
||||
-- 作者:飘过的巨蟹座 -- 发布时间:2021/8/17 0:47:00 -- 如何判断表达式A列已经是其他表达式的一部分了 如题 |
||||
-- 作者:有点蓝 -- 发布时间:2021/8/17 8:34:00 -- if DataTables("订单").DataCols("金额").Expression like "*A列*" then [此贴子已经被作者于2021/8/17 8:33:47编辑过]
|
||||
-- 作者:飘过的巨蟹座 -- 发布时间:2021/8/17 16:06:00 -- Dim t As Table = Tables("表A") Dim c As Col = t.Cols(t.ColSel) If DataTables("表A").DataCols(c.name).Expression > "" Then \'是表达式列 For Each d As Col In Tables("表A").cols If DataTables("表A").DataCols(d.name).Expression Like c.name Then MessageBox.Show("本列" & c.name & "已在" & d.name & "中引用,禁止删除") Else MessageBox.Show(d.name & "可以删除") End If Next Else MessageBox.Show(c.name & "这是系统列,禁止删除") End If 是哪里除了问题,青色字段没有显示出来
[此贴子已经被作者于2021/8/17 16:09:11编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2021/8/17 16:11:00 -- If DataTables("表A").DataCols(d.name).Expression Like "*" & c.name & "*" Then |
||||
-- 作者:飘过的巨蟹座 -- 发布时间:2021/8/17 16:25:00 -- 蓝老师,好像我的逻辑哪里错了,她会把所有列提示一遍,我是想如果被其他列引用就禁止删除,否则就删除,能帮我看下吗? |
||||
-- 作者:有点蓝 -- 发布时间:2021/8/17 16:52:00 -- …… If DataTables("表A").DataCols(d.name).Expression Like "*" & c.name & "*" Then MessageBox.Show("本列" & c.name & "已在" & d.name & "中引用,禁止删除") exit for Else ……
|
||||
-- 作者:飘过的巨蟹座 -- 发布时间:2021/8/17 18:02:00 --
删除还是不对哦,还是提示一圈
[此贴子已经被作者于2021/8/17 18:02:01编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2021/8/17 20:14:00 --
|
||||
-- 作者:飘过的巨蟹座 -- 发布时间:2021/8/17 21:08:00 -- 蓝老师,不对啊,正常第二列和B列,是不能删除的,因为我在C列函数里面引用了,但是现在提示都是错的,B列的提示是不能删除,但是原因是第一列引用了,正确的提示应该是C列引用了,B列也是被C列引用了,但是提示可以删除,C列没有被任何列引用,但是提示已经被第二列引用了,不能删除,正确的是可以删除 |
||||
-- 作者:有点蓝 -- 发布时间:2021/8/17 21:16:00 --
|