Exercício: arquivar uma lista do SharePoint em uma agenda
No exercício anterior, você criou um fluxo da nuvem automatizado que uma ação em outro sistema disparava, ou seja, a criação de outro item em uma lista do SharePoint. No entanto, outras maneiras estão disponíveis para iniciar fluxos no Power Automate. Neste exercício, você aprenderá a criar um fluxo da nuvem agendado para automatizar o arquivamento de dados no SharePoint regularmente.
Como você usa a mesma lista do Controlador de Problemas da unidade anterior Exercício: enviar uma mensagem do Teams quando um item é adicionado ao SharePoint, verifique se as primeiras etapas nessa unidade já foram concluídas para configurar sua lista de origem. Depois de criar uma lista de origem, você pode criar a lista de destino, que serve como o arquivamento.
Criar uma lista de arquivamento em branco
Para criar uma lista de arquivamento do zero, siga estas etapas:
- No seu site do SharePoint, selecione Novo > Lista.
- Selecione Da lista existente, já que você deseja que essa nova lista de arquivamento corresponda precisamente ao esquema da lista antiga.
- Localize e selecione Controlador de Problemas nas opções e selecione Avançar.
- Nomeie a lista como Arquivamento do Controlador de Problemas e selecione Criar.
Essas etapas são as únicas concluídas no SharePoint. Você completa o restante do exercício no Power Automate.
Criar um fluxo
Para criar um fluxo, siga estas etapas:
Acesse https://make.powerautomate.com e selecione Criar > Fluxo da nuvem agendado.
Dê ao fluxo um nome significativo, como Arquivar dados do Controlador de Problemas.
Selecione uma data de início para que o fluxo comece a ser executado e, em seguida, defina um horário que faça sentido para a atualização do arquivamento. Você pode considerar a seleção de um tempo de inatividade, quando não acontece muita atividade na lista, como no meio da noite. Para este exercício, a data e a hora não importam, então, escolha qualquer data futura e 1:00.
Dica
Os fluxos agendados não podem ser repetidos mais de uma vez por minuto. No entanto, o menu suspenso de incremento de tempo fornece a opção de Segundo, de modo que a interface não impedirá você de criar um fluxo agendado que se repita a cada um segundo ou 10 segundos, por exemplo. Você só consegue descobrir que ocorreu um problema quando tenta salvar o fluxo, momento em que um erro é lançado. Você precisa atualizar o gatilho Recorrência para ter 60 segundos ou mais antes de salvar. A opção de Segundo existe para permitir um agendamento mais granular, como a execução a cada 90 segundos, a cada 318 segundos ou qualquer tempo necessário para seu aplicativo. Se você agendar uma recorrência de fluxo usando a opção de Segundo, o número de segundos precisará ser de 60 ou mais.
Dependendo de quão ativa for a sua lista, escolha um agendamento de recorrência que funcione para você. Uma vez por dia é provavelmente uma boa escolha para muitos aplicativos. Portanto, escolha essa opção e selecione Criar.
Antes de adicionar ações, revise sua estratégia geral para este fluxo. Você pode usar um fluxo de arquivamento para:
- Adicionar novos itens da lista de origem ao destino.
- Adicionar novos itens e também procurar atualizações na lista de origem, o que atualiza o item correspondente no arquivamento.
- Adicionar novos itens e uma nova cópia dos itens atualizados, o que mantém o original intacto para preservar um registro das alterações.
Para este exercício, você utiliza a terceira opção.
Adicionar a ação Obter itens
Com a ação Obter itens, você pode encontrar o item mais recente em sua lista de arquivamento. A data de criação desse item mostra a última vez que seu fluxo adicionou algo ao arquivamento. Essa data é o ponto de partida para encontrar novos itens na lista de origem para arquivamento. Se a lista de arquivamento estiver vazia quando você executar o fluxo pela primeira vez, haverá opções para contornar o problema, que será abordado posteriormente neste módulo.
Em Recorrência, selecione o ícone de mais (+) e, em seguida, Adicionar uma ação.
Na caixa de pesquisa, procure e selecione a ação Obter itens abaixo do título do SharePoint.
Selecione Endereço do Site e, em seguida, localize seu site do SharePoint.
Selecione Nome da Lista e localize o nome da sua lista de Arquivamento, não a origem.
Selecione Mostrar tudo ao lado do menu suspenso Parâmetros avançados para expor os parâmetros extras desta ação.
Você está usando essa ação para capturar a data e a hora de criação do item mais recente em sua lista de arquivamento. Portanto, você só precisa obter um item, mas precisa que ele seja o item mais recente. Para fazer isso, é possível usar uma consulta ODATA simples inserindo as seguintes informações:
No campo Order By, insira Created desc.
Observação
Essa consulta ODATA informa a ação a ser ordenada pelo campo Created, que é um datetime no SharePoint. Desc é o código para decrescente, o que significa que os itens mais novos são listados primeiro. Para inverter essa ordem, use a abreviação asc para ordem crescente.
No campo Top Count, digite 1.
Observação
Top Count indica o número máximo de registros a serem retornados. Você só precisa do registro mais recente; portanto, digite 1 no campo.
Inicializar uma variável para armazenar a data e hora de criação
Mais tarde no fluxo, outra ação Obter itens recupera todos os itens da lista de origem com uma data de criação ou modificação posterior ao item mais recente na lista de arquivamento. Para determinar esse ponto de partida, use a variável varCreatedDatetime. No entanto, se a lista de arquivamento estiver vazia (como se fosse a primeira vez que você executasse o fluxo), nenhum item estará presente para fornecer um datetime inicial. Nesse caso, defina a variável para uma data antiga, como 1º de janeiro de 1900, de modo a garantir que todos os itens na lista de origem sejam incluídos. O sistema formata essa data no formato ISO 8601 UTC, que é o padrão usado pelo SharePoint para armazenar valores datetime.
Em Obter itens, selecione o ícone de mais (+) e, em seguida, Adicionar uma ação.
Na caixa de pesquisa, procure e selecione Inicializar variável abaixo do cabeçalho Variável.
Selecione Nome e digite varCreatedDatetime.
Selecione o menu suspenso Tipo e, em seguida, Cadeia de Caracteres.
Selecione Valor e cole este valor: 1900-01-01T00:00:00Z
Defina a variável varCreatedDatetime se os itens estiverem na lista de arquivamento
Para definir a variável varCreatedDatetime se os itens estiverem na lista de arquivamento, siga estas etapas:
- Em Inicializar variável, selecione o ícone de mais (+) e, em seguida, Adicionar uma ação.
- Na caixa de pesquisa, procure e selecione a opção Definir variável na lista.
- Selecione o menu suspenso Nome e varCreatedDatetime.
- Selecione Valor e, em seguida, o ícone de raio.
- Na caixa Pesquisar, insira Created.
- Vários campos da ação Obter itens aparecem com a palavra Created neles. Selecione aquele que contém apenas Created, e não Created by.
Nesse ponto, o Power Automate cria automaticamente um loop For each e coloca a ação Definir variável dentro dele. Isso poderá ser inesperado se você for novo no Power Automate, mas isso acontece porque a ação Obter itens retorna uma lista de itens (chamada de matriz). Ao aplicar outra ação a uma matriz, o Power Automate cria um loop para processar cada item na matriz. Se você não limitou a Contagem Principal a 1, a ação Obter itens retornará todos os itens na lista de arquivamento e o Power Automate fará loop em cada um, atualizando a variável varCreatedDatetime com a data em Created de cada item na lista. Nesse caso, como você limitou os resultados a 1, o loop é executado apenas uma vez (definindo varCreatedDatetime para a data em Created do item mais recente) ou não será executado se a lista de arquivamento estiver vazia. Se o loop não for executado, a variável permanecerá em seu valor padrão de 1º de janeiro de 1900.
Adicionar outra ação Obter itens
Agora você precisa obter os itens da sua lista de origem que têm um datetime de criação ou modificação mais recente que varCreatedDatetime.
Em vez de adicionar a ação Obter itens novamente, você pode usar a funcionalidade de copiar/colar do Power Automate. Para fazer isso, clique com o botão direito do mouse no cartão Obter itens e selecione Copiar ação.
Selecione o ícone de mais (+) no loop For each (não em Definir variável, mas abaixo da caixa delimitadora ao redor do loop For each). Selecione Ação de colar. Agora, uma ação Obter cópia do item aparece na tela. Sempre que seu fluxo tiver várias variantes da mesma ação, é aconselhável renomear essas ações de uma forma que as diferencie claramente. Essa abordagem é especialmente útil quando você precisa saber quais campos acompanham a ação ao selecionar dados dinâmicos para outras ações. Portanto, antes de continuar, você precisa atualizar seus nomes da seguinte maneira:
- Selecione o primeiro cartão Obter itens. Na folha de parâmetros que é aberta à esquerda, selecione o título Obter itens na parte superior da tela. O texto sem formatação se transforma em uma entrada de texto que você pode renomear. Mantenha o nome da ação intacto, mas adicione um hífen e um título descritivo para gerar um título diferente, como Obter itens - Registro de Arquivamento Mais Recente.
- Selecione o cartão Obter cópia dos itens e atualize-o, renomeando-o para Obter itens - Itens de Origem para Arquivamento.
Mantenha-se na ação Obter itens - Itens de Origem para Arquivamento e altere o Nome da Lista para a lista de origem, Controlador de problemas.
Selecione o botão Mostrar tudo à direita de Parâmetros avançados.
Exclua os parâmetros Order By e Top Count; você não precisará deles para essa ação. Para fazer isso, selecione o X à direita do campo de entrada ou selecione o texto em cada campo e exclua-o.
Para recuperar apenas os itens mais recentes do que o item mais recente da sua lista de arquivamento, você deve criar uma consulta OData. A consulta precisa filtrar pelos critérios Created e Modified, pois seu fluxo captura itens que foram criados desde o backup anterior e itens que foram modificados desde o último backup.
Selecione o campo de entrada Filtrar Consulta.
Digite Created gt '' ou Modified gt ''
Observação
A instrução é colocar duas aspas simples depois de gt, e não aspas duplas. Em caso de dúvida, copie e cole estas instruções.
Coloque o cursor entre o primeiro conjunto de aspas simples e, em seguida, selecione o ícone de raio.
Selecione varCreatedDatetime no cabeçalho Variáveis.
Repita as mesmas etapas, colocando o cursor entre as aspas simples após Modified gt e selecionando varCreatedDatetime.
Adicionar a ação Criar item
Agora é hora de fazer loop em todos os itens que a ação Obter itens - Itens de Origem para Arquivamento coleta e, em seguida, copiar cada item para a lista de arquivamento usando a ação Criar item. Sua ação Criar item deve se parecer com a captura de tela a seguir.
Em Obter itens - Itens de Origem para Arquivamento, selecione o ícone de mais (+) e, em seguida, Adicionar uma ação.
Na caixa de pesquisa, procure e selecione a ação Criar item abaixo do título do SharePoint.
Selecione Endereço do Site e, em seguida, localize seu site do SharePoint.
Selecione Nome da Lista e localize o nome da sua lista de Arquivamento, não a origem.
Selecione Mostrar tudo ao lado do menu suspenso Parâmetros avançados para expor os parâmetros extras desta ação.
Selecione o campo Título, o ícone de raio e, na caixa Pesquisar, digite Título.
Na lista sob o título Obter itens - Itens de Origem para Arquivamento, selecione Título.
Como o sistema aplica essa ação a cada item retornado pela ação Obter itens - Itens de Origem para Arquivamento, o Power Automate cria automaticamente um loop For each e coloca a ação Criar item dentro dele. Essa resposta é esperada. É possível concluir manualmente essa ação criando sua própria ação Aplicar a cada primeiro e, em seguida, colocando Criar item dentro, mas o método mais fácil neste caso é permitir que o Power Automate faça o trabalho para você.
O próximo campo em Título na ação Criar item é Descrição do Problema, e as colunas restantes continuam abaixo. Para cada coluna, conclua as seguintes ações:
Selecione o campo, em seguida, o ícone de raio e procure o nome da coluna na caixa Pesquisar.
Localize a correspondência no título Obter itens - Itens de Origem para Arquivamento e selecione-a.
Algumas colunas são colunas de Opção ou colunas de Pesquisa, e você precisa tratá-las de forma diferente. Por exemplo, Valor da Prioridade e Valor do Status são colunas de Opção, enquanto Atribuído a Reivindicações é uma coluna de Pesquisa.
Para cada coluna, selecione o menu suspenso sob o título do campo e, se necessário, role até o fim da lista e selecione Inseri valor personalizado. Em seguida, selecione o ícone de raio e continue normalmente na seleção do item correspondente em Obter itens - Itens de Origem para Arquivamento.
Quando estiver trabalhando com colunas de Opção, certifique-se de selecionar a versão Valor do campo (por exemplo, Valor da Prioridade, e não Prioridade). É importante saber essas informações devido à maneira como as colunas de Opção são armazenadas no SharePoint.
Depois de mapear cada coluna da ação Criar item para a coluna correta da lista de origem, salve e teste o fluxo. Antes de testar, verifique se a lista de arquivamento está vazia e se pelo menos uma ou duas linhas de dados são exibidas na lista de origem. Em seguida, para testar o fluxo, siga estas etapas:
- Selecione Salvar.
- Selecione Testar.
- Selecione Manualmente.
- Selecione Testar.
- Selecione Executar Fluxo.
- Selecione Concluído.
Depois de um tempo, seu fluxo deve ser executado e um banner verde deve aparecer na parte superior do fluxo com a mensagem Seu fluxo foi executado com êxito. Antes de continuar, certifique-se de observar que as informações no Histórico de Execuções de um fluxo são extensas, e você pode aprender muito sobre como seu fluxo funciona (e criticamente, quando ele não funciona) revisando os êxitos e falhas nas execuções de teste.
Como esta é a primeira vez que seu fluxo foi executado e a lista de arquivos estava vazia, a variável varCreatedDatetime permanece na data padrão de 1º de janeiro de 1900. Esse resultado é evidente no primeiro loop For each, em que o ícone ignorado aparece no canto superior direito da ação Definir variável, indicando que a ação foi ignorada.
Para observar as alterações quando a lista de Arquivamento é preenchida, siga estas etapas:
- Vá para sua lista de Arquivamento no SharePoint e atualize-a. Cópias de tudo o que está na sua lista de origem devem ser exibidas.
- Vá para sua lista de origem e adicione outro item a ela.
- Retorne para o seu fluxo e selecione Editar.
- Selecione Testar > Manualmente > Testar > Executar Fluxo > Concluído.
- Desta vez, um indicador 1 de 1 aparece sob o primeiro loop For each e uma marca de seleção verde aparece no canto superior direito de Definir variável. A aparência desses componentes indica que a ação For each tinha um item com o qual trabalhar na ação Obter itens – Registro de Arquivamento Mais Recente e que ela definiu varCreatedDatetime como seu datetime Created.
- Atualize sua lista de Arquivamento. O novo item deve aparecer como adicionado à lista. Verifique se não há duplicatas de itens presentes. Se aparecerem duplicatas, é possível que tenha ocorrido um problema com Filtrar Consulta em Obter itens - Itens de Origem para Arquivamento.
- Como teste final, modifique um dos registros existentes na lista de origem, o que deve forçar o sistema a adicionar uma nova cópia ao arquivamento, deixando o original intacto.
- Retorne à lista de origem, selecione um dos registros e altere algo nele, como a descrição do problema ou a prioridade. Certifique-se de confirmar a alteração antes de retornar ao seu fluxo.
- Retorne para o seu fluxo e selecione Editar.
- Selecione Testar > Manualmente > Testar > Executar Fluxo > Concluído.
- Revise sua lista de Arquivamento. Uma nova cópia do item modificado deve aparecer, com o original intacto, sem outras duplicatas.
Neste exercício, você concluiu um fluxo de exemplo que pode ser usado em um cenário real na automação do processo de arquivamento de dados no SharePoint. Se você definir a Recorrência do fluxo para ser executada em algum momento nas próximas 24 horas, adicione alguns itens à sua lista de origem e retorne no dia seguinte para ver se o fluxo foi executado conforme agendamento e atualizou o arquivamento. Parabéns, você está automatizando como um profissional.