>> ' Data dictionary >> Public Tables As New Tables >> Public TablesTemp As New Tables >>>>
>> ' Load the data dictionary >> Public Function LoadDataDictionary() As Boolean >> >> ' Make sure to clear all the tables. As when there is a flag to reload the >> ' data dictionary, we need to make sure we reset the collection. >> oApp.TablesTemp.Clear() >> >> ' Copy the TablesTemp into Tables >> ' This allows a hit in progress to continue as is with this shared oApp object as we used a temporary place holder >> ' during its initialization. Otherwise, a hit in progress may end up with an object reference not found. This was >> ' happening before as it takes about 1.3 seconds to reload the data dictionary. >> oApp.Tables = oApp.TablesTemp >> >> ' Let the framework know that we are done >> ' This will only happen at startup as there is no need to turn this off on reload >> App.lTables = True >> >> Return True >> End Function >>>>
> ' Data dictionary > Public Tables As New Tables > ' don't need this - Public TablesTemp > >><PRE> > ' Load the data dictionary > Public Function LoadDataDictionary() As Boolean > > dim tablesTmp as new Tables > > 'the framework is still using Tables > > ' populate tablesTmp if needed > > oApp.Tables = tablesTmp ' from now on the newer version will be used > > ' Let the framework know that we are done > ' This will only happen at startup as there is no need to turn this off on reload > App.lTables = True > > Return True > End Function >I still don't see how this can work reliably. Bottom line is the structure of oApp.Tables can change during the course of a hit.