public override void Update(object[] expressions, IErrorContext iErrorContext) { object obj = expressions[0]; AspNetCore.ReportingServices.ReportProcessing.DataAggregate.DataTypeCode typeCode = DataAggregate.GetTypeCode(obj); if (!DataAggregate.IsNull(typeCode)) { if (!DataTypeUtility.IsNumeric(typeCode)) { iErrorContext.Register(ProcessingErrorCode.rsAggregateOfNonNumericData, Severity.Warning); throw new ReportProcessingException(ErrorCode.rsInvalidOperation); } DataAggregate.ConvertToDoubleOrDecimal(typeCode, obj, out typeCode, out obj); if (this.m_expressionType == AspNetCore.ReportingServices.ReportProcessing.DataAggregate.DataTypeCode.Null) { this.m_expressionType = typeCode; } else if (typeCode != this.m_expressionType) { iErrorContext.Register(ProcessingErrorCode.rsAggregateOfMixedDataTypes, Severity.Warning); throw new ReportProcessingException(ErrorCode.rsInvalidOperation); } if (this.m_currentTotal == null) { this.m_currentTotalType = typeCode; this.m_currentTotal = obj; } else { this.m_currentTotal = DataAggregate.Add(this.m_currentTotalType, this.m_currentTotal, typeCode, obj); } } }
public override void Update(object[] expressions, IErrorContext iErrorContext) { object o = expressions[0]; AspNetCore.ReportingServices.ReportProcessing.DataAggregate.DataTypeCode typeCode = DataAggregate.GetTypeCode(o); if (!DataAggregate.IsNull(typeCode)) { this.m_currentTotal++; } }
public override void Update(object[] expressions, IErrorContext iErrorContext) { object obj = expressions[0]; AspNetCore.ReportingServices.ReportProcessing.DataAggregate.DataTypeCode typeCode = DataAggregate.GetTypeCode(obj); if (!DataAggregate.IsNull(typeCode)) { if (!DataAggregate.IsVariant(typeCode) || DataTypeUtility.IsSpatial(typeCode)) { iErrorContext.Register(ProcessingErrorCode.rsInvalidExpressionDataType, Severity.Warning); throw new ReportProcessingException(ErrorCode.rsInvalidOperation); } if (!this.m_distinctValues.ContainsKey(obj)) { this.m_distinctValues.Add(obj, null); } } }
public override void Update(object[] expressions, IErrorContext iErrorContext) { object obj = expressions[0]; AspNetCore.ReportingServices.ReportProcessing.DataAggregate.DataTypeCode typeCode = DataAggregate.GetTypeCode(obj); if (!DataAggregate.IsNull(typeCode)) { if (!DataAggregate.IsVariant(typeCode) || DataTypeUtility.IsSpatial(typeCode)) { iErrorContext.Register(ProcessingErrorCode.rsMinMaxOfNonSortableData, Severity.Warning); throw new ReportProcessingException(ErrorCode.rsInvalidOperation); } if (this.m_currentMax == null) { this.m_currentMax = obj; this.m_expressionType = typeCode; } else { bool flag = default(bool); int num = this.m_comparer.Compare(this.m_currentMax, obj, false, false, out flag); if (!flag) { if (typeCode != this.m_expressionType) { iErrorContext.Register(ProcessingErrorCode.rsAggregateOfMixedDataTypes, Severity.Warning); throw new ReportProcessingException(ErrorCode.rsInvalidOperation); } iErrorContext.Register(ProcessingErrorCode.rsMinMaxOfNonSortableData, Severity.Warning); } else if (num < 0) { this.m_currentMax = obj; this.m_expressionType = typeCode; } } } }
public override void Update(object[] expressions, IErrorContext iErrorContext) { object obj = expressions[0]; AspNetCore.ReportingServices.ReportProcessing.DataAggregate.DataTypeCode typeCode = DataAggregate.GetTypeCode(obj); if (!DataAggregate.IsNull(typeCode)) { if (!DataTypeUtility.IsSpatial(typeCode)) { iErrorContext.Register(ProcessingErrorCode.rsUnionOfNonSpatialData, Severity.Warning); throw new ReportProcessingException(ErrorCode.rsInvalidOperation); } if (this.m_expressionType == AspNetCore.ReportingServices.ReportProcessing.DataAggregate.DataTypeCode.Null) { this.m_expressionType = typeCode; } else if (typeCode != this.m_expressionType) { iErrorContext.Register(ProcessingErrorCode.rsUnionOfMixedSpatialTypes, Severity.Warning); throw new ReportProcessingException(ErrorCode.rsInvalidOperation); } if (this.m_currentUnion == null) { this.m_expressionType = typeCode; this.m_currentUnion = obj; } //else if (this.m_expressionType == AspNetCore.ReportingServices.ReportProcessing.DataAggregate.DataTypeCode.SqlGeometry) //{ // this.m_currentUnion = ((SqlGeometry)this.m_currentUnion).STUnion((SqlGeometry)obj); //} //else //{ // this.m_currentUnion = ((SqlGeography)this.m_currentUnion).STUnion((SqlGeography)obj); //} } }