Foxtable(狐表)用户栏目专家坐堂 → 菜单代码


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

主题:菜单代码

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


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
菜单代码  发帖心情 Post By:2015/3/31 9:31:00 [只看该作者]

老师,下面是菜单里的“删除行”按钮的代码,结果是,它会删除所有表中“XZH”为TRUE的行,而我的要求是只要删除当前表所选择的行。

If user.NAME = "管理员" Then
  For Each r As Row In Tables("fkb2").Rows
    If r("XZH") = True Then
      Syscmd.Row.Delete()
    End If
   Next

ElseIf User.IsRole("总工办") Then
   For Each r As Row In Tables("XMJDB").Rows
   MainTable=Tables("XMJDB")
   If r("XZH") = True Then
    If Tables("xmjdb").current.Isnull("BMSH") = False Then
        MessageBox.Show("数据已经审核通过,你不能删除!.")
    Else
       Syscmd.Row.Delete()
    End If
   End If
   Next

END IF

 

然后改成下列代码后就提示错误,请老师指导,谢谢??

If user.NAME = "管理员" Then
  For Each r As Row In CurrentTable("fkb2").Rows
    If r("XZH") = True Then
      Syscmd.Row.Delete()
    End If
   Next

ElseIf User.IsRole("总工办") Then
   For Each r As Row In CurrentTable("XMJDB").Rows
   MainTable=Tables("XMJDB")
   If r("XZH") = True Then
    If Tables("xmjdb").current.Isnull("BMSH") = False Then
        MessageBox.Show("数据已经审核通过,你不能删除!.")
    Else
       Syscmd.Row.Delete()
    End If
   End If
   Next

END IF

是不是要将CurrentTable("XMJDB").Rows改成CurrentTable.Rows呢??


[此贴子已经被作者于2015/3/31 9:33:09编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/3/31 9:33:00 [只看该作者]

If r("XZH") = True  ' 通过这个逻辑列选择?


If r("XZH") = True Then
      r.Delete()
    End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/31 9:34:00 [只看该作者]

If user.NAME = "管理员" Then
    For Each r As Row In CurrentTable.Rows
        If r("XZH") = True Then
            Syscmd.Row.Delete()
        End If
    Next
   
ElseIf User.IsRole("总工办") Then
    For Each r As Row In CurrentTable.Rows
        If r("XZH") = True Then
            If CurrentTable.current.Isnull("BMSH") = False Then
                MessageBox.Show("数据已经审核通过,你不能删除!.")
            Else
                Syscmd.Row.Delete()
            End If
        End If
    Next
End If

 


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


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2015/3/31 9:35:00 [只看该作者]

以下是引用Bin在2015/3/31 9:33:00的发言:
If r("XZH") = True  ' 通过这个逻辑列选择?


If r("XZH") = True Then
      r.Delete()
    End If

但是,又要判断用户角色和表来给权限,比如某些表某些角色是没有删除权限的。。。

[此贴子已经被作者于2015/3/31 9:35:29编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/31 9:36:00 [只看该作者]

 看3楼,楼主你一点进步都没有

 回到顶部