Foxtable(狐表)用户栏目专家坐堂 → 如何解决删除多条记录时重复提示?


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

主题:如何解决删除多条记录时重复提示?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/28 16:25:00 [显示全部帖子]

If CurrentTable.Current("YNPay") OrElse CurrentTable.Current("YNKP") Then
    MessageBox.Show("已付款或已开piao记录不能删除!", "提示")
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/28 16:55:00 [显示全部帖子]


If CurrentTable.Current("YNPay") OrElse CurrentTable.Current("YNKP") Then
    MessageBox.Show("已付款或已开piao记录不能删除!", "提示")
    Return
End If


If Tables("Order").Compute("count(BBCheck)", "BBCheck = true") > 0 Then
    If MessageBox.Show("是否删除选中记录?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes
        DataTables("Order").DeleteFor("BBCheck=true")
    End If
Else
    Syscmd.Row.Delete()
End If
 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/28 17:07:00 [显示全部帖子]

Dim del As Boolean=True

With CurrentTable
    For i As Integer = .TopPosition To .BottomPosition
        If .Rows(i)("YNPay") OrElse .Rows(i)("YNKP") Then
            del=False
            Exit For
        End If
    Next
End With
If del=False Then
    MessageBox.Show("已付款或已开piao记录不能删除!", "提示")
    Return
End If

If Tables("Order").Compute("count(BBCheck)", "BBCheck = true") > 0 Then
    If MessageBox.Show("是否删除选中记录?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes
        DataTables("Order").DeleteFor("BBCheck=true")
    End If
Else
    Syscmd.Row.Delete()
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/28 17:32:00 [显示全部帖子]

以下是引用wh420在2015-1-28 17:17:00的发言:
以上条件满足,但如果有选中的逻辑列BBCheck = true") > 0,同样也会被删除。

 

不明白你什么意思,具体什么逻辑。

 

这句去掉 Syscmd.Row.Delete()


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/29 9:05:00 [显示全部帖子]

 

If CurrentTable.Compute("count(BBCheck)", "BBCheck = true") > 0 Then
    If MessageBox.Show("是否删除选中记录?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes
        DataTables("Order").DeleteFor("BBCheck=true")
        Dim del As Boolean=True
        With CurrentTable
            For Each r As DataRow In .DataTable.Select("BBCheck = True")
                If r("YNPay") OrElse r("YNKP") Then
                    del=False
                    Exit For
                End If
            Next
        End With
       
        If del=False Then
            MessageBox.Show("已付款或已开piao记录不能删除!", "提示")
        End If
       
    End If
Else
    Dim del As Boolean=True
   
    With CurrentTable
        For i As Integer = .TopPosition To .BottomPosition
            If .Rows(i)("YNPay") OrElse .Rows(i)("YNKP") Then
                del=False
                Exit For
            End If
        Next
    End With
    If del=False Then
        MessageBox.Show("已付款或已开piao记录不能删除!", "提示")
    End If
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/29 10:23:00 [显示全部帖子]

 

If CurrentTable.Compute("count(BBCheck)", "BBCheck = true") > 0 Then
    If MessageBox.Show("是否删除选中记录?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes
        CurrentTable.DataTable.DeleteFor("BBCheck = true and YNKP = false")
        Dim del As Boolean=True
        With CurrentTable
            For Each r As DataRow In .DataTable.Select("BBCheck = True")
                If r("YNKP") Then
                    del=False
                    Exit For
                End If
            Next
        End With
       
        If del=False Then
            MessageBox.Show("已付款或已开piao记录不能删除!", "提示")
        End If
       
    End If
Else
    Dim del As Boolean=True
   
    With CurrentTable
        For i As Integer = .BottomPosition To .TopPosition Step -1
            If .Rows(i)("YNKP") Then
                del=False
            Else
                .Rows(i).Delete
            End If
        Next
    End With
    If del=False Then
        MessageBox.Show("已付款或已开piao记录不能删除!", "提示")
    End If
End If

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/29 14:25:00 [显示全部帖子]

 不可能啊,测试没问题,请认真测试

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/29 14:51:00 [显示全部帖子]

If MessageBox.Show("是否删除选中记录?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes
    If CurrentTable.Compute("count(BBCheck)", "BBCheck = true") > 0 Then
        CurrentTable.DataTable.DeleteFor("BBCheck = true and YNKP = false")
        Dim del As Boolean=True
        With CurrentTable
            For Each r As DataRow In .DataTable.Select("BBCheck = True")
                If r("YNKP") Then
                    del=False
                    Exit For
                End If
            Next
        End With
       
        If del=False Then
            MessageBox.Show("已付款或已开piao记录不能删除!", "提示")
        End If
       
    Else
        Dim del As Boolean=True
       
        With CurrentTable
            For i As Integer = .BottomPosition To .TopPosition Step -1
                If .Rows(i)("YNKP") Then
                    del=False
                Else
                    .Rows(i).Delete
                End If
            Next
        End With
        If del=False Then
            MessageBox.Show("已付款或已开piao记录不能删除!", "提示")
        End If
    End If
End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/29 15:56:00 [显示全部帖子]

  CurrentTable.DataTable.ReplaceFor("YNKP", True, "BBCheck = true")

 回到顶部