ArcGIS should allow the ability to permanently reorder fields in a table

04-20-2010 01:33 PM
New Contributor II

After creating a feature class, it would be convenient to go back after data input, and make changes to the field ordering (position).



As Melissa said, this is a bug with Portal 10.3  and 10.4 and probably AGOL. After talking with our agency specialist and Esri support, I found that the best workaround is to use ArcGIS Pro for publishing.  Of course, Pro won't work with ArcGIS Server (hopefully that's coming.)


As a practical option that just works now, use ArcGIS Pro 1.3.1 to reorder and rename fields in a File Geodatabase as you see fit to get the columns tidy.  Maybe even define a suitable index then run Sort tool to get the rows sequenced nicely.  Copy that File GDB to server or export the fixed up Feature Class to SDE as appropriate, and fire up ArcCatalog to define the service and publish it on ArcGIS for Server.  It's not too loopy of a workflow if your data is fairly static.


-=Brian Q


This may have been mentioned already in the many, many comments on this item, but one solution is to Export your Geodatabase to an XMLWorkspace Document (Schema-Only). You can then open the document in an XML Editor and rearrange the fields as you desire. Personally, I favor XML Notepad since it makes working with specific sections of the XML easier since you can drag and drop entire fields to order them.

Once you have your fields rearranged in your XML Workspace document, you can then import the XMLWorkspace Document to create a new Geodatabase. This will create an empty Geodatabase containing all of the domains, subtypes, feature datasets, etc. that you've defined in your Geodatabase as well as empty shells of the feature classes within it. The new field order you specified in the XMLWorkspace Document for a given feature class will now be in place in this empty feature class shell

From there, you just use the Simple Data Loader to load each feature class in your new Geodatabase back up with data in the corresponding feature class in your legacy database. Provided you haven't made any radical schema changes and just reordered fields, everything should line up 1:1 since the field names and datatypes would all be the same. If you do make changes beyond reordering the fields, you'll likely need to match the source field from the legacy feature class to the target field in your new feature class

I know this works for File Geodatabases and personal Geodatabases. I've never tested it on an SDE Database so I'd recommend some extensive testing before doing it there. Realistically, this is only practical for small changes that you need to make because if your Geodatabase contains hundreds of feature classes, then using the Simple Data Loader to go through each and load it up will become pretty tedious. It is one possible workaround though.

Unfortunately, with over 28,000 points on an idea that is 6 years old, I wouldn't count on this capability ever being delivered. I would try to give Esri the benefit of the doubt on this. Reordering fields at a Database level is not a capability that most databases offer (that I am aware of), so their options of implementing this might be a bit restricted.

Update: I created an idea which I feel is a nice compromise if Esri is actually limited in their ability to allow reordering fields permanently. It involves updating the layerfile specification to capture the field order to that the displayed order of fields can be persisted between ArcMap sessions. Allow the field order of a Feature Class and Table to be specified within a Layerfile. 


Well at least designing tables can be done in Pro with a new niftier table view more like Access.


Wow - its the end of 2016 and still this hasnt been implemented...


ESRI should allow the change where it is possible - come on! it is the end of 2016 and a solution is still not here!


All I want to do is be able to create a new field, and then arrange that column where I please, not be forced to have it lag in the back of the table (far right). Yes I can re-arrange it but this is only temporary, after I close the application the fields go back to their initial arrangement. 


I do it all the time in MS Access.  However, it only works with personal geodatabases. 


Re-ordering fields was available years ago in Arc/INFO workstation and was very useful. Years later the reasons for needing to reorder fields have not changed. So why remove the functionality or force users to use 3rd party software to do the task. Stop the prevarication and put back the function of reordering fields.


There are some workarounds documented at the GIS Stack Exchange in the Q&A entitled

Reordering fields (permanently) in file geodatabase using ArcGIS Desktop?

but implementing an equivalent to ArcInfo Workstation's PULLITEMS would be far preferred.