Search code examples
sharepointworkflowdocuments

SharePoint workflow does not start for automatically uploaded documents


I have a service that automatically uploads documents to a SharePoint 2013 Document Library. I created a simple workflow that starts when a new item is created and just sends an email notification; however, the workflow only starts when I manually add a document and not when it's uploaded by the service. Thank you in advance for any ideas on how to resolve it.


Solution

  • I had to add some code to start a workflow after the app does its stuff:

    using Microsoft.SharePoint;
    using Microsoft.SharePoint.Workflow;
    
    static void StartWorkflow(SPListItem listItem, SPSite spSite, string wfName)
    {
        SPList parentList = listItem.ParentList;
        SPWorkflowAssociationCollection associationCollection = parentList.WorkflowAssociations;
        foreach (SPWorkflowAssociation association in associationCollection)
        {
            if (association.Name == wfName)
            {
                association.AutoStartChange = true;
                association.AutoStartCreate = false;
                association.AssociationData = string.Empty;
                spSite.WorkflowManager.StartWorkflow(listItem, association, association.AssociationData);
            }
        }
    }