Functions/Import-DqChecks.ps1
Function Import-DqChecks { <# .SYNOPSIS Deze functie importeert een of meerdere controles naar de DQ Monitor Webservice. .DESCRIPTION De Import-DqChecks functie leest een checks definitiebestand uit en zal de controles die daarin gedefinieerd staan importeren naar de DQ Monitor Webservice. Voordat deze functie gebruikt wordt, zorg ervoor dat de Context is gezet via functie Set-DqContext. .PARAMETER CheckJsonFile Het volledige pad naar een .JSON bestand dat voorzien is van een verzameling controles die geupload moeten worden naar de DQ Monitor Webservice. Houdt er rekening mee dat SQL script bestanden die benoemd worden in het JSON bestand (eigenschap 'statement') in dezelfde map worden geplaatst als het JSON bestand. .INPUTS Geen. .OUTPUTS Geen. .EXAMPLE PS> Import-DqChecks -CheckJsonFile "C:\DQ\controles.json" Controle 'WOONGELUK_REL_GEG_AANW1' is opgevoerd. Controle 'WOONGELUK_REL_GEG_AANW2' is opgevoerd. Controle 'WOONGELUK_REL_GEG_AANW3' is opgevoerd. 3 controle(s) opgevoerd. .LINK Set-DqContext #> [CmdletBinding()] Param( [Parameter(Mandatory=$True)] [ValidateNotNull()] [String] $CheckJsonFile ) Validate-Context Write-Verbose "Checks bestand '$($CheckJsonFile)' wordt gebruikt." $ValidationResult = Validate-CheckJsonFile -CheckJsonFile $CheckJsonFile -ErrorAction Stop If ($ValidationResult -ne $True) { Return; } $CheckJsonRaw = Get-Content $CheckJsonFile -Raw -Encoding UTF8 -ErrorAction Ignore $CheckStatementRootPath = Split-Path -Path $CheckJsonFile -Parent $ChecksToUpload = Get-ApiChecksToUpload -CheckJsonRaw $CheckJsonRaw -CheckStatementRootPath $CheckStatementRootPath If ($ChecksToUpload.Count -eq 0) { Write-Warning "Geen controles gevonden om te uploaden." Return; } Upload-ChecksToApi -ChecksToUpload $ChecksToUpload -CheckStatementRootPath $CheckStatementRootPath } |