Add-CMDeviceCollectionQueryMembershipRule

Adds a query membership rule to one or more Configuration Manager device collections.

Syntax

Add-CMDeviceCollectionQueryMembershipRule
   -Collection <IResultObject>
   -RuleName <String>
   -QueryExpression <String>
   [-PassThru]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-CMDeviceCollectionQueryMembershipRule
   -CollectionId <String>
   -RuleName <String>
   -QueryExpression <String>
   [-PassThru]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-CMDeviceCollectionQueryMembershipRule
   -CollectionName <String>
   -RuleName <String>
   -QueryExpression <String>
   [-PassThru]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The Add-CMDeviceCollectionQueryMembershipRule cmdlet adds a rule that adds devices to the collections based on a query. You can specify the device collections by names, IDs, or an object that represents the collections. The query is specified as a text string.

A query rule lets you dynamically update the members of a collection based on a query that is run on a schedule. For more information on collection rules in Microsoft System Center Configuration Manager, see Introduction to Collections in Configuration Manager on TechNet.

Examples

Example 1: Add a query membership rule

PS C:\>Add-CMDeviceCollectionQueryMembershipRule -CollectionName "Mobile Windows 7 Devices" -QueryExpression "select SMS_R_System.ResourceId, SMS_R_System.ResourceType, SMS_R_System.Name, SMS_R_System.SMSUniqueIdentifier, SMS_R_System.ResourceDomainORWorkgroup, SMS_R_System.Client from  SMS_R_System inner join SMS_G_System_TPM on SMS_G_System_TPM.ResourceID = SMS_R_System.ResourceId" -RuleName "TPM Information"

This command adds a membership rule named TPM Information to the device collection named Mobile Windows 7 Devices. The QueryExpression parameter specifies the query that defines the membership rule.

Required Parameters

-Collection

Specifies a Configuration Manager device collection object. To obtain a device collection object, use the Get-CMDeviceCollection cmdlet.

Type:IResultObject
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-CollectionId

Specifies the ID of the device collection where the rule is applied.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-CollectionName

Specifies the name of the device collection where the rule is applied.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-QueryExpression

Specifies the query expression that Configuration Manager uses to update the device collections.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-RuleName

Specifies the name for the rule.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Optional Parameters

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False
-DisableWildcardHandling

DisableWildcardHandling treats wildcard characters as literal character values. Cannot be combined with ForceWildcardHandling.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ForceWildcardHandling

ForceWildcardHandling processes wildcard characters and may lead to unexpected behavior (not recommended). Cannot be combined with DisableWildcardHandling.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-PassThru

Returns the current working object. By default, this cmdlet does not generate any output.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False