This is a migrated thread and some comments may be shown as answers.

GridRelationFields DetailKeyField Issue

4 Answers 233 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Ramakrishna
Top achievements
Rank 1
Ramakrishna asked on 15 Jul 2011, 10:19 PM
Hi,

I have a Grid with parent child relation like below:

<

 

 

telerik:RadGrid ID="radgrdMeterData" runat="server" AutoGenerateColumns="false">

 

<

 

 

MasterTableView DataKeyNames="ea_meterdataid,ea_MeterDataType.Id" Width="100%" HierarchyLoadMode="Client"

 

 

 

 

 

 

 

HierarchyDefaultExpanded="false" Name="MeterData">

 

 

 

 

 

 

 

<DetailTables>

 

 

 

 

 

 

 

<telerik:GridTableView AutoGenerateColumns="false" Width="100%" DataKeyNames="ea_auxiliarymeterdatavaluesid,ea_MeterData.Id"

 

 

 

 

 

 

 

Name="AuxiliaryMeterData">

 

 

 

 

 

 

 

<ParentTableRelation>

 

 

 

 

 

 

 

<telerik:GridRelationFields DetailKeyField="ea_MeterData.Id" MasterKeyField="ea_meterdataid" />

 

 

 

 

 

 

 

</ParentTableRelation>

 

 

 

 

 

 

 

<Columns>

 

 

 

 

 

 

 

<telerik:GridTemplateColumn UniqueName="ea_auxiliarymeterdataname" HeaderText="Auxiliary Meter Data Name"

 

 

 

 

 

 

 

HeaderStyle-Width="160px">

 

 

 

 

 

 

 

<ItemTemplate>

 

 

 

 

 

 

 

<telerik:RadComboBox ID="radCmbAuxilarymeterdatatype" runat="server" OnClientSelectedIndexChanging="radCmbAuxilarymeterdatatype_SelectedIndexChanging">

 

 

 

 

 

 

 

</telerik:RadComboBox>

 

 

 

 

 

 

 

</ItemTemplate>

 

 

 

 

 

 

 

</telerik:GridTemplateColumn>
............

 

..............
 
in parent relation i given:
DetailKeyField="ea_MeterData.Id" MasterKeyField="ea_meterdataid"
when i given like this it given error like: Cannot find column [ea_MeterData.Id].
 actually i have a objectlist in that ea_MeterData is a calass in that Id is a property.

when i given same like in datakeys it accepted(see above code) but when i given in detailkeyfield it is not accepting and giving error like cannot find column

i need solution for this ASAP,

Thanks in advance

4 Answers, 1 is accepted

Sort by
0
Jayesh Goyani
Top achievements
Rank 2
answered on 16 Jul 2011, 07:03 AM
hi,
your code : DetailKeyField="ea_MeterData.Id" MasterKeyField="ea_meterdataid"

correct code :  DetailKeyField="Id" MasterKeyField="ea_meterdataid"

Issue :  ea_MeterData  is table name , Id is column name.
and we can only give column in grid so it gives error.

Thanks.
Jayesh Goyani
0
Ramakrishna
Top achievements
Rank 1
answered on 18 Jul 2011, 05:14 AM
Hi Jayesh Goyani,

Thanks for your answer, but ea_MeterData is not my table.
My actual scenario as follows(example):

Class ea_AuxiliaryMeterData
{
ea_MeterData ea_meterdata;
ea_AuxiliaryMeterData()
{
new ea_MeterData();
}
}

actually i need ea_AuxiliaryMeterData.ea_meterdata.id
so that only i written in datakeynames as ea_meterdata.id it is working 100% fine there
but in parent child relation it is not working and giving error as i said above.
Thanks.

0
Princy
Top achievements
Rank 2
answered on 18 Jul 2011, 09:46 AM
Hello Ramakrishna,

Check the following demo which implements ParentTableRelation with DetailKeyFields. Please make a double check with your code. Hope this helps.
Grid / Declarative Relations.

Thanks,
Princy.
0
Ramakrishna
Top achievements
Rank 1
answered on 18 Jul 2011, 11:54 AM
Hi Princy,
your solution not working for me.

Just imagine we have one class in that class we have another class object that object have some properties how we call that class from .cs code

its jst like parentclassobject.innerclassobject.innerclassproperty like this we need to call

then i have a situation like to add innerclass property as datakey name for my RadGrid how can i add
jst simply

DataKeyNames = "

 

 

innerclassobject.innerclassproperty" because i given parentclassobject as datasource for my radgrid is it right?

the above i said is working fine for my datakey name and i am successfully retrived that datakey value for each and every postback.

now i am in a situation like same data key name i need to put in parent child relation in DetailKeyField so that only i simpley given like DetailKeyField="innerclassobject.innerclassproperty" just imagine my inner class data source is (parentclassobject) my master table data source is different dataset.

here DetailkeyFiled is expecting string value i think that innerclassobject.innerclassproperty this is treated as string but it need to treat like innerclassobject is a object which is presented in the datasource and innerclassproperty is a property for that object.

but it simply try to take as string and its comparing all parentclassobject fields/properties but radgrid doesnt get any field with name "innerclassobject.innerclassproperty" so it simply returns there is no column with name innerclassobject.innerclassproperty.

i think my explanation given some clarity to u. plz thik in that way and give me solution ASAP

Tags
Grid
Asked by
Ramakrishna
Top achievements
Rank 1
Answers by
Jayesh Goyani
Top achievements
Rank 2
Ramakrishna
Top achievements
Rank 1
Princy
Top achievements
Rank 2
Share this question
or