public override RowSkippingControlFlag DoesNotMatchRowRecordField(OnDemandProcessingContext odpContext, Microsoft.ReportingServices.ReportIntermediateFormat.RecordField[] recordFields)
 {
     for (int i = 0; i < m_expressions.Length; i++)
     {
         Microsoft.ReportingServices.ReportIntermediateFormat.ExpressionInfo expressionInfo = m_expressions[i];
         object value = m_values[i].Value;
         Microsoft.ReportingServices.ReportIntermediateFormat.RecordField field = recordFields[expressionInfo.FieldIndex];
         bool isSortedAscending = m_sortDirections[i] == SortDirection.Ascending;
         RowSkippingControlFlag rowSkippingControlFlag = CompareFieldWithScopeValueAndStopOnInequality(odpContext, field, value, isSortedAscending, ObjectType.DataSet, m_idcDataSet.Name, "Relationship.QueryRestart");
         if (rowSkippingControlFlag != 0)
         {
             return(rowSkippingControlFlag);
         }
     }
     return(RowSkippingControlFlag.ExactMatch);
 }
Exemplo n.º 2
0
        public override RowSkippingControlFlag DoesNotMatchRowRecordField(OnDemandProcessingContext odpContext, AspNetCore.ReportingServices.ReportIntermediateFormat.RecordField[] recordFields)
        {
            int num = 0;

            foreach (ScopeValue item in this.m_scopeID.QueryRestartPosition)
            {
                AspNetCore.ReportingServices.ReportIntermediateFormat.ExpressionInfo expressionInfo = this.Expressions[num];
                AspNetCore.ReportingServices.ReportIntermediateFormat.RecordField    field          = recordFields[expressionInfo.FieldIndex];
                RowSkippingControlFlag rowSkippingControlFlag = base.CompareFieldWithScopeValueAndStopOnInequality(odpContext, field, item.Value, this.SortDirections[num], ObjectType.DataSet, this.m_memberDef.DataScopeInfo.DataSet.Name, "ScopeID.QueryRestart");
                if (rowSkippingControlFlag != 0)
                {
                    return(rowSkippingControlFlag);
                }
                num++;
            }
            return(RowSkippingControlFlag.ExactMatch);
        }