Foxtable(狐表)用户栏目专家坐堂 → 如何实现判断空表执行?


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

主题:如何实现判断空表执行?

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
如何实现判断空表执行?  发帖心情 Post By:2021/6/29 14:35:00 [显示全部帖子]

如何实现判断空表执行?

需求:
如果"表B"为空,"表A"的数据复制到"表B"
如果"表B"不为空,而且,审核为空,提示请审核
如果"表B"不为空,而且,审核不为空,"表B"的数据复制"表C",完成时,提示复制完成后,清空"表B"

下面是思路,请老师,帮完善,谢谢,

如果"表B"为空,"表A"的数据复制到"表B"

Dim Cols1() As String = {"列一","列二","列三"}
Dim Cols2() As String = {"列一","列二","列三"}
For Each dr1 As DataRow In DataTables("表A").Select("[审核] = '已审核'")
    Dim dr2 As DataRow = DataTables("表B").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = dr1(Cols1(i))
    Next
Next

如果"表B"不为空,而且,审核为空,提示请审核
MessageBox.Show("请审核!")

如果"表B"不为空,而且,审核不为空,"表B"的数据复制"表C",完成时,提示复制完成后,清空"表B"

Dim Cols1() As String = {"列一","列二","列三"}
Dim Cols2() As String = {"列一","列二","列三"}
For Each dr1 As DataRow In DataTables("表B").Select("[审核] = '已审核'")
    Dim dr2 As DataRow = DataTables("表C").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = dr1(Cols1(i))
    Next
Next

MessageBox.Show("复制完成!")

DataTables("表B").RemoveFor("")

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2021/6/29 14:46:00 [显示全部帖子]

审核列发现任意一行,为空或不为空,所有的

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2021/6/29 14:47:00 [显示全部帖子]

是要写窗口上,“检测”按键的单击,去实现上面需求

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2021/6/29 15:56:00 [显示全部帖子]

需求:
如果"表B"为空,"表A"的数据复制到"表B"
如果"表B"不为空,而且,审核为空,提示请审核
如果"表B"不为空,而且,审核不为空,"表B"的数据复制"表C",完成时,提示复制完成后,清空"表B"


如果"表B"为空,"表A"的数据复制到"表B",  
If DataTables("表B").DataRows.Count = 0 Then
    Dim Cols1() As String = {"列一","列二","列三"}
Dim Cols2() As String = {"列一","列二","列三"}
For Each dr1 As DataRow In DataTables("表A").Select("[审核] = '已审核'")
    Dim dr2 As DataRow = DataTables("表B").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = dr1(Cols1(i))
    Next
Next

如果"表B"不为空,而且,审核为空,提示请审核

ElseIf DataTables("表B").DataRows(0).IsNull("审核") Then
    MessageBox.Show("请审核!")

如果"表B"不为空,而且,审核不为空,"表B"的数据复制"表C",完成时,提示复制完成后,清空"表B"

ElseIf DataTables("表B").DataRows(0).IsNull("审核"为空) Then

    Dim Cols1() As String = {"列一","列二","列三"}
Dim Cols2() As String = {"列一","列二","列三"}
For Each dr1 As DataRow In DataTables("表B").Select("[审核] = '已审核'")
    Dim dr2 As DataRow = DataTables("表C").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = dr1(Cols1(i))
    Next
Next

MessageBox.Show("复制完成!")

DataTables("表B").RemoveFor("")
Else
    
End If

老师,大致代码上面,第一段代码执行是可以,后面审核为空与不为空有问题

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2021/6/29 16:17:00 [显示全部帖子]



1,如果"表B"不为空,而且,审核不为空,"表B"的数据复制"表C",完成时,提示复制完成后,清空"表B"

ElseIf DataTables("表B").DataRows(0).IsNull("审核"为空) Then,,这个如果"表B"不为空,而且,审核不为空,为会写

 回到顶部