使用 Rational ClearCase Automation Library (CAL) 获取视图所有者/创建者

发布于 2024-07-19 05:14:43 字数 103 浏览 3 评论 0原文

这里是否有人已经使用过 Rational / IBM CAL,并且知道是否有,以及如何检查视图的创建者/所有者(用户名)? 元素、Vobs 等都有一个所有者/创建者,但由于某种原因视图没有?

Has anyone here already worked with the Rational / IBM CAL and knows if at all, and how to check for a view's creator/owner (username)? Elements, Vobs etc all have an Owner/Creator, but for some reason views do not?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

携余温的黄昏 2024-07-26 05:14:43

我只使用 CAL 执行小型 VB 脚本,如 此答案中对标签进行了说明

检查了 cc_cal.chm(位于 C:\Program Files\IBM,在最新的 7.1.0.1 版本的 ClearCase 安装中)后,我发现他们的 ICCView 界面非常不完整,并且总是喜欢修补经典的输出:

cleartool lsview -l -full -pro aTagViewName

有了这个输出,我一定能找到我需要的任何信息。


获取给定用户名的一些视图的唯一其他“纯 CAL”方法是 UCM 视图,您可以在其中向流询问这些视图(但这并不能直接解决您的问题)

 Dim Streams As CCStreams 
 Dim Stream As CCStream 
 Set Streams = Project.DevelopmentStreams(Name) 
 For Each Stream In Streams 
       Dim Views As CCViews 
       Set Views = Stream.Views(Name) 
       Dim View As CCView 
       For Each View In Views 
             Str = Str & View.TagName & " in stream: " & _ 
             Stream.Title & vbCrLf 
       Next 
 Next 

I have only do small VB scripts with CAL, as illustrated in this answer about label.

After having checked cc_cal.chm (found in C:\Program Files\IBM, in the latest 7.1.0.1 version of ClearCase installation), I have found their ICCView interface very incomplete, and always prefered to patch the output of a classic:

cleartool lsview -l -full -pro aTagViewName

With that output, I am sure to find whatever information I need.


The only other "pure CAL" way to get some views for a given username is for UCM views, where you can ask the stream for those (but that does not address directly your question)

 Dim Streams As CCStreams 
 Dim Stream As CCStream 
 Set Streams = Project.DevelopmentStreams(Name) 
 For Each Stream In Streams 
       Dim Views As CCViews 
       Set Views = Stream.Views(Name) 
       Dim View As CCView 
       For Each View In Views 
             Str = Str & View.TagName & " in stream: " & _ 
             Stream.Title & vbCrLf 
       Next 
 Next 
西瑶 2024-07-26 05:14:43

基本上,如果你能想出一种方法来使用cleartool来做到这一点,那么答案是肯定的。 如果没有特定的接口/对象 API 来执行您想要的操作,只需在 CAL 中创建cleartool 对象并将您的查询填充到其中即可!

使用 CAL 的优点是您只需加载 .dll 一次,并且不必付出执行无数个单独的 Cleartool 进程的代价(如果您本来必须这样做的话)。

不过,CAL 文档很糟糕。 在 Visual Studio 中,您可以通过在资源浏览器中查找 DLL 将 CAL 添加为资源,并像其他任何操作一样通过 COM 与它对话。

如果您不使用 VB 或 VB.NET(例如 C#),则必须进行比示例文档中看到的更多的类型转换。

Basically, if you can think of a way to do it with cleartool, the answer is yes. If there isn't a specific interface/object API to do what you want, just create the cleartool object in CAL and stuff your query in there!

The advantage to using CAL is that you only need to load the .dll once, and don't have to pay the price of executing a zillion separate cleartool processes if that's what you'd otherwise have to do.

The CAL documentation sucks, though. In Visual Studio, you can add CAL as a resource by finding the DLL in your resource explorer, and talk to it via COM like anything else.

If you aren't using VB or VB.NET (e.g. C#), you'll have to do a little more type-casting than you see in the sample documentation.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文