Codigo Delphi:
Código Delphi
[-]
query.Connection := ADOConnection;
query.Active := true;
¿Y la aplicación "X" también está conectada a un DBGRID?, ¿ y también tiene clUseServer y ctOpenForwardOnly?. Por lo general cuando se abre un cursor mantenido por el servidor (clUseServer) y de solo lectura hacia adelante (ctOpenForwardOnly) es porque se quiere hacer un procesamiento masivo de datos, quizás generar un reporte o algo similar, no para mostrarlo en un Grid, ya que el Grid requiere que el cursor pueda moverse en ambos sentidos.
Por otro lado: ¿Es realmente necesario mostrar esos 400,000 registros en un grid?