Skip to main content

Hello

 

My client has added a process-level variable, set within the workflow using a Data Transfer.

This variable is then referenced in a task notification email.

The workflow was deployed succesfully.

New instances of the process use the variable correctly and the notification emails have the corresponding text in them.

Instances of the process which were already in progress, using a previous version of the process, cause errors to be logged in the Eventbus.ClientRecorderError table, and the notification emails are not sent.

 

The errors are as follows, and they reference the name of the variable that was added:

 

CustomEventID: 4 CustomEventLogID: 2088
System.Exception: Unable to resolve a value for the following field '' using provider '' with provider data ''. 'SourceCode.Framework.Data.GetValueException: An unexpected error has occured while trying to resolve a value for Resolver ID 106C58*personal details removed*B1-4c09-BEB3-6F7342669D18. ---> SourceCode.Framework.Data.GetValueException: An unexpected error has occured while trying to resolve a value for Resolver ID A6A4C4F4-180F-4c*personal details removed*D9E-D9CE81EFEFC2. ---> SourceCode.Logging.LoggerException: 28006 Datafield NoReply Instruction not found
at SourceCode.KO.DataFields.get_Item(String Index)

 

It looks like the Event Bus is trying to use the 'current' process definition to create the email, but of course the new process variable does not exist in the previous instances of the process.

 

Could anyone tell me

  • Is this by design or a bug?
  • Is there a workaround, other than using a third party tool to force the running instances to the new process version?

This is K2 v 4.7 (4.16060.2000.2)

 

Many thanks for any help

Hi Iammy


 


IMO this is a bug but also a known issue. Notification events doesn’t have versioning similar to workflows. This means all instances of a Workflow will use the latest deployed notification event and in your case the new workflow works with it but the older running instance fails.


 


Feel free to log a K2 ticket to have it linked to the known issue (You can reference 426720)


 


What you can try is the following.


 


1) Redeploy the previous version of the Workflow before the new changes, in theory this should then make the running instances work again.


2) Redeploy the changed workflow but give it a new Name to make it a "New" workflow that will have its own Notification events. 


 


In theory with the above you then have old instances running on WF x and all new instances will run on WF y and solve the problem


 


HTH


Vernon


Reply