Ich habe mehr als hundert FCs mit jeweils 10 oder 20 Attributen, um die Aliase zweimal oder mehrmals im Jahr hinzuzufügen oder zu ändern. Unnötig zu erwähnen, dass ich mich hier nicht durchgrunzen werde. Wie kann ich diesen Prozess automatisieren?
Python-Lösung bevorzugt, verwendet aber alles, was funktioniert.
Ich habe Zugriff auf Arcgis 9.3.1 und 10 (ArcInfo-Lizenzstufe).
arcpy
arcgis-10.0
alias
Matt Wilkie
quelle
quelle
Antworten:
Ab Version 10.1 kann AlterAliasName () verwendet werden, um Tabellen neu zu aliasen :
Ab Version 10.3 kann Alter Field verwendet werden, um Felder neu zu aliasen:
quelle
Mit Hilfe von Mark Cederholm habe ich eine funktionierende Lösung mit Python und ArcObjects . Es ist rau an den Rändern, aber es hat die Arbeit erledigt. Nachdem Sie das Rezept auf dieser Seite befolgt haben, erstellen Sie ein neues Skript, das die
GetLibPath, NewObj, CType, OpenFeatureClass
Funktionen von verwendetsnippets.py
. Erstellen Sie auch die Umbenennungssuchtabellen im CSV-Format:Feld-zu-Feld-Alias-Suche (att_code-name_lookup.csv):
Feature-Class zur FC-Alias-Suche (fc_code-name_lookup.csv):
und das Drehbuch:
quelle
Dieser Code funktioniert für mich in 9.3.1 ...
quelle
Eine andere Lösung freundlicher Genehmigung von Rob Clark :
In Python ist die Syntax für den
field_map
Part schwierig. Gehen Sie ihn also einmal interaktiv durch, um die Parameter richtig einzustellen, und lassen Sie ihn laufen. Gehen Sie dann zum Ergebnisfenster , klicken Sie erneut und kopieren Sie das Python-Snippet . Hier ist ein Snippet, das zu etwas zusammengefasst wurde, das sich leichter erweitern und wiederverwenden lässt.quelle
Diese Lösung ist für Benutzer gedacht, die SQL Server als Geodatabase verwenden. Sie können es manuell mit einem SQL-Aktualisierungsbefehl ändern. Der Name aller Features wird in der Tabelle [sde]. [GDB_OBJECTCLASSES] gespeichert. Der Aliasname wird einfach festgelegt, wenn Sie den Wert der Aliasspalte ändern.
BEARBEITEN: Diese Methode ist eine schnelle Methode zum Ändern des Aliasnamens. Die Verwendung von IClassSchemaEdit ist jedoch besser, da bei der SQL-Aktualisierungsmethode der Aliasname erst verwendet werden kann, wenn der Funktionsarbeitsbereich zurückgesetzt wurde.
quelle