# Import system modules import sys, string, os, arcgisscripting  # Create the Geoprocessor object gp = arcgisscripting.create(9.3)   # Load required toolboxes... gp.AddToolbox("C:/Program Files/ArcGIS/ArcToolbox/Toolboxes/Data Management Tools.tbx")  # Allows geoprocessing tools to overwrite the output if it already exists. gp.OverWriteOutput = True  # Set the Environment Variables gp.Workspace = r"C:\TST_Folder"  # List the .txt file input tables table = gp.ListTables("*txt")  try:     # For each .txt table found in the Workspace, perform the following series of tasks for each .txt file      for table in Workspace:           # Removes the file extension         tableName = table[:-4]          # Reports which table is being processed         gp.addmessage("Processing table" + str(tableName))                   # Process: Make XY Event Layer (E_LATLON)...Save file as the tableName with tmp1 as the suffix         gp.MakeXYEventLayer_management(tableName, "LON", "LAT", tableName + (str(tmp1)), "GEOGCS['GCS_WGS_1984',DATUM")          # Process: Copy Features (E_LATLON)...Save file as the tableName with tmp1 as the suffix         gp.CopyFeatures_management(tableName + (str(tmp1)), tableName + (str(tmp1.shp)), "", "0", "0", "0")          # Process: Project (E_LATLON)...Save file as the tableName with _e as the suffix         gp.Project_management(tableName + (str(tmp1.shp)), tableName + (str(_e.shp)), "PROJCS['LCC'])          # Process: Add Field onto(E_LATLON)...          gp.AddField_management(tableName + (str(_e.shp)), "Title", "FLOAT", "6", "4", "", "", "NON_NULLABLE", "NON_REQUIRED", "")          # Process: Calculate Field onto (E_LATLON)...          gp.CalculateField_management(tableName_e.shp, "Title", "Sqr ( X^2 )", "VB", "")          # Process: Make XY Event Layer (S_LATLON)... Save file as the tableName with tmp as the suffix         gp.MakeXYEventLayer_management(tableName, "sLon", "sLat", tableName_tmp, "GEOGCS['GCS_WGS_1984',DATUM")          # Process: Copy Features (S_LATLON)... Save file as the tableName with tmp as the suffix          gp.CopyFeatures_management(tableName + (str(tmp)), tableName + (str(tmp.shp)), "", "0", "0", "0")          # Process: Project (S_LATLON)... Save file as the tableName with _s as the suffix         gp.Project_management(tableName_tmp.shp, tableName + (str(_s.shp)), "PROJCS['LCC'])  except:     #If an error occurred while running the script, then print the messages     print gp.GetMessages()
					
				
			
			
				
			
			
				Solved! Go to Solution.
# Set the Environment Variables
gp.Workspace = r"C:\TST_Folder"        #### < THIS IS A GP VARIABLE
# List the .txt file input tables
table = gp.ListTables("*txt")               #### < THIS IS THE LIST YOU SHOULD ITTERATE
try:
    # For each .txt table found in the Workspace, perform the following series of tasks for each .txt file 
    for table in Workspace:          #### Workspace CANNOT BE ITTERATED, and YOU ARE REASSIGNING table
        # Removes the file extension
        tableName = table[:-4]       #### IN VIEW OF THE LINE ABOVE, THIS MAKES NO SENSE
                                #### IF table WAS STILL A LIST, YOU WOULD BE CHOPPING OFF THE LAST FOUR ITEMS
# Set the Environment Variables
gp.Workspace = r"C:\TST_Folder"
# List the .txt file input tables
table = gp.ListTables("*txt")
try:
    for t in table: 
        # Removes the file extension
        tableName = t[:-4]
        # Reports which table is being processed
        gp.addmessage("Processing table" + str(tableName))
					
				
			
			
				
			
			
				
			
			
			
			
			
			
		import os tableName = os.path.splitext(table)[0]
# List the .txt file input tables
table = gp.ListTables("*txt")
print table
try:
 for t in list(table):
  # Removes the file extension
  tableName = os.path.splitext(t)[0]
  # Reports which table is being processed
  gp.addmessage("Processing table" + str(tableName))
  # Process: Make XY Event Layer (endLatLon)...
  gp.MakeXYEventLayer_management(tableName, "eLon", "eLat", tableName + (str(_tmp1)), "Coordinate System")
  # Process: Copy Features (endLatLon)...
  gp.CopyFeatures_management(tableName_tmp1), tableName + (str(_tmp1a)), "", "0", "0", "0")
  # Process: Project (endLatLon)...
  gp.Project_management(tableName_tmp1a, tableName + (str(_e.shp)), "PROJCS['LCC')]")
  # Process: Add Field onto(endLatLon)...
  gp.AddField_management(tableName_e.shp), "Vari", "FLOAT", "3", "2", "", "", "NON_NULLABLE", "NON_REQUIRED", "")
  # Process: Calculate Field onto (endLatLon)...
  gp.CalculateField_management(tableName_e.shp, "Vari", "Sqr ( x^2 )", "VB", "")
  # Process: Make XY Event Layer (startLatLon)...
  gp.MakeXYEventLayer_management(tableName, "sLon", "sLat", tableName + (str(_tmp)), "Coordinate System")
  # Process: Copy Features (startLatLon)...
  gp.CopyFeatures_management(tableName_tmp), tableName + (str(_tmpa)), "", "0", "0", "0")
  # Process: Project (startLatLon)...
  gp.Project_management(tableName_tmpa.shp, tableName + (str(_s.shp)), "PROJCS['LCC')]")
except:
 #If an error occurred while running the script, then print the messages
 print gp.GetMessages()
					
				
			
			
				
			
			
				
			
			
			
			
			
			
		# List the .txt file input tables
table = gp.ListTables("*txt")
print table
try:
    for t in list(table):
        # Removes the file extension
        tableName = os.path.splitext(t)[0]
        # Reports which table is being processed
        gp.addmessage("Processing table" + str(tableName))
        # Local variables...
        tableName_tmp = tableName + str("_tmp")
        tableName_tmp1 = tableName + str("_tmp1")
        tableName_e = tableName + str("_e.shp")
        tableName_tmp1A = tableName + str("_tmp1A.shp")
        tableName_s = tableName + str("_s.shp")
        tableName_tmpA = tableName + str("_tmpA.shp")
        
        # Process: Make XY Event Layer (endLatLon)...
        gp.MakeXYEventLayer_management(t, "eLon", "eLat", tableName_tmp1, "GeographicCoordinates")
        # Process: Copy Features (endLatLon)...
        gp.CopyFeatures_management("tableName_tmp1.shp", tableName_tmp1A, "", "0", "0", "0")
        # Process: Project (endLatLon)...
        gp.Project_management("tableName_tmp1A.shp", tableName_e, "ProjectedCoordinates")
        # Process: Add Field onto(endLatLon)...
        gp.AddField_management("tableName_e.shp", "Vel_Value", "FLOAT", "6", "4", "", "", "NON_NULLABLE", "NON_REQUIRED", "")
        # Process: Calculate Field onto (endLatLon)...
        gp.CalculateField_management("tableName_e.shp", "Vel_Value", "x^2 ", "VB", "")
        # Process: Make XY Event Layer (startLatLon)...
        gp.MakeXYEventLayer_management(tableName, "sLon", "sLat", tableName_tmp, "GeographicCoordinates")
        # Process: Copy Features (startLatLon)...
        gp.CopyFeatures_management("tableName_tmp.shp", tableName_tmpA, "", "0", "0", "0")
        # Process: Project (startLatLon)...
        gp.Project_management("tableName_tmpA.shp", tableName_s, "ProjectedCoordinates")
except:
    #If an error occurred while running the script, then print the messages
    print gp.GetMessages()
					
				
			
			
				
			
			
				
			
			
			
			
			
			
		"tableName_tmp1.shp"
tableName_tmp1
