>DEFINE CLASS MyClass As Session OlePublic > Function SaveMyWork( oRs1, ors2 ) > > LOCAL loContext > > This.Rs1 = oRs1 > This.Rs2 = oRs2 > > *-- Create your object context here > > lnResult1 = This.SaveRs( oRs1 ) && Save an ADO Recordset with some data > > x = y && This causes an error and causes the program to stop executing because the error method call ComReturnError() > > *-- At this point the control is given back to the client > *-- The SetAbort() is not called, SetComplete() is the default > *-- So the changes to the database will be committed even if oRs2 was not saved > *-- Even Worst is i stored the 2 RecordSets in This.Rs1 And This.Rs2 > *-- and my GC Method is not called so i will for sure get a C5 at some later time when running this method again. > > lnResult2 = This.SaveRs( oRs2 ) && Save an ADO Recordset with some data > > > IF lnResult1 = 0 AND lnResult2 = 0 > *-- Call setComplete() > ELSE > *-- Call SetAbort() > ENDIF > > ENDFUNC > > **-- Some more functions here including a error function with ComReturnError() > >ENDDEFINE >>