Hello, I am not sure if this is applicable to your situation, but you might be able to avoid using setTimeout() by setting the autobind property on the grid to false.
https://docs.telerik.com/kendo-ui/api/javascript/ui/grid/configuration/autobind
This will prevent the grid from loading data when it is initialized. It will then load the data when your user selects the table and the setOptions method is called.