I ran into this a while back. I vaguely remember reading that it is due to a limitation of the SQL Server client which is installed as part of Office, something about multiple cursors. I found 2 solutions
1 - install and use the SQL Server Native Client
2 - force retrieval of all records for each query from the server, i.e. use FDQuery's FetchAll method after opening/executing the query.
Since our system administrator does not want to install the Native Client on all machines, I opted to use the second solution.