Example #1
0
        public void SortSections(DataTable i_Table, Int32Collection i_InnerRows)
        {
            if (this.SortingBy == SortingByTypes.None)
            {
                return;
            }

            if (this.SectionFilters.Count == 0)
            {
                return;
            }

            SectionGroupInfo sectionGroup = this.Copy() as SectionGroupInfo;

            sectionGroup.SubGroupInfos = null;

            sectionGroup.CalculateGroupResult(i_Table, i_InnerRows, i_InnerRows, sectionGroup);

            sectionGroup.GroupResults.Sort(this.Sorting, this.SortingBy, this.UserDefinedOrders);

            SectionFilterCollection sectionFilters = new SectionFilterCollection();

            foreach (GroupResult result in sectionGroup.GroupResults)
            {
                string name = result.GroupValue.ToString();

                SectionFilter scFilter = sectionGroup.Sections(name);

                sectionFilters.Add(scFilter);
            }

            this.SectionFiltersWrapper = new SectionFilterCollectionWrapper(sectionFilters, ReportScType.Custom);

            this.SectionFilters = sectionFilters;
        }