Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using (SPSite site = new SPSite(url))
- {
- using (SPWeb oWeb = site.OpenWeb())
- {
- var workflowServiceManager = new WorkflowServicesManager(oWeb);
- var workflowSubscriptionService = workflowServiceManager.GetWorkflowSubscriptionService();
- //get all workflows associated with the list
- var subscriptions = workflowSubscriptionService.EnumerateSubscriptionsByList(list.ID);
- foreach (var workflowSubscription in subscriptions)
- {
- var inputParameters = new Dictionary<string, object>();
- WorkflowInstanceService instanceService = workflowServiceManager.GetWorkflowInstanceService();
- if (instanceService != null)
- {
- foreach (WorkflowInstance wfInstance in instanceService.EnumerateInstancesForListItem(list.ID, currentItem.ID))
- {
- SPWorkflow wf = new SPWorkflow(currentItem, wfInstance.Id);
- }
- }
- }
- SPWorkflowManager spWorkflowManager = site.WorkflowManager;
- SPWorkflowFilter filter = new SPWorkflowFilter();
- filter.InclusiveFilterStates = SPWorkflowState.Running;
- SPWorkflowTaskCollection workTaskColl = oWeb.Site.WorkflowManager.GetItemTasks(currentItem, filter);
- foreach (SPWorkflowTask task in workTaskColl)
- {
- }
- foreach (SPWorkflow workflow in spWorkflowManager.GetItemActiveWorkflows(currentItem))
- {
- foreach (SPWorkflowTask t in workflow.Tasks)
- {
- }
- }
- foreach (SPWorkflow instance in spWorkflowManager.GetItemWorkflows(currentItem))
- {
- }
- }
- }
- using (SPSite mySite = new SPSite(SPContext.Current.Web.Url))
- {
- using (SPWeb myWeb = mySite.OpenWeb())
- {
- var filteredtaskItem = (from SPListItem itm in myWeb.Lists.TryGetList("TaskListName").Items
- where GetRelatedItem2(myWeb, itm["Related Items"].ToString() + "") == itemID.ToString()
- select itm).ToList();
- foreach (SPListItem item in filteredtaskItem)
- {
- }
- }
- }
- public string GetRelatedItem2(SPWeb web, string relatedItems)
- {
- string itemID = string.Empty;
- relatedItems = relatedItems.Trim(new char[] { '[', '{', '}', ']' });
- string[] relatedItemsVals = relatedItems.Split(',');
- Dictionary<string, string> items = new Dictionary<string, string>();
- foreach (var itemsVal in relatedItemsVals)
- {
- string[] keyval = itemsVal.Split(':');
- items[keyval[0].Trim('"')] = keyval[1].Trim('"');
- }
- string itemIDStr = items["ItemId"];
- string listIDStr = items["ListId"];
- Guid listID = new Guid(listIDStr);
- SPList itemList = web.Lists[listID];
- SPItem item = null;
- try
- {
- item = itemList.GetItemById(int.Parse(itemIDStr));
- if (item != null)
- {
- itemID = item["ID"].ToString();
- }
- }
- catch (Exception ex)
- {
- itemID = string.Empty;
- }
- //SPItem item = itemList.GetItemById(int.Parse(itemIDStr));
- return itemID;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement