Пример #1
0
 private void GenerateSimpleReportItemDocumentMap(Microsoft.ReportingServices.OnDemandReportRendering.ReportItem item)
 {
     if (m_generateDocMap)
     {
         string documentMapLabel = item.Instance.DocumentMapLabel;
         if (documentMapLabel != null)
         {
             WriteDocumentMapNode(documentMapLabel, item.Instance.UniqueName);
         }
     }
 }
Пример #2
0
        private void Visit(Microsoft.ReportingServices.OnDemandReportRendering.ReportItem item)
        {
            if (item == null || item.Instance == null)
            {
                return;
            }
            bool generateDocMap = m_generateDocMap;

            if (!ProcessVisibilityAndContinue(item.Visibility, item.Instance.Visibility, null))
            {
                return;
            }
            if (item is Microsoft.ReportingServices.OnDemandReportRendering.Line || item is Microsoft.ReportingServices.OnDemandReportRendering.Chart || item is Microsoft.ReportingServices.OnDemandReportRendering.GaugePanel || item is Microsoft.ReportingServices.OnDemandReportRendering.Map)
            {
                GenerateSimpleReportItemDocumentMap(item);
            }
            else if (item is Microsoft.ReportingServices.OnDemandReportRendering.TextBox)
            {
                GenerateSimpleReportItemDocumentMap(item);
                VisitStyle(item.Style);
            }
            else if (item is Microsoft.ReportingServices.OnDemandReportRendering.Image)
            {
                GenerateSimpleReportItemDocumentMap(item);
                Microsoft.ReportingServices.OnDemandReportRendering.Image            image  = item as Microsoft.ReportingServices.OnDemandReportRendering.Image;
                Microsoft.ReportingServices.OnDemandReportRendering.Image.SourceType source = image.Source;
                if (m_createSnapshot && (source == Microsoft.ReportingServices.OnDemandReportRendering.Image.SourceType.External || source == Microsoft.ReportingServices.OnDemandReportRendering.Image.SourceType.Database))
                {
                    _ = (image.Instance as Microsoft.ReportingServices.OnDemandReportRendering.ImageInstance)?.ImageData;
                }
            }
            else if (item is Microsoft.ReportingServices.OnDemandReportRendering.Rectangle)
            {
                VisitRectangle(item as Microsoft.ReportingServices.OnDemandReportRendering.Rectangle);
                VisitStyle(item.Style);
            }
            else if (!(item is Microsoft.ReportingServices.OnDemandReportRendering.CustomReportItem))
            {
                bool flag = false;
                if (m_generateDocMap)
                {
                    string documentMapLabel = item.Instance.DocumentMapLabel;
                    if (documentMapLabel != null)
                    {
                        flag = true;
                        WriteDocumentMapBeginContainer(documentMapLabel, item.Instance.UniqueName);
                    }
                }
                if (item is Microsoft.ReportingServices.OnDemandReportRendering.Tablix)
                {
                    VisitTablix(item as Microsoft.ReportingServices.OnDemandReportRendering.Tablix);
                    VisitStyle(item.Style);
                }
                else if (item is Microsoft.ReportingServices.OnDemandReportRendering.SubReport)
                {
                    VisitSubReport(item as Microsoft.ReportingServices.OnDemandReportRendering.SubReport);
                }
                else
                {
                    Global.Tracer.Assert(condition: false);
                }
                if (flag)
                {
                    WriteDocumentMapEndContainer();
                }
            }
            m_generateDocMap = generateDocMap;
        }