Compartilhar via


Ações das filas de trabalho

As Filas de Trabalho no Power Automate podem ser usadas para armazenar dados relevantes do processo e oferecer uma maneira de desacoplar processos complexos e automações, permitindo que eles se comuniquem de forma assíncrona.

As filas de trabalho podem desempenhar um papel crucial na melhoria da eficiência, escalabilidade e resiliência das automações e ajudar a priorizar o trabalho. As filas de trabalho permitem que você conclua os itens de maior prioridade primeiro, independentemente de serem processados por trabalhadores digitais, trabalhadores humanos ou por meio de integrações.

Observação

  • O suporte em nível de produção para o primeiro conjunto de ações relacionadas à fila de trabalho requer Power Automate desktop, versão 2.37 ou posterior.
  • As ações da fila de trabalho no Power Automate para desktop trata-se de um recurso premium que requer uma Assinatura do Power Automate.
  • Atualmente, apenas as ações Processar itens da fila de trabalho e Atualizar item da fila de trabalho podem ser classificadas e permitidas ou restritas devido às políticas de prevenção contra perdas (DLP), com outras ações em breve. Observe que o uso baseado em fluxo de nuvem de filas de trabalho não pode ser restringido por políticas DLP.

Processar itens da fila de trabalho

A ação Processar itens da fila de trabalho indica ao orquestrador da fila que a máquina está pronta para processar um ou mais itens da fila de trabalho. O contexto do usuário que solicita um novo item precisa ter privilégios suficientes na fila de trabalho e na tabela de itens da fila de trabalho para processar as filas de trabalho.

Captura de tela da ação Processar Item da Fila de Trabalho.

A fila de trabalho referenciada na ação anterior é usada pelo orquestrador de filas para determinar os próximos itens disponíveis nessa fila de trabalho que estão no estado Enfileirado. À medida que o fluxo da área de trabalho percorre as ações dentro do loop Processar itens da fila de trabalho que essa ação renderiza, você pode chamar o valor utilizando a variável designada para a ação junto com a propriedade .Value. Nesse caso, você pode chamar o valor do item da fila de trabalho usando a variável %WorkQueueItem.Value%

Importante

Ao fornecer uma expressão FetchXML no campo "Filtrar linhas", você ignora a lógica FIFO do orquestrador de filas de trabalho padrão para itens em fila. Isso permite que você defina uma ordem de retirada de fila personalizada e ignore as datas de expiração do item e outras configurações que são aplicadas automaticamente quando nenhuma expressão de filtro é fornecida.

Processworkqueueitemaction

A ação Processar item da fila de trabalho requer os seguintes argumentos.

Parâmetros de entrada

Argumento Opcional Aceita Valor padrão Description
Fila de trabalho Não Texto O ID da fila de trabalho que contém itens a serem processados.
Filtrar linhas Sim Texto A expressão da consulta FetchXML usada para recuperar itens da fila de trabalho.
Substituir configuração de repetição automática da fila de trabalho Sim Boolean False Quando habilitada, um campo é exibido permitindo que você defina ou substitua o número máximo de repetições para IT Exceptions.
Contagem máxima de novas tentativas No Valor do texto, valor numérico Quando não substituído, usa a contagem máxima de repetições padrão definida no registro da fila de trabalho. O número máximo permitido de repetições de IT Exceptions. Esse parâmetro permite ajustar a contagem de repetições para um valor maior ou menor, ou até mesmo desabilitar o mecanismo de repetição definindo a contagem como 0.

Variáveis produzidas

Argumento Type Description
WorkQueueItem Não Informações armazenadas no item da fila de trabalho que está sendo processado

Exceções

Exceção Descrição
Fila de trabalho não encontrada O valor inserido no parâmetro da fila de trabalho é inválido.
Fila de trabalho pausada ou parada A fila de trabalho é pausada ou interrompida, o que não é um estado válido ao processar itens.
FetchXML Inválido Uma expressão FetchXML inválida foi fornecida.
Falha ao processar fila de trabalho Solicitação inválida - erro na sintaxe da consulta.

O que são consultas do FetchXML?

O FetchXML do Microsoft Dataverse é uma linguagem usada para recuperar dados de um banco de dados do Dataverse. Ela foi desenvolvida para ser fácil de criar, usar e entender. Por exemplo, você pode querer solicitar ao orquestrador que processe os itens em uma ordem diferente da FIFO (primeiro a entrar, primeiro a sair) e dentro de um prazo de expiração específico.

Para limitar o suporte à consulta do FetchXML ao processamento de itens na fila de trabalho, há suporte para um conjunto restrito de termos e expressões de FetchXML. Esses termos incluem filtros, condições e expressões de ordenação, todos restritos à tabela de itens da fila de trabalho (workqueueitem). Somente itens que estão em um estado Queued são retornados.

Exemplo de consulta FetchXML

Veja a seguir um exemplo de expressão de consulta sobre como filtrar por name ordenar os resultados pelos registros que expiram primeiro (FEFO).

<filter type="and">
  <condition attribute="expirydate" operator="on-or-before" value="2024-10-18" />
  <condition attribute="name" operator="eq" value="MyNonUniqueNameString" />
</filter>
<order attribute="expirydate" descending="false" />

Consultar detalhes de suporte e dados de referência

Atualizar item da fila de trabalho

A ação Atualizar item da fila de trabalhos permite que os usuários alterem o status e os resultados do processamento do item da fila de trabalhos selecionado.

Captura de tela da ação Atualizar Item da Fila de Trabalho.

Updateworkqueueitemaction

A ação Atualizar item da fila de trabalho requer os seguintes argumentos.

Argumento Opcional Aceita Valor padrão Descrição
Item da fila de trabalho Não Texto Variável de item da fila de trabalho que foi retornada anteriormente pelo orquestrador de filas
Status Não Processado, Exceção Genérica Processadas Atualize o item da fila de trabalho que está sendo processado usando um status da lista de opções.
Observações sobre o processamento Sim Texto Notas de processamento personalizado ou valor a ser anexado ao item da fila que está sendo processado.
Limpar notas de processamento Sim Boolean False Quando habilitado, oculta e limpa o campo de notas de processamento nesta tela e remove todas as notas de processamento do banco de dados que foram capturadas anteriormente para este item.

Exceções

Argumento Description
Item da fila de trabalho não encontrado O item da fila de trabalho que está sendo processado foi excluído ou não pertence mais à fila da qual foi chamado.
Item da fila de trabalho em espera O item da fila de trabalho que está sendo processado contém um status de on hold no orquestrador de filas e não pode mais ser atualizado.
Falha ao atualizar item da fila de trabalho O item de fila de trabalho que está sendo atualizado encontrou um erro inesperado. Verifique a mensagem de erro para obter mais detalhes.

Adicionar item da fila de trabalho

A ação Adicionar item da fila de trabalho permite que os usuários preencham os itens da fila de trabalho em uma fila de trabalho que foi configurada no portal de fluxo.

Captura de tela da ação Adicionar item da fila de trabalho.

Enqueueworkqueueitemaction

A ação Adicionar item da fila de trabalho requer os seguintes argumentos.

Parâmetros de entrada

Argumento Opcional Aceita Valor padrão Description
Fila de trabalho Não Valor do texto O item da fila de trabalho ao qual será adicionado o item
Prioridade Não Alta, Normal, Baixa Normal A prioridade à qual será definido o item da fila de trabalho
Name Não Valor do texto, valor numérico Nome ou ID personalizado do novo item da fila de trabalho
Entrada No Valor do texto, valor numérico Os dados que pertencem à coluna de valor a serem processados
Expira em Sim Datetime O valor de data e hora definido para expirar o item da fila, caso contrário, adota o valor padrão se um estiver definido para a fila
Observações sobre o processamento Sim Valor do texto, valor numérico Notas de processamento personalizadas a serem adicionadas ao novo item da fila
Tem ID ou referência exclusiva Sim Valor do texto, valor numérico Quando habilitado, deve ser fornecido um valor que seja exclusivo nessa fila. Se deixado em branco, um valor exclusivo no formato de system-<GUID> é automaticamente fornecido pelo sistema

Variáveis produzidas

Argumento Type Description
WorkQueueItem Não Informações armazenadas ao item da fila de trabalho que está sendo adicionado

Exceções

Argumento Descrição
Fila de trabalho não encontrada O valor inserido no parâmetro da fila de trabalho é inválido
Falha ao adicionar o item na fila de trabalho O item da fila de trabalhos não pôde ser adicionado à fila de trabalhos. Solicitação inválida - erro na sintaxe da consulta

Adicionar vários itens da fila de trabalho

A ação Adicionar vários itens da fila de trabalho permite que os usuários adicionem um ou mais itens da fila de trabalho a uma fila de trabalho com base nos dados fornecidos como tabela de dados do item da fila de trabalho.

Captura da ação Adicionar vários itens da fila de trabalho.

Essa ação precisa de uma tabela de dados personalizada que contenha um ou mais itens da fila de trabalho. A tabela de dados deve ter oito colunas e estar em conformidade com o seguinte esquema:

Nome da Coluna Description Obrigatória Valores Permitidos
Name O nome do item. No Qualquer cadeia de caracteres alfanumérica
Entrada Detalhes de entrada ou dados do item. Sim Qualquer cadeia de caracteres alfanumérica
Expira em Especifica a duração até que o item expire. No Valor de data e hora
Observações sobre o processamento Processamento de notas relacionadas ao item. No Qualquer cadeia de caracteres alfanumérica
Prioridade O nível de prioridade do item. Sim Valor numérico de 100 (Alto), 200 (Normal), 300 (Baixo)
Referência exclusiva Um identificador exclusivo ou valor de referência para o item. No Qualquer cadeia de caracteres ou referência alfanumérica exclusiva
Status Status do item na ingestão. Sim Valor numérico de zero (Enfileirado), um (Em espera).
Atrasar até Especifica uma data e hora até que os itens da fila de trabalho sejam ignorados para processamento. No Valor de data e hora

Trecho de código Robin para criar a tabela de dados

O exemplo a seguir é um trecho de código robin (usado em fluxos tradicionais) que você pode copiar e colar diretamente na janela do designer do Power Automate desktop. Esse trecho adiciona uma ação Criar nova tabela de dados com o conjunto esperado de campos ao seu fluxo.

Variables.CreateNewDatatable InputTable: { ^['Name', 'Input', 'Expires in', 'Processing notes', 'Priority', 'Unique reference', 'Status', 'Delay until'], [$'''''', $'''''', $'''''', $'''''', $'''''', $'''''', $'''''', $''''''] } DataTable=> DataTable

Trecho de código do PowerFx para criar a tabela de dados

O exemplo a seguir é um trecho de código PowerFx que você pode copiar e colar diretamente na janela de designer do Power Automate desktop. Esse trecho adiciona uma ação Criar nova tabela de dados com o conjunto esperado de campos ao seu fluxo.

Variables.CreateNewDatatable InputTable: { ^['Name', 'Input', 'Expires in', 'Processing notes', 'Priority', 'Unique reference', 'Status', 'Delay until'], [$fx'', $fx'', $fx'', $fx'', $fx'', $fx'', $fx'', $fx''] } DataTable=> DataTable

Batchenqueueworkqueueitemsaction

A ação Adicionar vários itens da fila de trabalho requer os seguintes argumentos.

Parâmetros de entrada

Argumento Opcional Aceita Valor padrão Description
Fila de trabalho No Valor do texto O item da fila de trabalho ao qual será adicionado o item
Dados do item da fila de trabalho Sim Datatable A tabela de dados personalizada que contém os itens da fila de trabalho a serem adicionados à fila de trabalho

Variáveis produzidas

Argumento Type Valor padrão Description
FailedWorkQueueItems No Habilitadas Em caso de falhas, esse objeto manterá o índice do item que não pôde ser inserido junto com um código de erro. O índice retornado é a posição (índice) do item na tabela de dados da fila de trabalho fornecida da ação Adicionar vários itens da fila de trabalho.
HasFailedItems No Habilitadas Um indicador para saber se as ações encontraram erros de ingestão devido a problemas de dados do item da fila de trabalho.
SuccessfulWorkQueueItems Desabilitado No Um objeto personalizado que contém o índice e os itens da fila de trabalho que foram adicionados com êxito à fila de trabalho.

Exceções

Argumento Description
Fila de trabalho não encontrada O valor inserido no parâmetro da fila de trabalho é inválido
Fila de trabalho pausada ou parada Não foi possível adicionar o item da fila de trabalho à fila de trabalho porque a fila de trabalho está pausada ou parada.
Falha no enfileiramento em lote de uma lista de itens da fila de trabalho Não foi possível adicionar os itens da fila de trabalho à fila de trabalho devido a um erro de solicitação ou de comunicação.

Recolocar item na fila com atraso

A ação Reenfileirar item com atraso permite que os usuários leiam um item da fila que está sendo processada no fluxo da área de trabalho, de volta à fila de origem. Além disso, o item enfileirado pode ser retido e liberado até um horário definido.

Captura de tela da ação Recolocar na fila o item da fila de trabalho.

Requeueworkqueueitemaction

A ação Reenfileirar item com atraso requer os seguintes argumentos.

Parâmetros de entrada

Argumento Opcional Aceita Valor padrão Description
Item da fila de trabalho Não Item da fila de trabalho O item da fila de trabalho ao qual será adicionado o item
Atrasar até Não Valor de datetime Normal O valor de data e hora aplicado para atrasar o item da fila até
Expira em Sim Valor de datetime Tempo de expiração personalizado para o item que está sendo recolocado na fila
Observações sobre o processamento Sim Valor do texto, valor numérico Notas de processamento personalizadas a serem adicionadas ao novo item da fila
Limpar notas de processamento Sim Boolean False Quando habilitado, oculta e limpa o campo de notas de processamento nesta tela e remove todas as notas de processamento do banco de dados que foram capturadas anteriormente para este item

Exceções

Argumento Description
Fila de trabalho não encontrada O valor inserido no parâmetro da fila de trabalho é inválido
Item da fila de trabalho não encontrado O valor do item da fila é inválido
Falha ao reenfileirar o item da fila de trabalho O item da fila de trabalhos não pôde ser adicionado à fila de trabalhos. Solicitação inválida - erro na sintaxe da consulta

Atualizar notas de processamento de item da fila de trabalho

A ação Atualizar fila de trabalho anotações de processamento de item permite que os usuários atualizem ou limpem notas de processamento do item de fila de trabalho selecionado sem alterar seu estado ou qualquer outra propriedade.

Captura de tela da ação Atualizar Notas de Processamento de Item da Fila de Trabalho.

updateprocessingnotesaction

A ação Atualizar notas de processamento de item da fila de trabalho requer os seguintes argumentos.

Argumento Opcional Aceita Valor padrão Description
Item da fila de trabalho No Texto Variável do item da fila de trabalho que foi retornada anteriormente pelo orquestrador de filas
Observações sobre o processamento Sim Texto Resultado de processamento personalizado ou valor a ser anexado ao item da fila processado
Limpar notas de processamento Sim Boolean False Quando habilitado, oculta e limpa o campo de notas de processamento nesta tela e remove todas as notas de processamento do banco de dados que foram capturadas anteriormente para este item

Exceções

Argumento Description
Fila de trabalho não encontrada A fila de trabalho associada ao item foi excluída ou não está mais acessível
Item da fila de trabalho não encontrado O item da fila de trabalho é inválido
Falha ao acrescentar os resultados do processamento O item de fila de trabalho que está sendo atualizado encontrou um erro inesperado. Verifique a mensagem de erro para obter mais detalhes.

Obter itens da fila de trabalho por filtro

A ação Obter itens da fila de trabalho por filtro permite que os usuários recuperem um ou mais itens da fila de trabalho com base em uma expressão de filtro FetchXML .

Captura da ação Obter itens da fila de trabalho por filtro.

Getworkqueueitemsaction

A ação Obter itens da fila de trabalho por filtro requer os seguintes argumentos.

Parâmetros de entrada

Argumento Opcional Aceita Valor padrão Description
Fila de trabalho No Texto Fila de trabalho da qual serão recuperados os itens
Filtrar linhas No Texto Expressão da consulta FetchXML usada para recuperar itens da fila de trabalho
Linhas a serem retornadas No Número 5000 O número máximo de itens da fila de trabalho retornados pelo orquestrador

Variáveis produzidas

Argumento Type Valor padrão Description
WorkQueueItems No Habilitadas Lista de itens da fila de trabalho que correspondem à expressão do filtro.

Exceções

Argumento Description
Fila de trabalho A fila de trabalho da qual serão recuperados os itens.
Filtrar linhas A expressão da consulta FetchXML usada para recuperar itens da fila de trabalho.
Linhas a serem retornadas O número máximo de itens da fila de trabalho retornados pelo orquestrador (o padrão é 5000).

O que são consultas do FetchXML?

O FetchXML do Microsoft Dataverse é uma linguagem usada para recuperar dados de um banco de dados do Dataverse. Ela foi desenvolvida para ser fácil de criar, usar e entender. Por exemplo, talvez você queira solicitar ao Dataverse para fornecer uma lista de todos os itens da fila de trabalho que estão no estado IT Exception.

Com o objetivo de limitar o suporte à consulta FetchXml à recuperação de itens da fila de trabalho, oferecemos suporte apenas a um conjunto limitado de termos e expressões FetchXml. Esses termos e expressões incluem atributos, filtros, condições e expressões de ordenação, todos limitados à tabela de itens da fila de trabalho (workqueueitem). Você deve especificar explicitamente quais propriedades retornar da tabela de itens da fila de trabalho e a ordem de classificação desejada.

Exemplo de consulta FetchXML

O exemplo a seguir é uma expressão de consulta sobre como buscar várias propriedades, filtrar itens errôneos marcados como IT Exceptions e ordenar os resultados por esses registros que expiram primeiro (FEFO).

<attribute name="statecode" />
<attribute name="uniqueidbyqueue" />
<attribute name="createdon" />
<attribute name="completedon" />
<attribute name="workqueueitemid" />
<attribute name="executioncontext" />
<attribute name="name" />
<attribute name="expirydate" />
<attribute name="processingresult" />
<attribute name="priority" />
<attribute name="statuscode" />
<attribute name="modifiedon" />
<attribute name="processingstarttime" />
<attribute name="retrycount" />
<attribute name="requeuecount" />
<attribute name="input" />
<attribute name="delayuntil" />
<filter type="and">
    <condition attribute="statecode" operator="eq" value="4" />
    <condition attribute="statuscode" operator="eq" value="5" />
    <condition attribute="expirydate" operator="on-or-before" value="2024-10-18" />
</filter>
<order attribute="expirydate" descending="false" />

Consultar detalhes de suporte e dados de referência

Status (statecode)

Status Code Description
Na Fila 0 O item é enfileirado
Processamento 0 O item está sendo processado
Processadas 2 O item foi processado
Em Espera 3 O item está suspenso
Error 4 O item encontrou um erro

Razão do Status (statuscode)

Razão do status Code Description
Na Fila 0 O item é enfileirado
Processamento 0 O item está sendo processado
Processadas 2 O item foi processado
OnHold (Pausado) 3 O item está suspenso (pausado)
Exceção Genérica 4 O item encontrou uma exceção genérica
Exceção de TI 5 O item encontrou uma exceção de TI
Exceção de Negócios 6 O item encontrou uma exceção de negócios
Mensagem Morta 7 O item está suspenso
ProcessingTimeout 8 O processamento do item atingiu o tempo limite