/// <summary> /// The Result. /// </summary> /// <param name="figures">The figures<see cref="IFigures"/>.</param> /// <param name="onlyView">The onlyView<see cref="bool"/>.</param> /// <returns>The <see cref="IFigure"/>.</returns> private static IFigure Result(IFigures figures, bool onlyView = true) { IRubrics summaryRubrics = figures.Treatment.SummaryRubrics; if (summaryRubrics.Count > 0) { object[] result = summaryRubrics.AsValues().AsParallel().SelectMany(s => new object[] { (!string.IsNullOrEmpty(s.RubricName)) ? (s.SummaryOperand == AggregateOperand.Sum) ? Convert.ChangeType(figures .Sum (j => (j[s.SummaryOrdinal] is DateTime) ? ((DateTime)j[s.SummaryOrdinal]).ToOADate() : Convert.ToDouble(j[s.FieldId])), typeof(object)) : (s.SummaryOperand == AggregateOperand.Min) ? Convert.ChangeType(figures .Min (j => (j[s.SummaryOrdinal] is DateTime) ? ((DateTime)j[s.SummaryOrdinal]).ToOADate() : Convert.ToDouble(j[s.FieldId])), typeof(object)) : (s.SummaryOperand == AggregateOperand.Max) ? Convert.ChangeType(figures .Max (j => (j[s.SummaryOrdinal] is DateTime) ? ((DateTime)j[s.SummaryOrdinal]).ToOADate() : Convert.ToDouble(j[s.FieldId])), typeof(object)) : (s.SummaryOperand == AggregateOperand.Avg) ? Convert.ChangeType(figures .Average (j => (j[s.SummaryOrdinal] is DateTime) ? ((DateTime)j[s.SummaryOrdinal]).ToOADate() : Convert.ToDouble(j[s.FieldId])), typeof(object)) : (s.SummaryOperand == AggregateOperand.Bis) ? Convert.ChangeType(figures.Select(j => (j[s.FieldId] != DBNull.Value) ? j[s.FieldId].ToString() : "") .Aggregate((x, y) => x + " " + y), typeof(object)) : null : null } ).ToArray(); figures.Summary.ValueArray = result; return(figures.Summary); } else { return(null); } }
public DataReader(IFigures resultset) { m_resultset = resultset.Rubrics; x_size = resultset.Rubrics.Count; m_values = resultset.Select(p => new object[] { p.SerialCode } .Concat(p.ValueArray).ToArray()).ToArray(); y_size = m_values.Length; }
public DataReader(FigureCard[] resultset) { if (resultset.Length > 0) { m_resultset = resultset.First().Figures.Rubrics; x_size = m_resultset.Count; m_values = resultset.Select(p => new object[] { p.SerialCode } .Concat(p.ValueArray).ToArray()).ToArray(); y_size = m_values.Length; } }
private void Dispose(bool disposing) { if (disposing) { try { m_values = null; m_resultset = null; this.Close(); } catch (Exception e) { throw new SystemException("An exception of type " + e.GetType() + " was encountered while closing the TemplateDataReader."); } } }
/// <summary> /// Initializes a new instance of the <see cref="Link"/> class. /// </summary> /// <param name="origin">The origin<see cref="IFigures"/>.</param> /// <param name="target">The target<see cref="IFigures"/>.</param> /// <param name="keyRubrics">The keyRubrics<see cref="IRubrics"/>.</param> public Link(IFigures origin, IFigures target, IRubrics keyRubrics) : this(origin, target) { foreach (IUnique rubric in keyRubrics) { var originRubric = origin.Rubrics[rubric]; var targetRubric = target.Rubrics[rubric]; if (originRubric != null && targetRubric != null) { OriginKeys.Add(originRubric); TargetKeys.Add(targetRubric); } else { throw new IndexOutOfRangeException("Rubric not found"); } OriginKeys.Update(); TargetKeys.Update(); } }
/// <summary> /// Initializes a new instance of the <see cref="MathRubrics"/> class. /// </summary> /// <param name="rubrics">The rubrics<see cref="IRubrics"/>.</param> public MathRubrics(IRubrics rubrics) { Rubrics = rubrics; Data = rubrics.Figures; }