以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 集合转换为数组查找赋值报错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=190263) |
-- 作者:yifan3429 -- 发布时间:2024/1/27 3:50:00 -- 集合转换为数组查找赋值报错 Dim lst As List(Of String) Dim Arys() As String lst = Connections("2022").GetTableNames Arys = Lst.ToArray() \'将集合转换为数组 For Each nm As String In lst \' Output.Show(nm) Dim dr As DataRow dr = DataTables("系统_菜单").sqlFind("主表 = \'" & nm & " \' ") \'找出编号为03的产品 If dr Is Nothing Then \'如果没找到的话 DataTables("系统_菜单").AddNew dr("主表") = nm dr("主菜单") = "0.未分配" statusBar.Message1 = nm & "正在创建数据,请稍后..." Application.DoEvents() End If Next
[此贴子已经被作者于2024/1/27 3:50:36编辑过]
|
-- 作者:有点蓝 -- 发布时间:2024/1/27 8:54:00 -- 报什么错?上面代码里数组根本没有任何用处 |
-- 作者:yifan3429 -- 发布时间:2024/1/27 9:57:00 -- 不能这样用吗 怎么把全部表名加到表里 |
-- 作者:有点蓝 -- 发布时间:2024/1/27 10:01:00 -- 可以用,但是数组根本没用到,直接使用集合就够了。 另外麻烦以后提问题,报错的直接把错误的具体内容发上来,没有必要等别人问了再发,不同的错误有不同的解决方法。
|
-- 作者:yifan3429 -- 发布时间:2024/1/27 10:25:00 -- 我这要怎么实现 还要请教老师 |
-- 作者:有点蓝 -- 发布时间:2024/1/27 10:27:00 -- 报什么错?!!!!!!!!!!!! |
-- 作者:yifan3429 -- 发布时间:2024/1/27 10:35:00 -- --------------------------- 版本:2022.8.18.1 --------------------------- 代码执行出错,错误信息: System.NullReferenceException: 未将对象引用设置到对象的实例。 在 UserCode.Test() --------------------------- 确定 --------------------------- Dim dr As DataRow dr = DataTables("系统_菜单").sqlFind("主表 = \'" & nm & " \' ") \'找出编号为03的产品 If dr Is Nothing Then \'如果没找到的话 DataTables("系统_菜单").AddNew dr("主表") = nm dr("主菜单") = "0.未分配" 这段代码要怎么处理 [此贴子已经被作者于2024/1/27 10:35:54编辑过]
|
-- 作者:有点蓝 -- 发布时间:2024/1/27 10:40:00 -- If dr Is Nothing Then \'如果没找到的话 dr = DataTables("系统_菜单").AddNew dr("主表") = nm
|
-- 作者:yifan3429 -- 发布时间:2024/1/27 12:38:00 -- Dim lst As List(Of String) Dim Arys() As String lst = Connections("2022").GetTableNames Arys = Lst.ToArray() \'将集合转换为数组 For Each nm As String In lst \' Output.Show(nm) Dim dr As DataRow If dr Is Nothing Then \'如果没找到的话 dr = DataTables("系统_存档地址").AddNew dr("主表") = nm dr("菜单") = "0.未分配" statusBar.Message1 = nm & "正在创建数据,请稍后..." Application.DoEvents() End If Next 只能添加一条不能进行对比和添加全部的表 而且主表名存在的话也会再次添加 希望完成的功能是 所有表在系统_存档地址 表中对比一次 如果存在就跳过 不催在就新增补齐
[此贴子已经被作者于2024/1/27 12:41:44编辑过]
|
-- 作者:有点蓝 -- 发布时间:2024/1/27 14:11:00 -- 那就不要去掉sqlFind啊,自己写的什么代码都看不懂么 |