Olá pessoal –
Este é o terceiro post da série onde estamos
falando sobre como atualizar campos no Project Online através do Power
Automate. No post
de estréia falamos sobre como atualizar o campo nativo
Nome do Projeto, enquanto que no segundo post falamos sobre como atualizar um campo personalizado de digitação livre.
Atualizando campos personalizados baseados em uma
tabela de pesquisa
Conforme discutido no segundo post da série,
quando precisamos atualizar um campo personalizado no Project Online é preciso
especificar o campo a ser populado, através da declaração do seu nome interno.
Se o campo personalizado for do tipo digitação
livre, então basta inputar o seu valor livremente na propriedade Value através
do script. Porém, se o campo personalizado for baseado em uma tabela de
pesquisa, então o input livre do valor não é suportado, sendo necessário não só
declarar o nome interno do campo como também o código interno da propriedade
que é representada pelos valores da tabela de pesquisa.
Convertendo isso para um cenário do mundo real:
suponha que você possua um campo personalizado chamado Project Phase, o qual
está associado a uma tabela de pesquisa chamada Project Phase. Você
precisa que o Power Automate seja capaz de popular o campo, definindo o seu
valor para uma das opções disponíveis na tabela de pesquisa (digamos que o
valor desejado seja ’01 – Initiation’).
Abaixo as intruções completas que foram
utilizadas no processo de atualização:
……………………………………………………………………….
Site Address: Utilize a URL do seu PWA
Method: POST
Uri: _/api/ProjectServer/Projects(' <Id do projeto>
')/Draft/UpdateCustomFields
Headers:
Content-Type | application/json;odata=nometadata
IF-MATCH | *
X-HTTP-Method | POST
Body:
{
"customFieldDictionary":[
{
"Key":"Custom_<nome interno do campo
personalizado>",
"Value":"<código interno da
propriedade da tabela de pesquisa>",
"ValueType":"Edm.String"
}
]
}
……………………………………………………………………….
Lembrando que os items destacados em amarelo devem
ser substituídos pelos seus respectivos valores.
Por fim, a última ação deverá publicar o projeto
e efetuar o check-in, para garantir que todas as atualizações ocorram de maneira
adequada.