Olá pessoal –
Dando continuidade à
parte 1 do vídeo sobre gatilhos e conectores nativos do Flow para o Project
Online, vamos falar hoje sobre a ação Listar projetos. Esta é uma ação
nativa que tem como objetivo disponibilizar/listar
algumas informações dos projetos disponíveis no ambiente do Project Online.
Para simular um cenário real de
utilização da ação Listar Projetos, digamos que um administrador do Project
Online queira receber semanalmente a listagem dos projetos que foram deixados
em check-out.
Esta ação possui apenas um parâmetro de entrada, que é o endereço do site raiz do Project Online:
Uma coisa que eu gosto bastante de fazer para aprender como o Flow trabalha nos bastidores, e também para descobrir quais são os resultados disponíveis no contexto da ação executada, é executar o fluxo de fato. O objetivo aqui é descobrir se entre os campos retornados na ação Listar Projetos há algo que permita descobrir se o projeto está ou não em check-out. Portanto, vou executar o Flow e descobrir a lista de campos retornados na ação:
Uma vez confirmada a existência da propriedade chamada “IsCheckedOut”, vamos prosseguir. Como o objetivo é listar apenas os projetos em check-out, na próxima etapa vou incluir a ação Matriz do filtro (em inglês, Filter array), que permite a segmentação das informações obtidas através da aplicação de um critério. O filtro será aplicado com base no valor retornado Projetos retornados Foi feito check-out:
A condição deve ser verdadeira (true):
So far so good... temos a nossa lista de projetos em check-out. A questão agora é: como organizá-la? Para enviar a lista por e-mail, uma boa alternativa é convertê-la em uma tabela, para que os dados sejam estruturados adequadamente. Nesse sentido, na próxima etapa vou utilizar a ação Criar Tabela HTML, onde iremos obter o resultado/output do passo anterior como entrada/input:
Aqui é importante notar algo relevante: apesar de o passo anterior estar filtrando apenas os projetos em check-out, todas as propriedades (colunas) estão sendo obtidas... isso significa que a tabela HTML não será estruturada adequadamente caso alguns ajustes não sejam feitos. Desse modo, ainda nesta etapa, clique em Mostrar opções avançadas para que seja possível determinar quais são as informações a serem exibidas na tabela. Perceba que você poderá criar um cabeçalho e então determinar quais propriedades deseja utilizar:
Nesse ponto acabei descobrindo que
há um pequeno bug no conector do Flow 😕.
Os resultados obtidos na ação Matriz do filtro disponibilizam uma propriedade
chamada ‘Nome do Projeto’,
que em teoria deveria trazer o nome do projeto conforme filtrado anteriormente.
Acontece que, por algum motivo desconhecido, essa propriedade não está
relacionada ao nome do projeto, mas sim à propriedade ‘Nome
do Tipo de Projeto da Empresa’. Isso que dizer
que a tabela não irá conseguir disponibilizar/listar os nomes dos projetos em
check-out 😔.
Tenho que confessar que eu fiquei
bem frustrado ao descobrir isso, pois o nome do projeto é uma propriedade
essencial para o tipo de resultado que desejamos obter nesse exemplo. De
qualquer maneira, já reportei o bug à Microsoft, então vamos continuar... ao
invés de retornar os nomes dos projetos em check-out, iremos retornar outras
três informações:
- O identificado do projeto
- A última data em que o projeto foi
salvo
- O Id interno do projeto
Ao rodar o fluxo, teremos o
seguinte resultado:
Para finalizar, vou
configurar o envio de um e-mail com base nos resultados da tabela HTML. Nas
configurações da ação Enviar um email lembre-se de expandir as opções
avançadas para determinar que se trata de uma mensagem HTML:
Quando o fluxo rodar na
data pré-definida, as notificações serão enviadas conforme exemplo abaixo:
Considerações
Como foi possível observar nesse
post e também no post anterior, infelizmente os gatilhos e conectores nativos
do Flow com o Project Online parecem não terem recebido a atenção merecida,
exigindo certo malabarismo para que seja possível trabalhar com as informações que
precisamos. Por este motivo irei dar continuidade a esta série de posts, onde
iremos continuar explorando outras alternativas que permitam maior flexibilidade
na obtenção dos campos disponíveis na api do Project Online. Fique ligado aqui
no blog.
Um
forte abraço e até o próximo post!
Nenhum comentário:
Postar um comentário