Hi,
here you go with a sample that generates the issue.
Ext.Net version: 3.2.1
Ext.Js Version: 5.1.1.451
Browser: Chrome
Steps to reproduce:
- Click on “Task†Header
- Click on Group By this field
The error is:
ext.axd?v=27471:130810 Uncaught TypeError: Cannot set property 'raw' of undefined
The error line is:
metaGroup.raw = group.getAt(0).get(groupField);
View code:
<!DOCTYPE html>
<script runat="server">
Protected Sub Page_Load(sender As Object, e As EventArgs)
Dim ci As New Globalization.CultureInfo("en-US")
Dim store As Store = Me.GridPanel1.GetStore()
store.DataSource = New List(Of Project)() From { _
New Project(102, "Ext Grid: Summary Rows", 107, "Dynamic summary updates in editor grids", 6, 125, _
0, ParseExact("07/05/2007", ci)), _
New Project(102, "Ext Grid: Summary Rows", 108, "Remote summary integration", 4, 125, _
0, ParseExact("07/05/2007", ci)), _
New Project(102, "Ext Grid: Summary Rows", 109, "Summary renderers and calculators", 4, 125, _
0, ParseExact("07/06/2007", ci)), _
New Project(102, "Ext Grid: Summary Rows", 110, "Integrate summaries with GroupingView", 10, 125, _
0, ParseExact("07/11/2007", ci)), _
New Project(102, "Ext Grid: Summary Rows", 111, "Testing and debugging", 8, 125, _
0, ParseExact("07/15/2007", ci)) , _
New Project(102, "Test Grouping null", 111, Nothing, 8,125, _
0, ParseExact("07/15/2007", ci)) _
}
store.DataBind()
End Sub
Private Function ParseExact(dateString As String, ByRef culture As Globalization.CultureInfo) As DateTime
Return DateTime.ParseExact(dateString, "MM/dd/yyyy", culture)
End Function
Public Class Project
Public Sub New(projectId As Integer, name As String, taskId As Integer, description As String, estimate As Integer, rate As Double, _
cost As Double, due As DateTime)
Me.ProjectID = projectId
Me.Name = name
Me.TaskID = taskId
Me.Description = description
Me.Estimate = estimate
Me.Rate = rate
Me.Due = due
End Sub
Public Property ProjectID() As Integer
Get
Return m_ProjectID
End Get
Set(value As Integer)
m_ProjectID = Value
End Set
End Property
Private m_ProjectID As Integer
Public Property Name() As String
Get
Return m_Name
End Get
Set(value As String)
m_Name = Value
End Set
End Property
Private m_Name As String
Public Property TaskID() As Integer
Get
Return m_TaskID
End Get
Set(value As Integer)
m_TaskID = Value
End Set
End Property
Private m_TaskID As Integer
Public Property Description() As String
Get
Return m_Description
End Get
Set(value As String)
m_Description = Value
End Set
End Property
Private m_Description As String
Public Property Estimate() As Integer
Get
Return m_Estimate
End Get
Set(value As Integer)
m_Estimate = Value
End Set
End Property
Private m_Estimate As Integer
Public Property Rate() As Double
Get
Return m_Rate
End Get
Set(value As Double)
m_Rate = Value
End Set
End Property
Private m_Rate As Double
Public Property Cost() As Double
Get
Return m_Cost
End Get
Set(value As Double)
m_Cost = Value
End Set
End Property
Private m_Cost As Double
Public Property Due() As DateTime
Get
Return m_Due
End Get
Set(value As DateTime)
m_Due = Value
End Set
End Property
Private m_Due As DateTime
End Class
</script>
<html>
<head id="Head2" runat="server">
<title>Debug</title>
</head>
<body>
<form id="Form2" runat="server">
<ext:ResourceManager
ID="ResourceManager2"
runat="server"
Namespace="MyNamespace"
CleanResourceUrl="true"
SourceFormatting="true"
InitScriptMode="Inline"
ScriptMode="Debug" />
<ext:Viewport runat="server">
<Items>
<ext:FormPanel runat="server" Width="800" MonitorResize="true" Title="FormPanel" Border="true">
<LayoutConfig>
<ext:FormLayoutConfig LabelWidth="100" />
</LayoutConfig>
<Items>
<ext:GridPanel
ID="GridPanel1"
runat="server"
Width="800"
Height="450">
<Store>
<ext:Store ID="Store1" runat="server">
<Sorters>
<ext:DataSorter Property="Due" Direction="DESC" />
</Sorters>
<Model>
<ext:Model ID="Model1" runat="server" IDProperty="TaskID">
<Fields>
<ext:ModelField Name="ProjectID" />
<ext:ModelField Name="Name" />
<ext:ModelField Name="TaskID" />
<ext:ModelField Name="Description" />
<ext:ModelField Name="Estimate" Type="Int" />
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<ColumnModel ID="ColumnModel1" runat="server">
<Columns>
<ext:Column ID="SummaryColumn1"
runat="server"
TdCls="task"
Text="Task"
Sortable="true"
DataIndex="Description"
Width="100"
Hideable="false">
</ext:Column>
<ext:Column ID="Column1" runat="server" Text="Project" DataIndex="Name" Width="100" />
<ext:Column ID="SummaryColumn3"
runat="server"
Width="100"
Text="Estimate"
Sortable="true"
DataIndex="Estimate">
</ext:Column>
<ext:Column
runat="server"
Width="100"
ID="Cost"
Text="Cost"
Sortable="false"
Groupable="false"
DataIndex="Cost">
</ext:Column>
</Columns>
</ColumnModel>
<Features>
<ext:Grouping
ID="Grouping1"
runat="server"
HideGroupedHeader="true"
StartCollapsed="false"
GroupHeaderTplString='{columnName}: {name} ({rows.length})' />
</Features>
</ext:GridPanel>
</Items>
</ext:FormPanel>
</Items>
</ext:Viewport>
</form>
</body>
</html>
Thank you.