0
我已經創建了兩個自定義列表和SharePoint設計師能夠列表項從一個列表複製到其他使用工作流程2010.but我的要求是,所有項目複製一個列表到另一個使用工作流程。我在谷歌搜索相同的,我沒有找到正確的解決方案,任何人都可以提出一個想法相同?全部複製列表項到另一個列表在SharePoint 2010 WSS
在此先感謝。
我已經創建了兩個自定義列表和SharePoint設計師能夠列表項從一個列表複製到其他使用工作流程2010.but我的要求是,所有項目複製一個列表到另一個使用工作流程。我在谷歌搜索相同的,我沒有找到正確的解決方案,任何人都可以提出一個想法相同?全部複製列表項到另一個列表在SharePoint 2010 WSS
在此先感謝。
您應該創建一個新的自定義工作流程活動來執行此操作。 這是一個示例代碼來執行此操作。欲瞭解更多信息有關創建新的工作流活動檢查此鏈接:http://msmvps.com/blogs/sundar_narasiman/archive/2010/12/26/develop-custom-workflow-activity-for-sharepoint-2010-workflow.aspx
private void ProcessActivity(ISharePointService service)
{
using (SPWeb web = (SPWeb)(SPContext.Current.Web))
{
SPList sourceList = web.Lists[sourceListid];
SPListItemCollection ic = sourceList.Items;
foreach (SPItem i in ic)
{
SPListItem item = sourceList.Items.GetItemById(Convert.ToInt32(i.["ID"].ToString()));
CopyItems(item,DestinationListName);
}
}
}
private SPListItem CopyItems(SPListItem sourceItem, string destinationListName)
{
//Copy sourceItem to destinationList
SPList destinationList = sourceItem.Web.Lists[destinationListName];
SPListItem targetItem = destinationList.Items.Add();
foreach (SPField f in sourceItem.Fields)
{
//Copy all except attachments.
if (!f.ReadOnlyField && f.InternalName != "Attachments"
&& null != sourceItem[f.InternalName])
{
targetItem[f.InternalName] = sourceItem[f.InternalName];
}
}
targetItem.Update();
return targetItem;
}
好運。
謝謝您的回覆。是否有任何其他方式來實現此目的??我不想使用編碼。我們可以使用Sharepoint設計器創建自定義工作流程(而不是使用Visual Studio)..? – siva 2013-05-07 09:50:31