Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Percorra o processo de criação de um suplemento de fluxo de trabalho do SharePoint usando o Microsoft Visual Studio 2012.
Observação
Os fluxos de trabalho do Microsoft Office SharePoint Online 2010 foram desativados desde 1º de agosto de 2020 para novos locatários e removidos de locatários existentes em 1º de novembro de 2020. Se você estiver usando fluxos de trabalho do Microsoft Office SharePoint Online 2010, recomendamos a migração para o Power Automate ou outras soluções suportadas. Para obter mais informações, confira Desativação do fluxo de trabalho do SharePoint 2010.
Pré-requisitos
Este cenário de desenvolvimento parte do princípio de que um farm de SharePoint Server 1.0 e um farm do Workflow Manager 1.0 estão instalados e combinados. Esses dois farms podem ser localizados no mesmo computador ou em computadores servidores separados. Além disso, o cenário partem do princípio de que o desenvolvimento de fluxo de trabalho estiver ocorrendo remotamente - ou seja, em um computador separado de qualquer um dos computadores servidores - e está usando Microsoft Visual Studio 2012 ou posterior.
- Nas plataformas de servidor:
- Windows Server 2008 R2.
- Microsoft SharePoint
- Workflow Manager 1.0
- Na plataforma de desenvolvimento:
Microsoft Visual Studio 2012 ou posterior.
Office Developer Tools para Visual Studio 2013.
Observação
[!OBSERVAçãO] Office Developer Tools para Visual Studio 2013 só é necessária ao usar Visual Studio 2012. Versões posteriores do Visual Studio incluem as ferramentas de desenvolvimento do Office.
Para obter assistência instalando e configurando o ambiente de desenvolvimento de fluxo de trabalho do SharePoint, consulte o seguinte:
- Prepare-se para instalar e configurar um ambiente de desenvolvimento de fluxo de trabalho do SharePoint
- Configurar o fluxo de trabalho no SharePoint
- Série de vídeos: instalar e configurar o Workflow no SharePoint
Introdução
Um cenário comum do fluxo de trabalho nas configurações de negócios é o processo de revisão e aprovação de documentos. Este passo a passo, criamos um Suplemento do SharePoint que automatiza o roteamento, notificações e fluxo de trabalho de aprovação ou rejeição de um documento usando uma lista do SharePoint. Criamos este fluxo de trabalho usando o designer de fluxo de trabalho do SharePoint no Microsoft Visual Studio 2012.
Aqui está um fluxograma que mostra o curso do fluxo de trabalho que iremos criar.
Figura 1. Fluxograma mostrando o fluxo de trabalho de aprovação do documento.
Em resumo, o fluxo de trabalho faz o seguinte:
- Um evento de alteração de documento associado a uma biblioteca de documentos específicos inicia a instância de fluxo de trabalho.
- Se o status do documento estiver definido como "Pronto para revisão", o fluxo de trabalho atribui uma tarefa a um revisor pré-organizados e envia uma notificação de e-mail sobre a tarefa de revisor.
- Se o revisor falhar aprovar o documento, o arquivo de documento permanecerá na biblioteca de documentos de rascunho; No entanto, o status do documento é definido como "Rejeitado."
- Se o revisor aprovar o documento, o fluxo de trabalho copia o documento em uma biblioteca de documentos publicados. O arquivo original permanece na biblioteca documentos de rascunho, mas seu status estiver definido como "Publicado".
Importante
Antes de começar esta explicação, certifique-se de que você tenha um ambiente de desenvolvimento de fluxo de trabalho instalado e configurado corretamente. Para obter mais informações, consulte Preparar para configurar e configurar um ambiente de desenvolvimento de fluxo de trabalho do SharePoint. Além disso, certifique-se de que você tenha uma instância do SharePoint em que você pode desenvolver seu fluxo de trabalho. Para obter mais informações, consulte Instalar o SharePoint.
Preparar seu ambiente
A primeira etapa é preparar nosso site do Microsoft Office SharePoint Online com bibliotecas de documentos que nosso fluxo de trabalho usará.
Inicie o Visual Studio 2012 e crie um novo projeto usando o modelo Aplicativo para Microsoft Office SharePoint Online, conforme mostrado na Figura 2.
Observação
[!OBSERVAçãO] Este passo a passo, o arquivo de solução é chamado "DocApprovalWorkflow1". É recomendável que você use o mesmo nome. No entanto, se você nomear sua solução de forma diferente, certifique-se de que você faça ajustes necessários nas instruções a seguir.
Figura 2. Criar novo projeto no Visual Studio 2012
No site do SharePoint associado, crie duas novas bibliotecas de documentos, fazendo o seguinte:
- No Solution Explorer, clique com botão direito no ícone "DocApprovalWorkflow1" e selecione Adicionar>Novo Item e selecione lista.
- No Assistente de Personalização do Microsoft Office SharePoint Online resultante, insira "Documentos de Rascunho" no campo de nome; em seguida, selecione "Biblioteca de documentos" no menu suspenso sob o primeiro botão de opção, conforme mostrado na Figura 3.
- Clique em Avançar, e em seguida, tomar as configurações padrão e clique em Concluir.
Figura 3. Assistente de personalização do SharePoint para configurações de lista.
Crie a segunda biblioteca de documentos usando as mesmas etapas acima, exceto o nome desta biblioteca segunda "Documentos publicados".
Adicione duas colunas personalizadas a ambas as novas bibliotecas de documentos que você criou:
- Criar uma coluna personalizada denominada "Aprovador" e torná-lo um tipo de coluna de lista de pessoa ou grupo.
- Criar uma coluna personalizada chamada "Status do documento" e torná-lo em uma coluna de lista de opção digite (consulte a Figura 4).
Na coluna Status do documento, adicione cinco opções expandindo a propriedade Tipo na grade de propriedades e clicando no botão de reticências (…) na propriedade Itens . Insira os valores de opção na caixa de diálogo exibida, conforme mostrado na Figura 4.
- Rascunho em andamento
- Pronto para revisão
- Aprovada para publicação
- Rejected
- Published
Crie o fluxo de trabalho básico
Agora, estamos prontos para criar o fluxo de trabalho em si.
No Visual Studio, crie um novo fluxo de trabalho, clicando no ícone DocApprovalWorkflow1 (no Solution Explorer ) e selecionando Add>Novo Item e, em seguida, selecionando o fluxo de trabalho (consulte a Figura 5).
Figura 5. Adicionar assistente de fluxo de trabalho de novo item > .
Quando solicitado, o nome do fluxo de trabalho "DocumentApprovalWorkflow" e selecione Lista de fluxo de trabalho como o fluxo de trabalho digite (consulte a Figura 6).
Figura 6. Especifique o nome e o tipo do fluxo de trabalho.
No Assistente de personalização do SharePoint, associar o novo fluxo de trabalho com a biblioteca de documentos de rascunho; em seguida, optar por criar uma nova lista de histórico e uma nova lista de tarefa de fluxo de trabalho, conforme mostrado na Figura 7. Depois, clique em Avançar.
Figura 7. Concluindo o Assistente de Personalização do SharePoint para o novo fluxo de trabalho.
Defina o fluxo de trabalho para ser iniciado automaticamente quando um item na biblioteca documentos de rascunho é alterado. Você também pode deixar a caixa de seleção para iniciar manualmente o fluxo de trabalho selecionado; Isso permite que você teste facilmente o fluxo de trabalho sem precisar alterar a um documento. Veja a Figura 8.
Figura 8. Defina os parâmetros de ativação para o fluxo de trabalho.
Observação
[!OBSERVAçãO] Você pode alterar o tipo de associação de fluxo de trabalho após o fluxo de trabalho tiver sido criado usando-se a grade de propriedades com o fluxo de trabalho selecionado no Solution Explorer (consulte a Figura 9). Clique em Concluir.
Figura 9. A grade de propriedades do fluxo de trabalho.
Finalmente, configure seu SharePoint Server para gerenciar o email de saída usando o serviço SMTP. Para obter instruções, consulte Configurar email de saída para um farm do SharePoint. Isso é necessário para permitir que o fluxo de trabalho envie notificações por e-mail relacionadas às tarefas do fluxo de trabalho.
Implementar a lógica do fluxo de trabalho
Agora que temos nosso SharePoint Server configurar e nosso fluxo de trabalho básico criado, podemos agora projetar a lógica de fluxo de trabalho.
Abra o designer de fluxo de trabalho, clique duas vezes no item de projeto de fluxo de trabalho no Solution Explorer. Você verá a superfície do designer de fluxo de trabalho (e a caixa de ferramentas de fluxo de trabalho); o designer é preenchido com um estágio inicial do fluxo de trabalho denominado Sequência.
Nossa primeira etapa é para capturar a atividade de LookupSPListItem da caixa de ferramentas (veja a Figura 10) e solte-o no estágio sequência na superfície do projeto. Para obter o status do documento em um determinado momento, a atividade de LookupSPListItem retorna como um objeto de DynamicValue que contém um conjunto de propriedades de item de lista do SharePoint como pares de chave-valor, usamos esta atividade.
Figura 10. Seletor de atividades LookupSPListItem.
Para configurar a atividade de LookupSPListItem, primeiro clique no designer para selecioná-la. Isso ativará a grade de propriedades para a atividade.
Use as caixas de combinação na grade de propriedades para configurar a atividade de LookupSPListItem para usar o "item atual" para ItemId e "lista atual" como ListId, conforme mostrado na Figura 11.
Figura 11. Configurando propriedades LookupSPListItem.
Sobre os blocos de atividade LookupSPListItem, clique no link de Obter propriedades. Isso conclui duas etapas importantes para você:
- Primeiro, ele cria uma variável do tipo DynamicValue e a vincula ao argumento de saída (denominado Result) da atividade LookupSPListItem. Propriedades do item da lista são armazenadas nessa variável.
- Em segundo lugar, adiciona uma nova atividade denominada GetDynamicValueProperties (veja a Figura 12) e define a variável recém-criado DynamicValue como na-argumento dessa nova atividade. Esta atividade permite extrair as propriedades do item de lista da variável DynamicValue.
Na atividade GetDynamicValueProperties , clique em Definir... para abrir uma caixa de diálogo que permite escolher as propriedades que deseja extrair. Ao selecionar propriedades, consulte a Figura 12, que mostra uma parte da superfície do designer mesclada com a caixa de diálogo Propriedades abertas.
Figura 12. Selecionando as propriedades DynamicValue que você deseja extrair.
Para o Tipo de entidade, selecione o Item de lista de documentos de rascunho.
Na grade de dados, na coluna Caminho , clique em Criar Propriedade para abrir uma caixa de combinação que contém propriedades disponíveis para itens de lista na biblioteca De rascunho de documentos. Selecione o Status do documento na caixa de combinação.
Na próxima linha na grade de dados, clique em Criar Propriedade novamente; desta vez, selecione Aprovador na caixa de combinação.
Agora, clique no link de Preencher variáveis na caixa de diálogo. Isso cria uma variável do tipo de dados apropriado para cada linha e atribui a ela a Atribuir a coluna da grade de dados, conforme mostrado na Figura 13.
Figura 13. Obter propriedades status e aprovador de documento.
Agora, temos os valores de item de lista que precisamos. Próxima etapa é configurar o fluxo de trabalho para verificar se o documento for "pronto para revisão" e para executar a ação apropriada quando ele estiver.
Na caixa de ferramentas, arraste a atividade de If para a superfície de designer de fluxo de trabalho. (Você encontrará a atividade If na seção Fluxo de controle da caixa de ferramentas.)
Defina a condição de If para
DocumentStatus.Equals("Ready for Review"), conforme mostrado na Figura 14.Figura 14. Criando uma cláusula If/Then para disparar uma tarefa.
Em seguida, na seção SP - tarefa da caixa de ferramentas, arraste uma atividade SingleTask e solte-o na caixa Then da sua atividade If. Na verdade, você configurou o fluxo de trabalho de forma que se o documento estiver pronto para revisão, Então ele concluirá esta tarefa.
Nossa próxima etapa é configurar a tarefa que acabamos de criar usando a caixa de diálogo de configuração, mostrada na Figura 15.
Figura 15. Caixa de diálogo configuração de tarefa.
Primeiro, atribuímos a tarefa a um aprovador. Para fazer isso, clique no link Configurar os blocos de atividade SingleTask.
Definir o atribuído a: campo para "Aprovador".
Observe que o título da tarefa: campo será preenchido automaticamente com "Tarefa de fluxo de trabalho".
No campo Corpo:, insira uma mensagem com instruções para o aprovador, como "Revise este documento para aprovação e para publicação".
Clique em OK para salvar.
Observe que agora você tem um erro de validação na atividade SingleTask. Com a lado a lado SingleTask selecionada, examine a propriedade AssignedTo na grade de propriedades e observe que ele tem um ícone de erro. Passe o mouse sobre o nome da propriedade para ver uma dica de ferramenta que descreve o problema. Podemos ver que a propriedade AssignedTo espera um valor String; No entanto, a variável de aprovador é do tipo de dados Int32.
Para corrigir esse erro, converta a variável para um tipo de dados String acrescentando ". ToString () "para"Aprovador"o AssignedTo linha na grade de propriedade, conforme mostrado na Figura 16.
Figura 16. Lançando a variável "Aprovador" para o tipo de dados de cadeia de caracteres na grade de propriedades.
No ponto atual deste passo a passo, você criou e configurou uma tarefa de fluxo de trabalho que faz duas coisas: Ela define um documento a ser revisado, mas também envia um email para o responsável pela tarefa (o "Aprovador" neste caso) notificando ele ou ela de que uma tarefa foi atribuída e está esperando por ações.
Vejamos a grade de propriedades para a atividade de SingleTask. Rolar para a parte inferior da grade de propriedades e nota na seção de saída, há duas propriedades, resultado e TaskItemId, que são argumentos-out.
Anote o nome da variável resultado: outcome_0 (ou semelhante). Usamos essa variável para verificar o resultado da tarefa - ou seja, se o aprovador foi aprovada ou rejeitada do documento.
Observação
O argumento Resultado retorna um valor Int32 correspondente ao índice do resultado, ou seja, 0 para "Aprovado" e 1 para "Rejeitado". Esses números inteiros são os valores padrão fornecidos na coluna do site do SharePoint pronta para uso chamada "Resultado da tarefa".
Agora, na ordem para o fluxo de trabalho verificar se o resultado da tarefa, precisamos adicionar outra atividade If e colocá-lo seguindo a atividade de SingleTask, mas dentro da área de Then, conforme mostrado na Figura 17. Definindo a condição de If como "
outcome_0 == 0", nos informa se o documento foi aprovado.Figura 17. Adicionando a atividade IF para verificar o status da tarefa.
Se o aprovador definiu a tarefa para "Aprovado", podemos atualizar o status do documento para "Aprovada para publicação" e copie o arquivo de documento para a biblioteca de documentos publicados. Em vez disso, se o aprovador rejeitou o documento, precisamos definir o status do documento como "Rejeitado".
Nesta nova atividade de If, arraste uma atividade UpdateListItem na caixa Then.
Configure a atividade UpdateListItem na sua grade de propriedade, de tal modo que ItemId estiver definido como "(item atual)" e ListId estiver definido como "(lista atual)", conforme mostrado na Figura 18.
A seguir, com a atividade UpdateListItem selecionada, clique no botão reticências (…) próximo ao campo ListItemPropertiesDynamicValue na grade de propriedades. Essa ação abre uma caixa de diálogo que permite que você especifique quais propriedades de item de lista que você deseja atualizar.
Figure 18. Definindo as propriedades do item de lista a serem atualizadas.
Na caixa de diálogo, use a caixa de combinação para definir o Tipo de entidade para o Item de lista de documentos de rascunho (mostrados na Figura 18). Em seguida, na grade de dados, clique em Criar Propriedade e, na lista suspensa, selecione "Status do Documento". Em seguida, na coluna Valor , digite "Aprovado para Publicação" (incluindo aspas) e clique em OK.
Na área Then da atividade atual If, arraste uma atividade CopyItem e colocá-lo diretamente abaixo da atividade UpdateListItem, conforme mostrado na Figura 19.
Figure 19. Adicionando uma atividade CopyItem ao fluxo de trabalho.
Em seguida, configure as propriedades da atividade CopyItem na grade de propriedades, conforme mostrado na Figura 20. Valores de propriedade são realçados.
Figure 20. Configurando a atividade CopyItem.
Observação
Para fins deste passo a passo, vamos supor que todos os nossos documentos publicados vem fora da biblioteca de documentos de rascunho; Portanto, não precisamos preocupar controlando para nomes de arquivos duplicados.
Finalmente, precisamos adicionar uma atividade para manipular o caso em que o revisor rejeitar o documento. Fazemos isso adicionando uma atividade UpdateListItem à área de Else de nossa atividade If atual. Configure essa atividade UpdateListItem exatamente como você fez uma anterior na etapa 9(c), exceto que agora queremos definir o status do documento para "Rejeitado", conforme mostrado na Figura 21.
Figura 21. Configurando propriedades da atividade UpdateListItem para documentos rejeitados.
Isso conclui "Criando um fluxo de trabalho de aprovação de documento do SharePoint". O fluxo de trabalho concluído é mostrado na Figura 22.
Figura 22. Fluxo de trabalho de aprovação de documento do SharePoint concluído.
Empacotar e implantar o fluxo de trabalho
Estes são os recursos que fornecem orientação para empacotar e implantar seu fluxo de trabalho como um Suplemento do SharePoint:
- Implantando e instalando aplicativos para SharePoint: métodos e as opções
- Publicar aplicativos do SharePoint
- Como: criar e implantar fluxos de trabalho declarativos em soluções em área restrita (Usando SharePoint Designer 2013 )
Cuidado
Suplementos do SharePoint que contêm os fluxos de trabalho integrados (que podem ser associados a listas na web pai) são diferenciados de computadores de aplicativos de fluxo de trabalho normal, alterando a seguir marca para true no arquivo workflowmanifest.xml no pacote do app:
<SPIntegratedWorkflow xmlns="http://schemas.microsoft.com/sharepoint/2014/app/integratedworkflow">
<IntegratedApp>true</IntegratedApp>
</SPIntegratedWorkflow>