Pergunta

Criei um fluxo de trabalho no Visual Studio que contém um replicador que cria várias tarefas para aprovação.O replicador contém uma atividade de sequência que consiste em createTask, a while loop com onTaskChanged e um completeTask elementos.

Meu fluxo de trabalho está se comportando de maneira muito estranha.O replicator_Initialized inicializa corretamente o InstanceData que é um IList de strings (ou seja,os aprovadores), o replicator_ChildInitialized também se comporta como esperado, o createTask_MethodInvoking na atividade de sequência executa bem e até mesmo o loop isComplete O método verifica para cada uma das tarefas se elas não foram concluídas.Mas então, o onTaskChanged_Invoked nunca é chamado e o mesmo vale para completeTask_MethodInvoking.Em outras palavras, nunca tenho a oportunidade de acessar a lista de tarefas do fluxo de trabalho e aprová-las.O fluxo de trabalho trava e queima depois porque estou tentando fazer referência às tarefas AfterProperties quais são todos null claro porque o depois nunca aconteceu.

Alguém encontrou algo semelhante?Como faço para corrigir ou mesmo analisar isso?Por exemplo, não tenho ideia de onde colocar o ponto de interrupção porque parece que o fluxo de trabalho simplesmente pula algumas partes.Obrigado por toda a ajuda, eu realmente aprecio isso.

Foi útil?

Solução

Eu resolvi isso.O problema é que defini alguns campos no Workflow1.cs arquivo que era do tipo SPListItem, SPList e SPUser.Quando as tarefas foram criadas, o fluxo de trabalho travou e pareceu-me que ele simplesmente passou sem criar tarefas ou esperar que elas fossem concluídas.Removendo esses campos específicos do Workflow1.cs fez tudo funcionar como esperado.

Eu concluí que Workflow1.cs não tolerará campos que não sejam dos seguintes tipos:

  • interno
  • bool
  • flutuador
  • dobro
  • corda
  • Data hora

Talvez acontecesse se eu adicionasse um campo e o tornasse serializável (ou todo o Workflow1.cs, não tenho certeza).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top