Funções e cláusulas OData suportadas
Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019
Este artigo aborda como o Analytics suporta várias funções OData. As funções não suportadas também são listadas. OData (Open Data Protocol) é um padrão OASIS aprovado pela ISO/IEC que define as melhores práticas para criar e consumir APIs REST. Para obter mais informações, consulte a documentação do OData.
Nota
O serviço Analytics é automaticamente habilitado e suportado na produção para todos os Serviços de DevOps do Azure. A integração do Power BI e o acesso ao feed OData do Serviço de Análise estão geralmente disponíveis. Nós encorajamos você a usá-lo e nos dar feedback.
Os dados disponíveis dependem da versão. A última versão suportada é v2.0
, e a versão de pré-visualização mais recente é v4.0-preview
. Para obter mais informações, consulte Controle de versão da API OData.
Nota
O serviço Analytics é instalado automaticamente e tem suporte na produção para todas as novas coleções de projetos para o Azure DevOps Server 2020 e versões posteriores. A integração do Power BI e o acesso ao feed OData do Serviço de Análise estão geralmente disponíveis. Nós encorajamos você a usá-lo e nos dar feedback. Se você atualizou do Azure DevOps Server 2019, poderá instalar o serviço Analytics durante a atualização.
Os dados disponíveis dependem da versão. A última versão suportada é v2.0
, e a versão de pré-visualização mais recente é v4.0-preview
. Para obter mais informações, consulte Controle de versão da API OData.
Nota
O serviço Analytics está em pré-visualização para o Azure DevOps Server 2019. Você pode habilitá-lo ou instalá-lo para uma coleção de projetos. A integração do Power BI e o acesso ao feed OData do Serviço de Análise estão em Pré-visualização. Nós encorajamos você a usá-lo e nos dar feedback.
Os dados disponíveis dependem da versão. A última versão suportada é v2.0
, e a versão de pré-visualização mais recente é v4.0-preview
. Para obter mais informações, consulte Controle de versão da API OData.
Cláusulas suportadas
$apply
$compute
$count
$expand
$filter
$orderby
$select
$skip
$top
Quando várias cláusulas são usadas em uma consulta, elas são aplicadas na ordem especificada acima. A ordem das cláusulas na cadeia de caracteres de consulta é ignorada. Por exemplo, na consulta a seguir, os itens de trabalho são primeiro agrupados e agregados. Em seguida, os grupos são filtrados. Depois disso, os grupos filtrados são classificados. Finalmente, os cinco primeiros registros são devolvidos. A consulta retorna os cinco principais tipos de item de trabalho usados pelo menos 100 vezes.
WorkItems?$filter=Count ge 100&$apply=groupby((WorkItemType), aggregate($count as Count))&$orderby=Count&top=5
Suporte a extensões de agregação
É necessária uma sequência de transformações de conjunto, separadas por barras para a frente, para expressar que elas são aplicadas consecutivamente. O resultado de cada transformação é a entrada para a próxima transformação. Por exemplo, na consulta a seguir, os itens de trabalho são filtrados e, em seguida, agrupados por tipo e estado de item de trabalho. Em seguida, os grupos são filtrados e agrupados novamente.
Nota
As extensões de agregação OData são relativamente novas e ainda não são totalmente suportadas por algumas ferramentas de cliente.
Workitems?$apply=filter(State ne 'Closed')/groupby((WorkItemType, State), aggregate($count as Count))/filter(Count gt 100)/groupby((State),aggregate(Count with max as MaxCount))
As seguintes transformações são suportadas:
Transformação | Notas |
---|---|
aggregate |
Permite a agregação usando um dos seguintes métodos $count , average , , min max ,sum |
compute |
Permite adicionar propriedades calculadas |
expand |
Permite expansão por propriedades especificadas |
filter |
Permite filtrar o conjunto de entradas. Suporta as mesmas expressões que $filter |
groupby |
Permite o agrupamento por propriedades |
Para obter mais informações, consulte Agregar dados de acompanhamento de trabalho.
Funções suportadas
Função canônica | Description |
---|---|
cast |
Retorna a expressão da instância atual convertida para o tipo especificado. |
contains |
Retorna true se o segundo valor da cadeia de caracteres do parâmetro for uma substring do primeiro valor da cadeia de caracteres do parâmetro, caso contrário, ele retornará false. |
endswith |
Retorna true se o primeiro valor da cadeia de caracteres do parâmetro terminar com o segundo valor da cadeia de caracteres do parâmetro, caso contrário, ele retornará false. |
startswith |
Retorna true se o valor da cadeia de caracteres do primeiro parâmetro começar com o valor da cadeia de caracteres do segundo parâmetro, caso contrário, ele retornará false. |
length |
Retorna o número de caracteres no valor do parâmetro. |
indexof |
Retorna a posição de caractere baseada em zero da primeira ocorrência do segundo valor de parâmetro no primeiro valor de parâmetro ou -1 se o segundo valor de parâmetro não ocorrer no primeiro valor de parâmetro. |
substring |
Retorna uma substring do primeiro valor da cadeia de caracteres do parâmetro, começando no Nono caractere e terminando no último caractere (onde N é o segundo valor inteiro do parâmetro). |
tolower |
Retorna o valor da cadeia de caracteres do parâmetro de entrada com todos os caracteres maiúsculos convertidos em minúsculas. |
toupper |
Retorna o valor da cadeia de caracteres do parâmetro de entrada com todos os caracteres minúsculos convertidos em maiúsculas. |
trim |
Retorna o valor da cadeia de caracteres do parâmetro de entrada com todos os caracteres de espaço em branco à esquerda e à direita. |
year |
Retorna o componente ano do valor do parâmetro Date ou DateTimeOffset. |
month |
Retorna o componente month do valor do parâmetro Date ou DateTimeOffset. |
day |
Retorna o componente day do valor do parâmetro Date ou DateTimeOffset. |
date |
Retorna a parte de data do valor do parâmetro DateTimeOffset. |
time |
Retorna a parte de tempo do valor do parâmetro DateTimeOffset. |
totaloffsetminutes |
Retorna o número assinado de minutos na parte de deslocamento de fuso horário do valor do parâmetro DateTimeOffset. |
now |
Retorna o ponto atual no tempo (data e hora com fuso horário) como um valor DateTimeOffset. |
maxdatetime |
Retorna o último point-in-time possível como um valor DateTimeOffset. |
mindatetime |
Retorna o ponto no tempo mais cedo possível como um valor DateTimeOffset. |
As funções OData são usadas em uma $filter
cláusula, mas não em uma $select
cláusula da maneira como seriam usadas em uma instrução SQL.
Por exemplo, você pode especificar:
/WorkItems?$filter=toupper(Title) eq 'HELP'
No entanto, você não pode inserir a seguinte cadeia de caracteres:
/WorkItems?$select=WorkItemId,State,toupper(Title)
Funcionalidades não suportadas
bottomcount
bottomsum
bottompercent
$crossjoin
concat
countdistinct
from
isdefined
$rollup
$search
topcount
topsum
toppercent