Anthony,
do you use a transaction? If not every single HAdd() is wrapped in a transaction by the Windev framework. That's very slow indeed. Using ONE transaction will speed things up.
BTW: in my case it was still way too slow. I ended up generating the sqlite database on the server (still using tthe transaction as described) and download that one as a whole. That's much faster, but means a different approach.
SQLTransaction(sqlStart, YOUR_CONNECTION_NAME)
HAdd()
HAdd()
HAdd()
HAdd()
etc
SQLTransaction(sqlCommit, YOUR__CONNECTION_NAME)
Arie