Add-CMUserCollectionQueryMembershipRule
Add a query membership rule to a user collection.
Syntax
Add-CMUserCollectionQueryMembershipRule
-InputObject <IResultObject>
[-PassThru]
-QueryExpression <String>
-RuleName <String>
[-ValidateQueryHasResult]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-CMUserCollectionQueryMembershipRule
-CollectionId <String>
[-PassThru]
-QueryExpression <String>
-RuleName <String>
[-ValidateQueryHasResult]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-CMUserCollectionQueryMembershipRule
-CollectionName <String>
[-PassThru]
-QueryExpression <String>
-RuleName <String>
[-ValidateQueryHasResult]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Use this cmdlet to add a query membership rule to a user collection.
A query rule lets you dynamically update the membership of a collection based on a query that is run on a schedule.
You can't add membership rules to default collections. Any collection that you target should have an ID that starts with the site code, not SMS
.
For more information, see How to create collections in Configuration Manager.
Note
Run Configuration Manager cmdlets from the Configuration Manager site drive, for example PS XYZ:\>
. For more information, see getting started.
Examples
Example 1: Add a query membership rule
This example first stores the WMI Query Language (WQL) statement into the wql variable. The next command adds a membership rule named Remote users by domain to the user collection named Remote Users. The QueryExpression parameter uses the wql variable, and specifies the query that defines the membership rule.
$wql = "select SMS_R_USER.ResourceID,SMS_R_USER.ResourceType,SMS_R_USER.Name,SMS_R_USER.UniqueUserName,SMS_R_USER.WindowsNTDomain from SMS_R_User"
Add-CMUserCollectionQueryMembershipRule -CollectionName "Remote Users" -QueryExpression $wql -RuleName "Remote users by domain"
Parameters
-CollectionId
Specify the ID of the user collection to add the rule. This value is the CollectionID property, for example, XYZ00012
. Since you can't add membership rules to default collections, this ID starts with the site code and not SMS
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CollectionName
Specify the name of the user collection to add the rule.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisableWildcardHandling
This parameter treats wildcard characters as literal character values. You can't combine it with ForceWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ForceWildcardHandling
This parameter processes wildcard characters and may lead to unexpected behavior (not recommended). You can't combine it with DisableWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Specify an object for the user collection to add the rule. To get this object, use the Get-CMCollection or Get-CMUserCollection cmdlets.
Type: | IResultObject |
Aliases: | Collection |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassThru
Add this parameter to return an object that represents the item with which you're working. By default, this cmdlet may not generate any output.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-QueryExpression
Specify the WMI Query Language (WQL) expression that the site uses to update the user collection.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RuleName
Specify the name of the query rule to add to the collection.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ValidateQueryHasResult
Add this parameter to test the query expression before adding the rule. When the cmdlet runs with this parameter, if the query expression has no results, the cmdlet returns the following error message: No object corresponds to the specified parameters.
In this case, the query isn't added to the collection.
If you know the query currently returns zero results, but still want to add the rule, don't use this parameter.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet doesn't run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
Microsoft.ConfigurationManagement.ManagementProvider.IResultObject
Outputs
System.Object