使用 ALM OTA,我们如何知道 ALM 资源是不是已签出?

Posted

技术标签:

【中文标题】使用 ALM OTA,我们如何知道 ALM 资源是不是已签出?【英文标题】:Using ALM OTA, how do we know if an ALM Resource is checked out?使用 ALM OTA,我们如何知道 ALM 资源是否已签出? 【发布时间】:2019-02-12 01:27:42 【问题描述】:

我需要将修改后的资源文件上传到 ALM 测试资源。在上传之前,我需要验证资源是否已签出,如果没有,我需要签出该资源。

我需要使用 OTA 执行所有这些操作。我能够获取特定的资源对象,并且能够签出/签入。

但是,我无法获得版本控制状态(签出/签入)。我从 ALM OTA API Reference 中发现 IsCheckedOut 属性可以给我们这个结果,但我不知道如何使用这个属性。下面是我的代码-

objFilter.Filter("RSC_FOLDER_NAME") = QCResourceFolderPath
Set objResourcesList = objFilter.NewList
For Each Resource In objResourcesList
    If Resource.Name = strFileName Then
        Resource.VC.Checkout ""
        Exit For
    End If
Next

这段代码正在执行 Checkout 操作,但无法在此处使用 IsCheckedOut 属性。

【问题讨论】:

【参考方案1】:

得到了答案。下面的一段代码给了我结帐状态

Resource.VersionData.IsCheckedOut

所以我的代码应该是这样的 -

objFilter.Filter("RSC_FOLDER_NAME") = QCResourceFolderPath
Set objResourcesList = objFilter.NewList
For Each Resource In objResourcesList
    If Resource.Name = strFileName Then
        If Not(Resource.VersionData.IsCheckedOut) Then
            Resource.VC.Checkout ""
            Exit For
        End If
    End If
Next

【讨论】:

【参考方案2】:

找到了另一种获取结帐状态的方法

Resource("RSC_VC_STATUS") would give us the status as "Checked_In" or "Checked_Out"

我们可以使用它来实现我们的逻辑

【讨论】:

以上是关于使用 ALM OTA,我们如何知道 ALM 资源是不是已签出?的主要内容,如果未能解决你的问题,请参考以下文章