Foxtable(狐表)用户栏目专家坐堂 → [原创]代码问题


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

主题:[原创]代码问题

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


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

回复19楼
是的,因为建立了关联,A表的逻辑列值根据在B表的查找与A表JHBH列值相同的行,如果找到相同的值,则为TRUE,如果没有,则为FALSE
[此贴子已经被作者于2014-8-7 16:08:24编辑过]

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


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

老师,我的表就差两个地方了,一个就是A表的逻辑列N的值根据B表是否存在相同列值行的情况赋值,还有就是禁止编辑的单元格光标不能移到相关列上,请老师友情支持一下啊??

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


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

以下是引用爱相随在2014-8-7 16:20:00的发言:
老师,我的表就差两个地方了,一个就是A表的逻辑列N的值根据B表是否存在相同列值行的情况赋值,还有就是禁止编辑的单元格光标不能移到相关列上,请老师友情支持一下啊??

 

看19楼,20楼,不会做,就请上传例子。


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


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

那请请老师代劳一下:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工程项目管理台账.table



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


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

说明,上传的例子中:
1、资金计划表里,申请单位财务、审核部门总工办、审核部门财务部,如果审核意见为空,则不允许审核,如果已经审核,则不再允许编辑意见列和金额列,除非取消审核;
2、如果资金计划表已经全部审核,则可以生成资金申请表,有条件判断:如果是第一次生成资金申请表,在生成之前逻辑列的值是FALSE,在资计划表里找不到对应的JHDB的行。如果生成之后,在资金申请表里能找到JHBH的行,资金计划表里的逻辑列的值变为TRUE。如果生成资金申请表单后又不想付款了,则会把资金申请表里的行删除,那么,删除后资金申请表里就找不到与资金计划表对应的行了,则资金计划表的逻辑列又变为FALSE;两个表都有JHBH列,并以此建产了关联。
3、能否在表的行号列上面(与列标题同行)处增加选择框”全选“?
[此贴子已经被作者于2014-8-7 17:00:00编辑过]

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


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

             

 

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工程项目管理台账.rar


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


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

谢谢老师,好像申请单位财务部还没审核又不能编辑了,没审核之前是要能编辑的,包括审核部门的总工办、财务部,审核意见和审核金额他们需要填列的,谢谢

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


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

审核意见为空的话,又不能审核,那流程就卡住了

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


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

试试这样改

 

If e.Row("SQDW") <> User.Group And User.Group <> "集团成员" Then '在编辑某行前,会自动判断负责此行的部门列是否和登录用户所属分组相同,如果不同,则取消编辑.
    e.Cancel = True
End If
If e.Row("TBR") <> User.NAME And User.Group <> "集团成员" Then '在编辑某行前,会自动判断负责此行的填报人列是否和登录用户所属分组相同,如果不同,则取消编辑.
    e.Cancel = True
End If
If E.Row.IsNULL("SBR") = False AndAlso e.Row("TBR") <> "'" & User.NAME & "'" Then
    e.Cancel = True
End If
'下列代码为指定角色可以编辑哪些列
If User.IsRole("子公司财务") Then
    Select Case e.Col.Name
        Case "SQDWCW1","SQDWCW"
            If E.Row.IsNULL("SQDWCW2") = False Then
                e.Cancel = True
                '              MessageBox.Show("已审核,不能编辑")
            Else
                e.Cancel = False
            End If
    End Select
ElseIf User.IsRole("总工办1") Then
    Select Case e.Col.Name
        Case "SHYJ","SH1","YYSM"
            If E.Row.IsNULL("SH") = False Then
                e.Cancel = True
                '               MessageBox.Show("已审核,不能编辑")
            Else
                e.Cancel = False
            End If
    End Select
ElseIf User.IsRole("集团财务1") Then
    Select Case e.Col.Name
        Case "CWSH1","CWSH3","CWSH4","CWSH5"
            If E.Row.IsNULL("cwsh2") = False Then
                e.Cancel = True
                '                MessageBox.Show("已审核,不能编辑")
            Else
                e.Cancel = False
            End If
    End Select
End If


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


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

谢谢老师,还是代码的问题,下面这段代码,无论是在哪张表,删除行时都要提示 "数据已经审核通过,你不能删除!."),请问老师是什么原因呢?
For Each r As Row In Tables("ZJJHB").GetCheckedRows
If User.IsRole("录入人") Then
    If Tables("ZJJHB").current.Isnull("SHR") = False Then
        MessageBox.Show("数据已经审核通过,你不能删除!.")
    Else
       Syscmd.Row.Delete()
    End If
  Else
      MessageBox.show("你非数据填列人,不能删除数据!")
End If
Next
For Each r As Row In Tables("ZJsqB").GetCheckedRows
If User.IsRole("录入人") Then
    If Tables("ZJsqb").current.Isnull("jlyj3") = False Then
        MessageBox.Show("监理单位已经通过审核,你不能删除!.")
    Else
       Syscmd.Row.Delete()
    End If
  Else
      MessageBox.show("你非资金申报人,不能删除数据!")
End If
Next

 回到顶部
总数 40 上一页 1 2 3 4 下一页