Veysel Uğur KIZMAZ

Visual Studio ile Sharepoint 2010 Workflow Oluşturma

27.09.2011Okunma Sayısı: 4946Kategori: Sharepoint 2010

Daha önceki makalelerimizde Sharepoint’te Workflow kavramını incelemiştik. Şimdi workflowların Visual Studio ile nasıl oluşturulacağını inceleyelim.

Visual Studio ile workflow oluştururken 2 tür workflowla kaşılaşıyoruz:
 
1.       Sequential Workflow
2.       State Machine Workflow
 
Sequential workflow, flowchart formu şeklinde ifade edilir. İşlemler, başlangıç ve bitiş noktaları arasında yer almaktadır. Avantajı, bakıldığında kolayca anlaşılabilir bir görsel yapısı vardır.  Basit bir workflow örneği aşağıda yer almaktadır.
 
 
Bu workflowa baktığımızda başlangıç ve bitiş noktalarını görebiliriz. Ne zaman hangi işlemlerden geçmiş, hangi koşullarda ne sonuçlarla karşılaşacağımızı bilebiliriz.
 
 
Diğer workflow türü olan State Machine Workflowlar, durum (state), olay (event) ve geçiş (stansition) baz alınarak oluşturulmaktadır. Daha complex iş modellemesi için kullanılan yapılardır. Her state machine workflow, tanımlı bir başlanıgıç ve bitiş durumlarına sahiptir. İşlemler, başlangıç ve bitiş durumları arasında yer almaktadırdlar.
 
Örnek State Machine Workflow aşağıda yer almaktadır.
 
 
 
Workflow Aktiviteleri
 
Oluşturulan workflowlar yeniden kullanılabilir ve dinamik olmalıdır. Visual Studio 2010 yaklaşık 30 genel workflow aktivitesine sahiptir. Bunun yanında 26 Sharepoint ile ilgili ek aktiviteleri barındırır. Bunlara workflow designer açıkken toolboxtan erişebiliriz.
 
Workflowların yeterli olmadığı durumlarda ise kendi aktivitelerimizi yazıp workflow aktivite kütüphanesine ekleyebiliriz.
 
Workflow aktiviteleri 3 grup altında toplanmaktadır:
 
1.       Control flow activities
2.       Container activities
3.       Standard activities
 
 
Sharepoint Workflow Aktiviteleri
 
Genel workflow aktivitelerinin dışında Sharepoint için özel yapılandırılmış aktiviteler de yer almaktadır.Örnek:
 
1.       ApplyAvtivation
2.       CompleteTask
3.       CreateTask
4.       CreateTaskWithContentType
5.       DeleteTask
6.       EnableWorkflowModification
7.       InitializeWorkflow
8.       LogToHistoryListActivity
9.       OnTaskChanged
10.   OnTaskCreated
11.   OnTaskDeleted
12.   OnWorkflowActivated
13.   OnWorkflowItemChanged
14.   OnWorkflowItemChanged
15.   OnWorkflowItemDeleted
16.   OnWorkflowModified
17.   RollbackTask
18.   SendEmail
19.   SetState
20.   UpdateAllTasks
21.   UpdateTask
22.   CheckInItemActivity
23.   CopyItemActivity
24.   CreateItemActivity
25.   DeleteItemActivity
26.   UpdateItemActivity
 
 
Sharepoint Workflow
 
Sharepoint workflowları aslında Console ya da Windows application içindeki workflowlardan çok farklı değildir. Tek farkı, sharepoint, liste, doküman, görev ve liste elemanı merkezlidir ve Sharepoint workflowları atama işlemi için bir görev listesine ihtiyaç duyar.
 
Sharepoint workflowunun kullanılabilmesi için mutlaka sharepoint sitesi ya da sitedeki bir listeyle entegre olmuş olması gerekmektedir. Ayrıca Sharepoint workflowunun association list, history list, task list gibi özelliklerinin de belirlenmesi gerekmektedir.
 
 
Veysel Uğur KIZMAZ
Bilgisayar Mühendisi
veysel@ugurkizmaz.com
www.ugurkizmaz.com