使用Excel VBA添加HP ALM QC 11.0版本选项卡中的文件夹

问题描述:

我一直在尝试在QC Releases文件夹中创建文件夹结构。我可以遍历现有的文件夹数量,但找不到添加我选择的新文件夹的任何内容。下面是我写的子例程,我打算通过以“Releases \ XYZ \ ABC”格式发送路径到函数来调用。首先,这段代码将忽略路径中的Releases关键字。然后我会找到文件夹XYZ,如果没有找到它应该创建它。有人可以帮我用代码添加一个节点。然后我可以继续编码。这是我的第一个问题,所以请忽略我的错误。使用Excel VBA添加HP ALM QC 11.0版本选项卡中的文件夹

我试过AddNode,但没有奏效。

下面提到是迄今为止我所编写的代码:

公用Sub RELEASEPATH(strPath的作为字符串)

​​

末次

+0

在一个OTA API文档示例中,要创建一个新的ReleaseFolder,他们首先从要创建的文件夹的父级获取ReleaseFolderFactory对象,在该工厂调用'AddItem(Null)',设置ReleaseFolder的名称和Post它。当你调用AddItem时究竟失败了什么?你在哪个对象上调用AddItem? – Roland 2014-11-25 09:26:36

+0

我试着在releaselist对象上添加一个项目。报告的错误是对象不支持此功能。 – Noob 2014-11-25 10:23:07

+0

我尝试使用OTA API参考中给出的代码。但是,我收到错误“运行时错误-2147220427(80040435)”,其中显示“您的质量中心会话已断开连接,请与您的系统管理员联系以获取更多信息。”在'relFolder.Post'行后发生此错误。当我使用tdc.Connected检查时,它返回True,这意味着会话没有被断开。 – Noob 2014-11-25 15:38:29

首先,我认为你的变量名相当混乱。您的folderFactoryNode是TDFilter对象,您的releaselist实际上是ReleaseFolder对象的列表,而不是发布列表。要创建新的ReleaseFolder,您需要调用ReleaseFolderFactory的AddItem。在你的情况下,去创造你需要(从OTA API文档未经测试,直接)类似的东西,第一级文件夹:

' Create a Release folder. 
Set oReleaseFolderFactory = tdc.ReleaseFolderFactory 
Set rootReleaseFolder = oReleaseFolderFactory.Root 
Set oReleaseFolderFactory = rootReleaseFolder.ReleaseFolderFactory 
Set relFolder = oReleaseFolderFactory.AddItem(Null) 
relFolder.Name = "XYZ" 
relFolder.Post 

对于较深的水平(在你的例子中,ABC文件夹),您可以使用的AddItem XYZ文件夹的ReleaseFolderFactory。

+0

您可以请参阅我上面关于Post方法的评论吗?感谢所有帮助,直到现在。 – Noob 2014-11-25 15:43:55

+0

我也尝试过使用你的代码。它给出了同样的错误。我正在使用的登录ID确实有权在那里创建一个文件夹。所以即使这被排除是一个可能的问题。 – Noob 2014-11-25 15:45:54

+0

谢谢。此代码工作。我关闭了excel并确保在后台没有任何实例。它以后工作得很好。感谢您的答复。 – Noob 2014-11-25 15:55:59