none
Imagem de PostOperation da entidade não atualiza RRS feed

  • Pergunta

  • Bom dia,

    Possuo no meu ambiente algumas entidades que através de plugins faço atualizações em cadeia.

    Por exemplo: Entidade1, Entidade2 e Entidade3

    A Entidade1 armazena os produtos e seus preços, a Entidade2 guarda um totalizador para cada tipo de produto e a Entidadade3 agrupa o total por tipo.

    Meu código está assim: 

    Entidade1-> Evento Create -> Procura registros da Entidade2, caso existam, o total será atualizado com o total da Entidade1, se não existir será criada uma nova Entidade2.

    Entidade1-> Evento Update-> Atua da mesma que o evento create.

    Entidade2-> Evento Create-> Procura registros da Entidade3, caso existam, o total será atualizado.  

    Entidade2 -> Evento Update-> Procura registros da Entidade1 e faz um rateio baseado no total atualizado da Entidade2, fazendo com que o somatório dos produtos da Entidade1 sejam iguais ao novo valor da Entidade2. Procura registros da Entidade3, caso existam, o total será atualizado.  

    Estou utilizando o evento de PostOperation juntamente com uma imagem "PostImage", quando estou criando ou atualizando a Entidade1, a imagem funciona perfeitamente trazendo o valor que foi atualizado. No momento em que atualizo o Entidade2 a minha "PostImage" traz o valor antigo, sendo que no formulário o valor já esta atualizado. Existe alguma explicação para a PostImage não traga o valor posterior da entidade??

    terça-feira, 28 de fevereiro de 2012 14:58

Todas as Respostas

  • Pessoal,

    Acho que o texto não ficou tão claro.

    Resumidamente, estou tentando descobrir porque minha imagem de POST não traz o valor final da entidade. Já aconteceu isso com alguém??

    quarta-feira, 29 de fevereiro de 2012 14:16
  • Oi Fernando tudo bem?

    Deixa eu entedener. Na entidade1 voce tem o create e uma imagem postimage nela. Na entidade2 voce tem o update com uma imagem postimage tambem. ok?


    Atenciosamente,
    Rodrigo Hentz - MCP.MCPS.MCNPS.MCTS.MBSS.MBSP.MCITP
    Profile
    Blog

    quinta-feira, 1 de março de 2012 11:28
    Moderador
  • Olá Rodrigo,

    Eu possuo uma postimage apenas na entidade2, e está não traz o valor atualizado quando eu acesso o evento update através do formulário da mesma. Só consigo o postimage com o código adicionado na entidade1.

    quinta-feira, 1 de março de 2012 11:49
  • Está instalado o último rollup? vou tentar reproduzir aqui o seu cenário enquanto isso.

    Atenciosamente,
    Rodrigo Hentz - MCP.MCPS.MCNPS.MCTS.MBSS.MBSP.MCITP
    Profile
    Blog

    quinta-feira, 1 de março de 2012 12:05
    Moderador
  • Sim, foi aplicado Rollup 6.
    quinta-feira, 1 de março de 2012 12:16
  • Fernando, baixe a solucao que está no meu SkyDrive https://skydrive.live.com/?cid=23815D761D7BD7F4&id=23815D761D7BD7F4%21246 com o nome de TreinamentoPlugin.rar

    Eu criei uma entidade e registrei no create e update a postimage. dentro do arquivo tem um jpg com a criacao da imagem.

    eu fiz o debug em ambas as etapas e os valores tanto na criacao quanto na edicao sao atualizadas na postimage.

    verifique se tem algum item diferente da sua solucao

    vamos nos falando para ver se resolvemos o seu caso


    Atenciosamente,
    Rodrigo Hentz - MCP.MCPS.MCNPS.MCTS.MBSS.MBSP.MCITP
    Profile
    Blog

    quinta-feira, 1 de março de 2012 12:43
    Moderador
  • Rodrigo,

    Quando o evento é acionado pela própria entidade da certo. Ex: Preenchendo o formulário da entidade2, no update da mesma a postimage retorna o valor correto. O problema acontece quando atualizo o formulário da entidade1 que possui um método que atualiza a entidade2, aumentando a Depth... Nesse caso o postimage da entidade2 não funciona.

    Meio complicado de entender...rs

    quinta-feira, 1 de março de 2012 14:24
  • entendi. esta estranho isso pois eu utilizo um fluzo semelhante ao seu. quando altero o produto da nota fiscal eu chamo update de uma outra entidade e nesta entidade o postimage vai certinho.

    nao sei se vai resolver mas tenta colocar

    entidade2.EntityState = EntityState.Changed;

    antes de chamar  o update.

    isso resolve quando chama o update da propria entidade, nao sei se de uma outra, mas vale a tentativa.


    Atenciosamente,
    Rodrigo Hentz - MCP.MCPS.MCNPS.MCTS.MBSS.MBSP.MCITP
    Profile
    Blog

    quinta-feira, 1 de março de 2012 14:50
    Moderador
  • Eu já tinha usado essa propriedade, funcionou em alguns casos em que o CRM não conseguia atualizar a entidade porque não identificava nenhuma alteração, mas em outros casos por alterar esta propriedade o CRM lança uma Exception que aponta a propriedade como somente leitura. 

    Sabe como contornar?

    quinta-feira, 1 de março de 2012 15:05
  • podemos fazer uma conf pelo skype? assim voce compartilha a tela e me mostra o problema acontecendo. acho que assim posso ver melhor o que esta acontecendo. meu skype é rodrigo.hentz.

    se conseguirmos ver o que é postamos a solucao aqui.


    Atenciosamente,
    Rodrigo Hentz - MCP.MCPS.MCNPS.MCTS.MBSS.MBSP.MCITP
    Profile
    Blog

    quinta-feira, 1 de março de 2012 16:28
    Moderador