是否可以将Azure DevOps工作项文件导出到Excel中

vngu2lb8  于 2023-01-09  发布在  其他
关注(0)|答案(4)|浏览(306)

我们在Azure DevOps板中有不同类型的工作项。我们需要将工作项中所有字段的列表导出到excel或任何类似格式。是否有方法使用API来提取系统中所有字段的列表以及任何可用的关联元数据?有人能帮助我们完成此任务吗?

9ceoxa92

9ceoxa921#

你可以使用Azure DevOps Office® Integration 2019 Connector for Excel批量提取数据。调用API有一个限制,我认为可能是10,000个工作项。你可以通过在使用条件运行查询时将其划分来绕过此速率限制。

wfsdck30

wfsdck302#

如果您有Visual Studio,则可以运行开发人员命令提示符并使用witadmin命令行。

witadmin listfields /collection:https://dev.azure.com/<org>

Witadmin语法:https://learn.microsoft.com/en-us/azure/devops/reference/witadmin/manage-work-item-fields?view=azure-devops#syntax

2w3rbyxf

2w3rbyxf3#

如果“导出到CSV/作为邮件发送”符合要求,请继续使用。如果不符合要求,请安装Azure devops office集成并连接到excel. Export Work Items from Azure DevOps Board to Microsoft Excel

z6psavjg

z6psavjg4#

您可以使用Rest Api从流程模板中获取所有字段:https://learn.microsoft.com/en-us/rest/api/azure/devops/processes/fields/list?view=azure-devops-rest-7.1
Powershell示例:

$user = ""
$token = "<pat>" #https://learn.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate

$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user,$token)))
$orgUrl = "https://dev.azure.com/<org>"
$procId = "<proc-guid>"
$wiRefName = "<wi type name>"

$restApiGetFields = "$orgUrl/_apis/work/processes/$procId/workItemTypes/$wiRefName/fields?api-version=7.1-preview.2"

function InvokeGetRequest ($GetUrl)
{   
    return Invoke-RestMethod -Uri $GetUrl -Method Get -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}
}

$fields = InvokeGetRequest $restApiGetFields

foreach ($wifield in $fields.value)
{
    Write-Host "Name:" $wifield.name "; RefName" $wifield.referenceName
}

Process guild you can get through rest API: https://dev.azure.com/ <you_org_name>/_apis/work/processes?api-version=7.1-preview.2

查看过程模板时可以从URL获取的工作项类型名称:

    • 更新日期:**

要获取每个字段的信息,需要使用带有$expand=all选项的FIELD GET rest API。
示例:

相关问题