liyb1979 发表于 2012-5-30 09:55:10

如何根据用户名(非当前登录用户)获得所属的用户组?

在QC代码编写中如何根据用户名(非当前登录用户)获得所属的用户组?谢谢各位大侠帮忙!

May_may 发表于 2012-5-30 17:37:12

不是有User.IsInGroup 可以判断么

liyb1979 发表于 2012-5-31 08:42:24

比如用户名为“chenh”,这只是一个字符串啊,不是User啊。咋样转化成User?User.IsInGroup 只是判断当前用户吧?我想要的是通过字符串的用户名判断是否在某一个组中啊。

May_may 发表于 2012-5-31 09:28:22

Set usr = tdconnection.customization.Users.User(username)
可以用username来传递设置User信息

liyb1979 发表于 2012-6-1 09:53:16

好的,谢谢!我试试,关于TDConnection我没用过,插件已经安装了,马上调试一下!

liyb1979 发表于 2012-6-1 10:25:06

msgbox"第一责任人: "+Bug_Fields("BG_USER_31").Value
'此处有值
   Set usr = tdconnection.customization.Users.User(Bug_Fields("BG_USER_31").Value)
       msgbox"用户: "+usr
'此处就没有值了,后边都不好用了!!
      msgbox"是否在需求组: "+usr.IsInGroup("需求组")
      msgbox"是否在开发组: "+usr.IsInGroup("开发组")
还请大侠帮忙啊,领导非得要这个需求,愁死了!!

May_may 发表于 2012-6-1 11:04:15

usr是对象当然msgbox不会有值啊
IsInGroup可以用if语句来判断
if usr.IsInGroup("需求组") then
msgbox"在需求组"
end if

liyb1979 发表于 2012-6-1 11:22:21

我把msgbox"用户: "+usr   删掉了:
   Set usr = tdconnection.customization.Users.User(Bug_Fields("BG_USER_31").Value)
       ifusr.IsInGroup("需求组") Then
         msgbox"在需求组"
      '这里就没有值,我做的数据是需求组的,是符合逻辑的,我怀疑usr目前没有被赋值,是不是tdconnection没有连接上QC数据库啊?或者我还是缺少什么了?

May_may 发表于 2012-6-1 14:28:21

介个我也不清楚
不过我刚才试了下,好像这样usr.isingroup 实现有的问题
我改了下用
Set usr = tdconnection.customization.Users.User(username)
for i=1 to usr.GroupsList.count
UserGroup= usr.GroupsList().Item(i).Name
Msgbox UserGroup
next
可以取出该用户所有的组
你用tdconnection.conneted 写个if看看是不是连上了,但我直接用tdconnection就可以的啊
页: [1]
查看完整版本: 如何根据用户名(非当前登录用户)获得所属的用户组?