internal void AddSortInfo(ReportProcessing.IHierarchyObj owner, int sortInfoIndex, RuntimeSortFilterEventInfo sortInfo) { if (sortInfo.EventSource.UserSort.SortExpressionScope != null || owner.IsDetail) { if (sortInfo.EventSource.UserSort.SortExpressionScope == null) { AddSortInfoIndex(sortInfoIndex, sortInfo); } if (m_sortTree == null) { m_sortTree = new ReportProcessing.BTreeNode(owner); } } if (sortInfo.EventSource.UserSort.SortExpressionScope != null) { if (m_targetForNonDetailSort == null) { m_targetForNonDetailSort = new Hashtable(); } m_targetForNonDetailSort.Add(sortInfoIndex, null); } else { if (m_targetForDetailSort == null) { m_targetForDetailSort = new Hashtable(); } m_targetForDetailSort.Add(sortInfoIndex, null); } }
internal void SortSEScopes(ReportProcessing.ProcessingContext processingContext, TextBox eventSource) { m_sortTree = new ReportProcessing.BTreeNode(this); for (int i = 0; i < m_scopeInstances.Count; i++) { ReportProcessing.RuntimeDataRegionObj runtimeDataRegionObj = m_scopeInstances[i]; m_currentScopeInstanceIndex = i; runtimeDataRegionObj.SetupEnvironment(); m_sortTree.NextRow(processingContext.ReportRuntime.EvaluateUserSortExpression(eventSource)); } }