laptop and a wrench

Bug

Unable to set the ObjectID field as invisible and change the alias name of a field in the attribute table of a feature class using the Python Cartographic Information Model (CIM) code with an SQL Server database from ArcGIS Pro.

ArcGIS Pro
Bug-ID-Nummer BUG-000155637
EingereichtFebruary 6, 2023
Zuletzt geändertJune 5, 2024
Gilt fürArcGIS Pro
Gefunden in Version2.9
BetriebssystemWindows OS
BetriebssystemversionN/A
StatusAs Designed

Zusätzliche Informationen

The CIM often only persist changes made to an element in a project (to reduce the amount of bloat that would otherwise need to be persisted). In the case with field descriptions, the newly added data does not have any changes, therefore, nothing is persisted in the CIM. As a workaround, faking an alteration of a field in a feature or table can result in the information being persisted in the CIM. The following code uses arcpy.AlterField (but simply keeps the field info the same). First, it reports zero field descriptions for a feature class and a table, makes the modifications, then reports the field description counts. p = arcpy.mp.ArcGISProject('current') m = p.listMaps()[0] lyr = m.listLayers('NE_State_Boundaries')[0] tab = m.listTables('CensusData')[0] #Try returning cim field defs - NOPE lyr_cim = lyr.getDefinition('V3') print(f'LYR desc count PRE mod: {len(lyr_cim.featureTable.fieldDescriptions)}') tab_cim = tab.getDefinition('V3') print(f'TAB desc count PRE mod: {len(tab_cim.fieldDescriptions)}') #Modify fields lyrFld = arcpy.ListFields(lyr)[0] arcpy.management.AlterField(lyr, lyrFld.name, lyrFld.name, lyrFld.name) tabFld = arcpy.ListFields(tab)[0] arcpy.management.AlterField(tab, tabFld.name, tabFld.name, tabFld.name) #Try again lyr_cim = lyr.getDefinition('V3') print(f'LYR desc count POST mod: {len(lyr_cim.featureTable.fieldDescriptions)}') tab_cim = tab.getDefinition('V3') print(f'TAB desc count POST mod: {len(tab_cim.fieldDescriptions)}')

Workaround

In ArcGIS Pro, manually change the alias name of the field and run the code.

Schritte zur Reproduzierung

Bug-ID: BUG-000155637

Software:

  • ArcGIS Pro

Benachrichtigung erhalten, wenn sich der Status eines Bugs ändert

Esri Support App herunterladen

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Esri Support App herunterladen

Zu Download-Optionen wechseln