When the RadPivotGrid is Ajaxified from the RadAjaxManager, the paging functionality doesn't work as intended.
Steps to reproduce:
The issue can be replicated in the OLAP and KPIs Support demo.
Steps to replicate the issue:
Steps to reproduce:
Use the following live demo - https://demos.telerik.com/aspnet-ajax/pivotgrid/examples/olap/defaultcs.aspx
1. Open the filter dialog for the Year field residing in the ColumnFields and filter by selecting a single Year. (e.g. 2010)
2. Move the Year field to the Filter Fields and Update the Layout
As result, the 2010 filter is not applied anymore but opening the Filter Window keeps the same filter value still selected.
Demonstrating the issue in a basic sample - http://somup.com/c36ilGveZL
While working on pivot grid, we observe that the filtering condition is applied. But there is no visual indicator showing that the current pivot has applied a filtering condition on a given column.
For instance, the following captured picture is obtained from the demo page. I selected Beverages in the "Category" filter and applied it to the pivot grid.
However, there is no visual clue to tell me how many filtering columns are been used at the moment.
Here is how the filtered and non-filtered fields appear in MS Excel:
Hi,
At first I received the same error in this thread and applied the fixed as suggested. This works ok until I Edit Fields in the Designer. On saving the changes the OLAP settings are placed back into the code. I am then required to delete the code to fix this problem. I am constantly back-and-forth using Edit Fields while building my application.
I don't see this as a Feature Request as suggested in the thread, rather a Bug based on this behavior.
https://www.telerik.com/forums/pivotgrid-problem
<OlapSettings>
<XmlaConnectionSettings Encoding="utf-8"></XmlaConnectionSettings>
</OlapSettings>
When defining more than 11 PivotGridColumnField(s), an error is thrown: "An item with the same key has already been added."
Set up to reproduce:
<telerik:RadPivotGrid ID="RadPivotGrid1" runat="server" EmptyValue="No data" AllowPaging="true" PageSize="10"
OnNeedDataSource="RadPivotGrid1_NeedDataSource">
<Fields>
<telerik:PivotGridRowField DataField="ShipCountry" UniqueName="ShipCountry">
</telerik:PivotGridRowField>
<telerik:PivotGridAggregateField DataField="Freight" UniqueName="Freight">
</telerik:PivotGridAggregateField>
<telerik:PivotGridColumnField DataField="ShipCountry1" UniqueName="ShipCountry1"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry2" UniqueName="ShipCountry2"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry3" UniqueName="ShipCountry3"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry4" UniqueName="ShipCountry4"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry5" UniqueName="ShipCountry5"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry6" UniqueName="ShipCountry6"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry7" UniqueName="ShipCountry7"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry8" UniqueName="ShipCountry8"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry9" UniqueName="ShipCountry9"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry10" UniqueName="ShipCountry10"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry11" UniqueName="ShipCountry11"></telerik:PivotGridColumnField>
<telerik:PivotGridColumnField DataField="ShipCountry12" UniqueName="ShipCountry12"></telerik:PivotGridColumnField>
</Fields>
</telerik:RadPivotGrid>
C#
protected void RadPivotGrid1_NeedDataSource(object sender, PivotGridNeedDataSourceEventArgs e)
{
(sender as RadPivotGrid).DataSource = OrdersTable();
}
private DataTable OrdersTable()
{
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("OrderID", typeof(int)));
dt.Columns.Add(new DataColumn("OrderDate", typeof(DateTime)));
dt.Columns.Add(new DataColumn("Freight", typeof(decimal)));
dt.Columns.Add(new DataColumn("ShipCountry", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry1", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry2", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry3", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry4", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry5", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry6", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry7", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry8", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry9", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry10", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry11", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry12", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry13", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry14", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry15", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry16", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry17", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry18", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry19", typeof(string)));
dt.Columns.Add(new DataColumn("ShipCountry20", typeof(string)));
dt.PrimaryKey = new DataColumn[] { dt.Columns["OrderID"] };
for (int i = 0; i < 70; i++)
{
int index = i + 1;
DataRow row = dt.NewRow();
row["OrderID"] = index;
row["OrderDate"] = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 0, 0, 0).AddHours(index);
row["Freight"] = index * 0.1 + index * 0.01;
row["ShipCountry"] = "Country " + index;
row["ShipCountry1"] = "Country " + index;
row["ShipCountry2"] = "Country " + index;
row["ShipCountry3"] = "Country " + index;
row["ShipCountry4"] = "Country " + index;
row["ShipCountry5"] = "Country " + index;
row["ShipCountry6"] = "Country " + index;
row["ShipCountry7"] = "Country " + index;
row["ShipCountry8"] = "Country " + index;
row["ShipCountry9"] = "Country " + index;
row["ShipCountry10"] = "Country " + index;
row["ShipCountry11"] = "Country " + index;
row["ShipCountry12"] = "Country " + index;
row["ShipCountry13"] = "Country " + index;
row["ShipCountry14"] = "Country " + index;
row["ShipCountry15"] = "Country " + index;
row["ShipCountry16"] = "Country " + index;
row["ShipCountry17"] = "Country " + index;
row["ShipCountry18"] = "Country " + index;
row["ShipCountry19"] = "Country " + index;
row["ShipCountry20"] = "Country " + index;
dt.Rows.Add(row);
}
return dt;
}
When the scrolling is enabled and Skin set to Bootstrap, the rows are misaligned:
1) want to Set Column Resize for Pivot grid same like Rad Grid. Is there any way to do Column resize at runtime same like Rad grid. Customer wants the pivot grid column should be resized at runtime same like the RAD Grid.Which will be more easy and user friendly for the Customers. 2) Need Key board Navigation in Pivot grid same like Radgrid. Customer want Keyboard Navigation for Pivot Grid same like rag Grid.its hard for the customers to use scrolling for every time to see the large no of columns . Is there any way to do Key board Navigation for the Pivot grid.
One of my PivotGridColumnField's is a smalldatetime field from SQL Server. In the PivotGrid column header labels I want the dates to be formatted as MMM-yy, like Aug-15. I can accomplish that for the detail columns (the non-aggregate columns) by setting the DataFormatString="{0:MMM-yy}" But that format string is NOT applied to the label of the column total header. The aggregate column header label still reads: "08/01/2015 00:00:00 Total" If you allow a custom format to the detail column headers, it would be logical to assume I want that same custom format used in the aggregate column header. So in my example, that label should display: Aug-15 Total I was told in the Forum that I'd have to parse that column header string in the CellDataBound Event to get the date portion and then format it and use that to set the header text. That is a very UGLY solution. I don't want to strip the word "Total" out of that string and then then convert the date that remains to a string in the date format I want. Thanks, Brent
Hi Team, Using Persisting Pivot Settings : Filter Settings is being saved in filter window after clicking cancel button (Ex : http://demos.telerik.com/aspnet-ajax/pivotgrid/examples/applicationscenarios/persisting-radpivotgrid-settings/defaultcs.aspx?product=persistenceframework) 1. Click on any filter icon in Pivot Grid (CategoryName filter icon) 2. Deselect first item from the list in pop up window (like Beverages) 3. Click Cancel 4. Filter is not applied on Pivot Grid which is perfect 5. Click on same filter icon (CategoryName filter icon) 6. Observe that it is still showing first item as not selected (though the filter was cancelled and is not present on grid as well) Expected : When we click cancel on Filter Window, the changes done should be removed.
When adding a calculated column to give you something like the Avg Price. The column appears across the whole pivot grid. So say you have your totalprice and qty showing for different stores. So the grid groups by stores. When you add the grandtotal calculation you get a new column added to each store. I don't want the avg price added to each store .. I only want to see the average price in the grand totals section to the right? Thanks.
Currently, you have ColumnGroupsDefaultExpanded and RowGroupsDefaultExpanded available for the PivotGrid. I would like to request an ExpandedGroupsBehavior that allows you to set a particular level to expand to. To better explain this, the WPF PivotGrid has this. Here is a the documentation: http://docs.telerik.com/devtools/wpf/controls/radpivotgrid/features/expand-behavior.html Thank you
It will be useful to have sorting feature in PivotGridAggregateField. For example as in attachment one may want to sort the grades of students as me :) Looking forward to have sorting feature in new releases.
The RadGrid attachment shows the Data I need to present in the form of rows of Products each with a start date.
HOWEVER, I need to present the data "per start date" so basically the Date would be a Column Header, then each date would show the duration, start time, and price under each Start Date.
The PivotGrid attachment shows how I was able to take the same data and present it with the start date as a column but is not sufficient for my needs. I need to be able to Page by Start Date, so essentially a custom pager that keeps track of the Start Date and only shows like 3 days at a time. So in the screenshot you see Sept 9th through Sept 25, however I would like to have the pager control which rows are presented and then be able to page on the date column rather than showing the full month with a horizontal scrollbar.
The full stract trace of the error can be found in the attached file.
The aggregates functions highlighted in the attached screenshots have common names that are used in the industry and as such they are not localized. This feature request is so that their names can be localized through global resx files along with other strings in the RadPivotGrid control. In the meantime, you can use the ItemDataBound event to change cell texts based on your requirements. You can find similar examples here: https://demos.telerik.com/aspnet-ajax/pivotgrid/examples/appearance/conditionalformatting/defaultcs.aspx For example, to change the Sum aggregate name in the column header, you can do this: else if (e.Cell is PivotGridColumnHeaderCell) { PivotGridColumnHeaderCell cell = e.Cell as PivotGridColumnHeaderCell; cell.Text = cell.Text.Replace("Sum ", "custom ");