4

I am doing some arcpy -functions and afterwards I'm trying to add the calculated results from one table to another table. I'm using the arcpy.AddJoin_management() function.

As input table I'm using a table which is stored in a personal geodatabase. The personal geodatabase is not the workspace environment! As "JoinTable" a Table of a file geodatabase is used. This file geodatabase is the workspace geodatabase environment.

The initialized function looks like this:

(%self.getWorkspaceEnvironment => "W:/a18fb/data/mypersonalgeodatabase.mdb" and tFactsheetHochwasser => table in the personal geodatabase)

arcpy.AddJoin_management("%s/tFactsheetHochwasser"%self.getWorkspaceEnvironment(),"KPG", "GebaeudeKtn_BWVred1Stat","KPG","KEEP_ALL")

If the code is executed the following error-message appears:

Failed to execute.Parameters are not valid. The value cannot be a table

ERROR 000840: The value is not a Raster Layer.

ERROR 000840: The value is not a Raster Catalog Layer.

ERROR 000840: The value is not a Mosaic Layer.

Failed to execute (AddJoin)`.

2 Answers 2

6

The solution to my issue was to create a tableView using arcpy.MakeTableView_management() The temporary existing View allows joining the tables each other.

4

I was getting the same errors when trying to execute joins using model builder. The solution was to convert them to Feature Layers first and then join from there. I can imagine that the logic is the same using python.

Here is a link to the question and answer that solved my problem.

1
  • Hi, Craig, thanks for your answer, I also have a Model doing the same spatial analysis as the script does and in the Model all works fine, but I'll try your propsed solution!
    – freeski_52
    Commented Apr 15, 2013 at 8:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.