What version of VFP, Windows, and SQL Server are you using?
Do the changes you are making through the changes commit? You might need to use a SQLCOMMIT(), depending on how much you have simplified your example.
>Simplified version of the program:
>
>
>* Main prg
>Public lnHandle
>lnHandle = SQLCONNECT('SomeDataSource',.T.)
>
>oMainForm = CREATEOBJECT('MainmenuForm')
>READ Events
>
>CLOSE Database
>lnResult = SQLDISCONNECT(lnHandle)
>
>
>And that's where it dies with a fatal exception
>
>There used to be a problem like that in VFP 3.0, article 140613, but that's hopefully been fixed by now.
>
>
>TIA