Desenvolver fluxos de trabalho do SharePoint usando o Visual Studio

O SharePoint dá suporte a dois ambientes de desenvolvimento de fluxo de trabalho para criação de fluxos de trabalho: SharePoint Designer e Visual Studio. Este artigo resume e discute as vantagens e as desvantagens de cada um deles.

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 mais informações, confira Retirada do fluxo de trabalho do Microsoft Office SharePoint Online 2010.

Noções básicas sobre criação para fluxos de trabalho do SharePoint

Observação

Para obter diretrizes sobre como configurar e configurar o Microsoft SharePoint e o servidor Gerenciador de Fluxos de Trabalho Client 1.0, consulte Configurar e configurar o SharePoint Gerenciador de Fluxos de Trabalho.

Assim como nas versões anteriores, o Microsoft SharePoint oferece dois ambientes de desenvolvimento de fluxo de trabalho principais para a criação de fluxos de trabalho: Microsoft SharePoint Designer e Microsoft Visual Studio. Entretanto, o que difere das versões anteriores é que a utilização do Visual Studio não oferece mais uma estratégia de criação baseada em código. Em vez disso, o SharePoint Designer e o Visual Studio oferecem um ambiente de criação sem código totalmente declarativo, independentemente da ferramenta de desenvolvimento escolhida.

Observação

Como um complemento à criação de fluxos de trabalho no SharePoint Designer, é possível estruturar a lógica do fluxo de trabalho com formas do Microsoft Visio 2013 e importar a lógica para o SharePoint Designer 2013. Para obter informações sobre como usar o Visio 2013 para criar sua lógica de fluxo de trabalho, confira Desenvolvimento do fluxo de trabalho no Designer do SharePoint e no Visio.

Fluxos de trabalho declarativos

Primeiro, vamos esclarecer o que significa fluxos de trabalho "declarativos". Esse termo significa que, em vez de ser criado em código e então compilado em assemblies gerenciados, o fluxo de trabalho é descrito (literalmente) em XAML e então executado interpretativamente em tempo de execução.

O XAML é derivado (ou presumido) dos blocos de construção do fluxo de trabalho que você manipula no Workflow Designer (se estiver usando o Visual Studio) ou a superfície de design do fluxo de trabalho do SharePoint Designer (ou o Visio, mas mais sobre o último). Os próprios blocos de construção são os objetos de design do fluxo de trabalho visual na caixa de ferramentas do designer — estágios, condições, ações, eventos e assim por diante. O conjunto de ferramentas nas respectivas caixas de ferramentas (Visual Studio ou SharePoint Designer) difere de alguma forma, mas o conceito do fluxo de trabalho declarativo permanece o mesmo.

Árvore de decisões: SharePoint Designer versus Visual Studio

Entre as maiores vantagens da estrutura de fluxo de trabalho no SharePoint, está a facilidade com a qual os operadores de informações podem usar o ambiente sem código do SharePoint Designer para a criação de fluxos de trabalho ricos e eficientes. Além disso, um alto grau de flexibilidade e de personalização estão disponíveis em um ambiente de criação declarativa, como o Visual Studio.

Ambos os ambientes de criação de fluxo de trabalho — o SharePoint Designer e o Visual Studio — oferecem vantagens e desvantagens específicas. Nesta seção, exploramos a forma como determinar qual ambiente de criação se ajusta melhor às suas necessidades de desenvolvimento do fluxo de trabalho.

Usando o SharePoint Designer

  • Usuários de destino: operadores de informações, analistas de negócios, desenvolvedores do SharePoint.
  • Nível de dificuldade: familiaridade com o SharePoint Designer, incluindo os componentes fundamentais do fluxo de trabalho, como estágios, portões, ações, condições e loops.

Com o SharePoint Designer, os usuários podem criar um fluxo de trabalho anexado a uma lista, biblioteca ou site usando um designer baseado em texto sem código. Ou eles podem usar o novo ambiente de design visual no qual elementos gráficos são organizados em uma superfície de design para representarem o fluxo lógico de um processo de negócios. O SharePoint Designer se sobressai na habilitação do desenvolvimento rápido de fluxos de trabalho por trabalhadores não técnicos.

Usando o Visual Studio

  • Usuários de destino: desenvolvedores de software intermediários ou avançados.
  • Nível de dificuldade: familiaridade com o Visual Studio, incluindo conceitos de desenvolvimento de software, como receptores, embalagem e implantação de eventos, além de segurança.

A criação de fluxos de trabalho no Visual Studio oferece flexibilidade para criar fluxos de trabalho para dar suporte a virtualmente qualquer processo de negócios, independentemente de sua complexidade, além de permitir a depuração e a reutilização de definições de fluxo de trabalho. Talvez o mais importante, o Visual Studio permite que os desenvolvedores incluam fluxos de trabalho do SharePoint como parte de uma solução mais ampla do SharePoint ou do Suplemento do SharePoint.

O Visual Studio permite que desenvolvedores criem ações personalizadas para consumo do SharePoint Designer e oferece os meios de executar a lógica personalizada. Com o Visual Studio, os desenvolvedores também podem criar modelos de fluxo de trabalho, que podem ser implantados para vários sites.

Comparando o SharePoint Designer ao Visual Studio

A tabela a seguir oferece uma comparação lado a lado dos recursos e dos requisitos para a utilização do SharePoint Designer e do Visual Studio para a criação de fluxos de trabalho do SharePoint.

Tabela 1. Comparação de ferramentas de criação de fluxo de trabalho

Recurso / requisito SharePoint Designer Visual Studio
Permite desenvolvimento rápido do fluxo de trabalho Sim Sim
Permite a reutilização de fluxos de trabalho Um fluxo de trabalho só pode ser usado pela lista ou pela biblioteca na qual foi desenvolvido. Entretanto, o SharePoint Designer oferece fluxos de trabalho reutilizáveis que podem ser usados várias vezes no mesmo site. Um fluxo de trabalho pode ser escrito como um modelo para que, depois de implantado, possa ser reutilizado e associado a qualquer lista ou biblioteca.
Permite que você inclua um fluxo de trabalho como parte de uma solução do SharePoint ou do Suplemento do SharePoint. Não Sim
Permite a criação de ações personalizadas Não. Entretanto, o SharePoint Designer pode consumir e implementar ações personalizadas criadas e implantadas usando o Visual Studio. Sim. Entretanto, esteja ciente de que, no Visual Studio, as atividades subjacentes, e não as ações correspondentes, são usadas.
Permite escrever um código personalizado Não Sem observação: isso é alterado em relação às versões anteriores. No SharePoint, os fluxos de trabalho são apenas declarativos, e o Visual Studio se baseia na área de design visual para o desenvolvimento do fluxo de trabalho.
É possível usar o Visio Professional para criar lógica de fluxo de trabalho Sim Não
Implantação Automaticamente implantado à lista, biblioteca ou site em que foi criado. Crie um arquivo de pacote de solução do SharePoint (.wsp) e implante o pacote da solução no site (SPWeb).
Publicação de um clique disponível para fluxos de trabalho Sim Sim
Os fluxos de trabalho podem ser empacotados e implantados em um servidor remoto Sim Sim
Depuração Não pode ser depurado. O fluxo de trabalho pode ser depurado usando o Visual Studio.
Só pode usar ações aprovadas pelo administrador do site Sim Observação Sim: isso é alterado em relação às versões anteriores. Anteriormente, os fluxos de trabalho e as ações criadas usando o Visual Studio eram baseadas em código e implantadas no escopo do farm e, portanto, a aprovação do administrador não era necessária.

Desenvolver fluxos de trabalho usando o Visual Studio

Ao contrário das versões anteriores, os fluxos de trabalho no SharePoint são totalmente declarativos. Agora criado com base no Windows Workflow Foundation 4, o Visual Studio oferece uma superfície de designer de fluxo de trabalho visual que permite a criação de fluxos de trabalho personalizados, modelos de fluxo de trabalho, formulários e atividades de fluxo de trabalho personalizadas inteiramente no ambiente do designer. Seu fluxo de trabalho é então empacotado e implantado como um Recurso do SharePoint. Para obter informações sobre o empacotamento de recursos, consulte Usando recursos no SharePoint Foundation.

Talvez a alteração mais significativa para desenvolvedores do Visual Studio seja que os fluxos de trabalho personalizados não são mais compilados e implantados como assemblies do .NET Framework. Além disso, o SharePoint não usa mais formulários do Microsoft InfoPath; em seu lugar, a geração de formulários se baseia em formulários do Microsoft ASP.NET.

Por fim, os modelos de projeto de fluxo de trabalho do Visual Studio foram alterados. Enquanto os modelos anteriores para máquina de estado e fluxos de trabalho sequenciais eram fornecidos, essas distinções não são mais significativas. Em vez disso, os modelos de projeto do Visual Studio estão disponíveis na compilação do Visual Studio fornecida em sua máquina virtual (VM).

Habilitando a depuração de fluxo de trabalho local

Para depurar fluxos de trabalho locais no Visual Studio, você precisa permitir temporariamente que as Ferramentas do Gerenciador de Fluxos de Trabalho acessem seu sistema por meio do firewall.

  1. No Painel de Controle, escolha Sistema e Segurança, Firewall do Windows.
  2. Na lista Início do Painel de Controle, escolha o link Configurações Avançadas.
  3. No painel esquerdo do Firewall do Windows, escolha Regras de Entrada.
  4. Na lista Regras de Entrada, escolha Ferramentas do Gerenciador de Fluxos de Trabalho 1.0 para Visual Studio 2012 - Testar Host de Serviço.
  5. Na lista Ações, escolha Habilitar Regra.
  6. Na página de propriedades de seu projeto do SharePoint, escolha a guia SharePoint e então marque a caixa de seleção Habilitar depuração do Fluxo de Trabalho.

Depurando fluxos de trabalho do SharePoint Online usando o Visual Studio

Para depurar fluxos de trabalho do SharePoint Online no Visual Studio, execute as seguintes etapas:

  1. Se você estiver por trás de um firewall, talvez seja necessário instalar um cliente proxy (como o cliente TMG (Gateway de Gerenciamento de Ameaças) de Forefront, dependendo da topologia de rede da sua empresa.

  2. Registre-se em uma conta do Microsoft Azure, caso ainda não tenha se registrado, e entre na conta.

    Para obter informações sobre como se registrar em uma conta do Microsoft Azure, consulte Microsoft Azure.

  3. Crie um namespace do Microsoft Azure, que você possa usar para depurar fluxos de trabalho remotos. Você pode fazer isso no microsoft portal do Azure.

    Para obter mais informações sobre o Barramento de Serviço do Microsoft Azure, consulte Criar um namespace do Barramento de Serviço usando o portal do Azure.

    Observação

    A depuração do fluxo de trabalho do SharePoint Online usa o componente de Serviço de Retransmissão do Barramento de Serviço do Microsoft Azure. Dessa forma, você será cobrado pelo uso do Barramento de Serviço. Consulte Perguntas frequentes sobre preços do barramento de serviço. Você obtém acesso gratuito ao Microsoft Azure a cada mês para se inscrever no Visual Studio Professional com MSDN, no Visual Studio Premium com MSDN ou no Visual Studio Ultimate com MSDN. Com esse acesso, você pode usar a retransmissão do Barramento de Serviço por 1.500, 3.000 ou 3.000 horas, dependendo da assinatura MSDN. Consulte Obter alguma quantidade de Serviços do Microsoft Azure por mês sem custo adicional.

  4. No Microsoft Azure, escolha o namespace do serviço, escolha o link Chave de acesso e copie o texto na caixa Cadeia de Conexão.

  5. Na página de propriedades do seu projeto do Suplemento do SharePoint, escolha a guia SharePoint e então marque a caixa de seleção Habilitar a depuração do Fluxo de Trabalho.

    Você deve habilitar esse recurso para depurar fluxos de trabalho no SharePoint Online. Essa propriedade se aplica a todos os projetos do SharePoint no Visual Studio. O Visual Studio desativa automaticamente a depuração de fluxo de trabalho caso você empacote seu aplicativo para distribuição na loja do Office.

  6. Marque a caixa de seleção Habilitar a depuração via Barramento de Serviço do Microsoft Azure. Em seguida, na caixa Cadeia de conexão do Barramento de Serviço do Microsoft Azure, cole a cadeia de conexão que você copiou.

Depois de habilitar a depuração do fluxo de trabalho e fornecer uma cadeia de conexão válida para o Barramento de Serviço do Microsoft Azure, você pode depurar os fluxos de trabalho do SharePoint Online.

Observação

Se você não tiver desabilitado a depuração do fluxo de trabalho e não quiser receber uma notificação sempre que seu projeto contiver um fluxo de trabalho, desmarque a caixa de seleção Avisar se a depuração do Barramento de Serviço do Microsoft Azure não estiver configurada.

Confira também

Uma grande parte do desenvolvimento de fluxos de trabalho do SharePoint permanece inalterada para o desenvolvedor do Visual Studio. As principais seções do documento para o SharePoint 2010 permanecem relevantes: