nn = SQLStringConnect("Driver=SQL Server;Server=192.168.0.91;Database=instock;UID=john;"+; "PWD=1234;") CLOSE ALL CREATE CURSOR hits(numero i) && Change the FetchAsNeeded option default value CursorSetProp("FetchAsNeeded",.T.,0) && Updated based on the thread FetchAsNeeded SPT blocking remote views? Thread #1145681 Message #1145743 CURSORSETPROP("AllowSimultaneousFetch",.T.,0) CursorSetProp("FetchSize",10000,0) && FetchAsNeeded option requires asynchronous connection for SPT cursors SQLSetProp(nn,"Asynchronous",.T.) xx=1 do while NOT USED("MyResult") && SQLEXEC() will return 0 till all records && fetched and returned to client. So, && when you want to fetch, just wait till alias created with && first FetchSize number of records (300 in this sample) =SQLExec(nn,"SELECT * FROM products","MyResult") INSERT INTO hits values(xx) &&here i need to put something like 23%,24%, etc. xx=xx+1 enddo * return the default option value to .F. CursorSetProp("FetchAsNeeded",.F.,0) SQLDISCONNECT(nn) SELECT hits browhits cursor sometimes stores 61 recs, others 50, others 100, etc...