6

I am trying to publish my workflow after a revision, but I am getting this error whenever I try to publish. There are no errors when I check for them, but I cannot publish. The error message I get is:

Microsoft.Workflow.Client.ActivityValidationException: Workflow XAML failed validation due to the following errors: Activity 'DynamicActivity' has 51 arguments, which exceeds the maximum number of arguments per activity (50).

I am not sure what this means, and I am not getting any good search results. One of the changes I made before it gave me this error was adding another lookup in a custom task action. I am using sharepoint designer 2013.

If anyone can just let me know what this means, I would really appreciate it!

1
  • 1
    This error can also appear if you call out too many look up in an email or other field within the workflow.
    – user43977
    Commented Jul 7, 2015 at 19:43

2 Answers 2

10

So in SPD Workflow there is limit of using 50 variables. There are following options to solve the issue.

  1. You can limit the number of variables to 50.

  2. Increase this limit. So to increase this limit there is no other way then to update the database directly, that we strongly not recommend this to be done.

    Update WorkflowServiceMaxArgumentsPerActivity row in WorkflowServiceConfig table in WFResourceManagementDB by default value is 50 and restart server.

You can refer following links for further details:

http://social.technet.microsoft.com/Forums/exchange/en-US/56ee857d-e211-4570-8901-cd86a54ebdad/spd-2013-wf-error-maximum-number-of-arguments-per-activity-50?forum=sharepointcustomization

http://social.msdn.microsoft.com/Forums/sharepoint/en-US/3a08c175-1b3a-4a1c-beb0-b59c0a1b7a5d/2013-designer-workflow-with-lots-of-approval-processes-fails-to-publish?forum=sharepointcustomization#53454866-c87f-4704-ba08-964923012575

http://moresharepoints.blogspot.in/2014/01/sharepoint-designer-2013-workflow-error.html

3
  • Haha, didn't see your answer when I found mine. Thank you for the info, did not know that I could increase the limit either. I'll make yours the answer as soon as I can :)
    – Brandon C.
    Commented Jun 6, 2014 at 8:19
  • Can I use a dictionary instead of many variables ? Or each property of the dictionary will be counted individually as one variable ?
    – Tito
    Commented Nov 5, 2015 at 9:10
  • I don't think setting values directly in the database is a good idea, it is not supported either, as far as I know. Instead, I suggest to use the Set-WFServiceConfiguration PowerShell cmdlet as suggested by Aaron below. See described here: blogs.msdn.microsoft.com/feseca/2015/02/27/…
    – pholpar
    Commented Mar 20, 2017 at 8:57
3

Also you can increase the limit through powershell, run from an elevated prompt on the workflow manager server:

 Set-WFServiceConfiguration -ServiceUri https://wfserver.example.com:12290 -Name WorkflowServiceMaxArgumentsPerActivity -Value 75
1
  • This command didn't work for me. Encountered 401 error. Commented Jul 29, 2021 at 19:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.