internal void SetupReport(Microsoft.ReportingServices.ReportIntermediateFormat.ReportInstance reportInstance)
        {
            m_odpContext.CurrentReportInstance = reportInstance;
            if (m_odpContext.InitializedRuntime)
            {
                return;
            }
            m_odpContext.InitializedRuntime = true;
            List <ReportSection> reportSections = m_report.ReportSections;

            if (reportSections != null)
            {
                foreach (ReportSection item in reportSections)
                {
                    m_odpContext.RuntimeInitializeReportItemObjs(item.ReportItems, traverseDataRegions: true);
                    m_odpContext.RuntimeInitializeTextboxObjs(item.ReportItems, setExprHost: true);
                }
            }
            if (m_report.HasVariables)
            {
                m_odpContext.RuntimeInitializeVariables(m_report);
            }
            if (m_report.HasLookups)
            {
                m_odpContext.RuntimeInitializeLookups(m_report);
            }
            m_report.RegisterDataSetScopedAggregates(m_odpContext);
        }