Catalog Item Properties — Use table name when table alias is deleted

370
5
01-30-2024 02:46 PM
Status: Closed
Labels (1)
Bud
by
Notable Contributor

ArcGIS Pro 3.2.1; File Geodatabase

In the Catalog item properties:

I've deleted the table alias and hit OK. But deleting the table alias has had no effect.

I would have expected the table name to be used since the alias has been deleted. But instead, the original table alias has been used. That's not expected.

Video:

Could that behaviour be changed so that the table name gets used when the table alias is deleted?

5 Comments
ChrisUnderwood

Hello @Bud , I would interpret this behaviour as 'the Alias cannot be empty'. So when you try to 'Delete' the Alias, you are not allowed to, so it just stays as it was. Also when you make a New Feature Class/Table, if you leave the Alias empty, it defaults to the table name.

Bud
by

@ChrisUnderwood 

True, although this seems inconsistent with field aliases. If I delete a field alias in the Fields View and save, then ArcGIS Pro allows the field alias to be empty and uses the field name instead (in the attribute table, etc.).

I think it would be more intuitive if table aliases and field aliases behaved similarly. And I find it unintuitive that deleting a table alias has no effect.

MErikReedAugusta

@ChrisUnderwood While I recognize that a table can't have a <Null> Alias, you yourself pointed out that when you make a new FC/Table, it will technically allow you to not specify an Alias.  Then, it helpfully fills that Alias with the Name.

Why not allow the same behavior if you "delete" the Alias?  You're not actually setting a <Null> Alias; you're asking ArcGIS to revert the Alias back to the raw Name.

I'm with @Bud that this feels pretty inconsistent with Aliases elsewhere throughout the architecture.  I have a hunch this is also how one of my Feature Classes ended up deployed in our Enterprise with the wrong Alias recently, because little inconsistencies like this are prone to blind-siding people.

SSWoodward

Thanks for the Idea @Bud ,

This looks like a bug to me. I'll open a bug on our side and post the bug number here when its opened. 

Alias are actually fairly interesting.  A class that has no *user defined* alias truly does not have an alias.  The class will simply return the table name instead when asked for it, but if you examine the item at a lower level ( in an RDBMS for instance ) the alias value will be truly blank. You'll see.

<AliasName></AliasName>

It's only after a user manually defines an alias that AliasName is given a value. This is true even if you remove, and then retype the exact table name in the alias. The user has told us that they want the alias to be the value that they typed. At that point a user defined alias is created and added to the classes definition. 

What is happening in your case is that the when deleting the alias value in the properties pane,  the alias isn't being removed from the class definition.  This is a bug. The alias name should be removed from the class definition and the table name should then return in its place when asked for. 

SSWoodward
Status changed to: Closed