lithnet / miis-powershell

Lithnet PowerShell Module for FIM/MIM Synchronization Service
Microsoft Public License
40 stars 9 forks source link

Get-PendingExportUpdates and multivalued attribute #31

Closed carlchevalier closed 3 years ago

carlchevalier commented 3 years ago

Hi,

I am running the Get-PendingExportUpdates cmdlet to get all CS objects that are about to be exported. For each CS, I check the attributes that are about to be modified (need to log before/after modification). One attribute I monitor happens to be a "multivalued" attribute. In the exemple shown below, I see that there are changes for that attribute but my problem is that I cannot tell which entry is a "New" versus a "Delete".

Example: There is one CS object pending export in MIIS. It shows that the AD GroupPriority attribute has one (1) new entry and one (1) delete:

image

In Powershell, when I run:

[DBG]: PS C:\apps\psscripts>>$a = Get-PendingExportUpdates -ma AD -Delta [DBG]: PS C:\apps\psscripts>> $a[0]

image

I see that the changes is with the [GroupPriority] attribute and that two entries are referred but how would I be able to tell if it is a delete or a add. Any way it can be done ?

Thanks!

ryannewington commented 3 years ago

@carlchevalier

You should be able to get the value modification type by enumerating through the value changes. You can get the raw value change data by referencing the attribute by name as follows

$a[0].Attributes['groupPriority']

Here is a value change in my environment as an example

image

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs.

JayVDZ commented 3 years ago

@ryannewington, I have a very similar question. When inspecting pending exports on a REF MVA, we use the DNAttributes property, though drilling down into each MVA value the Operation is always 'none', regardless of whether it's a Delete or Add. Is this a limitation of the MIM API or perhaps a bug in the module?

In the sync engine manager, you can see whether it's a add/delete, but not via the module.

ryannewington commented 3 years ago

@Amethi moving this to #34 as its a separate issue