Partilhar via


Passo a passo: criar e depurar uma solução de fluxo de trabalho do SharePoint

Este passo a passo demonstra como criar um modelo de fluxo de trabalho sequencial básico. O fluxo de trabalho verifica uma propriedade de uma biblioteca de documentos compartilhada para determinar se um documento foi revisado. Se o documento tiver sido revisado, o fluxo de trabalho será concluído.

Este passo a passo ilustra as seguintes tarefas:

  • Criar um projeto de fluxo de trabalho sequencial de definição de lista do SharePoint no Visual Studio.

  • Criar atividades de fluxo de trabalho.

  • Liar com eventos de atividade de fluxo de trabalho.

Observação

Embora este passo a passo use um projeto de fluxo de trabalho sequencial, o processo é idêntico para um projeto de fluxo de trabalho da máquina de estado.

Além disso, o computador pode mostrar nomes ou locais diferentes para alguns dos elementos de interface do usuário do Visual Studio nas instruções a seguir. A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos. Para obter mais informações, confira Personalizar o IDE do Visual Studio.

Pré-requisitos

Você precisará dos seguintes componentes para concluir este passo a passo:

  • Edições do Microsoft Windows e do SharePoint com suporte.

  • Visual Studio.

Adicionar propriedades à biblioteca de documentos compartilhados do SharePoint

Para acompanhar o status de revisão dos documentos na biblioteca Documentos Compartilhados, criaremos três propriedades para documentos compartilhados em nosso site do SharePoint: Status, Assignee e Review Comments. Definimos essas propriedades na biblioteca Documentos Compartilhados.

Para adicionar propriedades à biblioteca de documentos compartilhados do SharePoint

  1. Abra um site do SharePoint, por exemplo, http://< nome do sistema>/SitePages/Home.aspx, em um navegador da Web.

  2. Na barra QuickLaunch, escolha SharedDocuments.

  3. Escolha Biblioteca na faixa de opções Ferramentas de Biblioteca e escolha o botão Criar Coluna na faixa de opções para criar uma coluna.

  4. Dê à coluna o nome Status do Documento, defina seu tipo como Escolha (menu no qual escolher), especifique as três seguintes opções e escolha o botão OK:

    • Revisão necessária

    • Revisão concluída

    • Alterações solicitadas

  5. Crie mais duas colunas e nomeie-as Destinatário e Revisar comentários. Defina o tipo de coluna Destinatário como uma só linha de texto e o tipo de coluna Revisar Comentários como várias linhas de texto.

Habilitar a edição de documentos sem precisar de um check-out

É mais fácil testar o modelo de fluxo de trabalho quando você pode editar os documentos sem precisar fazer check-out deles. No próximo procedimento, você configura o site do SharePoint para habilitar isso.

Para habilitar a edição de documentos sem fazer check-out deles

  1. Na barra QuickLaunch, escolha o link Documentos Compartilhados.

  2. Na faixa de opções Ferramentas de Biblioteca, escolha a guia Biblioteca e, em seguida, o botão Configurações da Biblioteca para exibir a página Configurações da Biblioteca de Documentos.

  3. Na seção Configurações Gerais, escolha o link Configurações de Controle de Versão para exibir a página Configurações de Controle de Versão.

  4. Verifique se a configuração para Exigir o check-out dos documentos antes que eles possam ser editados é Não. Se não for, altere-a para Não e escolha o botão OK.

  5. Feche o navegador.

Criar um projeto de fluxo de trabalho sequencial do SharePoint

Um fluxo de trabalho sequencial é um conjunto de etapas executado em ordem até que a última atividade seja concluída. Neste procedimento, criamos um fluxo de trabalho sequencial que se aplicará à lista de Documentos Compartilhados. O assistente de fluxo de trabalho permite associar o fluxo de trabalho à definição do site ou à definição da lista e permite determinar quando o fluxo de trabalho será iniciado.

Para criar um projeto de fluxo de trabalho sequencial do SharePoint

  1. Inicie o Visual Studio.

  2. Na barra de menus, escolha Arquivo>Novo>Projeto para exibir a caixa de diálogo Novo Projeto.

  3. Expanda o nó do SharePoint no Visual C# ou no Visual Basic e escolha o nó 2010.

  4. No painel Modelos, escolha o modelo Projeto do SharePoint 2010.

  5. Na caixa Nome, insira MySharePointWorkflow e clique no botão OK.

    O Assistente de Personalização do SharePoint é exibido.

  6. Na página Especificar o site e o nível de segurança para depuração, escolha o botão de opção Implantar como uma solução de farm e escolha o botão Concluir para aceitar o nível de confiança e o site padrão.

    Esta etapa define o nível de confiança da solução como solução de farm, a única opção disponível para projetos de fluxo de trabalho. Para saber mais, confira Considerações sobre soluções em área restrita.

  7. No Gerenciador de Soluções, escolha o nó do projeto e, na barra de menus, escolha Projeto>Adicionar Novo Item.

  8. No Visual C# ou no Visual Basic, expanda o nó do SharePoint e, em seguida, o nó 2010.

  9. No painel Modelos, escolha o modelo Fluxo de Trabalho Sequencial (somente Solução de Farm) e, em seguida, escolha o botão Adicionar.

    O Assistente de Personalização do SharePoint é exibido.

  10. Na página Especificar o nome do fluxo de trabalho para depuração, aceite o nome padrão (MySharePointWorkflow - Workflow1). Mantenha o valor padrão de tipo de modelo de fluxo de trabalho, Fluxo de Trabalho de Lista e escolha o botão Avançar.

  11. Na página Deseja que o Visual Studio associe automaticamente o fluxo de trabalho em uma sessão de depuração?, escolha o botão Avançar para aceitar todas as configurações padrão.

    Essa etapa associa automaticamente o fluxo de trabalho à biblioteca de Documentos Compartilhados.

  12. Na página Especificar as condições de como o fluxo de trabalho é iniciado, deixe as opções padrão selecionadas na seção Como deseja que o fluxo de trabalho seja iniciado? e escolha o botão Concluir.

    Essa página permite que você especifique quando o fluxo de trabalho é iniciado. Por padrão, o fluxo de trabalho é iniciado quando um usuário o inicia manualmente no SharePoint ou quando um item ao qual o fluxo de trabalho está associado é criado.

Criar atividades de fluxo de trabalho

Fluxos de trabalho contêm uma ou mais atividades que representam ações a serem executadas. Use o designer de fluxo de trabalho para organizar as atividades de um fluxo de trabalho. Neste procedimento, adicionaremos duas atividades ao fluxo de trabalho: HandleExternalEventActivity e OnWorkFlowItemChanged. Essas atividades monitoram o status de revisão dos documentos na lista Documentos Compartilhados

Para criar atividades de fluxo de trabalho

  1. O fluxo de trabalho deve ser exibido no designer de fluxo de trabalho. Se isso não ocorrer, abra Workflow1.cs ou Workflow1.vb no Gerenciador de Soluções.

  2. No designer, escolha a atividade OnWorkflowActivated1.

  3. Na janela Propriedades, insira onWorkflowActivated ao lado da propriedade Invocado e pressione a tecla Enter.

    O Editor de Código é aberto e um método de manipulador de eventos chamado onWorkflowActivated é adicionado ao arquivo de código Workflow1.

  4. Volte para o designer de fluxo de trabalho, abra a caixa de ferramentas e expanda o nó Fluxo de Trabalho do Windows v3.0.

  5. No nó Fluxo de Trabalho do Windows v3.0 da Caixa de Ferramentas, execute um dos seguintes conjuntos de etapas:

    1. Abra o menu de atalho da atividade Quando e escolha Copiar. No designer do fluxo de trabalho, abra o menu de atalho da linha na atividade onWorkflowActivated1 e escolha Colar.

    2. Arraste a atividade Quando da Caixa de Ferramentas para o designer de fluxo de trabalho e conecte-a à linha sob a atividade onWorkflowActivated1.

  6. Escolha a atividade WhileActivity1.

  7. Na janela Propriedades, defina a Condição como Condição de Código.

  8. Expanda a propriedade Condição, insira isWorkflowPending ao lado da propriedade filho Condição e pressione a tecla Enter.

    O Editor de Código é aberto e um método chamado isWorkflowPending é adicionado ao arquivo de código Workflow1.

  9. Volte para o designer de fluxo de trabalho, abra a caixa de ferramentas e expanda o nó Fluxo de Trabalho do SharePoint.

  10. No nó Fluxo de Trabalho do SharePoint da Caixa de Ferramentas, execute um dos seguintes conjuntos de etapas:

    • Abra o menu de atalho da atividade OnWorkflowItemChanged e escolha Copiar. No designer do fluxo de trabalho, abra o menu de atalho da linha dentro da atividade whileActivity1 e escolha Colar.

    • Arraste a atividade OnWorkflowItemChanged da Caixa de Ferramentas para o designer de fluxo de trabalho e conecte-a à linha dentro da atividade whileActivity1.

  11. Escolha a atividade onWorkflowItemChanged1.

  12. Na janela Propriedades, defina as propriedades conforme indicado na tabela a seguir.

    Propriedade Valor
    CorrelationToken workflowToken
    Invocado onWorkflowItemChanged

Manipular eventos de atividade

Por fim, verifique o status do documento de cada atividade. Se o documento tiver sido revisado, o fluxo de trabalho será concluído.

Para manipular eventos de atividade

  1. Em Workflow1.cs ou Workflow1.vb, adicione o campo a seguir à parte superior da classe Workflow1. Esse campo é usado em uma atividade para determinar se o fluxo de trabalho foi concluído.

    Boolean workflowPending = true;
    
  2. Adicione o método a seguir à classe Workflow1. Esse método verifica o valor da propriedade Document Status da lista Documentos para determinar se o documento foi revisado. Se a propriedade Document Status for definida como Review Complete, o método checkStatus definirá o campo workflowPending como false para indicar que o fluxo de trabalho está pronto para ser concluído.

    private void checkStatus()
    {
        if ((string)workflowProperties.Item["Document Status"] == "Review Complete")
        workflowPending = false;
    }
    
  3. Adicione o código a seguir aos métodos onWorkflowActivated e onWorkflowItemChanged para chamar o método checkStatus. Quando o fluxo de trabalho é iniciado, o método onWorkflowActivated chama o método checkStatus para determinar se o documento já foi revisado. Se ele não tiver sido revisado, o fluxo de trabalho continuará. Quando o documento é salvo, o método onWorkflowItemChanged chama o método checkStatus novamente para determinar se o documento foi revisado. Enquanto o campo workflowPending está definido como true, o fluxo de trabalho continua sendo executado.

    private void onWorkflowActivated(object sender, ExternalDataEventArgs e)
    {
        // Check the status.
        checkStatus();
    }
    
    private void onWorkflowItemChanged(object sender, ExternalDataEventArgs e)
    {
        // Check the status.
        checkStatus();
    }
    
  4. Adicione o código a seguir ao método isWorkflowPending para verificar o status da propriedade workflowPending. Sempre que o documento é salvo, a atividade whileActivity1 chama o método isWorkflowPending. Esse método examina a propriedade Result do objeto ConditionalEventArgs para determinar se a atividade WhileActivity1 deve continuar ou terminar. Se a propriedade for definida como true, a atividade continuará. Caso contrário, a atividade e o fluxo de trabalho serão concluídos.

    private void isWorkflowPending(object sender, ConditionalEventArgs e)
    {
        e.Result = workflowPending;
    }
    
  5. Salve o projeto.

Testar o modelo de fluxo de trabalho do SharePoint

Quando você inicia o depurador, o Visual Studio implanta o modelo de fluxo de trabalho no servidor do SharePoint e associa o fluxo de trabalho à lista Documentos Compartilhados. Para testar o fluxo de trabalho, inicie uma instância dele em um documento na lista Documentos Compartilhados.

Para testar o modelo de fluxo de trabalho do SharePoint

  1. Em Workflow1.cs ou Workflow1.vb, defina um ponto de interrupção ao lado do método onWorkflowActivated.

  2. Pressione a tecla F5 para compilar e executar a solução.

    O site do SharePoint aparece.

  3. No painel de navegação do SharePoint, escolha o link Documentos Compartilhados.

  4. Na página Documentos Compartilhados, escolha o link Documentos na guia Ferramentas de Biblioteca e, em seguida, o botão Carregar Documento.

  5. Na caixa de diálogo Carregar Documento, escolha o botão Procurar, escolha qualquer arquivo de documento, escolha o botão Abrir e, em seguida, o botão OK.

    Isso carrega o documento selecionado na lista Documentos Compartilhados e inicia o fluxo de trabalho.

  6. No Visual Studio, verifique se o depurador para no ponto de interrupção ao lado do método onWorkflowActivated.

  7. Escolha a tecla F5 para continuar a execução.

  8. Você pode alterar as configurações do documento aqui, mas deixe-as com os valores padrão por enquanto escolhendo o botão Salvar.

    Isso leva você de volta para a página Documentos Compartilhados do site padrão do SharePoint.

  9. Na página Documentos Compartilhados, verifique se o valor abaixo da coluna MySharePointWorkflow – Workflow1 está definido como Em andamento. Isso indica que o fluxo de trabalho está em andamento e que o documento está aguardando revisão.

  10. Na página Documentos Compartilhados, escolha o documento, escolha a seta exibida e o item de menu Editar Propriedades.

  11. Defina o Status do Documento como Revisão Concluída e, em seguida, escolha o botão Salvar.

    Isso leva você de volta para a página Documentos Compartilhados do site padrão do SharePoint.

  12. Na página Documentos Compartilhados, verifique se o valor abaixo da coluna Status do Documento está definido como Revisão Concluída. Atualize a página Documentos Compartilhados e verifique se o valor abaixo da coluna MySharePointWorkflow – Workflow1 está definido como Concluído. Isso indica que o fluxo de trabalho foi concluído e que o documento foi revisado.

Próximas etapas

Saiba mais sobre como criar modelos de fluxo de trabalho nestes tópicos: