2011-03-15 52 views
1

(使用SharePoint 2010)我可以使用Visual Studio在SharePoint中循環列表嗎?

嗨,大家好,我會盡量給出足夠的背景以使其有意義。

基本上我們有一個客戶名單與他們的電話號碼和其他信息。此列表按逾期日期排序。我們有電話銷售人員在這個列表中打電話給客戶。到目前爲止,我們只有一個電話推銷員打電話給列表中的客戶,這沒有問題。但是現在我們希望在名單中有兩個名叫客戶,並且可能在將來有更多。當然,問題是我們不希望他們同時打電話給同一個客戶。

我們可以通過給列表中的每個客戶分配tm來解決這個問題,然後他們只能看到他們分配給的客戶。但是因爲我們想以某種順序給他們打電話,所以我們也想按順序分配電話號碼,例如:

假設我們有3個電話。該列表將理想如下所示(TM1,2和3是將被分配給該客戶的TM的):

  • 卡斯特#1 - TM1
  • 卡斯特#2 - TM2
  • 卡斯特# 3 - TM3
  • 卡斯特#4 - TM1
  • 卡斯特#5 - TM2
  • 卡斯特#6 - TM3
  • 卡斯特#7 - TM1
  • 卡斯特#8 - TM2 ...等等。

現在的訣竅是,有些日子我們可能會有1個電話或3個電話。因此,每天早上開始之前,管理員必須將呼叫分配給不同的tm。當列表中有1000多個cusomter時,這會變得棘手。當然,我們可以將列表切換到數據視圖,並從Excel工作表中複製和粘貼值以進行分配。或者我們可以在Access中打開它並運行一個腳本。但有沒有一種方法可以在Visual Studio中編寫工作流程(或其他)來循環訪問列表並執行此操作?我需要爲它提供一個數字,表示將要調用多少個tm,然後它將遍歷客戶列表並以上面指定的方式分配tm。

如果你能想到更好的方法來做到這一點,我也接受其他想法。提前致謝!

+0

鏈接回我以前對同一主題的答案:http://stackoverflow.com/questions/5477267/sharepoint-2010-multiple-users-accessing-same-list-issue/5485793#5485793 – 2011-03-30 11:43:06

回答

1

您可以絕對循環列表中的項目。這裏是你可以做到這一點的一種方式的示例:

string[] tms = new string[] { "TM1", "TM2", "TM3" }; 

SPList list = SPContext.Current.Web.Lists["My List"]; 
SPListItemCollection items = list.Items; 

for (int i = 0; i < items.Count; i++) 
{ 
    SPListItem item = items[i]; 
    item["AssignedTM"] = tms[i % tms.Length]; 

    item.Update(); 
} 

剩下的唯一問題是如何執行這個代碼。你可以把它放在一個控制檯應用程序中並在服務器上運行(不推薦),或者你可以把它放在一個webpart中,將它粘貼在一個頁面上,授予管理員訪問該頁面的權限(可能帶有一個附帶的表單),以及有(他/她)每天執行它(或者當數據改變時)。

+0

真棒負鼠,凱爾!我完全不熟悉SharePoint開發,我從字面上不寫一行SharePoint代碼。我喜歡將這種代碼添加到只有管理員才能訪問的Web部件的想法,這將非常完美! Visual Studio是否內置了模塊來構建SP的Web部件?如果是這樣,你有任何資源建議,我可以看看開始?或者只是視覺工作室的火,並嘗試一下嗎?謝謝一堆! – 2011-03-15 18:22:28

+0

你是否熟悉在vanilla ASP.NET中創建用戶控件?如果是這樣,您就知道構建Web部件所需瞭解的一切。在Visual Studio中創建一個新的Visual Web部件。在這裏看到更多的信息:http://msdn.microsoft.com/en-us/library/ff597539.aspx – 2011-03-15 18:56:30

+0

這是一段時間,但我認爲我可以整理出來,謝謝你的鏈接! – 2011-03-15 20:40:58

相關問題