Add Data Table Row failing with error

I have a function that I can call in editor to save data from my Editor only builder actor into a data table so it can be used in another class at runtime.
However, when trying to save the struct into the data table, I’m getting a message saying that the struct is incompatible with the data table.



However when I double check, they are indeed the same struct
image
image

Wondering if anyone has encountered this issue before or if it’s an Engine Bug.

Hey @cory55!

Try making a Name variable and passing that into the Row Name.
If I remember correctly, the Row Name is often a number- and in the .CSV it is the blank top left corner, an unlabeled column.

Can you show the data table exported into docs/excel and a pic of the struct’s variables list?

I tried creating a Name variable but the same error appeared:

Here is the struct that I’m trying to save:


A Name variable, and an array of another struct

For additional reference, here is the DynShapeData struct:

Here is the exported data table: SampleProceduralMeshes - Google Sheets

Okay, so I am definitely not parsing and comparing that secondary struct within the rowdata! That’s quite a few variables there with varying types and enough to spin a head when read in a line!

So my best guess is that if you did not change the struct at any point (Or the SUB struct or any other variables within either) there might be a null value somewhere that it can’t accept. Try making absolutely sure the incoming struct has every variable filled!

So as a test, I made a new Struct, new DT, and test actor to call the function.


image
image

Even with this new setup, I get the same error message when trying to use AddDataTableRow:

Looks like it’s an Engine bug.

Are you using an additional Library or Plugin that adds this functionality? Because That may be somewhere to check. I can’t seem to find an “Add Data Table Row” node, and it is not in the documentation- I thought it was weird that I’d never seen it, but now that I think about it, it is strange that it isn’t a node. It may not be native and you may need to update some additional plugin somewhere! :slight_smile:

Here is the link to the documentation:

I noticed that it isn’t available when I create a direct child of Actor, but when I use GeneratedDynamicMeshActor (From Geometry Script) it shows up.

AHHHHH It’s in EDITOR SCRIPTING how did I miss that detail!?

You even stated that this is an editor utility. Terribly sorry.

I admit that is a hole in my knowledge as far as bugfixing/workarounds go. It seems likely that this COULD be an issue with the Editor but my experiences with Editor Scripting has always gone without a hitch. Maybe try deleting and recoding the function? I know sometimes the editor behaves better if you build the function over when there’s an issue. If that doesn’t work, I think this is worth a bug report- use the in-editor reporting system under “Help” and try to be as detailed and nitpicky as possible! Any pertinent detail will be helpful. :slight_smile:

Alternatively, you can use this:
https://epicsupport.force.com/unrealengine/s/

I have tried recreating the function as well, I’m going to try creating a C++ function to do the same thing and see if that also has the same issue.
Afterwards I will report my findings in a bug report.

Thanks for your help.

1 Like

Hi ! I’m facing the same problem right now. Have you found any fix or turn around ?

I did several tests and I think the problem is that the Row Data entry in the Add Data Table Row node does not accept structs created in assets. If you try to use a struct created in c++ it seems to work normally for me

1 Like

This is also the solution that I came with !