ČESKÉ VYSOKÉ UČENÍ TECHNIKÉ Fakulta elektrotechnická
Microsoft Sharepoint 2007 Workflows Průmyslové informační systémy Bc. Petr Pokorný Letní semestr 2009/2010
1
Obsah 1
Úvod …..........................................................................................................................
3
2
Workflow …..................................................................................................................
3
3
Workflow v microsoft Sharepoint 2007 …....................................................................
4
3.1
Windows Workflow Foundation …...............................................................................
4
3.2
Typy workflows v SharePointu …..................................................................................
6
3.2.1 Sekvenční workflow …..................................................................................................
6
3.2.2 Stavový automat ….......................................................................................................
7
3.3
Práce s workflows v SharePointu …..............................................................................
8
3.3.1 Vytváření workflows ….................................................................................................
9
3.3.2 Používání workflows …................................................................................................. 11 4
Závěr …......................................................................................................................... 14
5
Reference ….................................................................................................................. 14
2
1 Úvod V mnoha současných organizacích a společnostech je existuje velmi rozsáhla potřeba práce s dokumenty, kdy je nutno aby procházeli řadou procesů, ať už se jedná o nějaké schvalování, úpravy, potvrzení apod. Tento procesu se říka workflow, a může být velmi klíčový pro chod podniku a je záhodno, aby byl co nejrychlejší a nejspolehlivější. V mnoha podnicích je prováděn bez pomoci nějakého systému a jeho spolehlivost je daná spolehlivostí lidského faktoru. Microsoft SharePoint 2007 nabízí správu dokumentů a workflow v rámci Office 2007 Server, kdy je integorvaný do známých a používaných aplikací Office a také pomocí SharePoint serveru. Uživatele mají tak možnost spravovat a účastni se workflows pomocí známých a aplikací a rozhraní. Dále mají také možnost vytvářet vlastní workflow a přiřazovat je do listů a library v SharePointu.
2 Workflow Workflow je reprezantace nějakého pracovního procesu či akce, který se skládá z určitých činností a interakcí mezi nimi. Jedná se vlastně o rozdělení procesu do jednotlivých dílčích úkolů, které mají nějaký definovaný postup provádění. Je to abstrakce a virtuální reprezentace reálného postupu práce, rozdělená na jednotlivé části a sekvenci průchodů mezi nimi. V méně abstraktní rovině budeme v našem případě workflow považovat jako předdefinovaný systém vnitropodnikových procesů pro automatizovaný pohyb dokumentů sekvencí akcí, které se vztahují k bussiness procesu. Používají se k řízení běžných podnikových procesů, ve kterých se nějakým způsobem zpracovávají dokumenty a aplikuje se na ně tzv. Bussiness logika, což je soubor instrukcí, které specifikují a kontrolují akce, které se týkají dokumentu.
3
Obrázek 1: Příklad workflow Na obrázku 1 je popsán jeden z typických workflow, a to potvrzení dokumentu. Dokument je odeslán pro potvrzení. Je buď potvrzen nebo nepotvrzen, což je pak oznámeno autorovi dokument. Tímto workflow končí.
3 Workflow v Microsoft Sharepoint 2007 3.1
Windows Worfkflow Foundation
Jádro workflow je Windows Workflow Foundation, což je část .NET Frameworku 3, který obsahuje také Windows Presentation Foundation a Windows Communication Foundation. Windows Workflow foundation je platforma, která zajišťuje programovací infrasktrukturu a nástroje pro vývoj a spouštění aplikací založených na workflows. Windows Workflow Foundation zjednodušuje proces programování k vytváření workflow aplikací. Run-time engine řídí spouštění workflows a umožňuje jim být aktivní po dlouhou dobu i po restartování počítače. Run-time service také zajišťuje korektní správu chyb. Workflows nejsou přímo spustitelné aplikace, ale jsou tvořené tak, že existují s jiným procesem, který obstarává jeho funkčnost. Tomuto procesu se říka host a v Office 2007 je to SharePoint. Workflow jsou totiž pouze sada objektů, které obstarávají funkcionalitu. Nenabízejí uživatelské rozhraní, které by s nimi umožňovalo práci. To všechno obstarává workflow host.
4
Host umožňuje: •
Majitelům dokumentu vybrat a přiřadit workflow dokumentu
•
Administrátorům spravovat a sledovat workflow
•
Koncovému uživateli přijímat oznámení událostí workflow
•
Koncovému uživateli updatovat status přiřazeného úkolu
•
Zabezpečení
•
Uživatelské rozhraní Windows Workflow Foundation nabízí řadu rozhraní, která umožňují hostovi pracovat s
enginem. Specifické implementace těchto rozhraní jsou již nutné na straně hosta. Microsoft Sharepoint implementuje tato rozhraní a zajišťuje v SharePoint workflows roli hosta. Kokrétně se jedná o tato rozhraní: •
transactions
•
roles
•
persistence
•
notifications
•
tracking
•
messaging
5
Obrázek 2: Architektura Microsoft SharePoint Workflows Obrázek 2 zobrazuje architekturu workflow ve Windows SharePoint. Služby Windows SharePoint jsou host pro Windows Workflow Foundation run-time engine a poskytují implementaci potřebných služeb. Funkcionalita Windows Workflow Foundation run-time enginu a funkcionalita Windows SharePoint služeb je přístupná pomocí Workflow Object Model.
3.2
Typy workflows v SharePointu
SharePoint workflows podporují tyto typy workflows:
3.2.1
Sekvenční workflow
Typicky jsou popsány vývojovým diagramem, ve kterém má proces nějaký začátek, cestu (která může obsahovat paralelní větvení a smyčky) a konec. Sekvenční workflow sleduje sekvenci předepsaných kroků k postupu od začátku ke konci.
6
Obrázek 3: Příklad sekvenčního workflow
3.2.2
Stavový automat:
Je reprezentován stavy, přechody mezi nimi a akcemi. Jeden stav je označen jako počáteční, a poté v závislosti na události, může být uskutečněn přechod do jiného stavu. Stavový automat může mít konečný stav, který určuje konec workflow. Na rozdíl od sekvenčních workflow, není žádná předepsaná cesta průchodu workflow. Na místo toho je cesta, kterou se workflow ubírá, určena událostmi, které nastávájí při zpracování workflow. Událost je zodpovědná za přechod z jednoho stavu do druhého.
7
Obrázek 3: Příklad stavového automatu
3.3
Práce s workflows v SharePointu
Funkcionalita workflow v Office SharePoint Server 2007 je integrovaná do Office 2007. V sharepointu je možné s workflows pracovat přímo v aplikacích sady Microsoft Office 2007 nebo na SharePoint serveru. Uživatelé mohou spouštět workflow nebo se zapojit do workflows přímo v dokumentu nebo položce v SharePoint listu nebo library. Přímo v dokumentu nebo na SharePoint serveru je možné: •
Zobrazit seznam workflow, která jsou dostupná pro dokument
•
Založit workflow v dokumentu
•
Zobrazit, editovat nebo přeřadit workflow task
•
Dokončit workflow task
8
3.3.1
Vytváření workflow
Při vytváření workflow je možné použít buď předdefinované workflow, nebo vytvářet vlastní pomocí vývojových nástrojů které jsou k dispozici. Předdefinované: Office SharePoint Server 2007 obsahuje mnoho workflow, které odpovídají běžným podnikovým scénářům: •
Approval
•
Collect Feedback
•
Collect Signatures
•
Disposition Approval
•
Three-state
•
Group Approval
•
Translation Management Každý z těchto předdefinovaných scénářů může být modifikován, pro konkrétní případ
použití mnoha způsoby. Například, pokud je workflow přidáván k možnosti použití v dokumentech, je možné modifikovat seznam úkolů a seznam historie, kde jsou ukládány informace o workflow. Když uživatel zakládá workflow v dokumentu, může specifikovat seznam účastníků, donu platnosti a intrukce úkolu. Vytváření vlastních workflows: Vzhledem k tomu, že mnoho společností může mít specifické potřeby práce s dokumenty, nastávají případy, kdy předdefinované workflow nestačí. V tomto případě je možnost vytvářet vlastní workflows. Je možné vytvářet takové, které jsou spouštěny uživateli, nebo které se spouštějí automaticky, v závislosti na události. K vytváření workflows jsou dvě možnosti: •
Pomocí psaní kódu ve Visual Studiu
•
Pomocí designování ve Visio a Microsoft Office SharePoint Designeru 9
Obrázek 4: Vytváření workflow pomocí designeru
Obrázek 5: Vytváření workflow ve Visual Studiu 10
3.3.2
Používání workflows:
Aby bylo možné workflow používat, je nejdříve nutné ho přidat do listu, library nebo content typu, aby byl přístupný pro dokumenty v konkrétním umístění. Dostupnost workflow se liší , podle toho kam byl přidán. •
Pokud byl přidán do listu nebo library, je dostupný pouze pro položky v tomto listu nebo library
•
Pokud byl přidán do content typu listu, je dostupný pouze pro položky tohoto content typy v listu nebo library, pro kterou je content type specifikován.
•
Pokud byl přidán do site content type, je dostupný pro všechny položky, tohoto content typu ve všech listech a library, kterému byla přiřazena instance content typu. Tímto dosáhneme dostupnusti ve více listech a library.
Obrázek 6: Přidání workflow na SharePoint Serveru 11
Když je workflow přidán do listu, library nebo content type, je možné ho nastavit pro jeho specifické umístění různými možnostmi nastavení, jako jméno, tasklist, history list a způsob spuštění workflow. Přidáním se workflow stane dostupným v místě, do kterého byl přidán, ale nebude spuštěn. Po přidání je workflow připraven pro spuštění v dokumentu nebo položce, pokud byl nastaven pro manuální spuštění. Ke spuštění se vybere worflow z dostupných pro dokument nebo položku, případně se ještě vyplní informace, které workflow potřebuje. V závislosti na designu a nastavení workflow, je nutné nastavit např. účastníky a dobu trvání.
Obrázek 7: Spuštění workflow pomocí aplikace Office 2007
12
Některá nastavení jako změnu účastníků workflow nebo změna v dokumentu nebo položky, je možné, pokud je to dovoleno, měnit i v průběhu workflow. Každý z účastníků po přiřazení úkolu může tento úkol dokončit nebo vyžádat změny ve workflow editací úkolu v programu sady Office 2007 nebo na SharePoint serveru. Po dokončení úkolu nebo vyžádání změny je workflow posunuto do dalšího kroku. Stav průběhu každého workflow může být sledován účastníkem nebo vlastníkem pomocí stavové stránky, která obsahuje informace o stavu jednotlivých úkolů a historii.
Obrázek 8: Stavová stránka workflow
13
4 Závěr V práci jsem popsal co se skrývá pod slovem workflow, jak funguje, kde se používá. Rozebral jsem, jak podporuje workflows Microsoft Sharepoint 2007 a jaká je jeho architektura. Dálé jsem zmínil jaké typy workflow lze v SharePoinut využívat a jak se s nimi vlastně pracuje. Jak je možné je vytvářet, a to jak již předdefinované, tak i vlastní, přidávat do SharePointu a přiřazovat k dokumentům, spouštět, používat a modifikovat.
5 Reference [1] [2] [3]
http://en.wikipedia.org/wiki/Workflow Create a workflow: http://office.microsoft.com/en-us/sharepointdesigner/HA101005911033.aspx Introduction to workflows: http://office.microsoft.com/en-us/sharepointserver/HA101544241033.aspx
[4]
Developer Introduction to Workflows for Windows SharePoint Services 3.0 and SharePoint Server 2007 http://msdn.microsoft.com/en-us/library/aa830816.aspx
[5]
David Mann: Workflow in the 2007 Microsoft Office System
14