public ShimDataMember(IDefinitionPath parentDefinitionPath, CustomReportItem owner, ShimDataMember parent, int parentCollectionIndex, bool isColumn, bool isStatic, AspNetCore.ReportingServices.ReportRendering.DataMemberCollection renderMembers, int staticIndex) : base(parentDefinitionPath, owner, parent, parentCollectionIndex) { this.m_definitionStartIndex = owner.GetCurrentMemberCellDefinitionIndex(); this.m_isColumn = isColumn; this.m_isStatic = isStatic; this.m_renderMembers = renderMembers; this.m_staticIndex = staticIndex; DataGroupingCollection children; if (isStatic) { children = renderMembers[staticIndex].Children; } else { base.m_group = new Group(owner, new ShimRenderGroups(renderMembers)); children = renderMembers[0].Children; } if (children != null) { base.m_children = new ShimDataMemberCollection(this, owner, isColumn, this, children); } else { owner.GetAndIncrementMemberCellDefinitionIndex(); } this.m_definitionEndIndex = owner.GetCurrentMemberCellDefinitionIndex(); }
public void ResetContext(AspNetCore.ReportingServices.ReportRendering.DataMemberCollection renderMembers) { if (renderMembers != null) { this.m_renderMembers = renderMembers; } if (base.m_group != null) { base.m_group.CurrentRenderGroupIndex = -1; } AspNetCore.ReportingServices.ReportRendering.DataMember currentRenderMember = this.IsStatic ? this.m_renderMembers[this.m_staticIndex] : (base.m_group.CurrentShimRenderGroup as AspNetCore.ReportingServices.ReportRendering.DataMember); this.UpdateInnerContext(currentRenderMember); }
public DataMemberCollection this[int index] { get { if (index >= 0 && index < this.Count) { DataMemberCollection dataMemberCollection = null; if (index == 0) { dataMemberCollection = this.m_firstCollection; } else if (this.m_collections != null) { dataMemberCollection = this.m_collections[index - 1]; } if (dataMemberCollection == null) { bool headingDefIsStaticSubtotal = index > 0 && this.m_headingDef[index].Static && !this.m_headingDef[index].Subtotal && this.m_headingDef[index - 1].Subtotal; CustomReportItemHeadingInstanceList customReportItemHeadingInstanceList = null; if (this.m_headingDef[index].Static && this.m_headingInstances != null && this.m_headingInstances.Count > index) { customReportItemHeadingInstanceList = new CustomReportItemHeadingInstanceList(1); customReportItemHeadingInstanceList.Add(this.m_headingInstances[index]); } else { customReportItemHeadingInstanceList = this.m_headingInstances; } dataMemberCollection = new DataMemberCollection(this.m_owner, this.m_parent, this.m_headingDef[index], headingDefIsStaticSubtotal, customReportItemHeadingInstanceList); if (this.m_owner.UseCache) { if (index == 0) { this.m_firstCollection = dataMemberCollection; } else { if (this.m_collections == null) { this.m_collections = new DataMemberCollection[this.Count - 1]; } this.m_collections[index - 1] = dataMemberCollection; } } } return(dataMemberCollection); } throw new RenderingObjectModelException(ProcessingErrorCode.rsInvalidParameterRange, index, 0, this.Count); } }
public ShimRenderGroups(AspNetCore.ReportingServices.ReportRendering.DataMemberCollection renderGroups) { this.m_type = DataRegion.Type.CustomReportItem; this.m_renderDataMembers = renderGroups; }