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

Validation not firing in detail tables of hierarchical radgrid

1 Answer 97 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Luke
Top achievements
Rank 2
Luke asked on 22 Mar 2013, 08:51 PM
Hello, I'm having a problem where validation is not firing for columns utilizing ColumnValidationSettings when they are within detail tables within hierarchical radgrids.  I am just using required field validators, but when a user edits or inserts in the insert/edit modal and does not fill them in the validation does not fire.  The same validation settings work just fine at the mastertableview level in the same grid, just not at deeper tiers within the hierarchy.

The relavant columns have data fields 'Start_Date' and 'End_Date'.

Here is my source (with datakeys, columns etc renamed):


        <telerik:RadGrid
          ID="grid"
          runat="server"
          SkinID="skin"
          Width="95%"
          DataSourceID="datasource">

          <ClientSettings AllowExpandCollapse="true"/>

          <MasterTableView
            Width="100%"
            DataSourceID="datasource"
            DataKeyNames="adatakey"
            HierarchyLoadMode="Client"
            CommandItemSettings-ShowAddNewRecordButton="false"
            HierarchyDefaultExpanded="true"
            CommandItemDisplay="None"
            AllowMultiColumnSorting="True">

            <EditFormSettings
              PopUpSettings-Modal="True"
              PopUpSettings-ZIndex="2010"
              CaptionFormatString="Edit Records"
              PopUpSettings-Width="230px"
              
              EditFormType="AutoGenerated">
            </EditFormSettings>

            <DetailTables>

              <telerik:GridTableView

                DataKeyNames="datakey"
                DataSourceID="datasource"

                HierarchyLoadMode="Client"
                Name="ChildGrid"
                Width="100%"
                AllowAutomaticInserts="True"
                AllowAutomaticUpdates="True"
                ShowFooter="false"
                CommandItemDisplay="None"
                AllowCustomSorting="True">

                <ParentTableRelation>
                  <telerik:GridRelationFields
                    DetailKeyField="datakey"
                    MasterKeyField="datakey">
                  </telerik:GridRelationFields>
                </ParentTableRelation>

                <DetailTables>

                  <telerik:GridTableView

                    DataKeyNames="datakey"
                    DataSourceID="datasource"

                    Name="GrandChildGrid"
                    Width="100%"
                    AllowAutomaticInserts="True"
                    AllowAutomaticUpdates="True"
                    ShowFooter="false"
                    CommandItemDisplay="None"
                    AllowCustomSorting="True">

                    <ParentTableRelation>
                      <telerik:GridRelationFields
                        DetailKeyField="datakey"
                        MasterKeyField="datakey">
                      </telerik:GridRelationFields>
                    </ParentTableRelation>

                    <DetailTables>

                      <telerik:GridTableView
                        DataKeyNames="datakey"
                        DataSourceID="datasource"
                        Name="GreatGrandChildGrid"
                        EditMode="PopUp"
                        CommandItemDisplay="Top"
                        ShowFooter="true"
                        Width="100%">
                        
                        <EditFormSettings
                          PopUpSettings-Modal="True"
                          PopUpSettings-ZIndex="2010"
                          PopUpSettings-ShowCaptionInEditForm="false"
                          CaptionFormatString="Edit Record"
                          InsertCaption="Add New Record"
                          
                          EditFormType="AutoGenerated">
                        </EditFormSettings>

                        <ParentTableRelation>
                          <telerik:GridRelationFields
                            DetailKeyField="datasource"
                            MasterKeyField="datasource">
                          </telerik:GridRelationFields>
                        </ParentTableRelation>

                        <Columns>

                          <telerik:GridEditCommandColumn
                            ButtonType="ImageButton"
                            UniqueName="EditCommandColumn"
                            Reorderable="false"
                            Resizable="false"
                            HeaderText="Edit"
                            HeaderStyle-HorizontalAlign="Center"
                            HeaderTooltip="Edit Record">
                            <HeaderStyle
                              Width="70px" />
                            <ItemStyle
                              HorizontalAlign="Center"
                              CssClass="MyImageButton" />
                          </telerik:GridEditCommandColumn>

                          <telerik:GridBoundColumn
                            Aggregate="Count"
                            SortExpression="datafield"
                            HeaderText="Header"
                            HeaderButtonType="TextButton"
                            ColumnEditorID="columnEditor"
                            MaxLength="20"
                            DataField="datafield">

                            <ColumnValidationSettings
                              EnableRequiredFieldValidation="true">

                              <RequiredFieldValidator
                                ErrorMessage="Item is required."
                                Display="None">
                              
                              </RequiredFieldValidator>

                              </ColumnValidationSettings>
                              
                          </telerik:GridBoundColumn>

                          <telerik:GridDateTimeColumn
                            SortExpression="Start_Date"
                            HeaderText="Start"
                            HeaderButtonType="TextButton"
                            Itemstyle-Width="100px"
                            DataField="Start_Date" 
                            EditDataFormatString="MM/dd/yyyy"
                            DataFormatString="{0:MM/dd/yyyy}">

                            <ColumnValidationSettings
                              EnableRequiredFieldValidation="true">

                              <RequiredFieldValidator
                                ErrorMessage="Start is required."
                                Display="None">
                              
                              </RequiredFieldValidator>

                            </ColumnValidationSettings>
                              
                          </telerik:GridDateTimeColumn>

                          <telerik:GridDateTimeColumn
                            SortExpression="End_Date"
                            HeaderText="End"
                            HeaderButtonType="TextButton"
                            Itemstyle-Width="100px"
                            DataField="End_Date" 
                            EditDataFormatString="MM/dd/yyyy"
                            DataFormatString="{0:MM/dd/yyyy}">
                          </telerik:GridDateTimeColumn>

                          <telerik:GridButtonColumn
                            ConfirmText="Delete this item?"
                            ConfirmDialogType="RadWindow"
                            ConfirmTitle="Delete"
                            Reorderable="false"
                            Resizable="false"
                            ButtonType="ImageButton"
                            CommandName="Delete"
                            Text="Delete"
                            HeaderStyle-HorizontalAlign="Center"
                            HeaderText="Delete"
                            HeaderTooltip="Delete Item"
                            UniqueName="DeleteCommandColumn">
                            <HeaderStyle
                              Width="70px" />
                            <ItemStyle
                              HorizontalAlign="Center"
                              CssClass="DeleteConfirmPopup" />
                          </telerik:GridButtonColumn>

                        </Columns>
                      </telerik:GridTableView>

                    </DetailTables>

                    <Columns>


                      <telerik:GridBoundColumn
                        SortExpression="datafield"
                        HeaderText="Product Type"
                        HeaderButtonType="TextButton"
                        DataField="datafield">
                      </telerik:GridBoundColumn>

                      <telerik:GridBoundColumn
                        SortExpression="Count"
                        HeaderText="Count"
                        HeaderButtonType="TextButton"
                        DataField="Count">
                      </telerik:GridBoundColumn>

                    </Columns>

                  </telerik:GridTableView>

                </DetailTables>

                <Columns>

                  <telerik:GridBoundColumn
                    SortExpression="Description"
                    HeaderText="Item"
                    HeaderButtonType="TextButton"
                    ColumnEditorID="itemEditor"
                    DataField="Item">
                  </telerik:GridBoundColumn>

                </Columns>

              </telerik:GridTableView>

            </DetailTables>

          <Columns>                          
          
            <telerik:GridEditCommandColumn
              ButtonType="ImageButton"
              UniqueName="EditCommandColumn"
              Reorderable="false"
              Resizable="false" 
              HeaderText="Edit"
              HeaderStyle-HorizontalAlign="Center" 
              HeaderTooltip="Edit thing">
              <HeaderStyle
                Width="70px" />
              <ItemStyle
                HorizontalAlign="Center"
                CssClass="MyImageButton" />
            </telerik:GridEditCommandColumn>

            <telerik:GridBoundColumn
              SortExpression="thing"
              HeaderText="Thing Name"
              ReadOnly="true"
              ItemStyle-Wrap="false"
              MaxLength="50"
              HeaderButtonType="TextButton"
              DataField="thing">
            </telerik:GridBoundColumn>

            <telerik:GridBoundColumn
              SortExpression="stuff"
              HeaderText="Stuff"
              HeaderButtonType="TextButton"
              ReadOnly="true"
              DataField="stuff">
            </telerik:GridBoundColumn>
            
            <telerik:GridNumericColumn
              SortExpression="percentagething"
              HeaderText="Number"
              ItemStyle-Width="100px"
              HeaderStyle-Width="200px"
              HeaderButtonType="TextButton"
              ColumnEditorID="Percentage_Thing_Editor"
              ConvertEmptyStringToNull="true"
              DataFormatString="{0:F2}%"
              DecimalDigits="2"
              DataField="percentagething">
            </telerik:GridNumericColumn>

            </Columns>
          </MasterTableView>                    
            <ClientSettings>
                <ClientEvents OnPopUpShowing="PopupCenteringScript" />
            </ClientSettings>
        </telerik:RadGrid>

1 Answer, 1 is accepted

Sort by
0
Pavlina
Telerik team
answered on 27 Mar 2013, 05:00 PM
Hello Luke,

Indeed the problem with validation of detail tables persists. This bug is already logged in our public feedback portal and you can follow its status here:
http://feedback.telerik.com/Project/108/Feedback/Details/44766-the-auto-implemented-column-validation-functionality-of-radgrid-using-the-enabler

Please excuse us for the inconvenience caused.

Regards,
Pavlina
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
Tags
Grid
Asked by
Luke
Top achievements
Rank 2
Answers by
Pavlina
Telerik team
Share this question
or