/// <summary> /// Handles the primary measure. /// </summary> /// <param name="whereType">Type of the where.</param> /// <param name="complexDataQuerySelectionGroup">The complex data query selection group.</param> /// <param name="complexDataQuery">The complex data query.</param> private static void HandlePrimaryMeasure(DataParametersType whereType, IComplexDataQuerySelectionGroup complexDataQuerySelectionGroup, IComplexDataQuery complexDataQuery) { var primaryMeasure = complexDataQuery.DataStructure.PrimaryMeasure; foreach (IComplexComponentValue primaryMeasureValue in complexDataQuerySelectionGroup.PrimaryMeasureValue) { var primaryMeasureValueType = new PrimaryMeasureValueType(); SetOperatorAndValue(primaryMeasure, primaryMeasureValue, primaryMeasureValueType); whereType.PrimaryMeasureValue.Add(primaryMeasureValueType); } }
/// <summary> /// Handles the last updated time. /// </summary> /// <param name="complexDataQuery">The complex data query.</param> /// <param name="whereType">Type of the where.</param> private static void HandleLastUpdatedTime(IComplexDataQuery complexDataQuery, DataParametersType whereType) { foreach (var timeRange in complexDataQuery.LastUpdatedDateTimeRange) { var timeRangeValueType = new TimeRangeValueType(); var startTimePeriodRangeType = new TimePeriodRangeType(); startTimePeriodRangeType.isInclusive = timeRange.IsStartInclusive; startTimePeriodRangeType.TypedValue = timeRange.StartDate.DateInSdmxFormat; timeRangeValueType.StartPeriod = startTimePeriodRangeType; var endTimePeriodRangeType = new TimePeriodRangeType(); endTimePeriodRangeType.isInclusive = timeRange.IsEndInclusive; endTimePeriodRangeType.TypedValue = timeRange.StartDate.DateInSdmxFormat; timeRangeValueType.EndPeriod = endTimePeriodRangeType; whereType.Updated.Add(timeRangeValueType); } }
/// <summary> /// Handles the time. /// </summary> /// <param name="whereType">Type of the where.</param> /// <param name="complexDataQuerySelectionGroup">The complex data query selection group.</param> private static void HandleTime(DataParametersType whereType, IComplexDataQuerySelectionGroup complexDataQuerySelectionGroup) { var timeDimensionValueType = new TimeDimensionValueType(); if (complexDataQuerySelectionGroup.DateFrom != null) { var timePeriodValueType = new TimeValue(); timePeriodValueType.TypedValue = complexDataQuerySelectionGroup.DateFrom.DateInSdmxFormat; timePeriodValueType.@operator = complexDataQuerySelectionGroup.DateFromOperator.OrdOperator; timeDimensionValueType.TimeValue.Add(timePeriodValueType); } if (complexDataQuerySelectionGroup.DateTo != null) { var timePeriodValueType = new TimeValue(); timePeriodValueType.TypedValue = complexDataQuerySelectionGroup.DateTo.DateInSdmxFormat; timePeriodValueType.@operator = complexDataQuerySelectionGroup.DateToOperator.OrdOperator; timeDimensionValueType.TimeValue.Add(timePeriodValueType); } whereType.TimeDimensionValue.Add(timeDimensionValueType); }