Qlik-Cli-Windows
Qlik-Cli-Windows copied to clipboard
Add-QlikTrigger always returns 400 Bad Request
I get a 400 Bad Request error when trying to use the Add-QlikTrigger function:
buildVersion : 28.0.6.0
buildDate : 6/14/2021 16:04:18 PM
databaseProvider : Devart.Data.PostgreSql
nodeType : 1
sharedPersistence : True
requiresBootstrap : False
singleNodeOnly : False
schemaPath : About
nextExecution : 1753-01-01 01:00
status : NeverStarted
name : Test task 1
lastExecution : 1753-01-01 01:00
nextExecution : 1753-01-01 01:00
status : NeverStarted
name : Test task 2
lastExecution : 1753-01-01 01:00
Invoke-RestMethod : The remote server returned an error: (400) Bad Request.
At C:\Users\XXXXX\Documents\Qlik-Cli-Windows-1.21.1\functions\core.ps1:66 char:23
+ ... $result = Invoke-RestMethod @paramInvokeRestMethod @params
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
This is the script used. This is on QSoW release May 2021. Qlik-Cli version is 1.21.1
$PSScriptRoot
Import-Module .\qlik-cli\Qlik-Cli.psm1
Connect-Qlik -computerName https://hl-extern-q1/winauth -UseDefaultCredentials -TrustAllCerts
$Task1 = Get-QlikTask -filter "name eq 'Test task 1'"
$Task2 = Get-QlikTask -filter "name eq 'Test task 2'"
echo $Task1
echo $Task2
Get-QlikTask -filter "name eq 'Test task 2'" | Add-QlikTrigger -name 'After Test task 1' -OnSuccess (Get-QlikTask -filter "name eq 'Test task 1'")
Get-QlikTask -filter "name eq 'Test task 2'" | Add-QlikTrigger -name 'Start daily' -startDate (Get-Date)
# Examples from the documentation at https://github.com/ahaydon/Qlik-Cli-Windows/blob/master/docs/Add-QlikTrigger.md
#
# Get-QlikTask -filter "name eq 'Reload Dashboard'" | Add-QlikTrigger -name 'On completion of extract' -OnSuccess (Get-QlikTask -filter "name eq 'Extract to QVD'")
# Get-QlikTask -filter "name eq 'Extract to QVD'" | Add-QlikTrigger -name 'On completion of extract' -startDate (Get-Date)
try replacing
Get-QlikTask -filter "name eq 'Test task 2'" | Add-QlikTrigger -name 'After Test task 1' -OnSuccess (Get-QlikTask -filter "name eq 'Test task 1'")
with
Get-QlikTask -filter "name eq 'Test task 2'" | Add-QlikTrigger -name 'After Test task 1' -OnSuccess $($(Get-QlikTask -filter "name eq 'Test task 1'").id)
That didn't work. But it did point me in the right direction. Get-QlikTask doesn't by default return the task id. So the -full parameter needs to be added.
This one does work: Get-QlikTask -full -filter "name eq 'Test task 2'" | Add-QlikTrigger -name 'After Test task 1' -OnSuccess $($(Get-QlikTask -full -filter "name eq 'Test task 1'").id)
Looks like the documentation needs an update.
Docs updated