loMyInstance = CREATEOBJECT('myProject.myOLEClass') IF NOT loMyInstance.setStatus('Instantiated') ? loMyInstance.getLastError() ENDIF define class myOLEClass as Session OLEPUBLIC PROTECTED Status as String PROTECTED LastError as String FUNCTION getStatus() as String RETURN this.Status ENDFUNC FUNCTION setStatus(newStatus as String) as boolean IF VARTYPE(newStatus) = 'C' && and some other conditions this.Status = newStatus RETURN .t. ENDIF this.LastError = 'Invalid parameter passed to setStatus' RETURN .f. ENDFUNC FUNCTION getLastError() as String RETURN this.LastError ENDFUNC PROCEDURE Init() as VOID this.Status = 'Ready' this.LastError = '' ENDPROC ENDDEFINE