Click or drag to resize
IQMSGetServices Method
Gets information about all registered services of the specified type.

Namespace: PIX.Services.V12
Assembly: 
Syntax
List<ServiceInfo> GetServices(
	ServiceTypes serviceTypes
)

Parameters

serviceTypes
Type: PIX.QMSAPI.DataObjectsServiceTypes
The service types to return.

Return Value

Type: ListServiceInfo
Information about all registered services of the specified type.
Remarks

It is not possible to retrieve Reload Engines with this method.

Security note Security Note

Requires membership of local group QlikView Management API.

Examples
The following code example retrieves all services, ordered by type, and prints them.

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 a QMS API client
           IQMS apiClient = new QMSClient();

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

           //Retrieve all services.
           List<ServiceInfo> orderedServices = apiClient.GetServices(ServiceTypes.All).OrderBy(serviceInfo => serviceInfo.Type).ToList();

           ServiceTypes currentType = ServiceTypes.None;        

           orderedServices.ForEach( service=>
               {
                   if(currentType != service.Type)
                   {
                       currentType = service.Type;
                       Console.WriteLine( "\n" + Enum.GetName(typeof(ServiceTypes), service.Type));
                   }
                   Console.WriteLine(String.Format("Name:{0}\nAddress:{1}", service.Name, service.Address));

               }

           );
        }
        catch (Exception ex)
        {
            Console.WriteLine("An exception occurred: " + ex.Message);
        }
        // wait for user to press any key
        Console.ReadLine();
    }
}
See Also