它適用於一個人但不是多人的原因是因爲支票是針對個人的。您的觀點所做的比較是,Assigned是否等於[Me],而不是Assigned是否將[Me]作爲其實體之一。
不使用is equal to
的列表過濾器,而是使用列表過濾器contains
。這應該夠了吧。
編輯迴應評論
要訪問的對象模型,你需要使用Visual Studio。我不知道使用SharePoint Designer來完成這種事情的一種方法,但也許有一些瘋狂的數據庫查看您可以做的事情。無論如何...滿足您的實際需求...
以下代碼示例說明了一種實現您的目標的非常基本的方法。
using (SPSite site = new SPSite("yourwebsiteurlhere"))
{
using (SPWeb web = site.OpenWeb())
{
SPList list = web.Lists["titleoflist"];
SPView view = list.Views["filteredviewname"];
view.Query = "<Where><Contains><FieldRef Name=\"assignfield\"/><Value Type=\"Integer\"><UserID Type=\"Integer\" /></Value></Contains></Where>";
view.Update();
}
}
替換「yourwebsiteurlhere」與該網站的網址,「titleoflist」與您的問題列表的標題,「filteredviewname」與視圖的名字,而「assignfield」與你使用的內部名稱您的分配領域。如果您是通過標準SharePoint用戶界面創建的,則應該是沒有空格的字段名稱。
至於在哪裏運行代碼,您可以將這種事情放在一次性工作流程中。我有時只是爲了確保我有必要的特權。希望這可以幫助!
如果您無法/不允許使用Visual Studio,那麼您的解決方案可能必須是查看第三方解決方案。
感謝您的回覆。但是,sharepoint告訴我,包含的過濾器類型不能用於此類型的列。我想知道我是否需要第三方組件(如http://www.software112.com/products/sharepoint-people-contains-filter-webpart.html) – csm8118 2010-04-15 19:13:57
你是對的。但是,如果您有權訪問對象模型並可以直接編輯SPView,而不是第三方組件,則應該可以使用CAML查詢來實現此目的。如果你需要我構建一個示例代碼片段,請告訴我,我將編輯我的帖子,@ csm8118 – 2010-04-15 19:18:32
請提供示例代碼片段。我認爲我應該有充分的權利來編輯,但我沒有嘗試過。我需要在共享點設計者還是其他方面做到這一點? – csm8118 2010-04-15 19:23:55