Thanks marcov - it makes a huge difference - it now loads in millisecs which is good.
However, once I have 'wired' the dataset to datasource1 with
Datasource1.dataset := T;
in order to show iit, I can't see how to 'unwire' it in order to scroll and then wire it again to show the results.
Neither
Datasource1.dataset.cancel
nor
Datasource1.enabled:=false;
nor
Datasourse1.destroy
'unwires it'.
This may be obvious, but how can I temporarily unwire Datasource1 from my dataset?