This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

XMarkedForDeletion = 2

Hi all,

I would like to understand why on a custom TS I had a lot of UNSAccountB with the field XMarkedForDeletion with value 2 (Not present on Target System).

This custom target system is managed by a script that update the UNSAccountB. No other synchronization is active.

The script never set this field.

Could you exlain when and why this field is used by 1IDM ? 

What are the associated values ? the default value should be null or 0 ?

The 1IDM version is 8.0.1

Thank you very much and best regards

Ermes

  • You can find the meaning of the bits from the following community thread https://www.quest.com/community/one-identity/identity-manager/f/identity-manager-forum/20993/xmarked-for-deletion-values

    If some objects marked as outstanding there are normally two options how that happened. A synchronization had been run on this type of object and the workflow was configured to mark missing objects on the target system as outstanding. The second option, someone has marked the objects as outstanding in your script.

    Please see the sample code that demonstrates how to do that. This should ease your search.

    ' The script loads an entity specified by a XObjectKey, adds the flag OutStanding to the state and saves the entity to the database. 
    Public Sub CCC_Entity_MarkAsOutstanding(XObjectKey As String)
     
        ' Create a DBObjectKey based on the XML ObjectKey
        Dim dbObjectKey As New DbObjectKey(XObjectKey)
     
     
        ' Create an empty entity
        Dim entity As IEntity = Nothing
     
        ' Try to load the entity from the database using the DBObjectKey
        If Session.Source.TryGet(dbObjectKey, entity) Then
            ' If entity was created successfully
     
            ' Set the state of the entity to OutStanding
            entity.State = entity.State Or EntityState.OutStanding
     
            ' Save the entity to the database
            Using uow = Session.StartUnitOfWork()
     
                ' put the entity to save in the unit of work
                uow.Put(entity)
     
                ' The entities will be saved here!
                uow.Commit()
            End Using
        End If
     
    End Sub

  • Hi Markus,

    Thanks for your answer.

    As I wrote, my script doens't set the objects as outstanding.

    Could you confirm that the value "2" means that the object is in outstanding mode ?

    Reading the attached link, that I already read, the value of xmarkedfordelation should be:

    0=Marked for Delete
    1=Not found in TargetSystem
    2=Contains locked properties

    these value are not true.

    Using Object Browser, the unsaccountb object had the xmarkedfordelation field with description "Not found in TargetSystem" and the value is 2.

    The link is not correct or there is something that doesn't work.

    If these fields was never update for my script and there isn't other synchronization ... there are other process that analize the account and change the xmarkedfordelation ?

    What is the value for a normal object ?  null ? 

    I had also a lot of object with value 0 but they are normal record, nobody delete them. why it is "Marked for Delete" ? I can update then normally !!

    Thank you again

    Best regards

    Ermes

  • The xmarkedfordeletion value bit mask definitions are:

    0=Marked for Delete
    1=Not found in TargetSystem
    2=Contains locked properties

    So Value = 2 => Bit 1 set to True => Not found in TargetSystem.

    Normal, means no Bit set => Value = 0

    And, ootb there are no other processes setting this value.

  • Hi Markus,

    Now understand what are the values.

    My problem is to understand why these objects have the value 2.

    How I change this value is a easy why for all objects. Can I update the value via SQL Update on DB ?

    I have thousand object with value 2.

    Thank you

    Ermes

  • I have already laid out the two options when this flag is set ootb.

    Check the documentation here to learn about post-processing outstanding objects https://support.oneidentity.com/technical-documents/identity-manager/8.0.2/one-identity-manager-connector-user-guide/3#TOPIC-1026315