public DataElementOutputTypes DataElementOutputForStatic(MatrixMember staticHeading) { if (!IsStatic) { return(DataElementOutput); } if (staticHeading != null && (!staticHeading.IsStatic || staticHeading.Parent == Parent)) { staticHeading = null; } if (staticHeading != null) { int index; int index2; if (m_headingDef.IsColumn) { index = staticHeading.m_index; index2 = m_index; } else { index = m_index; index2 = staticHeading.m_index; } return(GetDataElementOutputTypeFromCell(index, index2)); } Microsoft.ReportingServices.ReportProcessing.Matrix matrix = (Microsoft.ReportingServices.ReportProcessing.Matrix)base.OwnerDataRegion.ReportItemDef; if (matrix.PivotStaticColumns == null || matrix.PivotStaticRows == null) { return(GetDataElementOutputTypeFromCell(0, m_index)); } Global.Tracer.Assert(matrix.PivotStaticColumns != null && matrix.PivotStaticRows != null); return(GetDataElementOutputTypeForRowCol(m_index)); }
private int IndexCellDefinition(Microsoft.ReportingServices.ReportProcessing.Matrix matrixDef) { int num = 0; if (m_owner.NoRows) { return(m_rowIndex * matrixDef.MatrixColumns.Count + m_columnIndex); } return(InstanceInfo.RowIndex * matrixDef.MatrixColumns.Count + InstanceInfo.ColumnIndex); }
public ReportSize this[int index] { get { if (index < 0 || index >= Count) { throw new RenderingObjectModelException(ProcessingErrorCode.rsInvalidParameterRange, index, 0, Count); } ReportSize reportSize = null; if (m_reportSizeCollection != null && m_reportSizeCollection[index] != null) { reportSize = m_reportSizeCollection[index]; } if (reportSize == null) { Microsoft.ReportingServices.ReportProcessing.Matrix matrix = (Microsoft.ReportingServices.ReportProcessing.Matrix)m_owner.ReportItemDef; MatrixInstance matrixInstance = (MatrixInstance)m_owner.ReportItemInstance; ReportSizeCollection reportSizeCollection = null; reportSizeCollection = ((!m_widthsCollection) ? matrix.CellHeightsForRendering : matrix.CellWidthsForRendering); Global.Tracer.Assert(reportSizeCollection != null); if (m_owner.NoRows || matrixInstance == null || matrixInstance.Cells.Count == 0) { reportSize = reportSizeCollection[index]; } else if ((m_widthsCollection && matrix.StaticColumns == null) || (!m_widthsCollection && matrix.StaticRows == null)) { reportSize = reportSizeCollection[0]; } else { bool cacheState = m_owner.RenderingContext.CacheState; m_owner.RenderingContext.CacheState = true; MatrixCellCollection cellCollection = m_owner.CellCollection; MatrixCell matrixCell = null; matrixCell = ((!m_widthsCollection) ? cellCollection[index, 0] : cellCollection[0, index]); reportSize = reportSizeCollection[matrixCell.ColumnIndex]; m_owner.RenderingContext.CacheState = cacheState; } if (m_owner.RenderingContext.CacheState) { if (m_reportSizeCollection == null) { m_reportSizeCollection = new ReportSizeCollection(Count); } m_reportSizeCollection[index] = reportSize; } } return(reportSize); } }
internal Matrix(int intUniqueName, Microsoft.ReportingServices.ReportProcessing.Matrix reportItemDef, MatrixInstance reportItemInstance, RenderingContext renderingContext) : base(intUniqueName, reportItemDef, reportItemInstance, renderingContext) { if (reportItemInstance != null && reportItemInstance.Cells.Count != 0 && reportItemInstance.Cells[0].Count != 0) { m_rowMemberMapping = CalculateMapping(reportItemDef.Rows, reportItemInstance.RowInstances, inParentSubtotal: false); m_colMemberMapping = CalculateMapping(reportItemDef.Columns, reportItemInstance.ColumnInstances, inParentSubtotal: false); m_noRows = (m_rowMemberMapping.Count == 0 || m_colMemberMapping.Count == 0); } else { m_noRows = true; } }
private DataElementOutputTypes GetDataElementOutputTypeForRowCol(int index) { Microsoft.ReportingServices.ReportProcessing.Matrix matrix = (Microsoft.ReportingServices.ReportProcessing.Matrix)base.OwnerDataRegion.ReportItemDef; int num; int num2; int count; if (m_headingDef.IsColumn) { num = 0; num2 = index; count = matrix.MatrixRows.Count; } else { num = index; num2 = 0; count = matrix.MatrixColumns.Count; } while (true) { if (matrix.GetCellReportItem(num, num2).DataElementOutput != DataElementOutputTypes.NoOutput) { return(DataElementOutputTypes.Output); } if (m_headingDef.IsColumn) { num++; if (num >= count) { break; } } else { num2++; if (num2 >= count) { break; } } } return(DataElementOutputTypes.NoOutput); }
internal static ReportItem CreateItem(string uniqueName, Microsoft.ReportingServices.ReportProcessing.ReportItem reportItemDef, ReportItemInstance reportItemInstance, RenderingContext renderingContext, NonComputedUniqueNames nonComputedUniqueNames) { if (reportItemDef == null) { return(null); } Global.Tracer.Assert(renderingContext != null); ReportItem reportItem = null; int intUniqueName = 0; NonComputedUniqueNames[] childrenNonComputedUniqueNames = null; if (reportItemInstance != null) { intUniqueName = reportItemInstance.UniqueName; } else if (nonComputedUniqueNames != null) { intUniqueName = nonComputedUniqueNames.UniqueName; childrenNonComputedUniqueNames = nonComputedUniqueNames.ChildrenUniqueNames; } if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.Line) { Microsoft.ReportingServices.ReportProcessing.Line reportItemDef2 = (Microsoft.ReportingServices.ReportProcessing.Line)reportItemDef; LineInstance reportItemInstance2 = (LineInstance)reportItemInstance; reportItem = new Line(uniqueName, intUniqueName, reportItemDef2, reportItemInstance2, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.CheckBox) { Microsoft.ReportingServices.ReportProcessing.CheckBox reportItemDef3 = (Microsoft.ReportingServices.ReportProcessing.CheckBox)reportItemDef; CheckBoxInstance reportItemInstance3 = (CheckBoxInstance)reportItemInstance; reportItem = new CheckBox(uniqueName, intUniqueName, reportItemDef3, reportItemInstance3, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.Image) { Microsoft.ReportingServices.ReportProcessing.Image reportItemDef4 = (Microsoft.ReportingServices.ReportProcessing.Image)reportItemDef; ImageInstance reportItemInstance4 = (ImageInstance)reportItemInstance; reportItem = new Image(uniqueName, intUniqueName, reportItemDef4, reportItemInstance4, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.TextBox) { Microsoft.ReportingServices.ReportProcessing.TextBox reportItemDef5 = (Microsoft.ReportingServices.ReportProcessing.TextBox)reportItemDef; TextBoxInstance reportItemInstance5 = (TextBoxInstance)reportItemInstance; reportItem = new TextBox(uniqueName, intUniqueName, reportItemDef5, reportItemInstance5, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.Rectangle) { Microsoft.ReportingServices.ReportProcessing.Rectangle reportItemDef6 = (Microsoft.ReportingServices.ReportProcessing.Rectangle)reportItemDef; RectangleInstance reportItemInstance6 = (RectangleInstance)reportItemInstance; reportItem = new Rectangle(uniqueName, intUniqueName, reportItemDef6, reportItemInstance6, renderingContext, childrenNonComputedUniqueNames); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.ActiveXControl) { Microsoft.ReportingServices.ReportProcessing.ActiveXControl reportItemDef7 = (Microsoft.ReportingServices.ReportProcessing.ActiveXControl)reportItemDef; ActiveXControlInstance reportItemInstance7 = (ActiveXControlInstance)reportItemInstance; reportItem = new ActiveXControl(uniqueName, intUniqueName, reportItemDef7, reportItemInstance7, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.SubReport) { Microsoft.ReportingServices.ReportProcessing.SubReport subReport = (Microsoft.ReportingServices.ReportProcessing.SubReport)reportItemDef; SubReportInstance subReportInstance = (SubReportInstance)reportItemInstance; bool processedWithError = false; Report innerReport; if (Microsoft.ReportingServices.ReportProcessing.SubReport.Status.Retrieved != subReport.RetrievalStatus) { innerReport = null; processedWithError = true; } else { if (subReport.ReportContext == null && renderingContext.CurrentReportContext != null) { subReport.ReportContext = renderingContext.CurrentReportContext.GetSubreportContext(subReport.ReportPath); } ICatalogItemContext reportContext = subReport.ReportContext; RenderingContext renderingContext2 = new RenderingContext(renderingContext, subReport.Uri, subReport.Report.EmbeddedImages, subReport.Report.ImageStreamNames, reportContext); if (subReportInstance == null) { innerReport = new Report(subReport.Report, null, renderingContext2, subReport.ReportName, subReport.Description, null); } else if (subReportInstance.ReportInstance == null) { processedWithError = true; innerReport = new Report(subReport.Report, null, renderingContext2, subReport.ReportName, subReport.Description, null); } else { innerReport = new Report(subReport.Report, subReportInstance.ReportInstance, renderingContext2, subReport.ReportName, subReport.Description, null); } } reportItem = new SubReport(intUniqueName, subReport, subReportInstance, renderingContext, innerReport, processedWithError); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.List) { Microsoft.ReportingServices.ReportProcessing.List reportItemDef8 = (Microsoft.ReportingServices.ReportProcessing.List)reportItemDef; ListInstance reportItemInstance8 = (ListInstance)reportItemInstance; reportItem = new List(intUniqueName, reportItemDef8, reportItemInstance8, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.Matrix) { Microsoft.ReportingServices.ReportProcessing.Matrix reportItemDef9 = (Microsoft.ReportingServices.ReportProcessing.Matrix)reportItemDef; MatrixInstance reportItemInstance9 = (MatrixInstance)reportItemInstance; reportItem = new Matrix(intUniqueName, reportItemDef9, reportItemInstance9, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.Table) { Microsoft.ReportingServices.ReportProcessing.Table reportItemDef10 = (Microsoft.ReportingServices.ReportProcessing.Table)reportItemDef; TableInstance reportItemInstance10 = (TableInstance)reportItemInstance; reportItem = new Table(intUniqueName, reportItemDef10, reportItemInstance10, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.OWCChart) { Microsoft.ReportingServices.ReportProcessing.OWCChart reportItemDef11 = (Microsoft.ReportingServices.ReportProcessing.OWCChart)reportItemDef; OWCChartInstance reportItemInstance11 = (OWCChartInstance)reportItemInstance; reportItem = new OWCChart(intUniqueName, reportItemDef11, reportItemInstance11, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.Chart) { Microsoft.ReportingServices.ReportProcessing.Chart reportItemDef12 = (Microsoft.ReportingServices.ReportProcessing.Chart)reportItemDef; ChartInstance reportItemInstance12 = (ChartInstance)reportItemInstance; reportItem = new Chart(intUniqueName, reportItemDef12, reportItemInstance12, renderingContext); } else if (reportItemDef is Microsoft.ReportingServices.ReportProcessing.CustomReportItem) { Microsoft.ReportingServices.ReportProcessing.CustomReportItem reportItemDef13 = (Microsoft.ReportingServices.ReportProcessing.CustomReportItem)reportItemDef; CustomReportItemInstance reportItemInstance13 = (CustomReportItemInstance)reportItemInstance; reportItem = new CustomReportItem(uniqueName, intUniqueName, reportItemDef13, reportItemInstance13, renderingContext, childrenNonComputedUniqueNames); if (!renderingContext.NativeAllCRITypes && (renderingContext.NativeCRITypes == null || !renderingContext.NativeCRITypes.ContainsKey(((CustomReportItem)reportItem).Type))) { reportItem = ((CustomReportItem)reportItem).AltReportItem; } } return(reportItem); }