发新话题
打印

[求助] clearquest( 此文章被查看:1952次,被回复:27篇!! )

楼上的版主,你看看我的这个问题,我想让OWNER显示中文,但是OWNER是引用USERS的,我写脚本去查询时候,却没用??版主有什么好的办法没??/

附件

1230.GIF (14.66 KB)

2006-12-26 09:26

1230.GIF

1231.GIF (10.51 KB)

2006-12-26 09:26

1231.GIF


© 本文为 ty1227 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

回复 #11 ty1227 的帖子

看到你的贴图,对你的问题有了一定的了解,
我认为你的问题有以下2个方面:
1.  Owner的脚本位置加的不正确,我所贴出的那段代码是加在Choices List上的,而你却加在Default Value上了,这样执行肯定会报错,建议你去看看ClearQuest的Hook机制。
2.   既然你想在列表中显示用户的中文名,那就要结合你在ClearQuest User Admin中用户的命名情况来定,如果是登录名是中文的,查询字段就要改成Login_Name,如果是全名,就要把查询字段改成Full_Name...,我的那段脚本只是提供参考,必要的时候还是要根据自己的情况来修改的。

© 本文为 yunshan 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

斑主,我的登陆名是英文的,我在用户处也另定义了:中文名字,现在我做的是可以显示登陆名(英文),我现在想让其显示中文名(与登陆英文名相对应的),
  还有就是我想问一下你的"developer"也是引用"users吗?

© 本文为 ty1227 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

回复 #13 ty1227 的帖子

我想知道你在哪个字段中填写的是中文名字,这样就从这个字段中取值就可以了。

© 本文为 yunshan 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

简单一点就是我要显示下面图中的"张三";  现在我是可以显示"lead"

附件

1234.PNG (11.13 KB)

2006-12-26 14:58

1234.PNG


© 本文为 ty1227 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

回复 #15 ty1227 的帖子

有了这个图,问题就简单了,首先看一段例子:

set sessionObj = GetSession

' Get the user's personal information
userName = sessionObj.GetUserFullName
userLogin = sessionObj.GetUserLoginName

你所想要取得的就是用户信息中的FullName,
只要把我第一次回帖中的BuildField中的字段Login_Name改成FullName就可以了~

© 本文为 yunshan 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

版主!我试验了一下,有问题哦!!我还想问一下你的脚本中的"groups"是什么意思?是就是指"devloper",还是我门的用户管理中的组???


   我的代码和产生的错误如下

  
Dim sessionObj
        Dim queryObj
        Dim filterObj
        Dim resultSetObj

        Set sessionObj = GetSession()
        Set queryObj = sessionObj.BuildQuery("users")
        queryObj.BuildField("fullname")

        Set filterObj = queryObj.BuildFilterOperator(AD_BOOL_OP_AND)
        filterObj.BuildFilter "groups",AD_COMP_OP_EO,"owner"
        Set resultSetObj = sessionObj.BuildResultSet(queryObj)

   resultSetObj.Execute

   Do While resultSetObj.MoveNext = AD_SUCCESS
       choices.AddItem resultSetObj.GetColumnValue(1)
   Loop

附件

1111111.PNG (15.35 KB)

2006-12-27 11:03

1111111.PNG


© 本文为 ty1227 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

版主,上面的错误我已经解决,但是我用下面的脚本试验了一下,
   

   在OWNER下拉表中什么都不能显示, 版主能否给出解决方案,谢谢!!很是期待哦!!!!!!!!!!!!
  


     Dim sessionObj
        Dim queryObj
        Dim filterObj
        Dim resultSetObj

        Set sessionObj = GetSession()
        Set queryObj = sessionObj.BuildQuery("users")
        queryObj.BuildField("fullname")

        Set filterObj = queryObj.BuildFilterOperator(AD_BOOL_OP_AND)
        filterObj.BuildFilter "groups",AD_COMP_OP_EO,"owner"
        Set resultSetObj = sessionObj.BuildResultSet(queryObj)

   resultSetObj.Execute

   Do While resultSetObj.MoveNext = AD_SUCCESS
       choices.AddItem resultSetObj.GetColumnValue(1)
   Loop

© 本文为 ty1227 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

回复 #9 yunshan 的帖子
当前我的脚本如图1:
出现的效果如图2:
我的希望是我的PL组只设定了两个用户。我希望是把那两个用户显示出来。
还有如果选中组进行查询的时候它提示是没有数据返回的。

[ 本帖最后由 fish 于 2006-12-27 12:39 编辑 ]

附件

2.jpg (576.05 KB)

2006-12-27 12:38

2.jpg

1.jpg (576.05 KB)

2006-12-27 12:39

1.jpg


© 本文为 fish 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

回复 #19 ty1227 的帖子

首先一点需要确定的是,不论是Developer,还是Owner,
都是在ClearQuest User Admin中建立的用户组。

至于出错的原因是这两句没有执行通过:
Set filterObj = queryObj.BuildFilterOperator(AD_BOOL_OP_AND)
  filterObj.BuildFilter "groups",AD_COMP_OP_EO,"owner"
错误原因我正在查找,会尽快给你答复。

对于你所提出的在一个下拉列表中显示所有用户的中文名称,下面另外是一个解决方案,可以避免上面的问题:
1. 新建一个字段,Owner, string类型的,不要用系统自带的。
2. 在其Choices List中加入以下脚本:
     Dim sessionObj
     Dim queryObj
     Dim resultSetObj

        Set sessionObj = GetSession()
        Set queryObj = sessionObj.BuildQuery("users")
        queryObj.BuildField("fullname")

        Set resultSetObj = sessionObj.BuildResultSet(queryObj)

   resultSetObj.Execute

   Do While resultSetObj.MoveNext = AD_SUCCESS
       choices.AddItem resultSetObj.GetColumnValue(1)
   Loop
3. 把这个字段拖动到form中,
4. 测试运行
这种解决方案的特点是,不需要在ClearQuest User Administer中建立用户组,只要把你想要在列表中显示的用户在fullname中设置中文名即可,如果这个字段为空,就不会被列出。

© 本文为 yunshan 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

发新话题