Пример #1
0
        private bool IsTextboxInScope()
        {
            OnDemandProcessingContext odpContext      = m_reportRT.ReportObjectModel.OdpContext;
            IRIFReportScope           iRIFReportScope = null;

            if (odpContext.IsTablixProcessingMode)
            {
                iRIFReportScope = odpContext.LastTablixProcessingReportScope;
                if (iRIFReportScope == null)
                {
                    iRIFReportScope = odpContext.ReportDefinition;
                }
            }
            else if (odpContext.IsTopLevelSubReportProcessing)
            {
                Microsoft.ReportingServices.ReportIntermediateFormat.SubReport subReport = odpContext.LastRIFObject as Microsoft.ReportingServices.ReportIntermediateFormat.SubReport;
                Global.Tracer.Assert(subReport != null, "Missing reference to subreport object");
                iRIFReportScope = subReport.GetContainingSection(odpContext);
            }
            else
            {
                IReportScope currentReportScope = odpContext.CurrentReportScope;
                iRIFReportScope = ((currentReportScope == null) ? odpContext.ReportDefinition : currentReportScope.RIFReportScope);
            }
            if (iRIFReportScope == null || !iRIFReportScope.TextboxInScope(m_textBox.SequenceID))
            {
                return(false);
            }
            return(true);
        }
Пример #2
0
 private static OnDemandProcessingContext InitializeSubReport(OnDemandProcessingContext parentOdpContext, Microsoft.ReportingServices.ReportIntermediateFormat.SubReport subReport, Microsoft.ReportingServices.ReportIntermediateFormat.ReportInstance reportInstance, bool inDataRegion, bool fromCreateSubReportInstance, out bool prefetchSuccess)
 {
     Global.Tracer.Assert(subReport.OdpContext != null, "(null != subReport.OdpContext)");
     prefetchSuccess = true;
     if (!inDataRegion)
     {
         IReference <Microsoft.ReportingServices.ReportIntermediateFormat.SubReportInstance> reference2 = subReport.CurrentSubReportInstance = ((subReport.OdpContext.SnapshotProcessing && !subReport.OdpContext.ReprocessSnapshot) ? reportInstance.SubreportInstances[subReport.IndexInCollection] : Microsoft.ReportingServices.ReportIntermediateFormat.SubReportInstance.CreateInstance(reportInstance, subReport, parentOdpContext.OdpMetadata));
         if (!fromCreateSubReportInstance)
         {
             ReportSection containingSection = subReport.GetContainingSection(parentOdpContext);
             parentOdpContext.SetupContext(containingSection, null);
         }
         Merge merge = new Merge(subReport.Report, subReport.OdpContext);
         prefetchSuccess = merge.InitAndSetupSubReport(subReport);
     }
     return(subReport.OdpContext);
 }