Functions/NetworkAreas/Move-PVNetworkArea.ps1
Function Move-PVNetworkArea { <# .SYNOPSIS Moves a Network Area to a new location in the Network Areas tree. .DESCRIPTION Exposes the PACLI Function: "MOVENETWORKAREA" .PARAMETER vault The defined Vault name .PARAMETER user The Username of the authenticated User. .PARAMETER networkArea The name of the Network Area. .PARAMETER newLocation The new location of the Network Area. Note: Add a backslash ‘\’ before the name of the location. .PARAMETER sessionID The ID number of the session. Use this parameter when working with multiple scripts simultaneously. The default is ‘0’. .EXAMPLE Move-PVNetworkArea -vault Lab -user administrator -networkArea All\DE -newLocation ALL\EMEA\DE Moves Network Area DE to EMEA\DE .NOTES AUTHOR: Pete Maan #> [CmdLetBinding()] param( [Parameter( Mandatory = $True, ValueFromPipelineByPropertyName = $True)] [string]$vault, [Parameter( Mandatory = $True, ValueFromPipelineByPropertyName = $True)] [string]$user, [Parameter( Mandatory = $True, ValueFromPipelineByPropertyName = $True)] [string]$networkArea, [Parameter( Mandatory = $True, ValueFromPipelineByPropertyName = $True)] [string]$newLocation, [Parameter( Mandatory = $False, ValueFromPipelineByPropertyName = $True)] [int]$sessionID ) PROCESS { $Return = Invoke-PACLICommand $Script:PV.ClientPath MOVENETWORKAREA $($PSBoundParameters.getEnumerator() | ConvertTo-ParameterString) if($Return.ExitCode -eq 0) { Write-Verbose "Network Area $networkArea Moved to $newLocation" [PSCustomObject] @{ "vault" = $vault "user" = $user "sessionID" = $sessionID } | Add-ObjectDetail -TypeName pacli.PoShPACLI } } } |