public static void WriteToHistory(SPWorkflowActivationProperties ap, string note) { SPWorkflow.CreateHistoryEvent(ap.Web, ap.WorkflowId, 0, ap.OriginatorUser, new TimeSpan(0), "", note, ""); }
public static void WriteToHistoryLog(SPWorkflowActivationProperties workflowProperties, string description, string outcome) { SPWeb web = workflowProperties.Web; Guid workflow = workflowProperties.WorkflowId; TimeSpan ts = new TimeSpan(); SPWorkflow.CreateHistoryEvent(web, workflow, 0, web.CurrentUser, ts, outcome, description, string.Empty); }
public Workflow1() { WorkflowId = default(Guid); WorkflowProperties = new SPWorkflowActivationProperties(); RequestTaskProperties = new SPWorkflowTaskProperties(); RequestTaskAfterProperties = new SPWorkflowTaskProperties(); RequestTaskBeforeProperties = new SPWorkflowTaskProperties(); RequestApproveTaskId = default(Guid); InitializeComponent(); }
internal static void ReportErrorToHistoryLog(SPWorkflowActivationProperties workflowProperties, object sender, bool sendMail) { FaultHandlerActivity fa = ((Activity)sender).Parent as FaultHandlerActivity; if (fa != null) { Workflows.Tools.WriteToHistoryLog( workflowProperties, string.Format("{1} ({0})", ((Activity)sender).Name, fa.Fault.Message), fa.Fault.StackTrace); if (sendMail) { var r = ElasticEmail.EmailGenerator.ReportErrorFromWorkflow(workflowProperties, fa.Fault.Message, fa.Fault.StackTrace); } } }
public void onWorkflowActivated1_InvokedTest() { SPListItem fakeItem = Isolate.Fake.Instance <SPListItem>(Members.ReturnRecursiveFakes); Isolate.WhenCalled(() => fakeItem["BusinessEvent"]).WillReturn("unittest"); Isolate.WhenCalled(() => fakeItem["EventId"]).WillReturn("1"); Isolate.WhenCalled(() => fakeItem["SiteCollectionUrl"]).WillReturn("http://localhost"); SPWorkflowActivationProperties fakeProperties = Isolate.Fake.Instance <SPWorkflowActivationProperties>(Members.ReturnRecursiveFakes); Isolate.Swap.NextInstance <SPWorkflowActivationProperties>().With(fakeProperties); Isolate.WhenCalled(() => fakeProperties.Item).WillReturn(fakeItem); SubSiteCreationActivity_Accessor target = new SubSiteCreationActivity_Accessor(); object sender = null; ExternalDataEventArgs e = null; target.onWorkflowActivated1_Invoked(sender, e); Assert.AreEqual("unittest", target.businessEvent); Assert.AreEqual("1", target.eventId); Assert.AreEqual("http://localhost", target.siteCollectionUrl); }
public static SPListItem GetEmailTemplateItem(SPWorkflowActivationProperties workflowPros, string templateListURL, string templateName) { SPList emailTemplateList = workflowPros.GetListFromURL(templateListURL.Split(',')[0]); if (emailTemplateList == null) return null; SPListItemCollection emailListItems = emailTemplateList.FindItems("Title", templateName); if (emailListItems.Count == 0) return null; return emailListItems[0]; }
/// <summary> /// Logging function that enters updates to the Workflow History list /// </summary> /// <param name="logMessage"></param> public void LogWFHistoryComment(string logMessage, SPWorkflowActivationProperties workflowProperties, Guid WorkflowInstanceId) { SPWorkflow.CreateHistoryEvent(workflowProperties.Web, WorkflowInstanceId, 0, workflowProperties.Web.CurrentUser, new TimeSpan(), "Update", logMessage, string.Empty); }
/// <summary> /// Log workflow event properties /// </summary> /// <param name="properties"></param> private void LogWorkflowEventProperties(SPWorkflowEventProperties properties) { // Specify the Logs list name string listName = "WorkflowEventLogger"; // Create the string builder object StringBuilder sb = new StringBuilder(); // Add properties that do not throw an exception sb.AppendFormat("AssociationData: {0}\n", properties.AssociationData); sb.AppendFormat("Cancel: {0}\n", properties.Cancel); sb.AppendFormat("CompletionType: {0}\n", properties.CompletionType); sb.AppendFormat("ErrorMessage: {0}\n", properties.ErrorMessage); sb.AppendFormat("EventType: {0}\n", properties.EventType); sb.AppendFormat("InitiationData: {0}\n", properties.InitiationData); sb.AppendFormat("InstanceId: {0}\n", properties.InstanceId); sb.AppendFormat("PostponedEvent: {0}\n", properties.PostponedEvent); sb.AppendFormat("ReceiverData: {0}\n", properties.ReceiverData); sb.AppendFormat("RedirectUrl: {0}\n", properties.RedirectUrl); sb.AppendFormat("RelativeWebUrl: {0}\n", properties.RelativeWebUrl); sb.AppendFormat("SiteId: {0}\n", properties.SiteId); sb.AppendFormat("Status: {0}\n", properties.Status); sb.AppendFormat("TerminatedByUserId: {0}\n", properties.TerminatedByUserId); sb.AppendFormat("WebUrl: {0}\n", properties.WebUrl); // Get activation properties SPWorkflowActivationProperties activationProperties = properties.ActivationProperties; if (activationProperties != null) { sb.AppendFormat("ActivationProperties.AssociationData: {0}\n", activationProperties.AssociationData); sb.AppendFormat("ActivationProperties.HistoryListId: {0}\n", activationProperties.HistoryListId); sb.AppendFormat("ActivationProperties.HistoryListUrl: {0}\n", activationProperties.HistoryListUrl); sb.AppendFormat("ActivationProperties.InitiationData: {0}\n", activationProperties.InitiationData); sb.AppendFormat("ActivationProperties.ItemId: {0}\n", activationProperties.ItemId); sb.AppendFormat("ActivationProperties.ItemUrl: {0}\n", activationProperties.ItemUrl); sb.AppendFormat("ActivationProperties.ListId: {0}\n", activationProperties.ListId); sb.AppendFormat("ActivationProperties.ListUrl: {0}\n", activationProperties.ListUrl); sb.AppendFormat("ActivationProperties.Originator: {0}\n", activationProperties.Originator); sb.AppendFormat("ActivationProperties.OriginatorEmail: {0}\n", activationProperties.OriginatorEmail); sb.AppendFormat("ActivationProperties.SiteId: {0}\n", activationProperties.SiteId); sb.AppendFormat("ActivationProperties.SiteUrl: {0}\n", activationProperties.SiteUrl); sb.AppendFormat("ActivationProperties.TaskListId: {0}\n", activationProperties.TaskListId); sb.AppendFormat("ActivationProperties.TaskListUrl: {0}\n", activationProperties.TaskListUrl); sb.AppendFormat("ActivationProperties.TemplateName: {0}\n", activationProperties.TemplateName); sb.AppendFormat("ActivationProperties.WebId: {0}\n", activationProperties.WebId); sb.AppendFormat("ActivationProperties.WebUrl: {0}\n", activationProperties.WebUrl); sb.AppendFormat("ActivationProperties.WorkflowId: {0}\n", activationProperties.WorkflowId); // Add properties that might throw an excpetion try { sb.AppendFormat("ActivationProperties.Context: {0}\n", activationProperties.Context); sb.AppendFormat("ActivationProperties.HistoryList: {0}\n", activationProperties.HistoryList); sb.AppendFormat("ActivationProperties.Item: {0}\n", activationProperties.Item); sb.AppendFormat("ActivationProperties.List: {0}\n", activationProperties.List); sb.AppendFormat("ActivationProperties.OriginatorUser: {0}\n", activationProperties.OriginatorUser); sb.AppendFormat("ActivationProperties.Site: {0}\n", activationProperties.Site); sb.AppendFormat("ActivationProperties.TaskList: {0}\n", activationProperties.TaskList); sb.AppendFormat("ActivationProperties.Web: {0}\n", activationProperties.Web); sb.AppendFormat("ActivationProperties.Workflow: {0}\n", activationProperties.Workflow); } catch (Exception e) { sb.AppendFormat("\nError accessing ActivationProperties property:\n\n {0}", e); } } else { sb.AppendFormat("ActivationProperties is null\n"); } // Log the event to the list this.EventFiringEnabled = false; Common.LogEvent(properties.ActivationProperties.Web, listName, properties.EventType, sb.ToString()); this.EventFiringEnabled = true; }