Getting an error while assigning SAP role to SAP user

We are getting below error while trying to assign SAP role to SAP user. User account is created in the target system. Please help.

(2024-09-19 11:43:14.337) [1777018] Error running synchronization project (SAP R/3 SGB CCS QA (SEQ - 300))'s workflow (Provisioning).
[1777124] Error running synchronization step (userInRole) of synchronization configuration (Provisioning (Provisioning)).
[1777239] The mapping rule (User accounts <-> UNAME) was unable to run synchronization between system objects (Z_SERV_DESK_SUPER (1/1/1900 - 12/31/9999)) and (Z_SERV_DESK_SUPER (1/1/1900 - 12/31/9999)) successfully!
[1777160] Property (VRT_UID_SAPUser@SAPUserInSAPRole) could not read the value from system object (Z_SERV_DESK_SUPER (1/1/1900 - 12/31/9999))!
[1777076] Cannot determine the value for the property (UID_SAPUser@SAPUserInSAPRole)! The value to convert (9a023176-4157-4f4e-868c-723a5e123247) was not found in property (Accnt@SAPUser).
at VI.Projector.JobComponent.ProjectorComponent._AdHocProjection()
at VI.Projector.Database.ProjectorExecutor.Project(ISession session, IProjectionConfiguration configuration, ProjectionOption options, ISystemObject adHocObject, CancellationToken cancellationToken)
at VI.Projector.Projection.Extensions.Execute(IProjectorEngine engine, IProjectionConfiguration configuration, ProjectionOption options, ISystemObject adHocObject, CancellationToken cancellationToken)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
---- Start of Inner Exception ----
at VI.Projector.Projection.ProjectorEngine.<ExecuteAsync>d__3.MoveNext()
---- Start of Inner Exception ----
at VI.Projector.Projection.ProjectorEngine.<ExecuteAsync>d__3.MoveNext()
---- Start of Inner Exception ----
at VI.Projector.Projection.ProjectorEngine.<ExecuteAsync>d__3.MoveNext()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
--- End of stack trace from previous location where exception was thrown ---
at VI.Projector.Projection.ProjectionStrategy.<ExecuteStepAsync>d__3.MoveNext()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
--- End of stack trace from previous location where exception was thrown ---
at VI.Projector.Projection.ProjectionStrategyBase.<OnExecuteStepAsync>d__6.MoveNext()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
--- End of stack trace from previous location where exception was thrown ---
at VI.Projector.Projection.ProjectionStrategyBase.<_ProcessDifferenceSetAsync>d__16.MoveNext()
at VI.Projector.Mapping.Extensions.MapObjects(ISystemMap map, IEnumerable`1 pairs, SystemMappingOptions options)
at System.Threading.Tasks.Parallel.ForEach[TSource](IEnumerable`1 source, ParallelOptions parallelOptions, Action`1 body)
at System.Threading.Tasks.Parallel.ForEachWorker[TSource,TLocal](IEnumerable`1 source, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Action`3 bodyWithStateAndIndex, Func`4 bodyWithStateAndLocal, Func`5 bodyWithEverything, Func`1 localInit, Action`1 localFinally)
at System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Func`4 bodyWithLocal, Func`1 localInit, Action`1 localFinally)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
---- Start of Inner Exception ----
at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object )
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1()
at VI.Projector.Mapping.Extensions.<>c__DisplayClass6_0.<MapObjects>b__0(SystemObjectMatchingPair pair)
at VI.Projector.Mapping.SystemMappingRule.ApplyMapping(ISystemObject leftObject, ISystemObject rightObject, SystemMappingOptions options)
---- Start of Inner Exception ----
at VI.Projector.Mapping.SystemMappingRule.ApplyMapping(ISystemObject leftObject, ISystemObject rightObject, SystemMappingOptions options)
at VI.Projector.Mapping.Rules.SinglePropertyComparisonRule.OnApplyMapping(ISystemObject leftObject, ISystemObject rightObject, SystemMappingOptions options)
at VI.Projector.Mapping.Rules.SinglePropertyComparisonRule.<>c__DisplayClass14_0.<_GetValue>b__0()
at VI.Projector.Schema.SchemaProperty.GetValue(ISystemObject systemObject, SchemaPropertyGetValueOption option)
---- Start of Inner Exception ----
at VI.Projector.Schema.SchemaProperty.GetValue(ISystemObject systemObject, SchemaPropertyGetValueOption option)
at VI.Projector.Schema.Properties.ReferenceResolutionSchemaProperty.OnGetValue(ISystemObject systemObject, SchemaPropertyGetValueOption option)
at VI.Projector.Schema.Converter.SchemaValueKeyResolutionConverter.OnConvertToDataValue(Object value, SchemaValueConverterConvertArgs arguments)
Synchronization ended with errors.
You can find more detailed information in the log from Thursday, September 19, 2024.

Parents Reply
  • The message "The value to convert (9a023176-4157-4f4e-868c-723a5e123247) was not found in property (Accnt@SAPUser)." is saying, the virtual property "VRT_UID_SAPUser" used in mapping "userInRole" is not able to find the user in table "SAPUSER" in One IM DB using the key stored in table "SAPUSERINSAPROLE". The Property is trying to find out the users account name (column Accnt).

    Possible reasons could be:

    * user does not exist anymore

    * defined object filter of this property does not include the user where the rule is looking for (default filter in mapping should be "UID_SAPMandant in (Select UID_SAPMandant from SAPMandant where DistinguishedName = '$CP_SAPMandantDN$')" ). So you may have a look at the variable "CP_SAPMandantDN" in your synchronization project, it should have the same value as the column distinguishedName of your used SAPMANDANT.

Children