<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: edit script load editor with .net SDK in Integration, Extension &amp; APIs</title>
    <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1758697#M13488</link>
    <description>&lt;P&gt;&lt;SPAN&gt;$DoReloadExParams = [Qlik.Engine.DoReloadExParams]::new()&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;This creates a new .net object of the type&amp;nbsp;DoReloadExParams (same as New-Object&amp;nbsp;Qlik.Engine.DoReloadExParams)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;you can view the object by running the variable $DoReloadExParams by itself.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;this object type is a input requirement for the Method DoReloadEx.&amp;nbsp;&lt;BR /&gt;&lt;SPAN&gt;$QEApp.DoReloadEx($DoReloadExParams)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;performing the reload in this method will cause the app to reload and this will be visible in the apps last reload time.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="chrome_SdMdWvQ77j.png" style="width: 400px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/43559i1E05DBDF56F0E430/image-size/medium?v=v2&amp;amp;px=400" role="button" title="chrome_SdMdWvQ77j.png" alt="chrome_SdMdWvQ77j.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;however it does not update the LastReloadTime in the QMC as this is linked to the QRS Apis.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;in order to see the updated time in both you will need to use the QRS Api to perform the reload rather then the DoReload method&lt;/SPAN&gt;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;Invoke-QlikPost -path "/qrs/app/$($AppId)/reload"&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 05 Nov 2020 00:54:19 GMT</pubDate>
    <dc:creator>Marc</dc:creator>
    <dc:date>2020-11-05T00:54:19Z</dc:date>
    <item>
      <title>edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1755324#M13423</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;We started using the .net SDK in combination with the Qlik-Cli for Windows version for deploying apps to multiple streams.&lt;BR /&gt;For every stream we would like to change some variables in the Data load editor. Is that possible with the SDK? I found some options for changing the script with the engine JSON api but not with the SDK.&lt;/P&gt;&lt;P&gt;We have these 3 variables that we use to connect databases, we would like to change for every stream:&lt;/P&gt;&lt;P&gt;let CustomerName = 'CustomerA'&lt;BR /&gt;let DWH_CustomerName = 'DWH_CustomerA'&lt;BR /&gt;let Source_CustomerName = 'Source_CustomerA'&lt;/P&gt;&lt;P&gt;Would it be possible to search and replace these variable values in the load script?&lt;/P&gt;&lt;P&gt;Kind Regards&lt;/P&gt;</description>
      <pubDate>Sat, 16 Nov 2024 01:15:07 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1755324#M13423</guid>
      <dc:creator>hvdbunte</dc:creator>
      <dc:date>2024-11-16T01:15:07Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1755341#M13424</link>
      <description>&lt;P&gt;Yes, certainly. All endpoints available in the engine JSON API are also exposed in the SDK. In your case it's just a matter of doing a combination of "GetScript" and "SetScript" like this:&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;var script = app.GetScript();
var newScript = ...do changes to script...
app.SetScript(newScript);&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;And then you're likely to want to finish it up with a "DoReload" to refresh the app data based on your script modifications:&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;app.DoReload();&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 23 Oct 2020 09:46:27 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1755341#M13424</guid>
      <dc:creator>Øystein_Kolsrud</dc:creator>
      <dc:date>2020-10-23T09:46:27Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1755735#M13427</link>
      <description>&lt;P&gt;this can be achieved in PowerShell too, but takes a little setup first.&lt;/P&gt;&lt;P&gt;First you need to download and Extract the QlikSense.NetSDK from the following&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.nuget.org/packages/QlikSense.NetSDK" target="_blank" rel="noopener"&gt;https://www.nuget.org/packages/QlikSense.NetSDK&lt;/A&gt;&amp;nbsp;&lt;BR /&gt;as well as a Version 6.0.x of Newtonsoft.json.&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.nuget.org/packages/Newtonsoft.Json/6.0.1" target="_blank" rel="noopener"&gt;https://www.nuget.org/packages/Newtonsoft.Json/6.0.1&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;once you have extracted both, you will need to update the following to the correct locations.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;add-type -path "D:\Extracted\Nuget\packages\newtonsoft.json\6.0.1\lib\net45\Newtonsoft.Json.dll"
add-type -path "D:\Extracted\Nuget\packages\qliksense.netsdk\15.1.1\lib\net452\Qlik.Engine.dll"
add-type -path "D:\Extracted\Nuget\packages\qliksense.netsdk\15.1.1\lib\net452\Qlik.Sense.JsonRpc.dll"
add-type -path "D:\Extracted\Nuget\packages\qliksense.netsdk\15.1.1\lib\net452\Qlik.Sense.Client.dll"&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Once these "Add-Type" commands have been run, we can access the QlikSese.NetSDK C# Objects in PowerShell.&lt;/P&gt;&lt;P&gt;The Following will need the SenseServerURL updated to reflect the environment you wish to connect to and when run will prompt for Credentials to use to establish the NTLMViaProxy connection.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;$SenseServerURL = "https://sense01"
$QlikCeredentials = Get-Credential
$ProxyUsesSSL = $true
$TrustAllCerts = $true

#Create the Location Object
$Location = [Qlik.Engine.Location]::FromUri($SenseServerURL)

#Establish a Authenticated Session to the Location.
[Qlik.Engine.LocationExtensions]::AsNtlmUserViaProxy($Location,$ProxyUsesSSL,$QlikCeredentials,$TrustAllCerts)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;once the authenticated connection has been established you can then use the Location object for the subsequent requests, such as Getting the AppIdentifier for the App you want to update the Script on.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;#Get All App Identifiers
$AppIdentifiers = [Qlik.Engine.LocationExtensions]::GetAppIdentifiers($Location)&lt;/LI-CODE&gt;&lt;LI-CODE lang="csharp"&gt;#Get App Identifiers for Apps With a Specific name
$AppIdentifiersByName = [Qlik.Engine.LocationExtensions]::AppsWithNameOrDefault($Location,"Operations Monitor")&lt;/LI-CODE&gt;&lt;LI-CODE lang="csharp"&gt;#Get App Identifier for App With a Specific ID
$AppID = "39beb78d-ddc4-4346-8023-92c023851385"
$AppIdentifiersByID = [Qlik.Engine.LocationExtensions]::AppWithId($Location,$AppID)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;once you have the AppIdentifier you can get the Qlik Engine App&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;$Session = $null
$NoData = $true
$QEApp = [Qlik.Engine.LocationExtensions]::App($Location,$AppIdentifiersByID,$Session,$NoData)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Once you have the Qlik Engine app you can then call the GetScript() and SetScript("ScriptString") Methods.&lt;/P&gt;&lt;P&gt;obviously this is just an example, and you can adapt the UpdatedAppScript sent back as required.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;#Once we have the App we can Get the Load Script
$AppScript = $QEApp.GetScript()

#WE can them manipulate the Load Scripts
$UpdatedAppScript = $AppScript -replace "ValueToReplace","ReplacedWith"

#and finally update the app with the new Load script
$QEApp.SetScript($UpdatedAppScript)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To extend this a little further you can use&amp;nbsp;&lt;SPAN&gt;&lt;STRONG&gt;Qlik-CLI-Windows&lt;/STRONG&gt; to get information from the &lt;STRONG&gt;QRS&amp;nbsp;&lt;/STRONG&gt; to get Apps published to a specific stream, then use that information to get the AppIdentifier and then the Qlik Engine App.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;#Example.
#You can use Qlik-CLI-Windows to get all of the APPIDs for apps published to a specific stream
$QRSAppsByStream = Get-QlikApp -filter "Stream.Name eq 'Everyone'"

#Then for each app in the stream we can get the AppIdentifier and App
$QEApps = ForEach ($QRSApp in $QRSAppsByStream){
    $AppID = $QRSApp.Id
    $AppIdentifiersByID = [Qlik.Engine.LocationExtensions]::AppWithId($Location,$AppID)
    $QEApp = [Qlik.Engine.LocationExtensions]::App($Location,$AppIdentifiersByID,$null,$true)
    $QEApp
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And finally putting it altogether.&amp;nbsp;&lt;/P&gt;&lt;P&gt;We use the Qlik-CLI-Windows to get all the apps in the Everyone stream&lt;/P&gt;&lt;P&gt;Then we cycle through each of them getting the AppIdentifier and Qlik Engine App, Getting the Script for each and manipulating it by replacing "ValueToReplace" with "ReplacedWith"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;#Qlik-CLI-Windows
$StreamName = "Everyone"
Connect-Qlik -TrustAllCerts 
$QRSAppsByStream = Get-QlikApp -filter "Stream.Name eq '$StreamName'"


#QlikSense.NetSDK
add-type -path "D:\Extracted\Nuget\packages\newtonsoft.json\6.0.1\lib\net45\Newtonsoft.Json.dll"
add-type -path "D:\Extracted\Nuget\packages\qliksense.netsdk\15.1.1\lib\net452\Qlik.Engine.dll"
add-type -path "D:\Extracted\Nuget\packages\qliksense.netsdk\15.1.1\lib\net452\Qlik.Sense.JsonRpc.dll"
add-type -path "D:\Extracted\Nuget\packages\qliksense.netsdk\15.1.1\lib\net452\Qlik.Sense.Client.dll"

$SenseServerURL = "https://sense01"
$QlikCeredentials = Get-Credential
$ProxyUsesSSL = $true
$TrustAllCerts = $true

$Location = [Qlik.Engine.Location]::FromUri($SenseServerURL)
[Qlik.Engine.LocationExtensions]::AsNtlmUserViaProxy($Location,$ProxyUsesSSL,$QlikCeredentials,$TrustAllCerts)

$Session = $null
$NoData = $true

$QEApps = ForEach ($QRSApp in $QRSAppsByStream){
$AppID = $QRSApp.Id
#Get the AppIdentifier
$AppIdentifiersByID = [Qlik.Engine.LocationExtensions]::AppWithId($Location,$AppID)

#Get the QEApp
$QEApp = [Qlik.Engine.LocationExtensions]::App($Location,$AppIdentifiersByID,$Session,$NoData)

#Once we have the App we can Get the Load Script
$AppScript = $QEApp.GetScript()

#We can them manipulate the Load Scripts
$UpdatedAppScript = $AppScript -replace "ValueToReplace","ReplacedWith"

#and finally update the app with the new Load script
$QEApp.SetScript($UpdatedAppScript)

}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 25 Oct 2020 23:46:39 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1755735#M13427</guid>
      <dc:creator>Marc</dc:creator>
      <dc:date>2020-10-25T23:46:39Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1757830#M13469</link>
      <description>&lt;P&gt;Thanks a lot for the detailed explanation. I am trying to implement this, but I have one additional question.&lt;BR /&gt;&lt;BR /&gt;I tried a reload of the data from the app, when I run:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;$QEApp.DoReload()&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When I run I get a response True but the app doesn't reload.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Do I need to run another command?&lt;BR /&gt;&lt;BR /&gt;Thank you&lt;/P&gt;</description>
      <pubDate>Mon, 02 Nov 2020 14:40:31 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1757830#M13469</guid>
      <dc:creator>hvdbunte</dc:creator>
      <dc:date>2020-11-02T14:40:31Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1757843#M13470</link>
      <description>&lt;P&gt;Perhaps you need to do a "DoSave" as well?&lt;/P&gt;</description>
      <pubDate>Mon, 02 Nov 2020 14:58:22 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1757843#M13470</guid>
      <dc:creator>Øystein_Kolsrud</dc:creator>
      <dc:date>2020-11-02T14:58:22Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1758278#M13479</link>
      <description>&lt;P&gt;if you call the DoReload method.&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;$QEApp.DoReload&lt;/LI-CODE&gt;&lt;P&gt;you can see that it requires a number of overloads.&lt;/P&gt;&lt;P&gt;OverloadDefinitions&lt;BR /&gt;-------------------&lt;BR /&gt;bool DoReload(int mode, bool partial, bool debug)&amp;nbsp;&lt;/P&gt;&lt;P&gt;we can find more information on what each of these is on the following&amp;nbsp;&lt;A href="https://help.qlik.com/en-US/sense-developer/September2020/apis/EngineAPI/services-Doc-DoReload.html" target="_self"&gt;DoReload method&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;$QEApp.DoReload(0,$False,$False)&lt;/LI-CODE&gt;&lt;P&gt;however, you will notice in the "Returns" section of the DoReload method page.&amp;nbsp;&lt;BR /&gt;&lt;EM&gt;If the data load has successfully finished, no matter how the indexing behaves, _true_ is returned. This happens even if there is a timeout, a memory limit is reached, or any other error occurs during the indexing.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;With that in mind you, if your reload takes a while you may be hitting a timeout... so you may be better off using the &lt;A href="https://help.qlik.com/en-US/sense-developer/September2020/apis/EngineAPI/services-Doc-DoReloadEx.html" target="_self"&gt;DoReloadEx method&lt;/A&gt;&amp;nbsp;as this will return a DoReloadExResult that contains a link to the ScriptLog file which may be useful in determining any errors.&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;$DoReloadExParams = [Qlik.Engine.DoReloadExParams]::new()
$QEApp.DoReloadEx($DoReloadExParams)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Alternatively.&amp;nbsp;&lt;/P&gt;&lt;P&gt;if you used the sample script I provided where we leveraged Qlik-CLI to find the app, before using the QlikSense.NetSDK&lt;/P&gt;&lt;P&gt;you will have a variable called AppID.. which you can use this with the Qlik-CLI to run the Reload via the QRS.&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;Invoke-QlikPost -path "/qrs/app/$($AppId)/reload"&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Nov 2020 21:45:38 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1758278#M13479</guid>
      <dc:creator>Marc</dc:creator>
      <dc:date>2020-11-03T21:45:38Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1758359#M13481</link>
      <description>&lt;P&gt;Hi Marc,&lt;/P&gt;&lt;P&gt;Thanks again for you reply.&lt;/P&gt;&lt;P&gt;Like I wrote earlier I am new to this, working with API's and Qlik-CLI.&lt;/P&gt;&lt;P&gt;So I have a couple of followup questions:&lt;/P&gt;&lt;P&gt;When I use this:&lt;/P&gt;&lt;P&gt;$DoReloadExParams = [Qlik.Engine.DoReloadExParams]::new()&lt;BR /&gt;$QEApp.DoReloadEx($DoReloadExParams)&lt;/P&gt;&lt;P&gt;What does that ::New() do?&lt;/P&gt;&lt;P&gt;The above command returns the outcome if it's true or false, that is really helpful for checking if the app was published correctly.&lt;BR /&gt;But it doesn't change the Lastreloadtime. Would that be possible? Or should we also run the invoke command to get that fixed? Because the invoke command updates the Lastreloadtime but doesn't give any information if the reload task was successful or not.&lt;/P&gt;&lt;P&gt;Again both Marc and yko thanks allot for your help!&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Hendri&lt;/P&gt;</description>
      <pubDate>Wed, 04 Nov 2020 10:03:00 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1758359#M13481</guid>
      <dc:creator>hvdbunte</dc:creator>
      <dc:date>2020-11-04T10:03:00Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1758697#M13488</link>
      <description>&lt;P&gt;&lt;SPAN&gt;$DoReloadExParams = [Qlik.Engine.DoReloadExParams]::new()&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;This creates a new .net object of the type&amp;nbsp;DoReloadExParams (same as New-Object&amp;nbsp;Qlik.Engine.DoReloadExParams)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;you can view the object by running the variable $DoReloadExParams by itself.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;this object type is a input requirement for the Method DoReloadEx.&amp;nbsp;&lt;BR /&gt;&lt;SPAN&gt;$QEApp.DoReloadEx($DoReloadExParams)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;performing the reload in this method will cause the app to reload and this will be visible in the apps last reload time.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="chrome_SdMdWvQ77j.png" style="width: 400px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/43559i1E05DBDF56F0E430/image-size/medium?v=v2&amp;amp;px=400" role="button" title="chrome_SdMdWvQ77j.png" alt="chrome_SdMdWvQ77j.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;however it does not update the LastReloadTime in the QMC as this is linked to the QRS Apis.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;in order to see the updated time in both you will need to use the QRS Api to perform the reload rather then the DoReload method&lt;/SPAN&gt;&lt;/P&gt;&lt;LI-CODE lang="csharp"&gt;Invoke-QlikPost -path "/qrs/app/$($AppId)/reload"&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Nov 2020 00:54:19 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1758697#M13488</guid>
      <dc:creator>Marc</dc:creator>
      <dc:date>2020-11-05T00:54:19Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1759331#M13511</link>
      <description>&lt;P&gt;Thank again, I tried the reload but it didn't change the date/time of the reload, but I will use both to solve this.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Nov 2020 13:32:32 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1759331#M13511</guid>
      <dc:creator>hvdbunte</dc:creator>
      <dc:date>2020-11-06T13:32:32Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1766715#M13628</link>
      <description>&lt;P&gt;Hi,&lt;BR /&gt;&lt;BR /&gt;After creating a script for this to change a load script, I still hit an issue. When I reload the script with this code:&lt;/P&gt;&lt;P&gt;$computerName="qlik-test.xxx.xx"&lt;BR /&gt;$computerPort="4747"&lt;BR /&gt;$userDirectory="QLIK-TEST"&lt;BR /&gt;$userName="abc"&lt;BR /&gt;$uri = "wss://$($computerName):$($computerPort)"&lt;/P&gt;&lt;P&gt;$location = [Qlik.Engine.Location]::FromUri($uri)&lt;BR /&gt;[Qlik.Engine.LocationExtensions]::AsDirectConnection($location,$userDirectory,$userName)&lt;/P&gt;&lt;P&gt;$AppIdentifiersByID = [Qlik.Engine.LocationExtensions]::AppWithId($location,$newappToPublishid)&lt;BR /&gt;$QEApp = [Qlik.Engine.LocationExtensions]::App($location,$AppIdentifiersByID,$Session,$NoData)&lt;/P&gt;&lt;P&gt;$DoReloadExParams = [Qlik.Engine.DoReloadExParams]::new()&lt;BR /&gt;$QEApp.DoReloadEx($DoReloadExParams)&lt;/P&gt;&lt;P&gt;Invoke-QlikPost -path "/qrs/app/$($newAppToPublishId)/reload"&lt;/P&gt;&lt;P&gt;But when I put this in a loop to go through different apps and check if the reload is correct with the script that is stored when doing a reload. Everyting is working fine. But when I check the app, then I see that the reload didn't go correctly.&lt;/P&gt;&lt;P&gt;For example if I reload app A, and publish this to stream A then the first time it runs correct.&lt;BR /&gt;When i change App A to reload into another stream, say stream B then the change of app A is correct but when i reload the app to publish in stream B it still contains the information of stream A. But when I look in the script log file it should be correct, but when i check in the app it is not reloaded.&lt;/P&gt;&lt;P&gt;Any idea how to solve this?&lt;/P&gt;</description>
      <pubDate>Mon, 07 Dec 2020 14:28:03 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1766715#M13628</guid>
      <dc:creator>hvdbunte</dc:creator>
      <dc:date>2020-12-07T14:28:03Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1767547#M13637</link>
      <description>&lt;P&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/20073"&gt;@hvdbunte&lt;/a&gt;&amp;nbsp;Don't you need to call IApp.DoSave?&lt;/P&gt;&lt;P&gt;&lt;A href="https://help.qlik.com/en-US/sense-developer/November2020/Subsystems/NetSDKAPIref/Content/Qlik.Engine.App.DoSave.htm" target="_blank"&gt;https://help.qlik.com/en-US/sense-developer/November2020/Subsystems/NetSDKAPIref/Content/Qlik.Engine.App.DoSave.htm&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 10 Dec 2020 07:50:26 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1767547#M13637</guid>
      <dc:creator>Øystein_Kolsrud</dc:creator>
      <dc:date>2020-12-10T07:50:26Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1820856#M15225</link>
      <description>&lt;P&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/29458"&gt;@Marc&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hi Mark I have bee working through your solution closely but am running into some websocket issues. The error that I keep getting with my code is the following.&lt;/P&gt;&lt;P&gt;Exception calling "GetAppIdentifiers" with "1" argument(s): "The WebSocket is in an invalid state ('Aborted') for this operation. Valid states are: 'Open, CloseReceived'"&lt;BR /&gt;At D:\QLIK\Development\PowerShell\LoadScriptAudit2.ps1:42 char:1&lt;BR /&gt;+ $AppIdentifiers = [Qlik.Engine.LocationExtensions]::GetAppIdentifiers($Location)&lt;BR /&gt;+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;BR /&gt;+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException&lt;BR /&gt;+ FullyQualifiedErrorId : WebSocketException&lt;/P&gt;&lt;P&gt;I'm not sure what is causing it. I have gone through the QMC and made sure that the virtual proxy is enabled and white listed but I still keep getting the same error. I have put up a community post see link below but haven't managed to get a useful response to date. So I am still not sure what is causing the issue.&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.qlik.com/t5/Connectivity-Data-Prep/Web-sockets-connectivity-issue-net-SDK/m-p/1819950#M9249" target="_blank"&gt;https://community.qlik.com/t5/Connectivity-Data-Prep/Web-sockets-connectivity-issue-net-SDK/m-p/1819950#M9249&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 09 Jul 2021 01:21:56 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1820856#M15225</guid>
      <dc:creator>michasiuk</dc:creator>
      <dc:date>2021-07-09T01:21:56Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1820857#M15226</link>
      <description>&lt;P&gt;Just a quick note I can get the Qlik-Cli to work successfully but I cannot get this to work successfully&lt;/P&gt;</description>
      <pubDate>Fri, 09 Jul 2021 01:24:35 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1820857#M15226</guid>
      <dc:creator>michasiuk</dc:creator>
      <dc:date>2021-07-09T01:24:35Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1842138#M15671</link>
      <description>&lt;P&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/42326"&gt;@michasiuk&lt;/a&gt;I am not sure if this is still helpful but we are using different code to connect to qlik sense:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt; $uri = "wss://$($computerName):$($computerPort)"

 Write-Verbose "uri: $uri"
   $location = [Qlik.Engine.Location]::FromUri($uri)
[Qlik.Engine.LocationExtensions]::AsDirectConnection($location,$userDirectory,$userName)

        # get the app's appIdentifier 
	    $appIdentifier = [Qlik.Engine.LocationExtensions]::AppWithIdOrDefault($location, $id)&lt;/LI-CODE&gt;&lt;P&gt;The $id variable is the app id.&lt;BR /&gt;&lt;BR /&gt;Hope this helps.&lt;/P&gt;</description>
      <pubDate>Tue, 05 Oct 2021 11:51:37 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1842138#M15671</guid>
      <dc:creator>hvdbunte</dc:creator>
      <dc:date>2021-10-05T11:51:37Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1845139#M15711</link>
      <description>&lt;P&gt;Thanks I'll try this and see what happens. The only question that I would like to ask is what should the variable $id be set to in the line.&amp;nbsp;&lt;/P&gt;&lt;P&gt;$appIdentifier = [Qlik.Engine.LocationExtensions]::AppWithIdOrDefault($location, $id)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 11 Oct 2021 22:58:37 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1845139#M15711</guid>
      <dc:creator>michasiuk</dc:creator>
      <dc:date>2021-10-11T22:58:37Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1845143#M15713</link>
      <description>&lt;P&gt;modified the script slightly changed the line:&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;$appIdentifier = [Qlik.Engine.LocationExtensions]::AppWithIdOrDefault($location, $id)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;to&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;$appIdentifier = [Qlik.Engine.LocationExtensions]::AppWithIdOrDefault($location)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;But getting the following error: I suspect that it's a certificate error not sure how to use certificates in the connection.&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Exception calling "GetAppIdentifiers" with "1" argument(s): "Value cannot be null.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Parameter name: certificates"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;At D:\QlikNprinting\PowerShell\Script\TestConnect.ps1:25 char:1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;+ $AppIdentifiers = [Qlik.Engine.LocationExtensions]::GetAppIdentifiers($Location) ...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;+ FullyQualifiedErrorId : ArgumentNullException&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 12 Oct 2021 00:00:51 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/1845143#M15713</guid>
      <dc:creator>michasiuk</dc:creator>
      <dc:date>2021-10-12T00:00:51Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/2494915#M21578</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/29458"&gt;@Marc&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have to say that I'm a beginner using QlikSense.NetSDK so probably the issue I found is because my lack of knowledge.&lt;/P&gt;
&lt;P&gt;I'm running the following code:&lt;/P&gt;
&lt;P&gt;add-type -path "D:\Qlik Powershell\newtonsoft.json.6.0.1\lib\net45\Newtonsoft.Json.dll"&lt;BR /&gt;add-type -path "D:\Qlik Powershell\qliksense.netsdk.16.9.0\lib\net452\Qlik.Engine.dll"&lt;BR /&gt;add-type -path "D:\Qlik Powershell\qliksense.netsdk.16.9.0\lib\net452\Qlik.Sense.JsonRpc.dll"&lt;BR /&gt;add-type -path "D:\Qlik Powershell\qliksense.netsdk.16.9.0\lib\net452\Qlik.Sense.Client.dll"&lt;/P&gt;
&lt;P&gt;$SenseServerURL = "&lt;A href="https://qliktest" target="_blank"&gt;https://qliktest&lt;/A&gt;"&lt;BR /&gt;$QlikCeredentials = Get-Credential&lt;BR /&gt;$ProxyUsesSSL = $true&lt;BR /&gt;$TrustAllCerts = $true&lt;/P&gt;
&lt;P&gt;#Create the Location Object&lt;BR /&gt;$Location = [Qlik.Engine.Location]::FromUri($SenseServerURL)&lt;/P&gt;
&lt;P&gt;#Establish a Authenticated Session to the Location.&lt;BR /&gt;[Qlik.Engine.LocationExtensions]::AsNtlmUserViaProxy($Location,$ProxyUsesSSL,$QlikCeredentials,$TrustAllCerts)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Powershell shows me the following error:&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;Method invocation failed because [Qlik.Engine.LocationExtensions] does not contain a method named 'AsNtlmUserViaProxy'.&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;At line:15 char:1&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;+ [Qlik.Engine.LocationExtensions]::AsNtlmUserViaProxy($Location,$Proxy ...&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;+ CategoryInfo : InvalidOperation: (:) [], RuntimeException&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;+ FullyQualifiedErrorId : MethodNotFound&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#000000"&gt;Does anybody know what I'm doing wrongly?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Wed, 27 Nov 2024 14:35:54 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/2494915#M21578</guid>
      <dc:creator>LDR</dc:creator>
      <dc:date>2024-11-27T14:35:54Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/2494928#M21580</link>
      <description>&lt;P&gt;I loaded the same dll releases you put and everything worked for me.&lt;/P&gt;
&lt;P&gt;Is it possible to receive the answer in JSON format?&lt;/P&gt;
&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Wed, 27 Nov 2024 15:40:44 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/2494928#M21580</guid>
      <dc:creator>LDR</dc:creator>
      <dc:date>2024-11-27T15:40:44Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/2494931#M21581</link>
      <description>&lt;P&gt;The Method &lt;FONT color="#FF0000"&gt;AsNtlmUserViaProxy&lt;/FONT&gt; is no longer an extension method.&lt;BR /&gt;&lt;BR /&gt;so you would use&lt;/P&gt;
&lt;P&gt;$Location.AsNtlmUserViaProxy($QlikCeredentials,$TrustAllCerts)&lt;/P&gt;</description>
      <pubDate>Wed, 27 Nov 2024 15:51:53 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/2494931#M21581</guid>
      <dc:creator>Marc</dc:creator>
      <dc:date>2024-11-27T15:51:53Z</dc:date>
    </item>
    <item>
      <title>Re: edit script load editor with .net SDK</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/2494932#M21582</link>
      <description>&lt;P&gt;?&lt;BR /&gt;{&lt;BR /&gt;ErrorCause: "The Method &lt;FONT color="#FF0000"&gt;AsNtlmUserViaProxy&lt;/FONT&gt; is no longer an extension method.",&lt;BR /&gt;Fix: "$Location.AsNtlmUserViaProxy($QlikCeredentials,$TrustAllCerts)"&lt;BR /&gt;}&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 27 Nov 2024 15:53:40 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/edit-script-load-editor-with-net-SDK/m-p/2494932#M21582</guid>
      <dc:creator>Marc</dc:creator>
      <dc:date>2024-11-27T15:53:40Z</dc:date>
    </item>
  </channel>
</rss>

