I’m laying my hands on UE4’s data tables for the first time. I wrote a ustruct in C++, created the table, added data and read a data row from code and it all worked out as expected.
Suddenly though my Data Table Blueprint somehow got corrupted and I don’t really get why. I couldn’t open it anymore and therefore couldn’t access the data either. It’s not a big problem right now, since I was using placeholder data to test my implementation. In the future I will have quite an amount of data in my table, so I would like to know what I did wrong so I can avoid the issue from now on.
As far as I understand the error message, I must have messed up something during saving/compiling? Here’s the log:
[2018.01.16-13.18.51:778][892]LogLinker: Error: HOTRELOADED_FloorModel_0 has an inappropriate outermost, it was probably saved with a deprecated outer (file: D:/P4Workspace/Roomz/Content/Data/DT_Floors.uasset)
[2018.01.16-13.18.51:780][892]LogLinker: Error: HOTRELOADED_FloorModel_0 has an inappropriate outermost, it was probably saved with a deprecated outer (file: D:/P4Workspace/Roomz/Content/Data/DT_Floors.uasset)
[2018.01.16-13.18.51:780][892]LogDataTable: Error: Missing RowStruct while emptying DataTable ‘/Game/Data/DT_Floors.DT_Floors’!
[2018.01.16-13.18.51:780][892]LogDataTable: Error: Missing RowStruct while loading DataTable ‘/Game/Data/DT_Floors.DT_Floors’!
Make a new data table and export it as json file, then re-import that same json file for that datatable and it should link correctly. Then use your template to load the data in, my template is probably laid out differently then yours but it works the same way.
The missing row struct error might point to you renaming or moving your struct in c++ - if you do this you must make a redirect in the DefaultEngine.ini file for your data table to still work
Hey, thanks for your help, I also thought about linking some external file to the table so I wouldn’t be dependant on my blueprint, I didn’t know about the possibility of exporting a json file, I’ll give it a try asap!
Hey, yeah I also thought it must be something like that. It’s just weird because I didn’t move the struct, I just added a uproperty to it, compiled and after an engine restart it was visible in the datatable, so it seemed to work… as far as I remember, later I edited some other stuff in my code that didn’t affect the struct and then the table broke somehow.
But anyways, this sounds reasonable. Could you maybe explain how to redirect in the ini file? I’m not too familiar with the ini files. Unfortunately I already deleted the table, but I think I should be able to recover it and see if this could fix the issue.