【发布时间】:2012-06-04 00:41:34
【问题描述】:
一位同事在工作中将缺陷数据从 hp qc 复制并粘贴到 excel 中,这需要她的时间......这让我发疯!
是否可以将数据从 hp qc 导出到 excel 中?只需要转储缺陷列表及其相关字段,如 ID、日期、摘要、分配给等......
一定有办法导出到excel...
【问题讨论】:
-
没有答案具有所需的功能?
标签: testing qa hp-quality-center
一位同事在工作中将缺陷数据从 hp qc 复制并粘贴到 excel 中,这需要她的时间......这让我发疯!
是否可以将数据从 hp qc 导出到 excel 中?只需要转储缺陷列表及其相关字段,如 ID、日期、摘要、分配给等......
一定有办法导出到excel...
【问题讨论】:
标签: testing qa hp-quality-center
您可以从 QC 本身导出到 excel。
缺陷 => 导出 => 全部/选定。
【讨论】:
是的,肯定有办法导出这些缺陷。
过滤掉您需要的所有缺陷。或者您可以突出显示您需要的内容。
在菜单栏中(据我记得是“缺陷”菜单项,但我可能错了)-> 有导出选项。
【讨论】:
我不确定这是否会有所帮助。要下载过滤的缺陷,可以转到缺陷-> 分析(在顶部菜单上)-> 项目报告-> 已选择报告-> 然后选择您需要的格式。
对于excel提取,缺陷->缺陷(在顶部菜单上)->导出
【讨论】:
我编写了一个代码,它将连接到 ALM 12.53 并将缺陷或任何其他报告导出到 Excel 中。您需要在 Excel 2013 中检查 Tool=>Reference..OTA COM 类型库。我遇到了 HTML 代码问题,因此我在下面添加了几行以从 Excel 字段中删除 HTML 标记。
Sub Main()
Const QCADDRESS = "http://xxx:xxx/qcbin"
Const DOMAIN = "xxxx"
Const PROJECT = "xxxx"
Const QCUSR = "xxxx"
Const QCPWD = "xxxx"
Dim QCConnection, com, recset
Dim XLS, Wkb, Wks, i
Set QCConnection = CreateObject("TDApiOle80.TDConnection")
QCConnection.InitConnectionEx QCADDRESS
QCConnection.Login QCUSR, QCPWD
QCConnection.Connect DOMAIN, PROJECT
QCConnection.IgnoreHtmlFormat = True
Set com = QCConnection.Command
com.CommandText = "SELECT BUG.BG_BUG_ID /*Defect.Defect ID*/ as defectid , " _
& "BUG.BG_STATUS /*Defect.State*/ as state ," _
& "BUG.BG_USER_TEMPLATE_15 /*Defect.Root Cause*/ RootCause, " _
& "BUG.BG_USER_02 /*Defect.Assigned To*/ as AssignedTo, " _
& "BUG.BG_DETECTION_DATE /*Defect.Detected on Date*/ as detectiondate, " _
& "BUG.BG_USER_01 /*Defect.Application Involved*/ as ApplicationInvolved, " _
& "BUG.BG_SUMMARY /*Defect.Summary*/ as summary , " _
& "BUG.BG_DESCRIPTION /*Defect.Description*/ as description, " _
& "BUG.BG_SEVERITY /*Defect.Severity*/ as severity , " _
& "BUG.BG_DETECTED_BY /*Defect.Submitter*/ as submitter , " _
& "BUG.BG_RESPONSIBLE /*Defect.Assignee*/ as Assignee, " _
& "BUG.BG_USER_04 /*Defect.Workstream*/ as workstream , " _
& "BUG.BG_USER_03 /*Defect.Commited Resolution Date*/ as CommitedResolutionDate, " _
& "BUG.BG_USER_05 /*Defect.Vendor Ticket Number*/ as Vendorticketnumber, " _
& "BUG.BG_DEV_COMMENTS /*Defect.Comments*/ as comments " _
& "FROM BUG /*Defect*/ " _
& "where BG_Status = 'Cancelled' " _
& "order by BUG.BG_DETECTION_DATE,BUG.BG_USER_TEMPLATE_15"
Set recset = com.Execute
Set XLS = CreateObject("Excel.Application")
XLS.Visible = False
QCConnection.IgnoreHtmlFormat = True
Set Wkb = XLS.Workbooks.Add
Set Wks = Wkb.Worksheets(1)
'Wks.Name "DataFromBugQuery"
i = 1
Wks.Cells(i, 1).Value = "Defect ID"
Wks.Cells(i, 2).Value = "State"
Wks.Cells(i, 3).Value = "Root Cause"
Wks.Cells(i, 4).Value = "Assigned To"
Wks.Cells(i, 5).Value = "Detection Date"
Wks.Cells(i, 6).Value = "Application Involved"
Wks.Cells(i, 7).Value = "Summary"
Wks.Cells(i, 8).Value = "Description"
Wks.Cells(i, 9).Value = "Severity"
Wks.Cells(i, 10).Value = "Submitter"
Wks.Cells(i, 11).Value = "Assignee"
Wks.Cells(i, 12).Value = "Workstream"
Wks.Cells(i, 13).Value = "Commited Resolution Date"
Wks.Cells(i, 14).Value = "Vendor Ticket Number"
Wks.Cells(i, 15).Value = "Comments"
If recset.RecordCount > 0 Then
i = 2
recset.First
Do While Not (recset.EOR)
Wks.Cells(i, 1).Value = recset.FieldValue(0)
Wks.Cells(i, 2).Value = recset.FieldValue(1)
Wks.Cells(i, 3).Value = recset.FieldValue(2)
Wks.Cells(i, 4).Value = recset.FieldValue(3)
Wks.Cells(i, 5).Value = recset.FieldValue(4)
Wks.Cells(i, 6).Value = recset.FieldValue(5)
Wks.Cells(i, 7).Value = recset.FieldValue(6)
Wks.Cells(i, 8).Value = recset.FieldValue(7)
Wks.Cells(i, 9).Value = recset.FieldValue(8)
Wks.Cells(i, 10).Value = recset.FieldValue(9)
Wks.Cells(i, 11).Value = recset.FieldValue(10)
Wks.Cells(i, 12).Value = recset.FieldValue(11)
Wks.Cells(i, 13).Value = recset.FieldValue(12)
Wks.Cells(i, 14).Value = recset.FieldValue(13)
Wks.Cells(i, 15).Value = recset.FieldValue(14)
Dim r As Range
Wks.Cells(i, 8).NumberFormat = "@" 'set cells to text numberformat
Wks.Cells(i, 15).NumberFormat = "@"
With CreateObject("vbscript.regexp")
.Pattern = "<[^>]+>|;"
.Global = True
For Each r In Wks.Cells(i, 8)
r.Value = .Replace(r.Value, "")
Next r
For Each r In Wks.Cells(i, 15)
r.Value = .Replace(r.Value, "")
Next r
End With
Text = Wks.Cells(i, 8).Value
Wks.Cells(i, 8).Value = Replace(Text, " ", "")
Text = Wks.Cells(i, 8).Value
Wks.Cells(i, 8).Value = Replace(Text, """, "'")
Text = Wks.Cells(i, 15).Value
Wks.Cells(i, 15).Value = Replace(Text, " ", "")
Text = Wks.Cells(i, 15).Value
Wks.Cells(i, 15).Value = Replace(Text, "<v6ucbs>", "")
i = i + 1
recset.Next
Loop
Wkb.SaveAs "C:\Users\xxxx\Downloads\Files\Cancelled_Defects.xls"
End If
Wkb.Close
XLS.Quit
QCConnection.Disconnect
Set recset = Nothing
Set com = Nothing
Set QCConnection = Nothing
Set XLS = Nothing
Set Wkb = Nothing
Set Wks = Nothing
End Sub
【讨论】:
所有有效选项,我再添加一个: 分析菜单中的 Excel 查询选项。
仪表板 > 分析视图 > 添加按钮 > 新建 excel 报告
您必须提供报告的名称,然后确认。
在“查询”窗口中,您可以键入查询。如何加入表格?在帮助 > 文档库 > HP ALM 项目数据库参考中查阅数据库方案
您可以添加后处理来构建 excel。
添加的每个查询都会出现在 excel 的新选项卡中。
通过这种方式,您可以编写相当复杂的 Excel 报告。
但请注意:添加后处理时,您会创建一个 xlsm 文件,并且需要启用宏。
【讨论】:
您可以过滤并选择缺陷点击Defects --> Export --> 或者ALL 或Selected 并保存文件。
我在这里还有一个问题,例如..除了 XLS 格式之外,还有什么方法可以保存文件以保存为 CSV 或 XML 格式。谁能指导我..谢谢
【讨论】:
1.登录惠普质检
2.转到defects(左侧菜单)
3.过滤你的缺陷
4.转到第一行的缺陷菜单
5.点击并选择Export按钮
【讨论】: