2016-07-28 45 views
1

我已在Visual Studio中創建Sharepoint批准2010工作流程。Sharepoint批准工作批准批准按鈕

如果用戶點擊批准或拒絕按鈕,我該如何捕捉?

private void createTaskWithContentType1_MethodInvoking(object sender, EventArgs e) 
    { 
     createTaskWithContentType1_ContentTypeId1 = "0x01080100C9C9515DE4E24001905074F980F93160003A15057E2AF34B67B32E14B94EB70409"; 


     createTaskWithContentType1_TaskId1 = Guid.NewGuid(); 
     createTaskWithContentType1_TaskProperties1.AssignedTo = workflowProperties.Web.SiteAdministrators[0].LoginName; 
     createTaskWithContentType1_TaskProperties1.DueDate = DateTime.Now.AddDays(1.0F); 
     createTaskWithContentType1_TaskProperties1.Title = "Approval Required for xx"; 
     createTaskWithContentType1_TaskProperties1.Description = "Specify the approval result here."; 

     SPList taskList = workflowProperties.TaskList; 

}

private void onTaskChanged1_Invoked(object sender, ExternalDataEventArgs e) 
    { 

//我想在這裏,我必須以某種方式做:如果按鈕點擊批准其他....如果拒絕按鈕點擊 }

回答

1

您是否製作您的自定義任務表單?或OOTB任務表單。如果是自定義,則可以直接從自定義任務表單(在保存按鈕上)設置值。如果它是OOTB,則必須編輯任務表單並添加javscript或JQuery以獲取保存按鈕單擊。

它會提示你是否點擊保存按鈕。的SharePoint開箱即用的任務列表形式

function PreSaveItem(){ 
// add other your codes 
if(value == 'confirm'){ 
    return true; // allow save form... 
} 

return false; // not allow save form 
// use return true; if confirm or return false... 
} 

的更多信息,請訪問以下鏈接 https://sharepoint.stackexchange.com/questions/117147/how-to-trigger-the-click-event-of-the-sharepoint-ootb-lists-new-form-save-butto

2

我找到了解決方案

private void onTaskChanged1_Invoked(object sender, ExternalDataEventArgs e) 
     { 
      string taskStatus = onTaskChanged1.AfterProperties.ExtendedProperties["TaskStatus"].ToString(); 

ExtendedProperties [ 「TaskStatus」]將返回批准或拒絕

ExtendedProperties中還有更多屬性,但您需要轉到調試模式才能看到它們。

+0

你是對的。你必須在AfterProperties和ExtendedProperties中檢查你的值。您可以從Microsoft獲得有關任務活動的完整示例:[從SharePoint 2010工作流創建多個任務](https://msdn.microsoft.com/zh-cn/library/office/hh128696(v = office.14).aspx ) – Nico