/// <summary> Gets a scalar value, calculated with the aggregate and expression specified. the field index specified is the field the expression and aggregate are applied on.</summary> /// <param name="fieldIndex">Field index of field to which to apply the aggregate function and expression</param> /// <param name="expressionToExecute">The expression to execute. Can be null</param> /// <param name="aggregateToApply">Aggregate function to apply. </param> /// <param name="filter">The filter to apply to retrieve the scalar</param> /// <param name="relations">The relations to walk</param> /// <param name="groupByClause">The groupby clause to apply to retrieve the scalar</param> /// <returns>the scalar value requested</returns> public virtual object GetScalar(ObserverDataSetFieldIndex fieldIndex, IExpression expressionToExecute, AggregateFunction aggregateToApply, IPredicate filter, IRelationCollection relations, IGroupByCollection groupByClause) { EntityFields fields = new EntityFields(1); fields[0] = EntityFieldFactory.Create(fieldIndex); if ((fields[0].ExpressionToApply == null) || (expressionToExecute != null)) { fields[0].ExpressionToApply = expressionToExecute; } if ((fields[0].AggregateFunctionToApply == AggregateFunction.None) || (aggregateToApply != AggregateFunction.None)) { fields[0].AggregateFunctionToApply = aggregateToApply; } ObserverDataSetDAO dao = DAOFactory.CreateObserverDataSetDAO(); return(dao.GetScalar(fields, base.Transaction, filter, relations, groupByClause)); }
/// <summary>Creates a new IEntityField instance for usage in the EntityFields object for the ObserverDataSetEntity. Which EntityField is created is specified by fieldIndex</summary> /// <param name="fieldIndex">The field which IEntityField instance should be created</param> /// <returns>The IEntityField instance for the field specified in fieldIndex</returns> public static IEntityField Create(ObserverDataSetFieldIndex fieldIndex) { IFieldInfo info = FieldInfoProviderSingleton.GetInstance().GetFieldInfo("ObserverDataSetEntity", (int)fieldIndex); return(new EntityField(info, PersistenceInfoProviderSingleton.GetInstance().GetFieldPersistenceInfo(info.ContainingObjectName, info.Name))); }
/// <summary> Gets a scalar value, calculated with the aggregate and expression specified. the field index specified is the field the expression and aggregate are applied on.</summary> /// <param name="fieldIndex">Field index of field to which to apply the aggregate function and expression</param> /// <param name="expressionToExecute">The expression to execute. Can be null</param> /// <param name="aggregateToApply">Aggregate function to apply. </param> /// <returns>the scalar value requested</returns> public object GetScalar(ObserverDataSetFieldIndex fieldIndex, IExpression expressionToExecute, AggregateFunction aggregateToApply) { return(GetScalar(fieldIndex, expressionToExecute, aggregateToApply, null, null, null)); }
/// <summary> Gets a scalar value, calculated with the aggregate and expression specified. the field index specified is the field the expression and aggregate are applied on.</summary> /// <param name="fieldIndex">Field index of field to which to apply the aggregate function and expression</param> /// <param name="expressionToExecute">The expression to execute. Can be null</param> /// <param name="aggregateToApply">Aggregate function to apply. </param> /// <param name="filter">The filter to apply to retrieve the scalar</param> /// <param name="groupByClause">The groupby clause to apply to retrieve the scalar</param> /// <returns>the scalar value requested</returns> public object GetScalar(ObserverDataSetFieldIndex fieldIndex, IExpression expressionToExecute, AggregateFunction aggregateToApply, IPredicate filter, IGroupByCollection groupByClause) { return(GetScalar(fieldIndex, expressionToExecute, aggregateToApply, filter, null, groupByClause)); }
/// <summary> Gets a scalar value, calculated with the aggregate. the field index specified is the field the aggregate are applied on.</summary> /// <param name="fieldIndex">Field index of field to which to apply the aggregate function and expression</param> /// <param name="aggregateToApply">Aggregate function to apply. </param> /// <returns>the scalar value requested</returns> public object GetScalar(ObserverDataSetFieldIndex fieldIndex, AggregateFunction aggregateToApply) { return(GetScalar(fieldIndex, null, aggregateToApply, null, null, null)); }