The Connected Directory Flow Script Is Not Recorded to or Updated from the Working Folder (285694)



The information in this article applies to:

  • Microsoft Metadirectory Services 2.2
  • Microsoft Metadirectory Services 2.2 SP1

This article was previously published under Q285694

SYMPTOMS

When you record templates to the working folder for any Management Agent (MA), the connected directory flow script is not recorded to the working folder.

CAUSE

This problem can occur because the $To_File and $From_File functions which manage the connected directory flow script attribute, are missing from both the Record.exp and At.st files. These functions enable the templates to be written to and to be read from the MA's working folder.

Typically, this problem can occur if the connected directory flow script is blank. However, even if the connected directory flow script is not blank, the template contents are still not recorded to the working folder. Conversely, the same problem exists when you attempt to update the MA from the working folder: the connected directory flow script is not updated in the folder even if the corresponding file is present in the working folder.

RESOLUTION

To resolve this problem, use one of the following methods:

For an Existing MA

  1. In the MA, click the Properties button.
  2. Click the Recording Templates tab.
  3. Click the other Recording Templates tab.
  4. Locate the Template recorded: section.
  5. Locate the section that has lines beginning with "(Attribute Flow =".
  6. Add the following line to this section:
    (CD Flow Script = $TO_FILE("cdflow.st", $msMMS-DisconnectorFlowScript, 0))
    					

  7. Click OK to save these changes.
  8. In the MA, click the Properties button.
  9. Click the Recording Templates tab.
  10. Click the second Recording Templates tab.
  11. Click the Record this MA's templates to its working directory button. This writes out the attributes of the current MA according to the instructions found in the Record.exp file.
NOTE: Ensure that you have something in the connected directory flow script, otherwise the file cannot be recorded out.

For all New MAs

Make the preceding changes to the Record.exp file located in the C:\Zoomserv\Data\Dsgates\MA\Record.exp folder.

NOTE: The drive letter can vary and MA is the MA type, for example, Exchange.

For this functionality to work for all new MAs, you need to update every existing MA and all subfolders of the DSGates folder.

To resolve the problem of the connected directory flow script not being updated from the working folder:
  1. Open the At.st file that is located in the C:\Zoomserv\Bin\Init folder (the drive letter can vary).
  2. There are two sections of code that need to be modified. Find the following lines of code (in Microsoft Metadirectory Services [MMS] version 2.2, this code is near line 1478, however, the line numbers may vary):
    if $instance("$dn") = F
       then
         # Initialize settings for new MAs only
         # This implies that Attribute flow will not be updated on upgrade
           $zcDsUpdateMetaAttributes = Do not update
           $zcDsUpdateConnectorAttributes = Update all attributes
           $zcDsSimpleAttributeFlowScript = $from_file("$v_directory\simple.st") 
           $zcDsAttributeFlowScript = $from_file("$v_directory\advance.st") 
           $zcDsDisconnectionAttributeFlowScript = $from_file("$v_directory\discnct.st")
    					
  3. Add the following line of code immediately after the preceding code:
    $msMMS-DisconnectorFlowScript = $from_file("$v_directory\cdflow.st")
    						
  4. Locate the second section of code (in MMS version 2.2, this code is near line 1499, however, the line numbers may vary):
    if $instance("$dn") = T
        then
    	# Updating an MA 
    	$zcDsDirectory = $get_attr("$dn", $zcDsDirectory)
    	$zcMAUpdateFromWorkDir = $get_attr("$dn", $zcMAUpdateFromWorkDir)
    		if $zcMAUpdateFromWorkDir = TRUE
    		then
    			$v_directory = $zcDsDirectory
    			$zcDsSimpleAttributeFlowScript = $from_file("$v_directory\simple.st")
    			$zcDsAttributeFlowScript = $from_file("$v_directory\advance.st")
    			$zcDsDisconnectionAttributeFlowScript = $from_file("$v_directory\discnct.st")
    					
  5. Add the following line of code immediately after the preceding section of code:
    $msMMS-DisconnectorFlowScript = $from_file("$v_directory\cdflow.st")
    						
  6. Save these changes to the file. No further changes are required. These changes can correct all existing, as well as any future, instances of the MAs.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

Modification Type:MinorLast Reviewed:1/25/2006
Keywords:kbbug kbenv kbnofix KB285694