コード例 #1
0
 /// <summary>
 /// Create a instance of DataWhereStatmentSelectionGroup for SDMX 2.1 Version
 /// </summary>
 /// <param name="_group21">from DataWhereStatment ParseGroup21</param>
 public DataWhereStatmentSelectionGroup(IComplexDataQuerySelectionGroup _group21)
 {
     this.Group20 = null;
     this.Group21 = _group21;
     ParseGroup21();
 }
コード例 #2
0
 /// <summary>
 /// Create a instance of DataWhereStatmentSelectionGroup for SDMX 2.0 Version
 /// </summary>
 /// <param name="_group20">from DataWhereStatment ParseGroup20</param>
 public DataWhereStatmentSelectionGroup(IDataQuerySelectionGroup _group20)
 {
     this.Group20 = _group20;
     this.Group21 = null;
     ParseGroup20();
 }
        /// <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);
            }
        }
コード例 #4
0
 /// <summary>
 /// Generates sql where clauses from <paramref name="time"/>
 /// </summary>
 /// <param name="time">
 /// The <see cref="IComplexDataQuerySelectionGroup"/> 
 /// </param>
 /// <param name="info">
 /// The current data retrieval state 
 /// </param>
 /// /// </param>
 /// <param name="freqValue">
 /// The frequency value 
 /// </param>
 /// <returns>
 /// The string containing the time part of the WHERE in an SQL query. 
 /// </returns>
 private static string GenerateWhereClause(IComplexDataQuerySelectionGroup time, DataRetrievalInfo info, string freqValue)
 {
     return info.TimeTranscoder != null ? info.TimeTranscoder.GenerateWhere(time.DateFrom, time.DateTo, freqValue) : string.Empty;
 }
        /// <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);
        }