// void FinalPass(string folder) { // Now do some addition validation and final preparation // Create the Globals and User lookup dictionaries _LUGlobals = new ListDictionary(); // if entries grow beyond 10; make hashtable _LUGlobals.Add("PageNumber", new FunctionPageNumber()); _LUGlobals.Add("TotalPages", new FunctionTotalPages()); _LUGlobals.Add("ExecutionTime", new FunctionExecutionTime()); _LUGlobals.Add("ReportFolder", new FunctionReportFolder()); _LUGlobals.Add("ReportName", new FunctionReportName()); _LUUser = new ListDictionary(); // if entries grow beyond 10; make hashtable _LUUser.Add("UserID", new FunctionUserID()); _LUUser.Add("Language", new FunctionUserLanguage()); if (_CodeModules != null) { _CodeModules.FinalPass(); _CodeModules.LoadModules(); } if (_Classes != null) { _Classes.FinalPass(); // _Classes.Load(); } if (_Code != null) { _Code.FinalPass(); _CodeType = _Code.CodeType(); } if (_ReportParameters != null) // report parameters might be used in data source connection strings { _ReportParameters.FinalPass(); } if (_DataSourcesDefn != null) { _DataSourcesDefn.FinalPass(); } if (_DataSetsDefn != null) { _DataSetsDefn.FinalPass(); } _Body.FinalPass(); if (_PageHeader != null) { _PageHeader.FinalPass(); } if (_PageFooter != null) { _PageFooter.FinalPass(); } if (_EmbeddedImages != null) { _EmbeddedImages.FinalPass(); } if (_Language != null) { _Language.FinalPass(); } _DataCache.TrimExcess(); // reduce size of array of expressions that cache data return; }