>*UpdateDE.prg >Lparameters toDE,tcAppDb,tcPath >Do setups && contains general "set" like set century on, exact off, ... >Local Array aDEMembers[1] >Local lnMembers,ix,lcMembers >if !(Type('oApp')='O' and !IsNull(oApp)) && in case testing with customer's data > public oApp > tcAppDb = iif(empty(m.tcAppDb),"mydefault.dbc", m.tcAppDb) > tcPath = iif(empty(m.tcPath), "myDefaultDataFolder",m.tcPath) > oApp = CreateObject('myApp',m.tcAppDb,m.tcPath) >endif >lnMembers = Amembers(aDEMembers,toDE,2) >For ix=1 To m.lnMembers > With Evaluate('toDe.'+aDEMembers[m.ix]) > If Lower(.BaseClass) == 'cursor' > If Atc(oApp.cAppDBC,.Database) > 0 > .Database = Addbs(oApp.cAppDataPath)+oApp.cAppDBC > Else > .CursorSource = Addbs(oApp.cAppDataPath)+Justfname(.CursorSource) > Endif > Endif > Endwith >Endfor > >Define Class myApp As Custom > cAppDBC = '' > cAppDataPath='' > cCurPath = '' > Procedure Init(tcAppDb,tcPath) > This.cCurPath = Set('path') > This.cAppDataPath = m.tcPath > this.cAppDbc = (m.tcAppDb) > set Path To (this.cAppDataPath+';'+This.cCurPath) > Endproc > Procedure Destroy > Set Path To (This.cCurPath) > Endproc >Enddefine > >* And I have this in DE.BeforeOpenTables >UpdateDe(this) >Cetin