internal CustomReportItemHeadingInstance(ReportProcessing.ProcessingContext pc, int headingCellIndex, CustomReportItemHeading headingDef, VariantList groupExpressionValues, int recursiveLevel) { if (headingDef.InnerHeadings != null) { m_subHeadingInstances = new CustomReportItemHeadingInstanceList(); } m_headingDef = headingDef; m_headingCellIndex = headingCellIndex; if (groupExpressionValues != null) { m_groupExpressionValues = new VariantList(groupExpressionValues.Count); for (int i = 0; i < groupExpressionValues.Count; i++) { if (groupExpressionValues[i] == null || DBNull.Value == groupExpressionValues[i]) { m_groupExpressionValues.Add(null); } else { m_groupExpressionValues.Add(groupExpressionValues[i]); } } } if (headingDef.Grouping != null && headingDef.Grouping.GroupLabel != null) { m_label = pc.NavigationInfo.RegisterLabel(pc.ReportRuntime.EvaluateGroupingLabelExpression(headingDef.Grouping, headingDef.DataRegionDef.ObjectType, headingDef.DataRegionDef.Name)); } if (headingDef.CustomProperties != null) { m_customPropertyInstances = headingDef.CustomProperties.EvaluateExpressions(headingDef.DataRegionDef.ObjectType, headingDef.DataRegionDef.Name, "DataGrouping.", pc); } m_recursiveLevel = recursiveLevel; }
internal CustomReportItemInstance(ReportProcessing.ProcessingContext pc, CustomReportItem reportItemDef) : base(pc.CreateUniqueName(), reportItemDef) { m_instanceInfo = new CustomReportItemInstanceInfo(pc, reportItemDef, this); pc.Pagination.EnterIgnoreHeight(reportItemDef.StartHidden); if (reportItemDef.DataSetName != null) { m_columnInstances = new CustomReportItemHeadingInstanceList(); m_rowInstances = new CustomReportItemHeadingInstanceList(); m_cells = new CustomReportItemCellInstancesList(); } }