Foxtable(狐表)用户栏目专家坐堂 → 系统数据初始化


  共有3716人关注过本帖树形打印复制链接

主题:系统数据初始化

帅哥哟,离线,有人找我吗?
outcat
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
系统数据初始化  发帖心情 Post By:2020/8/21 21:32:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20200821211552.jpg
图片点击可在新窗口打开查看


系统数据初始化功能

源代码 
Dim str As String
str ="一旦初始化,数据将全部删除,而且不再恢复,请谨慎操作,或者先将本数据库备份!不需要初始化的不要勾选就可了."
Dim Result As DialogResult
Result = MessageBox.Show(str, "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
    Dim r1 As Row = Tables("初始化_Table1").Current
    If r1.Checked = True Then
        
        If r1("功能模块") = "员工信息"
            DataTables("部门信息表").DataRows.Clear
            DataTables("学历表").DataRows.Clear
            DataTables("职务表").DataRows.Clear
            DataTables("员工信息表").DataRows.Clear
        End If
    End If
End If 

现在我想动态的查找 比如还是选中的  员工信息,删除上面这个表 ,改成下面这个,通过查找系统数据表,找到这个表,可是这块该怎么调用呢,搞不明白了,请老师赐教
Dim str As String
str ="一旦初始化,数据将全部删除,而且不再恢复,请谨慎操作,或者先将本数据库备份!不需要初始化的不要勾选就可了."
Dim Result As DialogResult
Result = MessageBox.Show(str, "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
    Dim r1 As Row = Tables("初始化_Table1").Current
    If r1.Checked = True Then
        
        Dim dr As DataRow
        dr = DataTables("系统数据表").SQLFind("二级分类 = '" & r1("功能模块") & "'") 

        If dr IsNot Nothing Then
            dr("表名").DataRows.Clear
            
            'DataTables("部门信息表").DataRows.Clear
            'DataTables("学历表").DataRows.Clear
            'DataTables("职务表").DataRows.Clear
            'DataTables("员工信息表").DataRows.Clear
        End If
    End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:113480 积分:577889 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/22 9:14:00 [只看该作者]

DataTables(dr("表名")).DataRows.Clear

 回到顶部
帅哥哟,离线,有人找我吗?
outcat
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
  发帖心情 Post By:2020/8/23 18:06:00 [只看该作者]

 
For Each dr As Row In Tables("初始化_Table1").GetCheckedRows
            For Each nm As DataRow In DataTables("系统数据表").DataRows
                If DataTables("系统数据表").sqlFind("二级分类 = " & dr("功能模块") ) Is Nothing Then

                    DataTables(nm("表名")).DataRows.Clear
                End If
            Next
        Next

老师,给看一下,我这是要 勾选了那个功能模块,然后选择 对应功能模块下的表,结果现在是不起作用, 全部表都删除了

 回到顶部
帅哥哟,离线,有人找我吗?
outcat
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
  发帖心情 Post By:2020/8/23 18:29:00 [只看该作者]

 If DataTables("系统数据表").sqlFind("二级分类 = " & dr("功能模块") ) Is Nothing Then  这句写错了。我呢改成Isnot nothing 后,结果该分类下的一个表数据也删除不了了
,还是得请老师赐教

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:113480 积分:577889 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/23 20:43:00 [只看该作者]

相关表格数据截图看看

For Each dr As Row In Tables("初始化_Table1").GetCheckedRows
                If DataTables("系统数据表").sqlFind("二级分类 = " & dr("功能模块") ) Is Nothing Then
                    DataTables(dr("表名")).DataRows.Clear
                End If
        Next

 回到顶部
帅哥哟,离线,有人找我吗?
outcat
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
  发帖心情 Post By:2020/8/24 0:25:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看

窗体这个表(二级分类表) 是通过 sql语句 加载的,想要比如勾选了 员工信息、商品信息,那么就从第二张图 ,系统数据数据表  找到 勾选的 二级分类下,包含的表名依次清空数据,现在呢, 现在要么   数据表全清,要么一个也不清,搞不明白了,请教老师

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:113480 积分:577889 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/24 8:41:00 [只看该作者]

For Each dr As Row In Tables("初始化_Table1").GetCheckedRows
            For Each nm As DataRow In DataTables("系统数据表").sqlselect("二级分类 = " & dr("功能模块") )
                    DataTables(nm("表名")).DataRows.Clear
            Next
        Next

 回到顶部
帅哥哟,离线,有人找我吗?
outcat
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:470 积分:3641 威望:0 精华:0 注册:2017/11/5 14:47:00
  发帖心情 Post By:2020/8/24 9:37:00 [只看该作者]

老师这样是一个表也不执行


下面我改成这样,然后看取得表名,结果是把所有表都清了
    For Each dr As Row In Tables("初始化_Table1").GetCheckedRows
        MessageBox.Show(dr("二级分类"))
          For Each nm As DataRow In DataTables("系统数据表").DataRows

        If DataTables("系统数据表").sqlselect("二级分类 = '" & dr("二级分类") & "'" ) IsNot Nothing Then
            
            MessageBox.Show(nm("表名"))
            DataTables(nm("表名")).DataRows.Clear
        End If
Next
    Next

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:113480 积分:577889 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/24 10:17:00 [只看该作者]

For Each dr As Row In Tables("初始化_Table1").GetCheckedRows
            For Each nm As DataRow In DataTables("系统数据表").sqlselect("二级分类 = '" & dr("二级分类") & "'")
                    DataTables(nm("表名")).DataRows.Clear
            Next
        Next

 回到顶部