Thank you a lot! @Everynone
This explanation also show me that I have a complete other use case in my head.
And yes, I was wrong! Writing that … “more objects, make more sense of enums”… was incorrect. You got me, I was on a wrong track.
Of course, if it is too much, you will find nothing in “select boxes” with 5.000 entries, I agree now.
But, perhaps I can give a much better example which use case I have in my head, and why I (would) use Enums as row name for this (if I could).
- You have 12 weapons. And 15 pickups.
- The weapon in **one **Blueprint (WeaponBP). The Pickups are another **one **blueprint (PickupBP).
- Each Weapon/Pickup details (reference to mesh, attributes,. etc.) are stored in datatables consistent of struct (e.g. weapons-datatable consist of weapon-config-struct).
- All settings of each weapon/pickup in the world is set, by dropping the WeaponBP or the PickupBP from content browser to the world, and then under “details” of the BP a choice box is available. The choicebox has for WeaponBP all “WeaponID” (IDs which have readable names, which tells you the weapon) in it. The choicebox has for PickupBP all “PickupID” in it (also with understandable/readable names as IDs).
- If a Level-designer change or use the checkbox of one of the BP, the construction script is running an load all data of related Datatable (one for weapons, one for pickps) and load all data to the object of the chooses ID in the choicebox.
- The advantage is, you have one BP (or better saying one for weapons and one for pickup) and in the world/viewport you can simple change Weapons and pickups by simply change the Itemname/Weaponname in the Details of the object in the world. -> If somebody want to change the weapon in the level, just change the choicebox to another (readable) WeaponID/PickupID.
Now… all WeaponIDs and PickupIDs are Enums, to expose this variable as choicebox to the BP so in Viewport Details to make the WeaponID/PickupID selectable. Now of course, all of this Enums have for WeaponIDs/PickupIDs have to represent one (and only one) row in the related datatable. And now it would be very handy, to have the row name the same entries as the enums, so you can easily select the row without need of searching columns.
You have also advantages that row name must be unique. By putting the Enum of WeaponID/PickupID in a normal column, the enum could be doubled in the column without error/warning. Also a advantage, when the datatable row would be a enums.
Sorry, I hope this explanation is a bit better. For me, this was the main use case at the moment for using data tables.