2011-10-20 64 views
0

當請求者填寫我的表單時,會要求他們選擇他們來自哪個區域。根據該選擇,該地區的批准人將從審批矩陣中提取,並自動填充到按層級結構排列的表單字段中(主管,區域經理,總裁等)。InfoPath 2010 - 檢查批准者是否登錄到SharePoint 2010

當請求者提交表單時,工作流程會通知第一個審批者(層次結構中的最低級別)他/她有未決審批請求。該批准者打開該表單,並從單選按鈕中選擇批准或拒絕。如果獲得批准,工作流將按照順序向下一個審批者提交通知。

我的問題是,當第一批准人收到通知並打開表單以批准/拒絕時,他們也可以訪問批准人2至n的所有其他批准/拒絕單選按鈕(同樣,審批人2至n應該也沒有獲得任何事先的批准選擇)。基本上,Approver X應該只能在Approve Section X中做出選擇。爲了減輕這種影響,我希望單選按鈕字段爲每個批准人檢查2件事情:

1)是指定批准人列表中的當前批准人那部分? 2)當前批准者是否已登錄到SharePoint?

我需要能夠檢查他們是否已登錄,因爲層次結構中的每個批准部分都將自動填充批准者,這將始終使第一個檢查=真。由於這一點始終如此,審批者的姓名不僅需要與審批人部分中自動填寫的姓名相匹配,還必須登錄。這樣,其他批准人未登錄將導致單選按鈕成爲禁用。

我能夠實現第一部分,但不能實現第二部分。

InfoPath 2010中可以進行第二次檢查嗎?如果是這樣,我該怎麼做?

謝謝

回答

0

這聽起來像你這樣從具有獲取與每個批准更新表單上的狀態字段中受益。

然後,您可以將該字段添加到您的審批者列表中,以使Region,Status對於一組審批者而言是唯一的。

在InfoPath表單上,查詢用戶所選區域和表單狀態的列表。然後檢查您的當前登錄用戶是否符合該列表爲審批者帶來的回報。

爲了獲得更好的靈活性,InfoPath表單的審批者列表中將使用另一個字段來更新審批狀態。

我假設您的審批矩陣是SharePoint列表。如果不是,這個概念仍然適用。

+0

感謝Kbeal的迴應。我現在正在做你的建議。每個審批者都有一個狀態字段,每個審批者字段都由審批矩陣自動填充,該審批矩陣是SharePoint列表。我只是不確定**如何**來檢查某個特定的批准者是否已**登錄**。謝謝! – growl3rr

+0

構建InfoPath規則時,查找userName()函數。它返回當前登錄的用戶。將此值與從批准清單中檢索的值進行比較。 – kbeal

相關問題