Update-QlikUserDirectory.ps1
function Update-QlikUserDirectory { <# .SYNOPSIS This function ... .DESCRIPTION A bit more description .PARAMETER FromPipeline Shows how to process input from the pipeline, remaining parameters or by named parameter. .EXAMPLE Update-QlikUserDirectory 'abc' Description of the example. #> <# Enable -Confirm and -WhatIf. #> [CmdletBinding(SupportsShouldProcess = $true)] param( [parameter(Mandatory=$true,ValueFromPipeline=$True,ValueFromPipelinebyPropertyName=$True,Position=0)] [string]$id, [string]$name, [string]$path, [string]$username, [string]$password, [string]$ldapFilter, [int]$timeout, [Int]$pageSize ) begin { } process{ $ud = Get-QlikUserDirectory -Id $id -raw if($name) { $ud.name = $name } if($path) { ($ud.settings | ? name -eq path).value = $path } if($username) { ($ud.settings | ? name -eq 'User name').value = $username } if($password) { ($ud.settings | ? name -eq password).value = $password } if($ldapFilter) { ($ud.settings | ? name -eq 'LDAP Filter').value = $ldapFilter } if($timeout) { ($ud.settings | ? name -eq 'Synchronization timeout in seconds').value = $timeout } if($pageSize) { ($ud.settings | ? name -eq 'Page size').value = $pageSize } $json = $ud | ConvertTo-Json -Compress -Depth 10 return Invoke-QlikPut -Path "/qrs/userdirectory/$id" -Body $json } end { } } if ($loadingModule) { Export-ModuleMember -Function 'Update-QlikUserDirectory' } |