src/Client/Publish-XrmDuplicateRule.ps1
|
<# .SYNOPSIS Publish a duplicate detection rule. .DESCRIPTION Publish (activate) a duplicate detection rule using the PublishDuplicateRule SDK action. .PARAMETER XrmClient Xrm connector initialized to target instance. Use latest one by default. (Dataverse ServiceClient) .PARAMETER DuplicateRuleReference EntityReference of the duplicaterule record to publish. .OUTPUTS Microsoft.Xrm.Sdk.OrganizationResponse. The PublishDuplicateRule response containing AsyncOperationId. .EXAMPLE $ruleRef = New-XrmEntityReference -LogicalName "duplicaterule" -Id $ruleId; $response = Publish-XrmDuplicateRule -DuplicateRuleReference $ruleRef; .LINK https://learn.microsoft.com/en-us/power-apps/developer/data-platform/webapi/reference/publishduplicaterule #> function Publish-XrmDuplicateRule { [CmdletBinding()] [OutputType([Microsoft.Xrm.Sdk.OrganizationResponse])] param ( [Parameter(Mandatory = $false, ValueFromPipeline)] [Microsoft.PowerPlatform.Dataverse.Client.ServiceClient] $XrmClient = $Global:XrmClient, [Parameter(Mandatory = $true)] [ValidateNotNullOrEmpty()] [Microsoft.Xrm.Sdk.EntityReference] $DuplicateRuleReference ) begin { $StopWatch = [System.Diagnostics.Stopwatch]::StartNew(); Trace-XrmFunction -Name $MyInvocation.MyCommand.Name -Stage Start -Parameters ($MyInvocation.MyCommand.Parameters); } process { $request = New-XrmRequest -Name "PublishDuplicateRule"; $request | Add-XrmRequestParameter -Name "DuplicateRuleId" -Value $DuplicateRuleReference.Id | Out-Null; $response = $XrmClient | Invoke-XrmRequest -Request $request; $response; } end { $StopWatch.Stop(); Trace-XrmFunction -Name $MyInvocation.MyCommand.Name -Stage Stop -StopWatch $StopWatch; } } Export-ModuleMember -Function Publish-XrmDuplicateRule -Alias *; |