#Import standard library modules import arcgisscripting import os  #Create the Geoprocessor object gp = arcgisscripting.create(9.3)  #Get a list of the featureclasses in the input folder source_fc = "H:/temp_D/testt" Entity = "H:/temp_D/test" outputfolder = "H:/temp_D"  gp.Toolbox = "Data Management"      # convert a featureclass to a layer  gp.MakeFeatureLayer_management (source_fc, "source_lyr")  # have Layers for AddJoin gp.AddJoin_management("source_lyr", "GID", Entity, "GID", "KEEP_ALL")  # convert a layer to a featureclass  gp.CopyFeatures_management ("source_lyr", source_fc) gp.FeatureClassToShapefile_conversion(source_fc, outputfolder)  # clear memory of layers gp.Delete("source_lyr")      gp.AddMessage(gp.GetMessages()) print gp.GetMessages()
					
				
			
			
				
			
			
				Solved! Go to Solution.
################################################## ########################
##AddJoin feature layers to a feature layer
##Elaine Kuo
##01 July 2013
################################################## #######################
#Import standard library modules
import arcgisscripting
import os
#Create the Geoprocessor object
gp = arcgisscripting.create(9.3)
gp.QualifiedFieldNames = "UNQUALIFIED"
#Set the input workspace
workingfolder= "H:/temp_D/test"
gp.Workspace = workingfolder
#Set the output workspace
outputfolder= "H:/temp_D"
outWorkspace= outputfolder
source_fc = "H:/temp_D/testt/A_grid.shp"
#Get a list of the featureclasses in the input folder
fcs = gp.ListFeatureClasses()
gp.Toolbox = "Data Management"
# Make a FeatureClass layer    
gp.MakeFeatureLayer_management (source_fc, "source_lyr")
# A counter to separate the first time through the loop from all other times
counter = 0
# Loop through every item in the list that was just generated
for fc in fcs:
    if counter == 0:
        # set up first Layer for AddJoin
        gp.AddJoin_management("source_lyr", "GID", fc, "GID", "KEEP_ALL")
    else:
        # set up second and following Layers for AddJoin
        gp.AddJoin_management("source_lyr", "A_grid.GID", fc, "GID", "KEEP_ALL")
    counter += 1
# convert a layer to a featureclass 
out_name = gp.Describe("source_lyr").name
out_name = gp.ValidateTableName(out_name, outputfolder)
out_shape = outputfolder + "/" + out_name + ".shp"
gp.CopyFeatures_management ("source_lyr", out_shape)
    
# delete Field  (need to clean up with a lot more ID fields that the code you have below since now there are 50 GID values.)
fieldList = gp.ListFields(out_shape)
for field in fieldList:
    if field.name[1:3] == "ID_":
        gp.deletefield (out_shape, field.name)
# Don't bother removing 50 joins, just kill the layer
# clear memory of layers
gp.Delete("source_lyr")
    
gp.AddMessage(gp.GetMessages())
print gp.GetMessages()
					
				
			
			
				
			
			
				
			
			
			
			
			
			
		################################################## ######################## ##AddJoin feature layers to a feature layer ##Elaine Kuo ##01 July 2013 ################################################## #######################  #Import standard library modules import arcgisscripting import os  #Create the Geoprocessor object gp = arcgisscripting.create(9.3) gp.QualifiedFieldNames = "UNQUALIFIED"  #Set the input workspace workingfolder= "H:/temp_D/test" gp.Workspace = workingfolder  #Set the output workspace outputfolder= "H:/temp_D" outWorkspace= outputfolder  source_fc = "H:/temp_D/testt/A_grid.shp"  #Get a list of the featureclasses in the input folder fcs = gp.ListFeatureClasses()  gp.Toolbox = "Data Management"  # Make a FeatureClass layer     gp.MakeFeatureLayer_management (source_fc, "source_lyr")  # A counter to separate the first time through the loop from all other times counter = 0 # Loop through every item in the list that was just generated for fc in fcs:     if counter == 0:         # set up first Layer for AddJoin         gp.AddJoin_management("source_lyr", "GID", fc, "GID", "KEEP_ALL")     else:         # set up second and following Layers for AddJoin         gp.AddJoin_management("source_lyr", "A_grid.GID", fc, "GID", "KEEP_ALL")     counter += 1  # convert a layer to a featureclass  out_name = gp.Describe("source_lyr").name out_name = gp.ValidateTableName(out_name, outputfolder) out_shape = outputfolder + "/" + out_name + ".shp"  gp.CopyFeatures_management ("source_lyr", out_shape)      # delete Field  (need to clean up with a lot more ID fields that the code you have below since now there are 50 GID values.) fieldList = gp.ListFields(out_shape) for field in fieldList:     if field.name[1:4] == "ID_":         gp.deletefield (out_shape, field.name)  # Don't bother removing 50 joins, just kill the layer # clear memory of layers gp.Delete("source_lyr")      gp.AddMessage(gp.GetMessages()) print gp.GetMessages()