Click or drag to resize
IQMSSaveLicense Method
Sets a license on a service. The license includes a LicenseType which is used together with the serviceID parameter to find the correct service.

Namespace: PIX.Services.V12
Assembly: 
Syntax
string SaveLicense(
	License license,
	Guid serviceID
)

Parameters

license
Type: PIX.QMSAPI.DataObjectsLicense
The license to set on the service.
serviceID
Type: SystemGuid
The ID of the service that should have the license

Return Value

Type: String
An empty string is returned if the operation were successful, otherwise an error message is returned.
Remarks
If the license parameter is a Publisher license, the serviceID will be ignored and can be set to Guid.Empty.
Security note Security Note

Requires membership of local groups QlikView Management API and QlikView Administrator.

Examples
The following code example uses the QMS API to set a new Publisher license.

The service key injection is assumed to be handled behind the scenes. For an example of how to inject the service key, see Samples.

C#
 using System;
 using System.Collections.Generic;
 using System.Linq;
 using QMSAPI;

class Program
{
     static void Main(string[] args)
     {
         try
         { 
             //Create the new license
             License newLicense = new License();
             newLicense.LicenseType = LicenseType.Publisher;
             newLicense.Serial = "<A valid serial number>";
             newLicense.Control = "<A valid control number>";
             newLicense.Name = "<Some name>";
             newLicense.Corporation = "<Some corporation>";
             newLicense.LEFFile = System.IO.File.ReadAllText("<Path to LEF file>");

             // create a QMS API client
             IQMS apiClient = new QMSClient();

             //retrieve a time limited service key
             ServiceKeyClientMessageInspector.ServiceKey = apiClient.GetTimeLimitedServiceKey();

             //Set the license
             string result = apiClient.SaveLicense(newLicense, Guid.Empty);

             //Check the result
             if(result != string.Empty)
                 Console.WriteLine("License was successfully set.");
             else
                 Console.WriteLine("Error when setting the license: " + result);
         }
         catch (Exception ex)
         {
             Console.WriteLine("An exception occurred: " + ex.Message);
         }
         // wait for user to press any key
         Console.ReadLine();
     }
}
See Also