Skip to main content
Product Hacks

Como atualizar responsáveis de campos em massa?

Como atualizar responsáveis de campos em massa?
Nicole Chiroli
Pipefy Staff
Forum|alt.badge.img+10

Você sabia que existe uma maneira fácil e prática de atualizar os responsáveis de vários campos  de uma única vez ;)

 

Vamos supor que alguém da sua empresa não está mais trabalhando naquele setor e, portanto, não faça mais parte de um  pipe. No entanto, essa pessoa tinha muitos cards atribuídos a ela que agora essas tarefas estão sem responsável. O que você pode fazer? Atribuir manualmente, editando um a um? Muito trabalhoso, né? 

 

Você pode atribuir a responsabilidade desses cards de maneira bem fácil e rápida utilizando a nossa API, caso a sua empresa esteja nos planos business ou enterprise (https://www.pipefy.com/pricing/) e você tenha permissão de administrador nesse pipe. 

 

Obs.:Se não estiver em um desses planos e deseje fazer um upgrade de sua conta, você pode entrar em contato com a equipe de suporte ou com o seu CSM, caso possua. ;) 

 

Vou ensinar como fazer isso hoje e não se preocupe, é muito mais fácil do que parece, eu prometo! :) 

 

Vamos lá!

1. Primeiro você precisa criar um relatório para extrair os IDs dos cards que deseja atualizar.. Então, o que precisamos fazer aqui é ir aos relatórios de pipe e, com o auxílio do filtro, extrair apenas os cards que queremos atualizar o responsável. 

 

A sua busca vai depender do seu processo. Seriam os cards criados em determinado tempo? Cards em determinada fase? Cards atribuídos a alguém e que você deseja passar a outra pessoa? Basta filtrar esses cards e fazer o download desse relatório com seus IDs. 

 

2. Agora vamos para a parte divertida, que é em nossa página de GraphiQL (https://app.pipefy.com/graphiql). 

 

3. Agora precisamos consultar os IDs dos usuários  para quem deseja atribuir esses cards. Você pode conseguir esses IDs de duas formas. 

> Consultando pela API;

> Consultando com o próprio usuário. Cada pessoa consegue ver seu próprio ID indo às suas configurações e obtendo seu ID na URL da página;

 

4. Agora que você tem os IDs dos cards e dos usuários, precisamos apenas executar a mutation para alterar os campos dos cards. ;)

 

Novamente, basta colar a mutation abaixo no lado esquerdo da página:

mutation {

a1 :updateCard(input: {id: aqui você coloca o ID do card , assignee_ids: aqui coloca o id do usuário que será o novo responsável  }){card{id}}

}

 

E agora pronto, só apertar o play! 


Voilà! Viu? É fácil do que parece. 

 

Obs.:Você apenas pode alterar 30 campos por vez, não mais do que isso, okay? Mas você atribuir esses cards a mais de um responsável, se desejar. 

 

Então, o que achou?  Existem outras dicas que gostaria de aprender utilizando a nossa API? Conta pra gente ;)

Did this topic help you find an answer to your question?

18 replies

ivan.novofoco
Forum|alt.badge.img+10
  • Pipefy Certified Partner
  • 136 replies
  • August 3, 2020

@Janaina_Barreto

Olha que legal!

Apesar da necessidade de “escrever” a alteração para cada card, dá pra pra preparar esses dados em uma planilha Excel com todos os IDs e alterações e depois concatenar as linhas pra colar no GraphQL.

A função updateCard pra alterações com um volume maior vale a pena.


Nicole Chiroli
Pipefy Staff
Forum|alt.badge.img+10
  • Author
  • Product Manager
  • 301 replies
  • August 3, 2020

Perfeito! Eu sempre faço assim também, @ivan.novofoco. Aí é só copiar e colar no GraphQL e vai rapidinho e bem fácil :) 


Juliana Spinardi
Pipefy Staff
Forum|alt.badge.img+8

ótima dica, @Nicole Chiroli 
Obrigada pelo artigo! 


angela-miya
  • New Member
  • 1 reply
  • October 13, 2020

Bom dia! Obrigada pela dica. Estou explorando esta dica, e queria usar para outros tipos de campos. Tentei para o tipo Label mas não consegui. Quais os tipos de campos são possíveis? Obrigada


Nicole Chiroli
Pipefy Staff
Forum|alt.badge.img+10
  • Author
  • Product Manager
  • 301 replies
  • October 13, 2020

Olá @angela-miya, tudo bem?

Com o “updateCard” não é possível. Mas você pode utilizar o “UpdateCardField” e colocar o valor do campo que deseja com o “new_value”:
 

No caso da label você precisa achar quais são os labels:
query{
  pipe(id:xxx){
    labels {
      id
      color
      name
    }
    name
    }
}

E aí depois você atualiza, por exemplo, assim:
mutation{
a1: updateCardField(input:{ card_id: xxx field_id: "label" new_value: [id do label]})
a2: updateCardField(input:{ card_id:  xxxx field_id: "label" new_value: [id do label]})   
 }

Qualquer dúvida, estou à disposição! :) 


Moacir Souza
  • New Participant
  • 12 replies
  • December 8, 2020

@Nicole Chiroli  eu tenho um campo e-mail2, e gostaria de gravar nele o e-mail do card quando o card for criado.

 

Consigo fazer isso na api com uma linha de comando apenas?


Larissa Cruz

Oi, gente! Tudo bem?

 

Preciso fazer a alteração de algumas propriedades em massa, mas estão vinculadas as questões que respondem para fazer a solicitação. É possível fazer isso utilizando esse código?

 

Por exemplo, que atribuir alguns cards a um novo “tipo de necessidade” pois está em branco atualmente. Será que consigo dessa forma? 

 

Agradeço imensamente o conteúdo.


lais_lot
Pipefy Staff
  • Pipefy Staff
  • 16 replies
  • February 3, 2022

Olá @Moacir Souza 

Você precisaria de dois comando, um de leitura do card que foi criado para saber o endereço de email dele 

Ex:

{
    card(id:123){
    emailMessagingAddress
  }
}

E outro para fazer um update no card onde você gostaria de gravar esse email

Um campo de email por exemplo:

mutation {
  updateCardField(input: {card_id: 123, field_id: "campo_email", new_value: "email_card@mail.pipefy.com"}) {
    success
  }
}

PS: se o card for criado via API, você pode pedir no retorno da criação o email

Ex:

mutation {
  createCard(input: {pipe_id: 456, fields_attributes: [{field_id: "t_tulo_card", field_value: "Card 1"}]}) {
    card {
      id
      emailMessagingAddress
    }
  }
}

 


lais_lot
Pipefy Staff
  • Pipefy Staff
  • 16 replies
  • February 3, 2022

Oi @Larissa Cruz ,

Sim, é possível fazer alteração em massa, você precisará do ID do campo e dos IDs dos cards

A query é de mutation updateCardField

Ex:

mutation {
  n1: updateCardField(input: {card_id: 123, field_id: "tipo_de_necessidade", new_value: "Novo tipo de necessidade"}) {
    success
  }
  n2: updateCardField(input: {card_id: 123, field_id: "tipo_de_necessidade", new_value: "Novo tipo de necessidade"}) {
    success
  }
  n3: updateCardField(input: {card_id: 123, field_id: "tipo_de_necessidade", new_value: "Novo tipo de necessidade"}) {
    success
  }
  n4: updateCardField(input: {card_id: 123, field_id: "tipo_de_necessidade", new_value: "Novo tipo de necessidade"}) {
    success
  }
  n5: updateCardField(input: {card_id: 123, field_id: "tipo_de_necessidade", new_value: "Novo tipo de necessidade"}) {
    success
  }
}

 


digital35
  • New Member
  • 2 replies
  • February 10, 2022

Nossa muito bom mesmo esse recurso! 


andressa-santos3
Forum|alt.badge.img

Nossa! Muito bom mesmo esse recurso!


kesia-oliveira

oie gente, tudo bem? 

 

fiz a inclusão de alguns negocios, porém ficou faltando o campo (data) e eu gostaria de atualizar via ids. 

 

é possivél? 


pedro-ferrari1

Prezados,

 

Como faço a alteração de responsáveis para mais de uma pessoa?

 

Gostaria de adicionar mais de um responsável em vários cards seguindo o exemplo acima.


rafael.jefte
Forum|alt.badge.img+6

Muito massa esse recurso! 


pedro-ferrari1
pedro-ferrari1 wrote:

Prezados,

 

Como faço a alteração de responsáveis para mais de uma pessoa?

 

Gostaria de adicionar mais de um responsável em vários cards seguindo o exemplo acima.

Para alterar em massa, nomeando mais de uma pessoa como responsável, faço dessa maneira:

mutation{
  a1 :updateCard(input: {id: ID DO CARD, assignee_ids: [ID DO RESPONSÁVEL 1, ID DO RESPONSÁVEL 2]}) {card{id}}
}

 


Bruno Floripa

Ola Pessoal, tudo bem? :)

 

Temos um database com 1900 registros/cards e precisamos alterar 6 campos em cada card. Pelos exemplos acima teria que criar um script com 11.400 linhas, uma para cada ID x 6 campos e executar de 30 em 30 😩

Tentei “adaptar” o script colocando todos os campos de um ID. mas quando executa só atualiza a ultima Label 

 

mutation
{
n1 :setTableRecordFieldValue(input:{
table_record_id: 519092347


field_id: "nome_completo_do_paciente"
value: "NOME COMPLETO TESTE API"


field_id: "primeiro_nome_do_paciente"
value: "PRMEIRO 1"


field_id: "sobrenome_do_paciente"
value: "SOBRENOME 1"


field_id: "email"
value: "email@testes.com.br"

}) {
clientMutationId
}
}

 

Please.. digam que existe uma alternativa! 


pedro-ferrari1
Bruno Floripa wrote:

Ola Pessoal, tudo bem? :)

 

Temos um database com 1900 registros/cards e precisamos alterar 6 campos em cada card. Pelos exemplos acima teria que criar um script com 11.400 linhas, uma para cada ID x 6 campos e executar de 30 em 30 😩

Tentei “adaptar” o script colocando todos os campos de um ID. mas quando executa só atualiza a ultima Label 

 

mutation
{
n1 :setTableRecordFieldValue(input:{
table_record_id: 519092347


field_id: "nome_completo_do_paciente"
value: "NOME COMPLETO TESTE API"


field_id: "primeiro_nome_do_paciente"
value: "PRMEIRO 1"


field_id: "sobrenome_do_paciente"
value: "SOBRENOME 1"


field_id: "email"
value: "email@testes.com.br"

}) {
clientMutationId
}
}

 

Please.. digam que existe uma alternativa! 

Boa tarde, Bruno.

Eu tentaria gerar um relatório no pipe, com as informações de todos os ids dos cards a serem modificados. Também incluiria nesse relatório os dados atuais que você quer alterar.

 

Depois pegaria esse script base que você comentou acima e colocaria no excel. Então usaria a função concatenar no excel para fazer o preenchimento do script:

Depois é só copiar para as outras linhas que ele já aplica a função nas linhas abaixo.

 

Então eu copiaria tudo, colaria num bloco de notas e colaria de 30 em 30 no GraphiQL.

 

Espero ter ajudado.


Bruno Floripa

Grande Pedro. muito obrigado pelo retorno. 

Não consegui captar como ficaria a sintase do script apos concatenar os campos! Poderia me enviar uma linha de exemplo/modelo de como ficaria com todos os campos? (podem ser fictícios mesmo )

As tentativas que fiz usando mais de um campo por id a execução só alterou o ultimo campo no script. 

(no modelo que passei no post acima so alterou o campo EMAIL, que era o ultimo campo da sintase) 


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings