Mark,
I stumbleds accross the answer.
In my code, I had
oCustomersData = CreateObject("CustomersData")
When I added the public statment, it works
PUBLIC oCustomersData
oCustomersData = CreateObject("CustomersData")
It seems the cursor that is created 'goes away'
when the oCustomersData object goes out of scope,
the cursor is closed.
hmmm...
Everything makes sense in someone's mind
public class SystemCrasher :ICrashable
In addition, an integer field is not for irrational people