SP Workflow is an option to manage business process generally oriented around SharePoint list data model. User can start SharePoint workflow manually but they usually start automatically in response to some event connected with a list item or library item such as adding, deleting or updating an item.
There are workflows associated with subsites rather than lists or content types - these cannot be started in response to an event ; it has to happen manually or programatically. Such workflows will be helpful in setting and retrieving multiple list items across lists or performing non list operations like creating and configuring subsites.
The Reusable and Globally Reusable workflows in SPD is another kind of list workflow that can be used on multiple lists without having to recreate them for for each list.
SharePoint workflows are built on top of WF. when a workflow is running in SharePoint WF engine is hosted in SP Process; it loads and unloads WF templates and provides sequencing and persistence for workflows. WF enables customization in transaction, persistence, notifications, roles, tracking and messaging of SharePoint workflows.
Every SharePoint Workflow is represented by the following Two entities that work together
- Workflow Definition that specifies the paremeters, events (like activation), sequence of activities , branching structure, conditions that determine the paths of execution. WF Definition can be defined in code and compiled into an assembly. The other option is to define it in an XOML markup (declarative / nocode workflow) where it persist uncompiled in content DB until its called
- Workflow Template Definition which is an XML file that contains the info require to instantiate and run workflow like name of WF, Description, class with WF assembly to call, Identity of WF assembly, Location of any custom forms. These XML files can be stored at 14\TEMPLATE\1033\Workflow or Workflows list of root site in a site collection. In rutime, WF template defintion is used to create a cached SPWorkflowTemplate object.
The extensibilty options in WF are
- Custom compiled workflows using VS Workflow designer
- Custom Declarative WF using SPD
Usually Workflows installed as Site Collection Level Features but we can also publish WF directly from SPD which doesnt require any feature. Every WF association will have an entry in Site Collection Content DB.
No comments:
Post a Comment