I currently have a 3 level hierarchical grid that for the most part works fine. However, when I try to add a second GridRelationField between my 2nd and 3rd levels, I get the following error:
Microsoft JScript runtime error: Sys.WebForms.PageRequestManagerServerErrorException: Syntax error in the expression.
The front-side code (starting from the 2nd level) is below. I've bolded the GridRelationField that's giving the error. If I take that out and just have the MasterLogID as a GridRelationField, that works fine. The grid itself is bound to a dataset that has three datatables, one for each level of the hierarchy. Is there something that I'm missing in the Telerik code or the dataset that's causing this?
<telerik:GridTableView DataKeyNames="MasterLogID" DataMember="LogMaster" Width="100%" AutoGenerateColumns="false" runat="server" PagerStyle-Visible="false">
<ParentTableRelation>
<telerik:GridRelationFields MasterKeyField="MasterLogID" DetailKeyField="MasterLogID" />
</ParentTableRelation>
<DetailTables>
<telerik:GridTableView DataKeyNames="MasterLogID" DataMember="LogDetails" Width="100%" AutoGenerateColumns="false" runat="server" PagerStyle-Visible="false">
<ParentTableRelation>
<telerik:GridRelationFields MasterKeyField="MasterLogID" DetailKeyField="MasterLogID" />
<telerik:GridRelationFields MasterKeyField="ProcessType" DetailKeyField="ProcessType" />
</ParentTableRelation>
<Columns>
<telerik:GridBoundColumn Visible="false" DataField="MasterLogID" UniqueName="LDMasterLogID"></telerik:GridBoundColumn>
<telerik:GridBoundColumn Visible="true" DataField="ProcessType" UniqueName="LDProcessType"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Source" DataField="ProcessSource" UniqueName="LDProcessSource" SortExpression="ProcessSource"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Success" DataField="IsProcessSuccess" UniqueName="LDIsProcessSuccess" SortExpression="IsProcessSuccess"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Reference" DataField="ProcessReference" UniqueName="LDProcessReference" SortExpression="ProcessReference"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Description" DataField="ProcessDesc" UniqueName="LDProcessDesc" SortExpression="ProcessDesc"></telerik:GridBoundColumn>
</Columns>
</telerik:GridTableView>
</DetailTables>
<Columns>
<telerik:GridBoundColumn Visible="false" DataField="MasterLogID" UniqueName="LMMasterLogID"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Type" DataField="ProcessType" UniqueName="LMProcessType" SortExpression="ProcessType"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Process" DataField="ProcessName" UniqueName="LMProcessName" SortExpression="ProcessName"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Date" DataField="ProcessDate" UniqueName="LMProcessDate" SortExpression="ProcessDate" DataFormatString="{0:G}"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Status" DataField="ProcessStatus" UniqueName="LMProcessStatus" SortExpression="ProcessStatus"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Reference" DataField="ProcessReference" UniqueName="LMProcessReference" SortExpression="ProcessReference"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Description" DataField="ProcessDesc" UniqueName="LMProcessDesc" SortExpression="ProcessDesc"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Records" DataField="ProcessRecords" UniqueName="LMProcessRecords" SortExpression="ProcessRecords"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Success" DataField="ProcessSuccess" UniqueName="LMProcessSuccess" SortExpression="ProcessSuccess"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Failed" DataField="ProcessFailed" UniqueName="LMProcessFailed" SortExpression="ProcessFailed"></telerik:GridBoundColumn>
</Columns>
</telerik:GridTableView>
Microsoft JScript runtime error: Sys.WebForms.PageRequestManagerServerErrorException: Syntax error in the expression.
The front-side code (starting from the 2nd level) is below. I've bolded the GridRelationField that's giving the error. If I take that out and just have the MasterLogID as a GridRelationField, that works fine. The grid itself is bound to a dataset that has three datatables, one for each level of the hierarchy. Is there something that I'm missing in the Telerik code or the dataset that's causing this?
<telerik:GridTableView DataKeyNames="MasterLogID" DataMember="LogMaster" Width="100%" AutoGenerateColumns="false" runat="server" PagerStyle-Visible="false">
<ParentTableRelation>
<telerik:GridRelationFields MasterKeyField="MasterLogID" DetailKeyField="MasterLogID" />
</ParentTableRelation>
<DetailTables>
<telerik:GridTableView DataKeyNames="MasterLogID" DataMember="LogDetails" Width="100%" AutoGenerateColumns="false" runat="server" PagerStyle-Visible="false">
<ParentTableRelation>
<telerik:GridRelationFields MasterKeyField="MasterLogID" DetailKeyField="MasterLogID" />
<telerik:GridRelationFields MasterKeyField="ProcessType" DetailKeyField="ProcessType" />
</ParentTableRelation>
<Columns>
<telerik:GridBoundColumn Visible="false" DataField="MasterLogID" UniqueName="LDMasterLogID"></telerik:GridBoundColumn>
<telerik:GridBoundColumn Visible="true" DataField="ProcessType" UniqueName="LDProcessType"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Source" DataField="ProcessSource" UniqueName="LDProcessSource" SortExpression="ProcessSource"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Success" DataField="IsProcessSuccess" UniqueName="LDIsProcessSuccess" SortExpression="IsProcessSuccess"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Reference" DataField="ProcessReference" UniqueName="LDProcessReference" SortExpression="ProcessReference"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Description" DataField="ProcessDesc" UniqueName="LDProcessDesc" SortExpression="ProcessDesc"></telerik:GridBoundColumn>
</Columns>
</telerik:GridTableView>
</DetailTables>
<Columns>
<telerik:GridBoundColumn Visible="false" DataField="MasterLogID" UniqueName="LMMasterLogID"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Type" DataField="ProcessType" UniqueName="LMProcessType" SortExpression="ProcessType"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Process" DataField="ProcessName" UniqueName="LMProcessName" SortExpression="ProcessName"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Date" DataField="ProcessDate" UniqueName="LMProcessDate" SortExpression="ProcessDate" DataFormatString="{0:G}"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Status" DataField="ProcessStatus" UniqueName="LMProcessStatus" SortExpression="ProcessStatus"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Reference" DataField="ProcessReference" UniqueName="LMProcessReference" SortExpression="ProcessReference"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Description" DataField="ProcessDesc" UniqueName="LMProcessDesc" SortExpression="ProcessDesc"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Records" DataField="ProcessRecords" UniqueName="LMProcessRecords" SortExpression="ProcessRecords"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Success" DataField="ProcessSuccess" UniqueName="LMProcessSuccess" SortExpression="ProcessSuccess"></telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText="Failed" DataField="ProcessFailed" UniqueName="LMProcessFailed" SortExpression="ProcessFailed"></telerik:GridBoundColumn>
</Columns>
</telerik:GridTableView>