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)); } }
internal void RegisterSortFilterExpressionScope(ref int containerSortFilterExprScopeIndex, ReportProcessing.RuntimeDataRegionObj scopeObj, VariantList[] scopeValues, int sortFilterInfoIndex) { if (m_eventTarget != null && !m_targetSortFilterInfoAdded) { m_eventTarget.AddSortInfoIndex(sortFilterInfoIndex, this); } SortFilterExpressionScopeObj sortFilterExpressionScopeObj; if (-1 != containerSortFilterExprScopeIndex) { sortFilterExpressionScopeObj = (SortFilterExpressionScopeObj)m_sortFilterExpressionScopeObjects[containerSortFilterExprScopeIndex]; } else { if (m_sortFilterExpressionScopeObjects == null) { m_sortFilterExpressionScopeObjects = new ArrayList(); } containerSortFilterExprScopeIndex = m_sortFilterExpressionScopeObjects.Count; sortFilterExpressionScopeObj = new SortFilterExpressionScopeObj(this); m_sortFilterExpressionScopeObjects.Add(sortFilterExpressionScopeObj); } sortFilterExpressionScopeObj.RegisterScopeInstance(scopeObj, scopeValues); }
internal void RegisterSortFilterExpressionScope(ReportProcessing.IScope container, ReportProcessing.RuntimeDataRegionObj scopeObj, bool[] isSortFilterExpressionScope) { RuntimeSortFilterEventInfoList runtimeSortFilterInfo = m_runtimeSortFilterInfo; if (runtimeSortFilterInfo == null || isSortFilterExpressionScope == null || scopeObj == null) { return; } VariantList[] array = null; for (int i = 0; i < runtimeSortFilterInfo.Count; i++) { if (isSortFilterExpressionScope[i] && scopeObj.IsTargetForSort(i, detailSort: false) && scopeObj.TargetScopeMatched(i, detailSort: false)) { if (array == null && runtimeSortFilterInfo[i].EventSource.UserSort.GroupsInSortTarget != null) { int index = 0; array = new VariantList[runtimeSortFilterInfo[i].EventSource.UserSort.GroupsInSortTarget.Count]; scopeObj.GetScopeValues(runtimeSortFilterInfo[i].EventTarget, array, ref index); } runtimeSortFilterInfo[i].RegisterSortFilterExpressionScope(ref container.SortFilterExpressionScopeInfoIndices[i], scopeObj, array, i); } } }
internal void RegisterScopeInstance(ReportProcessing.RuntimeDataRegionObj scopeObj, VariantList[] scopeValues) { m_scopeInstances.Add(scopeObj); m_scopeValuesList.Add(scopeValues); }
public void RegisterSortFilterExpressionScope(ReportProcessing.IScope container, ReportProcessing.RuntimeDataRegionObj scopeObj, bool[] isSortFilterExpressionScope) { RuntimeSortFilterEventInfoList runtimeSortFilterInfo = this.m_runtimeSortFilterInfo; if (runtimeSortFilterInfo != null && isSortFilterExpressionScope != null && scopeObj != null) { VariantList[] array = null; for (int i = 0; i < runtimeSortFilterInfo.Count; i++) { if (isSortFilterExpressionScope[i] && scopeObj.IsTargetForSort(i, false) && scopeObj.TargetScopeMatched(i, false)) { if (array == null && runtimeSortFilterInfo[i].EventSource.UserSort.GroupsInSortTarget != null) { int num = 0; array = new VariantList[runtimeSortFilterInfo[i].EventSource.UserSort.GroupsInSortTarget.Count]; scopeObj.GetScopeValues(runtimeSortFilterInfo[i].EventTarget, array, ref num); } runtimeSortFilterInfo[i].RegisterSortFilterExpressionScope(ref container.SortFilterExpressionScopeInfoIndices[i], scopeObj, array, i); } } } }