Microsoft Dynamics 365 Blog

Some time ago we run into this problem for user whose language was Spanish although it can also happen for other users with different languages (i.e. Polish). 
When we configure the workflow assignment as “assign to:” to be “Role Based” and we choose “Workflow originator” The workflow task is never assigned to any user and a “Host Runtime ” error is logged on the event log.

Dynamics Adapter CallStaticClassMethod failed..

And in Workflow history form you can find error

“User group could not be found”

in local language (label @SYS105452)

 

The issue happens in class SysWorkflowProviderService method resolveParticipant in mentioned if:

// handle actor paricipants

if (strcmp(enum2str(WorkflowActorType::Originator), _participant) == 0)

{

    users = WorkflowUserList::construct();

    users.add(workflowTable.Originator);

}

The problem here is that in Spanish

enum2str(WorkflowActorType::Originator) = Orginador del flujo de trabajo (@Sys102950)
_participant =Orginador del flujo

So the  strcmp (string compare) returns value false and user is not added. The parameter _participant is cut to 20 signs, the reason behind is that it is Extended Data Type WorkflowParticipantToken which string size is setup to 20.

There can be two solutions:

1. Change property StringSize of WorkflowParticipant token to 40.

2. Create new label which length will be shorter than 20 and assign it to WorkflowActorType::Orginator

We have checked all of the standard SYS layer languages and the following languages are effected by the same issue:

es
es-mx
fr
fr-be
fr-ca
fr-ch
hu
is
it
it-ch
lt
lv
nl
nl-be
pl
pt-br
ru
sv

 –Editor: Tariq Bell

We're always looking for feedback and would like to hear from you. Please head to the Dynamics 365 Community to start a discussion, ask questions, and tell us what you think!