在工作中,一位同事将缺陷数据从 hp qc 复制并粘贴到 excel 中,这需要她的时间……这让我发疯!
无论如何要从 hp qc 导出数据到 excel 吗?只需要转储缺陷列表及其相关字段,如 ID、日期、摘要、分配给等......
一定有办法导出到excel...
在工作中,一位同事将缺陷数据从 hp qc 复制并粘贴到 excel 中,这需要她的时间……这让我发疯!
无论如何要从 hp qc 导出数据到 excel 吗?只需要转储缺陷列表及其相关字段,如 ID、日期、摘要、分配给等......
一定有办法导出到excel...
您可以从 QC 本身导出到 excel。
缺陷 => 导出 => 全部/选定。
是的,肯定有办法导出这些缺陷。
过滤掉您需要的所有缺陷。或者您可以突出显示您需要的内容。
在菜单栏中(据我所知,它是“缺陷”菜单项,但我可能错了)-> 有导出选项。
我不确定这是否会有所帮助。要下载过滤的缺陷,可以转到缺陷-> 分析(在顶部菜单上)-> 项目报告-> 已选择报告-> 然后选择您需要的格式。
对于 excel 提取,缺陷-> 缺陷(在顶部菜单上)-> 导出
所有有效选项,我将再添加一个:分析菜单中的 Excel 查询选项。
仪表板 > 分析视图 > 添加按钮 > 新建 Excel 报告
您必须提供报告的名称,然后确认。
在查询窗口中,您可以键入查询。如何加入表格?在帮助 > 文档库 > HP ALM 项目数据库参考中查阅数据库方案
您可以添加后处理来构建 excel。
添加的每个查询都会出现在 Excel 中的新选项卡中。
通过这种方式,您可以编写相当复杂的 Excel 报告。
但请注意:添加后处理时,您会创建一个 xlsm 文件,并且需要启用宏。
我编写了一个代码,它将连接到 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
1.登录HP QC
2.转到defects
(左侧菜单)
3.过滤你的缺陷
4.转到第一行的缺陷菜单
5.单击并选择Export
按钮
您可以过滤并选择缺陷,单击其中Defects --> Export -->
一个ALL
或Selected
保存文件。
我这里还有一个问题,比如..除了 XLS 格式之外,还有什么方法可以保存文件以保存为 CSV 或 XML 格式。有人可以指导我..谢谢