Beispiel #1
0
        private static TypedMdxElement GetReplaceValue(List <IMdxElement> whereHierarhiesList)
        {
            var replaceValue = new TypedMdxElement();

            foreach (var whereHierarhies in whereHierarhiesList)
            {
                replaceValue._measures.Add(whereHierarhies);
            }
            return(replaceValue);
        }
Beispiel #2
0
        public void RemoveLastRow()
        {
            if (_rows == null)
            {
                return;
            }

            var removeDimensions = _rows.RemoveLast();

            if (removeDimensions != null &&
                removeDimensions.Length > 0 &&
                removeDimensions[0] is MdxValueElement)
            {
                var typedMdxElement = new TypedMdxElement(removeDimensions);

                _where.AddChildren(new[] { typedMdxElement });
            }
        }
        public void OrderTest()
        {
            var builder = TestMdxBuilderFactory.CreateBuilder();

            builder
            .Cube("Dashboard")
            .Rows(     //new MdxNonEmpty(
                new MdxHierarchy("[Delivery].[Delivery Key]")
                .Children()
                //)
                )
            .OrderBy("[Delivery].[Date]", "asc")
            ;

            var columns = new TypedMdxElement("Weight");

            builder
            .Columns(columns);

            var mdxQuery = builder.Build();

            Debug.Write(mdxQuery);

            var expectedQuery =
                @"SELECT
    {
        [Measures].[Weight]
    }
ON COLUMNS,
NON EMPTY(
[Delivery].[Delivery Key].children
,
    ORDER
    (
        ([Delivery].[Date].children),
        [Delivery].[Date].CurrentMember.Properties(""Key""),
        asc
    )
)
ON ROWS
FROM Dashboard";

            Assert.AreEqual(expectedQuery, mdxQuery, "Запрос по измерениям должен совпадать с образцом");
        }