簡単な SQL ステートメントをアタッチしようとしているテスト DX ピボット グリッドがあります (私が知っているかなり陳腐な例ですが、ここでは「概念実証」を行っているだけです)。
@Html.DevExpress().PivotGrid(settings =>
{
settings.Name = "pivotGrid";
settings.CallbackRouteValues = new { Controller = "Home", Action = "PivotGridPartial" };
settings.OptionsView.ShowHorizontalScrollBar = true;
settings.Height = new Unit(887, UnitType.Pixel);
settings.Width = new Unit(100, UnitType.Percentage);
settings.OptionsCustomization.CustomizationFormStyle = CustomizationFormStyle.Excel2007;
var dataTable = new DataTable();
using (var con = new SqlConnection(@"Data Source=.\WHATEVER;Initial Catalog=WhatEver;integrated security=true;"))
{
con.Open();
var adapter = new SqlDataAdapter("select * from dbo.WhatEver", con);
adapter.Fill(dataTable);
}
settings.PreRender = (sender, e) =>
{
var pivot = ((MVCxPivotGrid)sender);
pivot.DataSource = dataTable;
pivot.RetrieveFields(PivotArea.FilterArea, false);
pivot.BeginUpdate();
pivot.Fields["Client"].Area = PivotArea.RowArea;
pivot.Fields["Client"].Visible = true;
pivot.Fields["Brand"].Area = PivotArea.RowArea;
pivot.Fields["Brand"].Visible = true;
pivot.Fields["Volume"].Area = PivotArea.DataArea;
pivot.Fields["Volume"].Visible = true;
pivot.EndUpdate();
};
}).GetHtml()
これはロード時に完全に機能しますが、ディメンションの 1 つを展開したり、別のページに変更しようとすると、グリッドが空白になります。つまり、データが割り当てられていないように見えます。
誰かが理由について考えているでしょうか?OLAP キューブの使用を想定していないピボット グリッドと DX に関連するものは何も見つかりません。私が見つけた例 (Access 全体) は、私が試みていることを実行しているように見えますが、明らかに何かが欠けています!
前もって感謝します!