Hi,
In your 2nd screenshot, the Make Struct Inventory Entry has no Item ID (None). So if the item you are adding already exists in the inventory, the Get Data Table Row won’t find it (3rd screenshot) because its ID is set to None. Not sure if this is the issue in your case, but you should probably fix this anyway.
The Set Array Element node expects you to provide a full struct. It doesn’t modify the existing one, it overrides it completely. In your 2nd screenshot, you are basically replacing the existing item by a new one with no ID and a Max Stack of 0.
If the only thing you want to edit is the Quantity, I suggest you use an array Get (by ref) and then a Set Members in Struct node. The Set Member in Struct will only edit the variables you enable. This will only work if you use the Get (a ref) for the source array, and not the Get (a copy).
Alternatively, you can still use you current setup but you will have to provide values for all variables of your struct.
As a side note, if you don’t want any duplicate item in your inventory, you can also take a look at using maps instead of arrays. This will avoid you having to loop through the whole array to know if the item exists already.