Re-sync your synchronization Rules
When you use Synchronization Rules, direct attribute flows and advanced attribute flows, sometimes your Synchronization Rules break, and you will have to resync them before they apply.
The beneath PowerShell script, re-syncs all Synchronization Rules.
Whenever you have changed the sync configuration you should also rebuild the indexes in the FIMSynchronization database tables, to keep good performance. Read here how to.
$maName = $null
foreach($ma in Get-ManagementAgent)
{
if($ma.Category -eq "FIM")
{
$maName = $ma.Name
}
}
foreach($ma in Get-ManagementAgent)
{
if($ma.Category -eq "FIM")
{
$maName = $ma.Name
}
}
Write-Host ("MIM Managment Agent Name Is:" + $maName)
[Int]$counter = 0
$syncRulesMvObjs = Get-MVObject -ObjectType synchronizationRule
foreach($syncRuleMVObj in $syncRulesMvObjs)
{
$counter += 1
$id = $syncRuleMVObj.CSMVLinks[0].ConnectorSpaceID
$mimCsObj = Get-CSObject -ID $id -MA $maName
Write-Host ("Syncing: " + $syncRuleMVObj.Attributes["displayName"].Values + " (" + $counter.ToString() + "/" + $syncRulesMvObjs.Count.ToString() + ")")
Sync-CSObject -CSObject $mimCsObj -Commit | Out-Null
}
[Int]$counter = 0
$syncRulesMvObjs = Get-MVObject -ObjectType synchronizationRule
foreach($syncRuleMVObj in $syncRulesMvObjs)
{
$counter += 1
$id = $syncRuleMVObj.CSMVLinks[0].ConnectorSpaceID
$mimCsObj = Get-CSObject -ID $id -MA $maName
Write-Host ("Syncing: " + $syncRuleMVObj.Attributes["displayName"].Values + " (" + $counter.ToString() + "/" + $syncRulesMvObjs.Count.ToString() + ")")
Sync-CSObject -CSObject $mimCsObj -Commit | Out-Null
}
Write-Host "Done Syncing"
Kommentarer
Send en kommentar