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;
 }
Example #2
0
        internal void PopulateFieldPropertyValues(StringList propertyNames)
        {
            if (propertyNames == null)
            {
                return;
            }
            int count = propertyNames.Count;

            m_fieldPropertyValues = new VariantList(count);
            for (int i = 0; i < count; i++)
            {
                object value = null;
                if (m_properties != null)
                {
                    value = m_properties[propertyNames[i]];
                }
                m_fieldPropertyValues.Add(value);
            }
        }