DEFINE CLASS MyDE AS DATAENVIRONMENT PROCEDURE Init IF This.AutoOpenTables This.OpenTables() ENDIF>Hi, John-
CloseTables() method
The following is a better example, I hope, for your situation. Note: I couldn't get AutoOpen and AutoClose to work in a programmatic DE. I'm not sure if it should, or not.*!* >*!* NoDESample.PRG >*!* > >IF !FILE('TEMP.DBF') > CREATE TABLE TEMP (c1 C(10)) > INSERT INTO TEMP (c1) VALUES ("BAR") >ENDIF > >IF USED('Temp') > USE IN TEMP >ENDIF > >LOCAL ox >ox = NEWOBJECT("MyForm") >ox.SHOW(1) > >DEFINE CLASS MyDE AS DATAENVIRONMENT > AUTOOPENTABLES = .F. > AUTOCLOSETABLES = .F. > INITIALSELECTEDALIAS = "temp" > ADD OBJECT Cursor1 AS Cursor1 >ENDDEFINE > >DEFINE CLASS CURSOR1 AS CURSOR > ALIAS = "temp" > CURSORSOURCE = "temp.dbf" > NAME = "Cursor1" >ENDDEFINE > >DEFINE CLASS MyForm AS FORM > DATAENVIRONMENT = .NULL. > > PROCEDURE LOAD > THIS.DATAENVIRONMENT = NEWOBJECT("MyDE" ) > THIS.DATAENVIRONMENT.OPENTABLES() > ENDPROC > > PROCEDURE DESTROY > THIS.DATAENVIRONMENT.CLOSETABLES() > ENDPROC > > PROCEDURE INIT > THIS.ADDOBJECT("Grid1", "Grid") > THIS.Grid1.RECORDSOURCE = "Temp" > THIS.Grid1.VISIBLE = .T. > ENDPROC > > PROCEDURE UNLOAD > THIS.DATAENVIRONMENT = .NULL. > ENDPROC > >ENDDEFINE