Expression Error from indirect database null before screen closes

I am trying to use indirection to grab a value from a dataset.

The binding works great when the screen is open, but throws an error when the screen closes for array out of bounds.
I tried this same binding to an identical static dataset with the same data in it and it does not error. Therefore, I think this is happening due to the dataset clearing before the screen closes but the expression is trying to evaluate again. How do I prevent that from occurring?

If it’s just happening when you close the screen, just wrap the whole thing in the try() function:
try(toDataSet(tag)), null)