Desenvolvimento com Sharepoint 2010Lucas Simões Maistrolucassimoesmaistro@bol.com.brhttp://twitter.com/lucas_simoeshttp://blogdopiruca.wordpress.com
Lucas Simões MaistroEspecialista em Sistemas para InternetBacharel em Administração de Empresas com Habilitação em Análise de Sistemas11 anos de experiência em desenvolvimento de softwareEngenheiro de Software da Critical Software do BrasilApresentação
HistóricoSharepoint 2001Microsoft adquire nCompassSharepoint Team Services (STS)Sharepoint 2003Front-end com ASP.NetSTS foi renomeado para Windows Sharepoint Services (WSS)Sharepoint 2007Microsoft Office Sharepoint Server (MOSS 2007)
Posicionamento de Mercado17+mil clientes100+milhões licenças2/3 Fortune 100020.000 novos usuários por dia durante os últimos 5 anos4.000+ ParceirosLíde do Gartner Magic Quadrants, ForresterWave1.000+ livros no AmazonU$1+Bilhão em receitaU$6+ Bilhões em receitas para parceirosU$300+ milhões só no Brasil
Sharepoint 2010Microsoft SharePoint Foundation 2010: é a tecnologia de base de todos os sites do SharePoint, com ele é possível criar rapidamente diversos tipos de sites.SharePoint Server 2010é um produto de servidor que depende da tecnologia do SharePoint Foundation para fornecer uma estrutura consistente e conhecida para listas e bibliotecas, administração e personalização de sites.SharePoint Online é um serviço baseado em nuvem, hospedado pela Microsoft, para empresas de todos os portes que agora tem a opção de em vez de instalar e implantar o SharePoint Server no local podem simplesmente se inscrever no SharePoint Online.SharePoint Designer 2010 é um programa grátis para projetar, criar e personalizar sites que executem o SharePoint Foundation e o SharePoint Server.SharePoint Workspace2010é um programa de desktop que você pode usar para colocar o conteúdo do site do SharePoint offline e colaborar no conteúdo com outros enquanto está desconectado da rede.
Microsoft SharePoint 2010A Plataforma de Colaboração nas Empresas e na InternetSitesConectar e habilitarpessoasComunidadesCompositesInfraestrutura Unificada -> menor custoResponder rapidamente as necessidades de negóciosConteúdoInsightsBusca
Sites - Experiência do usuário
Sites - “Theming and Branding”
Interface multi-idiomas
SharePoint Communities
My Sites
Content - Metadadosgerenciados
Search - Interface Fast SearchNavegadoresThumbnailsClassificarporqualquer campoResultadosSemelhantesPreviewsResultadosvisuaisconectamosusuários com o conteúdoThumbnails  pra Word e PowerPointVisual Best Bets destacamconteúdosselecionadosPreview no browser semsair da página de resultadosFeitousando o SharePoint Search CenterAproveitatodas as inovações do SharePointWeb Parts, Federação, autocomplete de buscas, buscasrelacionadas, “Vocêquisdizer?”
Insights- SharePoint Business Intelligence
Insights - Performance Point Services
SharePoint Composites
Business Connectivity Services (BCS)
Visio 2010 Premium -  Workflows
SharePoint Designer
Estrutura
Arquitetura Stand AloneActive DirectoryTodas essas funções em apenas 1 servidorSQL ServerSharePoint
Arquitetura Server FarmUma Server Farm é constituída de no mínimo 3 servidoresActive DirectorySQL ServerSharePoint
Medium Server Farm
Large Server Farm
SharePoint TerminologiaFarmSPFarmSite CollectionsSite collectionSPSiteRoot SiteSite SPWebSub sitesWeb ApplicationsSPWebApplicationListsDocument Library - SPDocumentLibraryList - SPListField 1   Field 2  Field 3Field 1   Field 2  Field 3Item 1Item 2Item 3Item 4Item -SPListItemFile 1File 2File 3File 4File – SPFileFolder - SPFolder
Criação de Sites e Páginas
Gestão de Documentos
28Master Pages
Master Page - Tipos
Adicionando um Ribbon ControlCMDUI.XMLPage with the RibbonOn Web Front EndContains OOB site wide Ribbon ImplementationPage ComponentJavaScriptHandles controlCustom Action<CustomAction    Location = (somewhere in Ribbon)   Scope = (Farm to Web)   <CommandUIExtension>      <CommandUIDefinitions />      <CommandUIHandlers />   </CommandUIExtension></CustomAction>Mesclado com a  CMDUISEexistir, oscomponentessãoadicionadosaos handle commands da páginaSENÃO Os handle commands devemserdeclaradosseparadamente
Adicionando um Ribbon ButtonOnde?O quê?Ação
Controles do ASP.NET 2.0
Funcionam como um UserControl, sendo então extremamente flexíveis
São personalizáveis pelos usuários, conseguindo manter as preferências de cada um individualmente
São dispostas em Web Zones
São vinculadas a um WebpartManeger
Permitem conexão e comunicação entre WebpartsWebparts
Sharepoint utiliza amplamente Webparts em suas paginas
Existem Webparts prontas no Sharepoint para exibir listas, fazer buscas, gerar relatórios, exibir folhas de dados do Excel, visualizar imagens, visualizar Slides, formulários, Silverlight, etc...
Praticamente em todos os sites do Sharepoint existem zonas para inserção de novas Webparts.Webparts no Sharepoint
API’s Sharepoint
API de programação para interação com o Sharepoint
Código funciona no servidor aonde o Sharepoint esta rodando
Permite interagir com todas as estruturas do Sharepoint, listas, sites, permissões, Webparts, etc.Server API Sharepoint
Algumas classes são principais durante o desenvolvimento pois proporcionam interagir com os sites e listas do Sharepoint
Elas são: SPSite SPWeb SPContextSPListSPListItemSPListItemCollectionServer API – Objetos Comuns
CollaborativeAplication Markup Language
Linguagem de marcação baseada em XML
Tem diversas funcionalidades como:Definir featuresDefinir Views para dados e paginasRealizar Querys em listas do SharepointNo Sharepoint 2010 foi incluída a função para Joins entre listas nas QuerysCAML Query e sua utilização
CAML – Exemplo Query
O Objeto SPQuery é utilizado para usar as querys CAML nas listasCAML – Querys em Listas

Desenvolvimento com sharepoint

  • 1.
    Desenvolvimento com Sharepoint2010Lucas Simões Maistrolucassimoesmaistro@bol.com.brhttp://twitter.com/lucas_simoeshttp://blogdopiruca.wordpress.com
  • 2.
    Lucas Simões MaistroEspecialistaem Sistemas para InternetBacharel em Administração de Empresas com Habilitação em Análise de Sistemas11 anos de experiência em desenvolvimento de softwareEngenheiro de Software da Critical Software do BrasilApresentação
  • 3.
    HistóricoSharepoint 2001Microsoft adquirenCompassSharepoint Team Services (STS)Sharepoint 2003Front-end com ASP.NetSTS foi renomeado para Windows Sharepoint Services (WSS)Sharepoint 2007Microsoft Office Sharepoint Server (MOSS 2007)
  • 4.
    Posicionamento de Mercado17+milclientes100+milhões licenças2/3 Fortune 100020.000 novos usuários por dia durante os últimos 5 anos4.000+ ParceirosLíde do Gartner Magic Quadrants, ForresterWave1.000+ livros no AmazonU$1+Bilhão em receitaU$6+ Bilhões em receitas para parceirosU$300+ milhões só no Brasil
  • 5.
    Sharepoint 2010Microsoft SharePointFoundation 2010: é a tecnologia de base de todos os sites do SharePoint, com ele é possível criar rapidamente diversos tipos de sites.SharePoint Server 2010é um produto de servidor que depende da tecnologia do SharePoint Foundation para fornecer uma estrutura consistente e conhecida para listas e bibliotecas, administração e personalização de sites.SharePoint Online é um serviço baseado em nuvem, hospedado pela Microsoft, para empresas de todos os portes que agora tem a opção de em vez de instalar e implantar o SharePoint Server no local podem simplesmente se inscrever no SharePoint Online.SharePoint Designer 2010 é um programa grátis para projetar, criar e personalizar sites que executem o SharePoint Foundation e o SharePoint Server.SharePoint Workspace2010é um programa de desktop que você pode usar para colocar o conteúdo do site do SharePoint offline e colaborar no conteúdo com outros enquanto está desconectado da rede.
  • 6.
    Microsoft SharePoint 2010APlataforma de Colaboração nas Empresas e na InternetSitesConectar e habilitarpessoasComunidadesCompositesInfraestrutura Unificada -> menor custoResponder rapidamente as necessidades de negóciosConteúdoInsightsBusca
  • 7.
  • 8.
    Sites - “Themingand Branding”
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
    Search - InterfaceFast SearchNavegadoresThumbnailsClassificarporqualquer campoResultadosSemelhantesPreviewsResultadosvisuaisconectamosusuários com o conteúdoThumbnails pra Word e PowerPointVisual Best Bets destacamconteúdosselecionadosPreview no browser semsair da página de resultadosFeitousando o SharePoint Search CenterAproveitatodas as inovações do SharePointWeb Parts, Federação, autocomplete de buscas, buscasrelacionadas, “Vocêquisdizer?”
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
    Arquitetura Stand AloneActiveDirectoryTodas essas funções em apenas 1 servidorSQL ServerSharePoint
  • 22.
    Arquitetura Server FarmUmaServer Farm é constituída de no mínimo 3 servidoresActive DirectorySQL ServerSharePoint
  • 23.
  • 24.
  • 25.
    SharePoint TerminologiaFarmSPFarmSite CollectionsSitecollectionSPSiteRoot SiteSite SPWebSub sitesWeb ApplicationsSPWebApplicationListsDocument Library - SPDocumentLibraryList - SPListField 1 Field 2 Field 3Field 1 Field 2 Field 3Item 1Item 2Item 3Item 4Item -SPListItemFile 1File 2File 3File 4File – SPFileFolder - SPFolder
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
    Adicionando um RibbonControlCMDUI.XMLPage with the RibbonOn Web Front EndContains OOB site wide Ribbon ImplementationPage ComponentJavaScriptHandles controlCustom Action<CustomAction Location = (somewhere in Ribbon) Scope = (Farm to Web) <CommandUIExtension> <CommandUIDefinitions /> <CommandUIHandlers /> </CommandUIExtension></CustomAction>Mesclado com a CMDUISEexistir, oscomponentessãoadicionadosaos handle commands da páginaSENÃO Os handle commands devemserdeclaradosseparadamente
  • 31.
    Adicionando um RibbonButtonOnde?O quê?Ação
  • 32.
  • 33.
    Funcionam como umUserControl, sendo então extremamente flexíveis
  • 34.
    São personalizáveis pelosusuários, conseguindo manter as preferências de cada um individualmente
  • 35.
  • 36.
    São vinculadas aum WebpartManeger
  • 37.
    Permitem conexão ecomunicação entre WebpartsWebparts
  • 38.
    Sharepoint utiliza amplamenteWebparts em suas paginas
  • 39.
    Existem Webparts prontasno Sharepoint para exibir listas, fazer buscas, gerar relatórios, exibir folhas de dados do Excel, visualizar imagens, visualizar Slides, formulários, Silverlight, etc...
  • 40.
    Praticamente em todosos sites do Sharepoint existem zonas para inserção de novas Webparts.Webparts no Sharepoint
  • 41.
  • 42.
    API de programaçãopara interação com o Sharepoint
  • 43.
    Código funciona noservidor aonde o Sharepoint esta rodando
  • 44.
    Permite interagir comtodas as estruturas do Sharepoint, listas, sites, permissões, Webparts, etc.Server API Sharepoint
  • 45.
    Algumas classes sãoprincipais durante o desenvolvimento pois proporcionam interagir com os sites e listas do Sharepoint
  • 46.
    Elas são: SPSiteSPWeb SPContextSPListSPListItemSPListItemCollectionServer API – Objetos Comuns
  • 47.
  • 48.
  • 49.
    Tem diversas funcionalidadescomo:Definir featuresDefinir Views para dados e paginasRealizar Querys em listas do SharepointNo Sharepoint 2010 foi incluída a função para Joins entre listas nas QuerysCAML Query e sua utilização
  • 50.
  • 51.
    O Objeto SPQueryé utilizado para usar as querys CAML nas listasCAML – Querys em Listas

Notas do Editor

  • #2 Como ponto de partida, o posicionamento do SharePoint: “Aplataforma de colaboração para Enterprise e Web”. Para cada cenário de negócio onde as pessoas precisam interagir entre si, com conteúdo / informação, ou com aplicações de negócio, a plataforma SharePoint oferece um rico conjunto de capacidades integradas, prontas para o uso, mas que podem ser customizadas para necessidades específicas e integrar com produtos e soluções. Podemos enumerar 3 grandes valores / objetivos do SharePoint 2010:Conectar e Habilitar pessoas possibilitando que elas trabalhem juntas de maneiras que sejam mais efetivas para elas. Não importa se pelo PC, dispositivo móvel, ou browser, se on-line ou off-line, o SharePoint 2010 oferece uma experiência do usuário intuitiva e familiar. Reduzir custos: infra-estrutura unificada que oferece gerenciamento e disponibilidade em grande escala. Reduz o custo total de ownership (tanto local quanto hospedado) por oferecer um conjunto de funcionalidades integradas e por permitir a consolidação das soluções de produtividade das organizações. Isso traz uma redução dos custos relacionados com manutenção, treinamento e gerenciamento da Infra-estrutura Resposta rápida as necessidades de negócio com deploy de soluções mais fácil e dinâmico. Para cada tipo de usuário (usuário final, power user ou desenvolvedor), o SharePoint 2010 oferece ferramentas e capacidades para desenhar e criar soluções de negócio que podem estar integradas com dados, ferramentas e processos legados. Com esses 3 objetivos em mente, quando falamos do SharePoint 2010 para soluções de colaboração, existem 6 áreas para explorar: Sites, Communities, Content, Search, Insights e Composites.
  • #11 SharePoint CommunitiesTraz a habilidade de localizar e acessar facilmente expertise e interagir com outras pessoas de maneiras novas e criativas, através de redes formais e informais.O SharePoint Communities pode ser definido como funcionalidades de Social computing, mas talvez seja melhor definido como a nova geração das funcionalidades de colaboração com foco social e em pessoas, o que fortalece a plataforma de colaboração do SharePoint.O time do SharePoint fez um grande esforço para capturar conhecimento informal (colaboração adhod, tag, wikis). Existe um novo template de enterprise wiki onde o usuário pode fazer o que quer mas com workflows, categorias, etc, ou seja, com mais estrutura (similar a wikipedia). Com essa informação disponível, foram criadas novas formas de navegação pela informação: Adhoc (tag por exemplo) X estruturado (navegação por taxonomia).
  • #12 Os “My site” funcionam como Hub para interação com pessoas. No SharePoint 2010 os “My Sites” foram modificados para serem o hub de social networking para pessoas da organização com o intuito de achar e trabalhar com pessoas de forma informal e/ou formal. No My Site temos o perfil do usuário, atualização de status e feed de atividades, descoberta de conhecimento.Tags: “Social Feedback” é uma das novidades do SharePoint 2010 e possibilita aos usuários descobrir conteúdos e o que os outros usuários pensam sobre esse conteúdo. No SharePoint existem dois tipos de tags: social e expertise:Social se refere ao conteúdo a adiciona metadados ao conteúdo para descreve-lo. Esse tipo de tag possibilita a descoberta de conteúdo e o crescimento de informações Expertise é relacionado a pessoa, quais os projetos nos quais está trabalhando, quais seus skills, etc. Esse tipo de tag, ajuda a criar relacionamentos e conexões com outras pessoas na organização.
  • #13 Entre as novidades temos os Metadados gerenciados, onde temos a possibilidade de definir taxonomias de forma centralizada que podem ser utilizadas na farm ou entre farms para classificar e rapidamente localizar conteúdos. Uma das formas de trabalhar com metadados no 2010 é a possibilidade de automaticamente extrair metadados de imagens armazenadas numa Asset Library. Esse metadado pode ser utilizado em buscas ou quando navegamos pela Asset Library utilizando um critério específico, além de podermos configurar diretórios de listas e bibliotecas para colocar tags automaticamente ao conteúdo com base no metadado.O SharePoint 2010 tem o conceito de “Taxonomia” e de “Folksonomia”: Taxonomia é uma organização hierárquica de tags de conteúdo que é gerenciada de forma centralizada e utilizada pelos donos do conteúdo selecionando tags pré-definidas. Já “folksonomia” difere de Taxonomia pelo fato das tags e da hierarquia das tags não são definidas e gerenciadas de forma centralizada, ou seja, os usuários são livres para adicionar tags ao conteúdo ou reutilizar tags que outras pessoas criaram.
  • #15 O SharePoint oferece funcionalidades para a construção de Scorecards, Dashboards dinâmicos e gráficos de uma maneira mais self-service e colaborativa. As pessoas podem interagir com os dados, ter KPIs e fazer analises, e criar seus próprios dashboards utilizando o Excel ou as novas Web Parts de gráficos e a integração com funcionalidades nativas do SharePoint como busca, personalização e tags contribui para essa natureza mais self-service.O SharePoint 2010 trabalha muito próximo do Excel 2010 (que teve muitas evoluções incluindo uma versão 64bits para não ter mais a limitação de 2GB de memória na ferramenta, novas formas de visualização de dados, etc) e o Excel Services foi modificado para manter a paridade com o Excel possibilitando ter no browser a mesma experiência e visualização existente no client. Um dos grandes pontos nessa paridade é a interação com tabelas dinâmicas (pivot tables) fazendo drill down, ordenação utilizando o visual slicer, etc.
  • #16 Outra mudança é a incorporação do Performance Point Services que permite a criação de scorecards e dashboards. A incorporação do antigo Microsoft Performance Point Server 2007 ao SharePoint 2010 (e as evoluções feitas na plataforma) possibilitam a total integração com a segurança e administração do SharePoint. As novas formas de visualização (como a Decomposition Tree) possibilita realizar uma melhor analise dos dados e facilita a tomada de decisões.
  • #17 SharePoint CompositesUsuários de negócio de todas as funções precisam da habilidade de criar soluções customizadas sem envolver a área de IT em cada requisição. Ao mesmo tempo, o pessoal de TI precisa da possibilidade de habilitar os usuários a criar essas aplicações e ao mesmo tempo manter e disponibilidade e estabilidade do ambiente.Composites são soluções criadas utilizando ferramentas e componentes prontos do SharePoint para criar soluções robustas de negócio e colaboração sem a necessidade de envolver um time de tecnologia para o desenvolvimento da solução. Existem 4 características básicas que facilita a composição no SharePoint 2010:Experiência: criando experiência com usuário rica e interativa que proporcione produtividade e grande adoção pelos usuáriosConectividade de dados: a possibilidade de facilmente incorporar dados de sistemas externos e oferecer experiências offline e online similaresSoluções rápidas: a habilidade de rapidamente criar soluções de negócio utilizando componentes e ferramentas já existentes no SharePoint 2010Controle do TI: prover ao time de TI a habilidade de usuários criar soluções e facilmente monitorar, gerenciar e isolar soluções customizadas para garantir a disponibilidade do ambiente.
  • #18 As aplicações no SharePoint podem ser consumidas utilizando o browser num PC, pelo dispositivo móvel ou pelas aplicações do Office (Word, Excel, Access e Outlook), além do próprio SharePoint Workspace 2010 (já citado anteriormente) que o acesso offline ao conteúdo do SharePoint 2010.Para melhor a experiência do usuário o SharePoint oferece vários templates de sites, além de suporte a interfaces Silverlight (não só para visualizações de gráficos e vídeos, mas como uma aplicação rica hospedada no browser) e das características dos sites já citadas anteriormente (como Ribbon, por exemplo).O SharePoint 2007 trouxe o Business Data Catalog (BDC) que foi evoluído para o SharePoint Business Connectivity Services que possibilita acesso a dados externos além da criação das tipo de dados externo pelo SharePoint Designer 2010 que podem ser utilizados em listas ou por aplicações do SharePoint.
  • #19 Já foi falado anteriormente sobre o Visio Services, mas quando falamos de Composites, esse serviço aparece novamente como um grande avanço para workflows. Usando o Visio 2010 o os usuários de negócio podem facilmente desenhar o workflow/processo que desejam, e após isso esse Visio pode ser exportado para o SharePoint Designer 2010 para a adição das regras de negócio. Esse workflow criado no SharePoint Designer pode ser exportado de um site para outro, o que possibilita o desenvolvimento e teste do workflow em um ambiente (desenvolvimento e/ou teste) e a realização do deploy em outro ambiente (produção). Após ser publicado no SharePoint, esse workflow pode ser visualizado (incluindo o status atual) utilizando o Visio services.
  • #20 o SharePoint Designer 2010 teve muitas evoluções se comparado ao seu antecessor, desde mudanças da interface (ribbon, por exemplo), quanto nas possibilidades de customizações (já falamos que é possível criar workflows mais poderosos, criar entidades externas, etc). Mas uma mudança muito importante (e nem sempre tão visível) foi a possibilidade dos administradores da farm controlarem (pelo Centro Administration) o uso do SharePoint Designer ou de limitar usuários a funcionalidades específicas, além do administrador de um site collection poder controlar o que pode ou não ser feito com o SharePoint Designer num site collection específico. Esses controles possibilitam que os administradores permitam o uso do Designer sabendo exatamente o que vai poder ser alterado.
  • #30 http://startermasterpages.codeplex.com/MVP Randy Drisgill – Referenciaem SharePoint Branding and Design3 Starter Master Pages – PossuimaiscoisasqueumaMasterPagemínima, porém com o mínimonecessárioparasuaaplicação Master Pagesv4.master•É a masterpage padrão do sharepoint 2010, por ser a versão 4 da interface ela recebeu esse nome de V4.Ela contem a barra de Ribbon e o Site Actionsdefault.master•Master page padrão da versão 2007 do Sharepoint, feita para acomodar os sites que serão migrados da versão 2007 para a 2010, não possui a barra de ribbon e no site actions esta no lado direito aindaminimal.masterEsta pagina não contem quase nada, ela é usada para as buscas e Office Web Applications,não contem navegação embutida ( normalmente gera problemas quando os usuários querem sair dela). Elas são normalmente confundidas com as minimalpages do Sharepoint 2007as quais eram paginas default master editadas pelos usuários desenvolvedores para facilitar o desenvolvimento e customização•Start Master PagesEram conhecidas como Minimalmasterpages na versão 2007, são uma masterpage simples para tornar mais rápido criar uma masterpage customizada.simple.master -paginas usadas para Login e erros, depois de customiza-las deve-se coloca-las na pasta Layouts do SharepointPagesusingsimple.master Login.aspx SignOut.aspx Error.aspx ReqAcc.aspx Confirmation.aspx WebDeleted.aspx AccessDenied.aspx
  • #47 BCS is a set of out-of-box features, services and tools that streamline the creation of SharePoint Solutions with deep integration of External Data and Services.Obvious question here will be around SKUs. What can we safely talk about?Current POR: The basics of ECT store and BDC runtime will be baked into the WSS platform. TBD on specifics beyond that.
  • #48 - BCS-enabled solutions rely on ECTs to integrate external data into Office and SharePoint onclient and server
  • #49 Os workflows, basicamente, são um conjunto de passos, de qualquer área de um negócio, realizadas ou não em sequência, mas interconectados entre si. Servem para automatizar um processo de maneira prática e rápida, ao representar um modelo do processo de negócio.Um exemplo é o processo de fabricação, aqui bem simplificado, de um determinado produto: primeiro há o processo de coleta de matéria-prima, depois esta matéria-prima é processada e modificada, por fim, em uma última etapa, tem-se o produto final à venda para os consumidores.Para auxiliar no controle de Workflows há diversos softwares, e no nosso caso o SharePoint implementa este controle baseando-se no Windows Workflow Foundation, um produto Microsoft responsável por definir, controlar e executar Workflows contruídos sob a plataforma .NET.Devido às diferenças nas datas de lançamento entre o SharePoint 2010 e a plataforma .NET 4.0, esta última não será suportada pelo SharePoint 2010, o que certamente trará desvantagens no desenvolvimento para o SharePoint.
  • #50 O Windows Workflow Foundation trabalha com dois tipos de Workflows:Sequential Workflows: Como o próprio nome diz, são workflows que executam seus passos sequencialmente, do início ao fim, sem depender de interação humana entre os mesmos. Como exemplo, podemos citar o processo de verificação de um arquivo anexado a uma mensagem, aonde um workflow seria iniciado assim que determinado arquivo fosse anexado, realizaria as etapas de verificação necessárias e então retornaria uma confirmação ou erro. Como podemos notar, entre as etapas do workflow não houve nenhuma interação humana.State Machine Workflows: Workflows de “Máquina de Estado” representam os workflows aonde há uma grande interação humana entre os diversos processos que o compõem. Como exemplo poderíamos ter um workflow que controlasse o processo de aprovação de um determinado documento, que necessitasse da aprovação de diversas pessoas, com as etapas deste workflow dependendo então da aprovação de um setor para o documento poder ser analizado pelo próximo responsável, voltando no processo caso fosse rejeitado. Nota-se então a dependência da intervenção humana para que as etapas do workflow sigam adiante.
  • #51 O Visual Studio 2010 permite a integração entre o Workflow e outros elementos do SharePoint ao integrar códigos ao Workflow que realizem esta comunicação. Anteriormente, como Workflows estavam presos às listas, tornava-se difícil adquirir determinadas informações. Agora, com Site Workflows e EDE, os Workflows atingem um novo patamar de integração, podendo comunicar-se com desde Document Sets à Eventos externos ao SharePoint.A possibilidade de integrar códigos .NET (Basic/C#) a um Workflow permite realizar ações que não poderiam ser normalmente executadas utilizando-se as ferramentas providas pelo SharePoint, ou mesmo extender estas ferramentas. É possível também obter controle sobre eventos que ocorrem durante o ciclo de vida de um Workflow, ou seja, quando ele é inicializado, pausado, retomado, etc. Basta extender sua classe com a classe SPWorklowEventReceiver, que lhe permitirá sobrescrever tais eventos, realizando as ações necessárias, como controlar outros Workflows ou mesmo realizar um tratamento de erros mais profundo.Outra novidade é o Workflow poder “comunicar-se” com eventos externos ao SharePoint, podendo tomar caminhos que dependem destes eventos.Pode-se também importar Workflows produzidos para o SharePoint 2007 para o SharePoint 2010, desta forma evita-se repetir o processo de criação desnecessariamente.