Показать сообщение отдельно
Старый 04.06.2010, 21:06   #1  
Blog bot is offline
Blog bot
Участник
 
25,646 / 848 (80) +++++++
Регистрация: 28.10.2006
emeadaxsupport: Workflow error. Cannot resolve Workflow originator when user language is not English
Источник: http://blogs.msdn.com/b/emeadaxsuppo...t-english.aspx
==============


Some time ago we run into this problem for user whose language was Spanish although I 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::Orginator 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 WorkflowParticipantToken::Orginator




Источник: http://blogs.msdn.com/b/emeadaxsuppo...t-english.aspx
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.