Public/get-AllegisIDNmissingSourcesInTransforms.ps1

function get-AllegisIDNmissingSourcesInTransforms ($sourceOrg, $sourceAccessToken){
    function get-child ($children,$parent){ 
        foreach ($item in $children){
            sleep -Milliseconds 1
            if ($item.id -ne $null){$parent=("\$($children.id)\")}
            if ($item.attributes -eq $null)
            {
                $item | select -prop attributes,id,type,@{n='parent';e={$parent}}
            }
            else
            {
                $item | select -prop attributes,id,type,@{n='parent';e={$parent}}
                get-child -children $item.attributes.values -parent ($parent + $item.type + "\")   
            }
        }
    }
    $transforms=get-AllegisIDNtransform -orgName $sourceOrg -accessToken $sourceAccessToken
    $validsources=get-AllegisIDNsource -orgName $sourceOrg -accessToken $sourceAccessToken
    $rule=$transforms.items | foreach{get-child $_}
    $invalidTransform=$rule.where{($_.type -eq 'accountAttribute' -and $_.attributes.sourceName -notin $validsources.name)}
    $invalidtransform
}