Usuário com melhor resposta
CRM 2011 - Atualizar registro a partir do ID com Plugin

Pergunta
-
Como faço pra atualizar um registro a partir de seu ID, ou seja, tenho o ID do registro, quero alterar os dados e posteriormente atualizar com o método "UPDATE" ?
não sei se estou no caminho correto, mas:
Tenho que criar um objeto que faz referencia a um registro já criado, correto? seria com o EntityReference ? se for quais parâmetros tenho que passar?
Respostas
-
Daniel,
Primeiro faça uma consulta na entidade que precisa recuperar pelo ID, depois com a entity "carregada", faça suas alterações e dê o update.
Um exemplo:
RetrieveMultipleRequest retriveMultiple; String fetchXml; EntityCollection entityCollection; Entity entity = null; // Consulta fetchXml = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>" + "<entity name='ENTIDADE'>" + "<attribute name='ATRIBUTO' />" + "<attribute name='ATRIBUTO' />" + "<attribute name='ATRIBUTO' />" + "<filter type='and'>" + "<condition attribute='ATRIBUTOID' operator='eq' uitype='ENTIDADE' value='ID' />" + "</filter>" + "</entity>" + "</fetch>"; // Build fetch request and obtain results. retriveMultiple = new RetrieveMultipleRequest() { Query = new FetchExpression(fetchXml) }; // Recupera o Resultado do FetchXml entityCollection = ((RetrieveMultipleResponse)localContext.OrganizationService.Execute(retriveMultiple)).EntityCollection; // Percorre o Resultado if (entityCollection.Entities.Count > 0) entity = entityCollection.Entities[0]; // FAÇA AS ALTERAÇÔES entity["..."] = "";
Att,
Tiago Michelini Cardoso MVP - MCC - MCTS
https://tiagomcardoso.wordpress.com/
- Editado Tiago Michelini CardosoMVP, Moderator terça-feira, 27 de novembro de 2012 11:18
- Sugerido como Resposta Tiago Michelini CardosoMVP, Moderator terça-feira, 27 de novembro de 2012 11:20
- Marcado como Resposta Daniel Jonathan terça-feira, 27 de novembro de 2012 14:45
Todas as Respostas
-
Daniel,
Primeiro faça uma consulta na entidade que precisa recuperar pelo ID, depois com a entity "carregada", faça suas alterações e dê o update.
Um exemplo:
RetrieveMultipleRequest retriveMultiple; String fetchXml; EntityCollection entityCollection; Entity entity = null; // Consulta fetchXml = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>" + "<entity name='ENTIDADE'>" + "<attribute name='ATRIBUTO' />" + "<attribute name='ATRIBUTO' />" + "<attribute name='ATRIBUTO' />" + "<filter type='and'>" + "<condition attribute='ATRIBUTOID' operator='eq' uitype='ENTIDADE' value='ID' />" + "</filter>" + "</entity>" + "</fetch>"; // Build fetch request and obtain results. retriveMultiple = new RetrieveMultipleRequest() { Query = new FetchExpression(fetchXml) }; // Recupera o Resultado do FetchXml entityCollection = ((RetrieveMultipleResponse)localContext.OrganizationService.Execute(retriveMultiple)).EntityCollection; // Percorre o Resultado if (entityCollection.Entities.Count > 0) entity = entityCollection.Entities[0]; // FAÇA AS ALTERAÇÔES entity["..."] = "";
Att,
Tiago Michelini Cardoso MVP - MCC - MCTS
https://tiagomcardoso.wordpress.com/
- Editado Tiago Michelini CardosoMVP, Moderator terça-feira, 27 de novembro de 2012 11:18
- Sugerido como Resposta Tiago Michelini CardosoMVP, Moderator terça-feira, 27 de novembro de 2012 11:20
- Marcado como Resposta Daniel Jonathan terça-feira, 27 de novembro de 2012 14:45
-
-
Daniel, eu atualizei com um exemplo, veja.
Tiago Michelini Cardoso MVP - MCC - MCTS
https://tiagomcardoso.wordpress.com/ -