Abrufen von Layer-IDs mit ArcPy?

8

Ich arbeite in einer ArcMap-Sitzung. Ich habe die Option aktiviert, eine ID für jede der Ebenen in meinem Dokument abzurufen, damit jeder sie hat.

Geben Sie hier die Bildbeschreibung ein

Was ich jetzt brauche, ist eine Möglichkeit, diese Werte in einem Python-Skript abzurufen (um sie automatisch in eine Tabelle zu kopieren): Es gibt keine solchen Informationen in den Eigenschaften des Layers, die durch eine Beschreibung erreicht werden, noch aus dem .mapping-Modul.

Davide Pavia
quelle
4
Die Eigenschaft DSIDin arcpy.describegibt die ID des Datensatzes zurück. hast du das versucht Ein Beispiel wäre desc = arcpy.Describe("some layer")danndesc.DSID
Risail
Welche Version von ArcGIS verwenden Sie?
Crmackey
Hy Dan, das Problem ist, dass ich die ID einer Ebene benötige, auf die die Eigenschaft "ID" mit der Beschreibungsfunktion nicht zugänglich zu sein scheint.
Davide Pavia
Ich arbeite mit einer erweiterten Version 10.3.1.
Davide Pavia
2
Es geht nicht um eine bestimmte Ebene oder Feature-Class, sondern um etwas Allgemeines. Um die IDs einzuschalten, aktivieren Sie die Option ("Zuweisung zulassen [...]") auf der Registerkarte "Allgemein" des Datenrahmens.
Davide Pavia

Antworten:

1

Nach dem Testen in ArcGIS 10.3 und gemäß der für Layer and Describe in arcpy verfügbaren Dokumentation sowie dem folgenden Thread: https://geonet.esri.com/thread/178341 ist diese Funktionalität noch nicht vorhanden. Sie können nicht über arcpy auf die Layer-ID zugreifen. Sie können möglicherweise über ArcObjects darauf zugreifen, wenn Sie über die erforderlichen Kenntnisse verfügen.

Können Sie als Problemumgehung die ID in die Felder Credits oder Description eingeben? Sie können über arcpy auf beide Felder zugreifen.

jbalk
quelle
Goodmorning Jbalk, wie Sie sagten, habe ich die ID-Ebene mit dem Feldrechner-Tool (manuelles Überprüfen des Werts der einzelnen Ebenen) in das Feld einer Tabelle geschrieben. Vielen Dank für den Rat, ArcObjects sind meine nächste Station.
Davide Pavia