GetCQLDAPMap

Description

Returns the HCL Compass user profile field that is used for correlating LDAP user records to HCL Compass user records.

Returns a Long corresponding to a CQLDAPMap constant. Returns 0 if the mapping is not configured. May return an exception if there is an error connecting to the schema repository (that is, the master database).

The CQLDAPMap constant can be one of the following HCL Compass user profile fields: Name, FullName, Phone, Email, and MiscInfo. The CQLDAPMap field is specified with the installutil setcqldapmap subcommand.

In a MultiSite environment, HCL Compass enforces that the same CQLDAPMap field is used for all sites (that is, the same HCL Compass User profile field), but allows that the LDAP attribute that is mapped may be site specific. This allows you to have different LDAP schemas at different sites, but allows HCL Compass to enforce the uniqueness of the HCL Compass mapping field values across an entire database set.

GetCQLDAPMap returns 0 if the database set has not been configured forHCL Compass to LDAP mapping using the installutil setcqldapmap command.

Note: This method became available in version 2003.06.15.

Syntax

VBScript


adminSession.GetCQLDAPMap() 

Perl


$adminSession->GetCQLDAPMap(); 
Identifier
Description
adminSession
The AdminSession object representing the current schema repository access session.
Return value
Returns a Long containing the CQLDAPMap value of the schema repository. Returns 0 if the mapping is not configured

Examples

VBScript

' Build a CQ AdminSession object...
Set CQAdminSession = CreateObject("CLEARQUEST.ADMINSESSION")
' Log on...
CQAdminSession.Logon CQADMINUSER, CQADMINPASSWORD, DBSET
' Test adminSession.GetCQLDAPMap
map = CQAdminSession.GetCQLDAPMap
if map = 0 then
	msgbox "CQ to LDAP mapping not configured. 
Run installutil setcqldapmap command" & vbcrlf
elseif map = AD_CQ_LOGIN_NAME then
	msgbox "Map to CQ_LOGIN_NAME" & vbcrlf
elseif map = AD_CQ_FULLNAME then
	msgbox "Map to CQ_FULLNAME" & vbcrlf
elseif map = AD_CQ_EMAIL then
	msgbox "Map to CQ_EMAIL" & vbcrlf
elseif map = AD_CQ_PHONE then
	msgbox "Map to CQ_PHONE" & vbcrlf
elseif map = AD_CQ_MISC_INFO then
	msgbox "Map to CQ_MISC_INFO" & vbcrlf
else
	msgbox "Undefined map value" & vbcrlf
end if

' Destroy the AdminSession (to log out of the database)
Set CQAdminSession = Nothing

Perl

use CQPerlExt;
	my $admin_user = shift;
	my $admin_pwd = shift;
	my $dbset = shift;
	my $AdminSession = CQAdminSession::Build();

	eval{$AdminSession->Logon($admin_user, $admin_pwd, $dbset);}; 
	if ($@){print "Error: $@\n";}

	my $map;
	eval{$map = $AdminSession->GetCQLDAPMap();};
	if ($@){print "Error: $@\n";}

	if ($map == 0){ print "CQ to LDAP mapping not configured. 
  Run installutil setcqldapmap command\nn"; 
  }
  elseif ($map == $CQPerlExt::CQ_CQ_LOGIN_NAME){
		print "Map to CQ_LOGIN_NAME\nn";
	}
	elsif ($map == $CQPerlExt::CQ_CQ_FULLNAME){
		print "CQ Authmode for CQ_CQ_FULLNAME\n";
	}
	elsif ($map == $CQPerlExt::CQ_CQ_EMAIL){
		print "CQ Authmode for CQ_CQ_EMAIL\n";
	}
	elsif ($map == $CQPerlExt::CQ_CQ_PHONE){
		print "CQ Authmode for CQ_CQ_PHONE\n";
	}
	elsif ($map == $CQPerlExt::CQ_CQ_MISC_INFO){
		print "CQ Authmode for CQ_CQ_MISC_INFO\n";
	}
	else{
		print "Undefined map value - val was $map\n";
	}
	CQPerlExt::CQAdminSession_Unbuild($AdminSession);