Olá pessoal –
Tenho percebido um
número cada vez maior de empresas que tem optado pelo Project for the web como
solução definitiva de gerenciamento de projetos, em detrimento ao Project
Online. Em alguns casos, empresas que gerenciam seus projetos ativamente no
Project Online têm feito planos para migrar seu portfolio para o Project for
the web – um indicador de que, no médio/longo prazo, essa plataforma ganhará
cada vez mais adeptos.
Recentemente apoiei
um cliente em um processo de automação via Power Automate para realizar a
migração do portfolio de projetos do Project Online para o Project for the web,
e gostaria de documentar aqui minhas descobertas e lições aprendidas. O escopo
geral do trabalho seria migrar os projetos em andamento do Project Online para
o Project for the web (cerca de 350 projetos no total), englobando apenas as
informações de nível de projeto, como nome, proprietário, patrocinador e demais
atributos – cronogramas/tarefas não seriam migrados.
É importante
ressaltar que os mesmos passos também podem ser aplicados por uma organização
que esteja realizando o gerenciamento de projetos em qualquer plataforma ou
sistema, como Primavera, Project Server, ou mesmo o velho e bom Excel.
..................................................
A planilha precisa
então ser salva em uma biblioteca do SharePoint, para que seja possível obter
os registros (linhas) através do Power Automate.
Outro ponto muito
importante é mapear os tipos de campo (atributos) utilizados para categorizar os
projetos no Project for the web. Como expliquei nesse vídeo, é possível criar campos de diferentes tipos (como Tabela de Pesquisa,
Escolha, Texto Livre, etc.), então cada atributo (coluna) da planilha precisará
ser tratado de maneira diferente quando da realização do mapeamento e conversão
para sua contra-parte no Project for the web.
O tratamento de dados a ser realizado na coluna ProjectDirection utilizará a ação de controle Switch do Power Automate para converter o texto oriundo da planilha (que é um texto livre) no valor respectivo da lista de escolha do campo de mesmo nome, o quel foi criado no Dataverse:
Nesse caso, ao observar os valores de escolha do campo Project Direction na tabela Projects, será possível identificar o valor que de fato é armazenado pelo sistema para cada uma das opções disponíveis:
Ou seja: quando o usuário escolhe a opção Information Technology na lista suspensa o Power Apps está, de fato, gravando o valor 884.760.000 na tabela. Dessa forma, a ação de controle Switch deverá ser configurada para converter o texto oriundo da planilha no valor específico correspondente, pois é esse o valor que deverá ser passado como parâmetro de entrada quando do cadastramento do projeto via processo de automação:
Uma lógica parecida se aplica quando da necessidade de realizar o tratamento de informações que são oriundas de uma tabela de pesquisa, como é o caso do campo Sponsor do exemplo atual. Nesse cenário, o atributo Sponsor tem como origem a tabela de pesquisa Users, e sendo assim deve-se pesquisar nessa tabela o usuário que corresponde ao endereço de e-mail informado na planilha:
- Calendar Id
- Contracting Unit (Organizational Units)
- Schedule mode
- Work hour template (Work template)
- Criei um novo fluxo no Power Automate, disparado quando da criação de um novo projeto
- Adicionei uma ação qualquer (por exemplo, iniciar uma nova variável), pois todo fluxo deve possuir pelo menos uma ação após seu disparo
Com isso, bastou criar manualmente um novo projeto no Project for the web para que esse fluxo auxiliar fosse disparado. Uma vez executado, foi possível colher os resultados do fluxo, os quais contemplam as informações que precisávamos para finalizar o processo de automação original:
Assim, quando tudo estiver pronto, basta iniciar o fluxo de maneira manual para que todos os projetos da planilha sejam devidamente cadastrados no Project for the web, respeitando e mantendo seus respectivos atributos:
...............................................
Confesso que
essa não é, definitivamente, uma tarefa simples e corriqueira. Porém, foi muito
gratificamente poder cadastrar todos esses 350 projetos de maneira automática –
além de todo o aprendizado gerado a partir dessa necessidade.