After successfully installing SharePoint Designer 2013, let’s say that you open the SharePoint 2013 site for which you want to publish a workflow. After choosing the publishing action, however, the screen only shows SharePoint 2010 workflow as an option under the drop-down list for Platform type. What do you do?
Here’s how to publish a workflow under those circumstances:
- First, we must install Workflow Manager (version 1.0) program on your SharePoint machine (get it at http://technet.microsoft.com/en-us/library/jj193448)
- After installation has completed, the virtual machine will restart and then continue to configure. Select the Recommended option and then input the ‘SQL Server Instance’ password for user, check Allow Workflow Management over HTTP on this computer, input ‘Certificate Generation Key’ and confirm it for the next screen. Wait until configuration has completed:
Continue to run ‘SharePoint 2013 Management Shell‘ as an administrator with the command:
Register-SPWorkflowService -SPSite "http://myserver/mysitecollection" -WorkflowHostUri "http://workflow.example.com:12291" -AllowOAuthHttp
- Now we can see the ‘SharePoint 2013 workflow’ option under ‘Platform type’ in the drop-down list. Select it, design and publish a workflow … only to get an error when compiling the workflow. What now?
We must run ‘SharePoint 2013 Management Shell‘ as administrator again with each command:
net start spadminv4
net start sptimerv4
Set-SPAppDomain "apps.developement.local"
Get-SPServiceInstance | where{$_.GetType().Name -eq "AppManagementServiceInstance" -or $_.GetType().Name -eq "SPSubscriptionSettingsServiceInstance"} | Start-SPServiceInstance
Get-SPServiceInstance | where{$_.GetType().Name -eq "AppManagementServiceInstance" -or $_.GetType().Name -eq "SPSubscriptionSettingsServiceInstance"}
$account = New-SPManagedAccount
$account = Get-SPManagedAccount "domainuser"
$appPoolSubSvc = New-SPServiceApplicationPool -Name SettingsServiceAppPool -Account $account
$appPoolAppSvc = New-SPServiceApplicationPool -Name AppServiceAppPool -Account $account
$appSubSvc = New-SPSubscriptionSettingsServiceApplication -ApplicationPool $appPoolSubSvc -Name SettingsServiceApp -DatabaseName SettingsServiceDB
$proxySubSvc = New-SPSubscriptionSettingsServiceApplicationProxy -ServiceApplication $appSubSvc
$appAppSvc = New-SPAppManagementServiceApplication -ApplicationPool $appPoolAppSvc -Name AppServiceApp -DatabaseName AppServiceDB
$proxyAppSvc = New-SPAppManagementServiceApplicationProxy -ServiceApplication $appAppSvc
Set-SPAppSiteSubscriptionName -Name "app" -Confirm:$false
- Now we’re able to publish the workflow successfully and run it, but the workflow gets cancelled even though no error occurs. We must complete one last step for this: create a User Profile Service Application:
Go to Central Admin and start ‘User Profile Service’ from Application Management -> Manage services on the server, and then Create new User Profile Service Application:
Input Name, Application pool name, My Site Host URL, and then click the Create button. A new User Profile Service Application is created. Click on it to check show its properties:
At this point, you can re-run the cancelled workflow or publish a new workflow and run it, then check to see workflow status is completed.
- Finish