Members Missing from Metaverse Lists Created by the Lotus Notes Management Agent (281187)



The information in this article applies to:

  • Microsoft Metadirectory Services 2.1
  • Microsoft Metadirectory Services 2.2

This article was previously published under Q281187

SYMPTOMS

In the metaverse representation of a Lotus Notes list, some members are missing. In the connector space, these list members have been renamed from "CN=xxx" to "PC=xxx" and have been assigned the following object class: zcExcludedListMember.

CAUSE

When Lotus Notes processes the list members in a connector space list, the Notes list construction template may use a fixed-value variable $s_domain as the top-level domain name component. (The $s_domain variable is assigned in the header parsing template.) In some cases, this value may be incorrect because the connected directory object has originated in a secondary Notes address book. Because of this difference, the object may have been placed in a different part of the connector space structure (as specified in the connector space construction template). When Microsoft Metadirectory Services (MMS) attempts to reconcile all the connector space list members, the program searches for each member in the connector space. The distinguished name which is used as the search value does not account for the fact that the connector space construction template has modified the object's name. When the distinguished name is incorrectly constructed, the lookup process of this object is not completed. When this behavior occurs, the particular list member is dropped from the list when it moves into the metaverse.

RESOLUTION

To resolve this issue, correct the list member's connector space distinguished name. In most cases, the problematic list members can be identified because their distinguished names contain a unique component. The following example demonstrates this behavior. It is essential that you are able to identify the problematic distinguished name component. To test for this component, use the $EMBEDDED() function. When the list member has been positively identified, edit the distinguished name which is assigned to the variable $v_dndom so that it includes the proper relative distinguished name component. In general, the $s_domain value must not be blindly applied to the $v_dndom variable.

The following code shows one set of possible changes to the list construction template:
$v_dn_without_country = $get_substring("$v_zlocalname","",",C=")

if $s_domain = any
then
    $v_dndom = $v_dn_without_country
else
###############################################################
# START: changes made
###############################################################
    if $EMBEDDED("O=Microsoft", $v_dn_without_country) = T
	then
	############################################################
	# assume that this entry originates from within the main Notes Address Book.
	# It is therefore OK to use the value os s_domain as it 
	# currently exists
	############################################################
	  $v_dndom = $v_dn_without_country,O=$s_domain
	else
	############################################################
	# assume that this entry originates from within the 
	# secondary address book. The current value os s_domain is 
	# therefore incorrect in  this situation. We will hard-code 
	# the replacement value as "externalnames"
	############################################################
          $v_dndom = $v_dn_without_country,O=externalnames
    endif
endif
###############################################################
# END: changes made
###############################################################

$v_atdn = $v_dndom(,$MA())

if $instance("$v_atdn")=F
then
    $v_zlocalname=$replace("$v_zlocalname","CN=","PC=")
endif
				

Modification Type:MinorLast Reviewed:1/25/2006
Keywords:kbnetwork kbprb KB281187