Foxtable(狐表)用户栏目专家坐堂 → 代码的问题


  共有2228人关注过本帖平板打印复制链接

主题:代码的问题

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


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

老师,我想在项目事件项目的AfterOpenProject事件中设置代码,使打开的表ZJSQB,根据表中“付款单位”列的值和登录用户的角色不同看不见不同的列。比如:当ZJSQB表的“付款单位”列的值是“高科控股集团”,且登录的用户的角色是“子公司财务”时,则他看不见“财务1”“财务2”“财务3”这三列,当“付款单位”列的值是其他值时,则用户角色为“总工办”或“集团财务”“业务副总”“资金副总”“董事长”等看不见“审核”“意见”“第十列”“第十一列”。下面的代码不对,错在哪里呢,请老师指导

If e.DataTableName = "ZJSQB" Then如果打开的是ZJSQB

If e.DataCol.Name = "付款单位" Then‘如果变化的是付款单位列

Dim K As String = e.DataRow("付款单位")‘定义为字符串

Select Case K

            Case "高科控股集团"

                If User.IsRole ("子公司财务") Then

Tables("ZJSQB").Cols.Remove("财务1")
       
                Tables("ZJSQB").Cols.Remove("财务2")
       
                Tables("ZJSQB").Cols.Remove("财务3")

Tables("ZJSQB").Cols.Remove("财务4")
Case "
高科开发建设","高科置业发展","贵州望城投资"

If User.IsRole( "总工办")  OrElse User.IsRole( "集团财务")OrElse User.IsRole( "业务副总")OrElse User.IsRole( "资金副总")OrElse User.IsRole( "集团董事长")Then

Tables("ZJSQB").Cols.Remove("总工办")
       
                Tables("ZJSQB").Cols.Remove("JTZGB1")
       
                Tables("ZJSQB").Cols.Remove("JTZGB2")

Tables("ZJSQB").Cols.Remove("JTZGB3")

 

Tables("ZJSQB").Cols.Remove("集团财务1")
       
                Tables("ZJSQB").Cols.Remove("JTCWB1")
       
                Tables("ZJSQB").Cols.Remove("JTCWB2")

Tables("ZJSQB").Cols.Remove("JTCWB3")

Tables("ZJSQB").Cols.Remove("集团副总")
       
                Tables("ZJSQB").Cols.Remove("资金副总")
       
                Tables("ZJSQB").Cols.Remove("董事长1")

Tables("ZJSQB").Cols.Remove("董事长2")

Tables("ZJSQB").Cols.Remove("董事长3")

               END IF

          END SELECT

      END IF

END IF

 


 回到顶部