/// <summary> /// Initializes a new instance of the <see cref="AnalysisProcessingValueResultColumnValue"/> class. /// </summary> /// <param name="resultColumn">Result column</param> /// <param name="yCategoryValue">Y category value</param> /// <param name="processingResultColumn">Processing result column</param> public AnalysisProcessingValueResultColumnValue(AnalysisValueResultColumn resultColumn, AnalysisProcessingYCategoryValue yCategoryValue, AnalysisProcessingResultColumn processingResultColumn) : base(processingResultColumn, yCategoryValue) { this.ResultColumn = resultColumn; this.ValueFunction = this.ResultColumn.ValueFunction; this.AggregationType = this.ResultColumn.AggregationType; if (this.ResultColumn.IsStatic) { this.valueAggregator = new AnalysisProcessingStaticValueAggregator(); } else if (this.ResultColumn.ValueOptions.IsText) { this.valueAggregator = new AnalysisProcessingStringValueAggregator(this.ResultColumn.ValueOptions); } else if (this.AggregationType != null) { this.valueAggregator = this.AggregationType.CreateValueAggregator(); } else { this.valueAggregator = new AnalysisProcessingSumValueAggregator(); } this.SignificantQueryResultTableIndices = this.ResultColumn.SignificantQueryResultTableIndices; if (this.SignificantQueryResultTableIndices.Count == 0) { this.SignificantQueryResultTableIndices = new List <object> { 0 }; } this.complete = true; }
private void ProcessingAnalysisConfiguration() { if (this.Analysis.Configuration.Values == null) { return; } foreach (var value in this.Analysis.Configuration.Values) { var valueField = new AnalysisValueField(this.Analysis, value); this.valueDictionary.SetObjectForKey(valueField, valueField.Key); var valueResultColumn = new AnalysisValueResultColumn(valueField); this.resultColumns.SetObjectForKey(valueResultColumn, valueField.Key); if (!valueField.IsCategory && !valueField.IsDefaultCategory && !valueField.IsXCategory) { continue; } var valueCategory = new AnalysisValueCategory(valueField); if (valueField.IsXCategory) { this.SetXCategory(valueCategory); } else { this.categoryDictionary.SetObjectForKey(valueCategory, valueCategory.Key); if (valueField.IsDefaultCategory) { this.SetDefaultCategory(valueCategory); } } } }