Keep the data table reference in a variable (dt in your example) and always use dt:col (etc) to reference a column. Don't depend on the current data table; the current data table changes when the user clicks any table, and possibly when any new window opens.
The error "Send Expects Scriptable Object" could explain itself better. @Audrey_Shull . The << operator is the send operator. The left hand side should be an object and the right hand side a message for the object to process.
myobject << message( ... );
The error means the left hand side is not an object that accepts messages (a scriptable object). "myobject" isn't what you expect. Try
show(myobject);
or
show(type(myobject));
to get some idea what is going on.
Craige