Quando um fluxo do Power Automate é acionado por um novo arquivo em uma biblioteca de documentos do SharePoint, muitas vezes é necessário atualizar os metadados do arquivo. Se a biblioteca tiver colunas configuradas como Exigir que esta coluna contenha informações, o fluxo pode falhar com erros como Acesso Negado ou Item não existe. Isso acontece porque o usuário que criou o arquivo não tem permissão para editar os metadados no momento em que o fluxo é executado. Este artigo explica por que a verificação de permissão falha, como corrigir o design do fluxo e o que fazer se erros relacionados aparecerem.
Principais Conclusões: Corrigindo Fluxo do Power Automate em Metadados Obrigatórios
- Biblioteca ou lista do SharePoint > Configurações de coluna > Exigir que esta coluna contenha informações: Quando ativado, o criador do arquivo deve fornecer o valor, mas o fluxo é executado com uma identidade diferente.
- Power Automate > Gatilho > Usar uma condição de gatilho: Adicione uma condição para aguardar até que os metadados estejam disponíveis antes de o fluxo continuar.
- Power Automate > Ação > Atualizar propriedades do arquivo: Use o identificador do arquivo da saída do gatilho, não uma ação separada de Obter propriedades do arquivo.
Por que o Power Automate Falha em Metadados Obrigatórios Após Criar Arquivo
A causa raiz é um problema de temporização de permissão. Quando um arquivo é carregado em uma biblioteca do SharePoint, ele é criado com permissões mínimas. O criador do arquivo tem a propriedade inicial, mas a ação de atualização de metadados no Power Automate é executada sob a identidade do proprietário do fluxo ou de uma entidade de serviço. Se a biblioteca tiver colunas obrigatórias, o SharePoint bloqueia a atualização de metadados porque o criador do arquivo ainda não forneceu os valores obrigatórios. O fluxo tenta atualizar os metadados, mas o sistema vê o arquivo como incompleto e nega a operação de gravação.
Outra parte do problema é o gatilho Quando um arquivo é criado. Esse gatilho é disparado imediatamente quando o arquivo aparece na biblioteca, antes que qualquer metadado seja definido. Se o fluxo tenta atualizar as propriedades do arquivo nesse momento, a ação de atualização falha porque as colunas obrigatórias estão vazias. A mensagem de erro pode variar: Acesso Negado, Item não existe ou Não é possível concluir esta ação.
A correção envolve alterar o gatilho do fluxo ou adicionar um atraso para que o arquivo seja totalmente criado e os campos de metadados sejam preenchidos antes que a ação de atualização seja executada.
Passos para Corrigir o Fluxo: Usar uma Condição de Gatilho ou Atraso
Existem dois métodos confiáveis para corrigir esse problema. O primeiro usa uma condição de gatilho para aguardar até que os metadados obrigatórios estejam presentes. O segundo adiciona um pequeno atraso antes da ação de atualização.
Método 1: Adicionar uma Condição de Gatilho na Coluna Obrigatória
- Abra seu fluxo no Power Automate
Vá para Power Automate > Meus fluxos. Selecione o fluxo que falha em metadados obrigatórios. Clique em Editar. - Selecione o gatilho
Clique no gatilho Quando um arquivo é criado. No painel de configurações do gatilho, clique no menu … e escolha Configurações. - Adicione uma condição de gatilho
Na caixa Condições de gatilho, insira a seguinte expressão:@equals(triggerOutputs()?['body/{ColumnInternalName}'], '')Substitua{ColumnInternalName}pelo nome interno da sua coluna obrigatória. Por exemplo, se a coluna for Nome do Projeto, o nome interno éProject_x0020_Name. Essa condição instrui o fluxo a ser executado apenas quando a coluna obrigatória não estiver vazia. - Salve e teste
Clique em Salvar. Carregue um novo arquivo com a coluna obrigatória preenchida. O fluxo agora deve ser executado com sucesso.
Método 2: Adicionar um Atraso Antes da Ação de Atualização
- Abra seu fluxo
Vá para Power Automate > Meus fluxos e edite o fluxo com falha. - Insira uma ação de Atraso
Clique no + entre o gatilho e a ação Atualizar propriedades do arquivo. Pesquise por Atraso e selecione-o. Defina o atraso para 1 minuto. Isso dá tempo ao SharePoint para finalizar a criação do arquivo e aplicar os valores das colunas obrigatórias. - Ajuste a ação de Atualização
Na ação Atualizar propriedades do arquivo, certifique-se de referenciar o identificador do arquivo da saída do gatilho. Use o conteúdo dinâmico ID do gatilho. Não use uma ação separada Obter propriedades do arquivo, pois ela também pode falhar. - Salve e teste
Clique em Salvar. Carregue um arquivo. Após um minuto, o fluxo deve atualizar os metadados sem erros.
Se o Fluxo Ainda Tiver Problemas Após a Correção Principal
Mesmo após aplicar a condição de gatilho ou atraso, alguns problemas podem persistir. Aqui estão problemas comuns e suas correções.
Fluxo Falha com Erro de Acesso Negado
Se o fluxo for executado, mas receber um erro Acesso Negado, o proprietário do fluxo pode não ter permissões de edição na biblioteca. Verifique as permissões do site. O proprietário do fluxo precisa de pelo menos acesso Contribuir ou Editar à biblioteca de documentos. No SharePoint, vá para as configurações da biblioteca e verifique se a conta do proprietário do fluxo está listada com o nível de permissão correto.
Fluxo Falha com Erro de Item Não Existe
Esse erro ocorre quando o fluxo tenta atualizar um arquivo que foi movido ou excluído antes da execução da ação de atualização. Certifique-se de que o fluxo use o identificador correto do arquivo. Use o ID da saída do gatilho, não um nome de arquivo ou URL. Evite também usar um gatilho Quando um arquivo é criado em uma biblioteca onde os arquivos são movidos de outro local, pois o arquivo pode já existir.
Fluxo Falha em Metadados Obrigatórios para Múltiplas Colunas
Se a biblioteca tiver várias colunas obrigatórias, o método de condição de gatilho funciona apenas para uma coluna. Nesse caso, use o método de atraso. Alternativamente, crie uma coluna de lista do SharePoint que combine os valores obrigatórios em uma única coluna calculada e, em seguida, use a condição de gatilho nessa coluna calculada.
| Abordagem | Condição de Gatilho | Ação de Atraso |
|---|---|---|
| Complexidade de configuração | Requer nome interno da coluna | Simples, não precisa de nome de coluna |
| Lida com múltiplas colunas obrigatórias | Apenas uma coluna suportada | Funciona com qualquer número de colunas |
| Velocidade de execução | Executa imediatamente após os metadados serem definidos | Sempre aguarda o tempo de atraso definido |
| Risco de falha | Baixo se o nome interno estiver correto | Baixo, mas o atraso pode ser muito curto |
Após aplicar a correção correta, seu fluxo atualizará os metadados em novos arquivos sem erros de permissão. Para bibliotecas com várias colunas obrigatórias, o método de atraso é a escolha mais confiável. Se você usar o método de condição de gatilho, sempre teste com um arquivo que tenha a coluna obrigatória preenchida. Para melhorar ainda mais a confiabilidade, considere usar o gatilho Quando um arquivo é criado ou modificado e adicione uma condição que verifique se o arquivo possui todos os metadados obrigatórios antes de prosseguir. Essa abordagem evita problemas de temporização e funciona para qualquer número de colunas obrigatórias.