GetCALConfiguration Method
Overloads
GetCALConfiguration(Guid, CALConfigurationScope) |
Gets the current session/document and named CAL configuration from a QVS. |
GetCALConfiguration(Guid, CALConfigurationScope)
Gets the current session/document and named CAL configuration from a QVS.
Declaration
CALConfiguration GetCALConfiguration(Guid qvsID, CALConfigurationScope scope)
Parameters
Type | Name | Description |
---|---|---|
System.Guid | qvsID |
The QVS ID. |
CALConfigurationScope | scope |
The scope. |
Returns
Type | Description |
---|---|
CALConfiguration |
If successful, the CAL configuration is returned. |
Remarks
security
Requires membership of local groups QlikView Management API and QlikView Administrator.
Examples
The following code example retrieves the CAL information from a QVS and prints information to the console.
The service key injection is assumed to be handled behind the scenes. For an example of how to inject the service key, see Samples.
using System;
using System.Collections.Generic;
using System.Linq;
using QMSAPI;
class Program
{
static void Main(string[] args)
{
try
{
// create a QMS API client
IQMS apiClient = new QMSClient();
//retrieve a time limited service key
ServiceKeyClientMessageInspector.ServiceKey = apiClient.GetTimeLimitedServiceKey();
ServiceInfo qvsService = apiClient.GetServices(ServiceTypes.QlikViewServer).First();
CALConfiguration config = apiClient.GetCALConfiguration(qvsService.ID,CALConfigurationScope.All);
if(config != null)
{
//Document CALs
Console.WriteLine("Document CALs\n");
Console.WriteLine("# assigned document CALs:" + config.DocumentCALs.Assigned);
Console.WriteLine("# in license document CALs:" + config.DocumentCALs.InLicense);
Console.WriteLine("# limit document CALs:" + config.DocumentCALs.Limit);
//Named CALs
Console.WriteLine("\n\nNamed CALs\n");
Console.WriteLine("Identification mode:" + config.NamedCALs.IdentificationMode);
Console.WriteLine("# assigned named CALs:" + config.NamedCALs.Assigned);
Console.WriteLine("# in license named CALs:" + config.NamedCALs.InLicense);
Console.WriteLine("# limit document CALs:" + config.NamedCALs.Limit);
config.NamedCALs.AssignedCALs.ForEach(
assignedCal => Console.WriteLine(String.Format("User:{0}\nLast used:{1}", assignedCal.UserName, assignedCal.LastUsed))
);
config.NamedCALs.LeasedCALs.ForEach(
leasedCal => Console.WriteLine(String.Format("User:{0}\nLast used:{1}", leasedCal.UserName, leasedCal.LastUsed))
);
//Session CALs
Console.WriteLine("\n\nSession CALs\n");
Console.WriteLine("# available session CALs:" + config.SessionCALs.Available);
Console.WriteLine("# in license session CALs:" + config.SessionCALs.InLicense);
Console.WriteLine("# limit session CALs:" + config.SessionCALs.Limit);
}
}
catch (Exception ex)
{
Console.WriteLine("An exception occurred: " + ex.Message);
}
// wait for user to press any key
Console.ReadLine();
}
}
Exceptions
Type | Condition |
---|---|
System.Exception |
Thrown if there were any problems retrieving the CAL configuration. |
Did this page help you?
If you find any issues with this page or its content – a typo, a missing step, or a technical error – let us know how we can improve!