LookupNames Method
Overloads
LookupNames(Guid, List<String>) |
Given a list of user or group names, this method performs a lookup of each name on a Directory Service Connector. |
LookupNames(Guid, List<String>)
Given a list of user or group names, this method performs a lookup of each name on a Directory Service Connector.
Declaration
List<DirectoryServiceObject> LookupNames(Guid dscID, List<string> names)
Parameters
Type | Name | Description |
---|---|---|
System.Guid | dscID |
The ID of the Directory Service Connector to perform the lookup on. |
System.Collections.Generic.List<System.String> | names |
A list of names to lookup. |
Returns
Type | Description |
---|---|
System.Collections.Generic.List<DirectoryServiceObject> |
A list of found users or groups. |
Remarks
security
Requires membership of local groups QlikView Management API and QlikView Administrator.
Examples
In the example below, a set of users and groups are added as recipients to an existing document task.
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();
//Get a Directory Service Connector
ServiceInfo dscService = apiClient.GetServices(ServiceTypes.QlikViewDirectoryServiceConnector).FirstOrDefault();
Guid docId = new Guid("12a32214-1122-112a-8099-8765ce564112"); // The document ID.
//Get the task. Only the distribtion details are neede.
DocumentTask someTask = apiClient.GetDocumentTask(docId, DocumentTaskScope.Distribute);
if (dscService != null && someTask != null)
{
//Create a list with two users and one group.
List<string> names = new List<string>(){"johnb","lindac","Sales", "Finance"};
//Lookup the names in the list.
List<DirectoryServiceObject> dsObjects = apiClient.LookupNames(dscService.ID, names);
if(dsObjects != null) {
//Add the found users/groups to the receivers of all static distributions.
foreach( TaskDistributionEntry distEntry in someTask.Distribute.Static.DistributionEntries)
{
distEntry.Recipients.AddRange(dsObjects);
}
//Save the task
apiClient.SaveDocumentTask(someTask);
}
}
}
catch (Exception ex)
{
Console.WriteLine("An exception occurred: " + ex.Message);
}
// wait for user to press any key
Console.ReadLine();
}
}
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!