日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當前位置:雨林木風下載站 > 辦公軟件教程 > 詳細頁面

SharePoint 狀態機工作流之日常報銷案例圖文教程

SharePoint 狀態機工作流之日常報銷案例圖文教程

更新時間:2024-02-08 文章作者:未知 信息來源:網絡 閱讀次數:

SharePoint發行版本有SharePoint2003、SharePoint2007、Sharepoint 2010、SharePoint2013和SharePoint2016。SharePoint提供了功能強大的團隊協作環境,使得組織能夠在整個組織內部實現整合、組織、查找和提供 SharePoint站點。

簡單介紹下狀態機工作流,狀態機工作流提供了一系列的狀態。工作流從初始狀態開始,到終止狀態結束。兩個狀態之間定義行為進行過渡。通常情況下,狀態機工作流對事件作出反應,事件的發生將會使狀態發生改變。

1、新建項目,選擇SharePoint解決方案,創建空項目:

2、選擇調試站點,部署為場解決方案,如下圖:

clip_image002

3、添加新項,選擇“Office/SharePoint”下面的“狀態機工作流(僅場解決方案)”:

clip_image003

4、選擇列表工作流,修改工作流名稱為“日常報銷”:

clip_image004

5、選擇調試時使用的列表,并選擇任務列表和歷史記錄列表;如果項目創建完畢,想要修改調試列表,可以在工作流項目上右鍵屬性;

clip_image005

6、選擇工作流的啟動方式,如下圖:

clip_image006

7、修改Feature配置要部署的工作流:

clip_image007

8、然后回到開發界面,準備畫流程圖:

clip_image008

9、添加狀態,并設置一個為“已完成狀態”,同時右鍵重命名各個狀態,如下圖:

clip_image009

10、添加事件驅動并重命名,添加連接線:

clip_image010

11、在狀態上右鍵,添加stateInitialization(用來CreatTask):

clip_image011

12、創建CreatTask,重命名并修改屬性,添加Correlation Token和OwnerActivityName;

clip_image012

13、創建任務ID,如下圖,記得選擇創建字段,點擊確定:

clip_image013

14、同任務ID創建任務屬性,如下圖:

clip_image014

15、雙擊CreatTask進入代碼視圖,給方法添加代碼:

createJLTask_TaskId1 = Guid.NewGuid();createJLTask_TaskProperties1.Title = "經理待審批";createJLTask_TaskProperties1.AssignedTo = @"i:0#.w|spli.jing";createJLTask_TaskProperties1.DueDate = DateTime.Now.AddDays(1.0);createJLTask_TaskProperties1.ExtendedProperties.Add("狀態", "已啟動");

  如上面代碼,分別是任務ID、標題、分配人員、有效期和狀態屬性;

clip_image015

createJLTask_MethodInvoking方法代碼截圖)

16、返回到設計視圖,雙擊該狀態的事件驅動,進入事件驅動的視圖:

  如下圖,添加OnTaskChanged事件,監視任務變化,重命名;添加After/Before屬性,類似上面任務ID,創建字段;修改Correlation Token和OwnerActivityName,和之前Task的相同即可;修改TaskId,修改為之前任務ID。

clip_image016

17、雙擊OnJLTaskChanged,添加方法代碼:

onJLTaskChanged_AfterProperties1 = onJLTaskChanged.AfterProperties;onJLTaskChanged_BeforeProperties1 = onJLTaskChanged.BeforeProperties;

clip_image017

OnJLTaskChanged方法截圖)

18、添加IF…ELSE…,如下圖:

clip_image018

添加分支判斷的代碼條件,并為方法添加方法體:

方法如下,如果審批通過則走左側分支,否則右側分支;

復制代碼
public Guid TaskStatusFieldId = new Guid("55b29417-1042-47f0-9dff-ce8156667f96");private void NextToZJL(object sender, ConditionalEventArgs e){string strresult = onJLTaskChanged_AfterProperties1.ExtendedProperties[TaskStatusFieldId].ToString();if (strresult == "已批準"){e.Result = true;}else{e.Result = false;}}
復制代碼

  特:TaskStatusFieldId是ExtendedProperties的一個Key值,調試可以看到。

19、設置狀態,如下圖:

clip_image019

20、添加狀態字段,如下圖:

clip_image020

21、雙擊SetState創建方法:

private void setStateToJL_MethodInvoking(object sender, EventArgs e){}

22、添加xml和擴展狀態代碼:

clip_image021

23、添加狀態的枚舉類型,如下圖:

復制代碼
public enum SPWorkflowStatus{經理待審批 = 0,經理已拒絕 = 1,總經理待審批 = 2,總經理已拒絕 = 3,總裁待審批 = 4,總裁已拒絕 = 5,報銷審批通過 = 6,Max = 15}
復制代碼

24、完成剛剛創建的setStateToJL_MethodInvoking方法

setStateToJL_State1 = (Int32)SPWorkflowStatus.Max;

clip_image022

25、如此方法創建ZJLstateActivity、ZCstateActivity兩個狀態,在此不一一重復了,配置好的流程圖,附后:

clip_image023

審批流程描述:

普通員工 – 經理審批 – 總經理審批 – 總裁審批;

經理 – 總經理審批 – 總裁審批;

總經理 – 總裁審批;

審批結果:

任意一級拒絕,工作流結束,狀態為該級別拒絕;

審批通過,可以報銷,狀態為審批通過。

流程運行過程

1、新建一條報銷;

clip_image024

2、 啟動新的工作流;

clip_image025

3、查看工作流狀態

clip_image026

clip_image027

4、 經理審批頁面,如下圖:

clip_image028

5、 經理審批后的狀態,如下圖:

clip_image029

6、 總經理審批后,總裁批準,如下圖:

clip_image030

7、 總裁已批準,日常報銷頁面,如下圖:

clip_image031

8、 總經理審批后,總裁批準,如下圖:

clip_image032

9、 總裁已拒絕,日常報銷頁面,如下圖:

clip_image033

結束語

  以上,就是SharePoint 2013狀態機工作流的簡單示例,例子比較簡單,希望大家不要吐槽,也希望能夠給需要學習的人以參考。

其實,做工作流的過程,自己也經常吐槽,確實是一個痛苦的過程,接下來還想寫表單來跑工作流,不知道還有沒有耐心繼續寫下去了,呵呵,好了,不吐槽了,就這樣吧。

  因為截圖比較倉促,很多地方可能介紹并不詳細,特此做一個總結。SharePoint狀態機工作流的設計過程:添加工作流狀態 – 添加事件驅動 – 勾畫流程圖 – 添加工作流初始化 – 添加任務(CreatTask) - 事件驅動里添加OnTaskChanged事件 – 設置IF..ELSE等選擇語句 – 設置流程結束狀態。基本上就是這樣一個過程,希望大家理解后再動手做。

回復一樓留言

  簡單修改下流程~

SharePoint 狀態機工作流之日常報銷實例教程_本站

  IF...ELSE分支加代碼

復制代碼
private void IfMoneyBelow500(object sender, ConditionalEventArgs e){    if (Convert.ToInt32(workflowProperties.Item["報銷金額"].ToString()) >= 500)    {        e.Result = true;    }    else    {        e.Result = false;    }}
復制代碼

   結果如下圖:

SharePoint 狀態機工作流之日常報銷實例教程_本站


Sharepoint 可以幫助企業用戶輕松完成日常工作。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

主站蜘蛛池模板: 久久99亚洲精品久久久久99 | 2020国产精品 | a级日本高清免费看 | 深夜爽爽爽福利动态图 | 完全免费在线视频 | 亚洲国产成人在线观看 | 欧美一区二区三区四区视频 | 日韩一区二区三区在线视频 | 亚洲欧美日韩高清mmm777 | 波多野结衣一区2区3区 | 天天操免费视频 | 欧美呦| 欧美专区视频 | 在线碰 | 国产精品高清免费网站 | 亚洲欧美中文日韩在线视线 | www久久只有这里有精品 | 亚洲欧美人成网站综合在线 | 亚洲精品影院久久久久久 | 久久88台湾三级香港三级 | 日本免费不卡视频 | 97色伦图片97综合影院久久 | 中文字幕日韩高清 | 青草99 | 日韩男人天堂 | 亚洲日本在线观看视频 | 国产高清精品自在久久 | 97久久曰曰久久久 | 亚洲国产精品一区二区久 | 国产成人精品自线拍 | 欧美一区不卡二区不卡三区 | 日日爱视频 | 亚洲欧美国产一区二区三区 | 日韩精品区 | 欧美日韩三级 | 日本久久草 | 日本高清天码一区在线播放 | 簧片免费在线观看 | 91精品国产自产91精品 | 中文字幕一区二区在线观看 | 亚洲天堂第一页 |