Here is a video demonstration of the issue I am experiencing. Every time I reopen a saved project that uses the Get Data Table Row node the links to use the out row are are broken. In the video I demonstrate how I must first select the same Data Table that is already in the node to reconnect it.
I’ve made a bug report on this in the past, but I figured it might be worth revisiting this since I’m still having this issue in the 4.5 preview. At this point I don’t know if it’s a bug or if I simply don’t know how to use DataTables properly.
As a sanity check I’ve set up a brand new blank project(the one shown in the video) that uses the example from this blog post: https://www.unrealengine.com/blog/dr...ata-from-excel
To test the functionality of GetDataTableRow I created an actor blueprint that prints XPtoLvl of a given row to the screen.
To implement the structure I used a helpful Answer Hub post(Crash: Can't get Data Tables working - Programming & Scripting - Unreal Engine Forums) which explains in detail how it should be implemented. This is the exact code that I used to implement the structure.
Here is how the .h file is implemented:
#pragma once
#include "LevelUp.generated.h"
/** Structure that defines a level up table entry */
USTRUCT(BlueprintType)
struct FLevelUpData : public FTableRowBase
{
GENERATED_USTRUCT_BODY()
public:
FLevelUpData()
: XPtoLvl(0)
, XP(0)
{}
/** The 'Name' column is the same as the XP Level */
/** XP to get to the given level from the previous level */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = LevelUp)
int32 XPtoLvl;
/** This was the old property name (represented total XP) */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = LevelUp)
int32 XP;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = LevelUp)
TAssetPtr<UTexture> Asset;
};
UCLASS(Abstract, CustomConstructor)
class ULevelUp : public UObject
{
GENERATED_UCLASS_BODY()
ULevelUp(const class FPostConstructInitializeProperties& PCIP) : Super(PCIP) {}
};
And the .cpp(as recommended by the Answer Hub post I deleted all references to the automatically generated constructor and destructor):
// Fill out your copyright notice in the Description page of Project Settings.
#include "DataTableTest.h"
#include "LevelUp.h"
Again, not sure if this is a bug that just hasn’t been fixed yet, if it’s an issue with my setup, or if I just don’t know how to use DataTables. I’ve tried to make this as clean a project as possible and followed the example provided in the article as closely as possible.
With regards to my setup. I am using Unreal Engine 4.5 preview, a blank project with the alterations I’ve mentioned above, and Visual Studio 2013. I have reinstalled UE4 and Visual Studio recently trying to remedy this bug to no avail. Any help will be greatly appreciated!