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 Children
  • 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.

  • I have checked both the points and user does exist in SAPUser as well as in the target system. And I have checked CP_SAPMandantDN variable and it has same value as the DN used in SAPMandant

  • One more point to mention is that SAP_SAPcomSMTP_Insert/Update is also going in Frozen state and error is very similar. Can there be an issue with permission? I tried to manually assign role in target system and it works

  • What you are describing has nothing to do with target system or permissions in target system. It's a fault during a reference resolution on One IM side: it's trying to get a property from SAPUSER row using the foreign key "UID_SAPUSER" from current "SAPUSERINSAPROLE" row. If the row in "SAPUSER" exists and its column "ANAME" has been filled correctly you may check the access rights to table SAPUSER, column ANAME.