public void WhereTest() { var builder = new MdxWhereElement() .Set( new List <IMdxElement> { new MdxHierarchy("[Ent FirstLevels - Name]") .Value("Мотовилов Андрей Александрович"), new MdxHierarchy("[Ent Goods].[Ent Group NMK - Name]") .Value("1. КИСЛОМОЛОЧНАЯ группа") } ); var dc = new MdxDrawContext(); builder.Draw(dc); var mdxQuery = dc.ToString(); var expectedQuery = @"WHERE ( [Ent FirstLevels - Name].&[Мотовилов Андрей Александрович], [Ent Goods].[Ent Group NMK - Name].&[1. КИСЛОМОЛОЧНАЯ группа] )"; Assert.AreEqual(expectedQuery, mdxQuery, "Запрос по измерениям должен совпадать с образцом"); }
public string Build() { if (_where != null) { PreBuild(); } _dc = new MdxDrawContext(); if (_with != null) { _with.Draw(_dc); } _dc.AppendLine("SELECT"); if (_columns != null) { _columns.Draw(_dc); } else { _dc.AppendLine("{}"); _dc.AppendLine("ON COLUMNS,"); } if (_columns != null && _rows != null && !_rows.IsEmpty()) { _dc.AppendLine(","); } else { _dc.EndOfLine(); } if (_rows != null) { _rows.Draw(_dc); } DrawFrom(); if (_where != null && _where.GetChildren().Any()) { _dc.EndOfLine(); _where.Draw(_dc); } return(_dc.ToString()); }
public void HierarchyValueTest() { var builder = new MdxHierarchy("[Ent Contacts].[Ent MainManagers - Id]") .Value("175"); var dc = new MdxDrawContext(); builder.Draw(dc); var mdxQuery = dc.ToString(); var expectedQuery = "[Ent Contacts].[Ent MainManagers - Id].&[175]"; Assert.AreEqual(expectedQuery, mdxQuery, "Запрос по измерениям должен совпадать с образцом"); }
public void NonEmptyHierarchyTest() { var builder = new MdxHierarchy("[Ent Contacts].[Ent MainManagers - Id]") .NotEmpty(); var dc = new MdxDrawContext(); builder.Draw(dc); var mdxQuery = dc.ToString(); var expectedQuery = @"NON EMPTY ( [Ent Contacts].[Ent MainManagers - Id])"; Assert.AreEqual(expectedQuery, mdxQuery, "Запрос по измерениям должен совпадать с образцом"); }
public void Draw(MdxDrawContext dc) { _mdxValueElement.Draw(dc); }