Greetings All,
I am trying to register some startup script during the update command of a radGrid that I have. Not sure why, but this isn't working for me.
Here is the radWindowManager markup...
Here is the scriptManager on the MasterPage..
Here is the radGrid markup (contained in a radAjaxPanel)..
Here is the updateCommand code.. The ScriptManager.RegisterStartupScript() call is near the end of the function.
The updateCommand works as I would expect, however there is no radconfirm following the update. Any help or thoughts would be most appreciated.
Regards,
Tom
I am trying to register some startup script during the update command of a radGrid that I have. Not sure why, but this isn't working for me.
Here is the radWindowManager markup...
<telerik:RadWindowManager ID="RadWindowManager1" runat="server" IconUrl="../CSS/titlegraphic.gif"> </telerik:RadWindowManager>Here is the scriptManager on the MasterPage..
<asp:ScriptManager ID="ScriptManager1" runat="server"> <Scripts> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" /> </Scripts> </asp:ScriptManager>Here is the radGrid markup (contained in a radAjaxPanel)..
<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server"> <telerik:RadGrid runat="server" ID="ReportGrid" Width="936px" GridLines="Horizontal" AllowPaging="True" AllowSorting="True" AllowFilteringByColumn="True" PageSize="10" OnNeedDataSource="ReportGrid_NeedDataSource" OnUpdateCommand="ReportGrid_UpdateCommand" > <MasterTableView DataKeyNames="pa,report_close_id" AutoGenerateColumns="false" EditMode="InPlace" CommandItemDisplay="None"> <FilterItemStyle HorizontalAlign="Center" /> <Columns> <telerik:GridEditCommandColumn ButtonType="ImageButton" HeaderText="Edit" HeaderStyle-Width="66px" HeaderStyle-HorizontalAlign="Center" > <ItemStyle Width="66px" HorizontalAlign="Center" /> </telerik:GridEditCommandColumn> <telerik:GridBoundColumn DataField="report_close_id" HeaderText="Report Close ID" UniqueName="report_close_id" Visible="false" > </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="client_id" HeaderText="Client ID" UniqueName="client_id" Visible="false" > </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="client_name" HeaderText="Client Name" ReadOnly="true" UniqueName="client_name" Visible="true" HeaderStyle-Width="215px" > </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="pa" HeaderText="Performance Analyst" ReadOnly="true" UniqueName="pa" Visible="true" HeaderStyle-Width="165px" > </telerik:GridBoundColumn> <telerik:GridTemplateColumn DataField="requested_date" HeaderText="Requested Completion By" UniqueName="requested_date" HeaderStyle-HorizontalAlign="Center" HeaderStyle-Width="120px" > <ItemStyle HorizontalAlign="Center" Width="120px" /> <ItemTemplate> <asp:Label ID="lblRequestedDate" runat="server" Text='<%# Bind("requested_date", "{0:MM/dd/yyyy}") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <telerik:RadDatePicker ID="RequestedDatePicker" runat="server" Width="90px" DbSelectedDate='<%# Bind("requested_date", "{0:MM/dd/yyyy}") %>'> </telerik:RadDatePicker> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="actual_date" HeaderText="Date Completed" UniqueName="actual_date" HeaderStyle-HorizontalAlign="Center" HeaderStyle-Width="120px" > <ItemStyle HorizontalAlign="Center" Width="120px" /> <ItemTemplate> <asp:Label ID="lblCompletedDate" runat="server" Text='<%# Bind("actual_date", "{0:MM/dd/yyyy}") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <telerik:RadDatePicker ID="CompletedDatePicker" runat="server" Width="90px" DbSelectedDate='<%# Bind("actual_date", "{0:MM/dd/yyyy}") %>'> </telerik:RadDatePicker> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="comments" HeaderText="Comments" UniqueName="comments" HeaderStyle-HorizontalAlign="Center" HeaderStyle-Width="210px" ItemStyle-Width="210px" ItemStyle-HorizontalAlign="Center"> <ItemTemplate> <asp:Label ID="lblComments" runat="server" Text='<%# Eval("comments") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <telerik:RadTextBox ID="txtComments" runat="server" MaxLength="500" Width="175px" Rows="3" Text='<%# Eval("comments") %>' TextMode="MultiLine"> </telerik:RadTextBox> </EditItemTemplate> </telerik:GridTemplateColumn> </Columns> </MasterTableView> </telerik:RadGrid> <br /> <asp:Button ID="btnSave" runat="server" Text="Save" visible="false"/> <asp:Button ID="btnCancel" runat="server" Text="Cancel/Exit" OnClientClick="Close()" /> </telerik:RadAjaxPanel>Here is the updateCommand code.. The ScriptManager.RegisterStartupScript() call is near the end of the function.
protected void ReportGrid_UpdateCommand(object source, GridCommandEventArgs e) { if (e.CommandName == RadGrid.UpdateCommandName) { try { //Get the GridEditableItem of the RadGrid GridEditableItem editedItem = e.Item as GridEditableItem; int report_close_id = Convert.ToInt32(editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex]["report_close_id"].ToString()); ReportCloseDateBO updated_close = new ReportCloseDateBO(); updated_close.FillByCloseDateID(report_close_id); DateTime actual_date_cell = new DateTime(); DateTime requested_date_cell = new DateTime(); DateTime updated_requested_completion_date = new DateTime(1855, 1, 1); DateTime updated_actual_completion_date = new DateTime(1855, 1, 1); string comments = ((editedItem["comments"].Controls[1] as RadTextBox).Text); ClientBO client = new ClientBO(); client.FillClientByID(updated_close.client_id); bool pa_assigned = true; string pa_email = ""; bool actual_completion_changed = false; bool requested_completion_changed = false; bool error_ind = false; PERAPositionBO peraPosition = new PERAPositionBO(); if (!(editedItem["actual_date"].Controls[1] as RadDatePicker).IsEmpty) { actual_date_cell = ((editedItem["actual_date"].Controls[1] as RadDatePicker).SelectedDate.Value); } else { actual_date_cell = new DateTime(1855, 1, 1); } if (!(editedItem["requested_date"].Controls[1] as RadDatePicker).IsEmpty ) { requested_date_cell = ((editedItem["requested_date"].Controls[1] as RadDatePicker).SelectedDate.Value); } else { requested_date_cell = new DateTime(1855, 1, 1); } if (client.pa_user_id != -1) { ApplicationUserBO pa_user = new ApplicationUserBO(); pa_user.FillByUserID(client.pa_user_id); pa_email = pa_user.e_mail; } else { pa_assigned = false; } //First check to see if the requested completion date has changed if (requested_date_cell != null) { //Check to see if the value has already been entered into the database updated_requested_completion_date = requested_date_cell; if (updated_close.requested_completion != updated_requested_completion_date) { requested_completion_changed = true; } else { requested_completion_changed = false; } } else { requested_completion_changed = false; } //Now check to see if a value has been entered into the actual completion date cell if (actual_date_cell != null) { //Check to see if the value has already been entered into the database updated_actual_completion_date = actual_date_cell; if (updated_close.actual_completion != updated_actual_completion_date) { actual_completion_changed = true; } else { actual_completion_changed = false; } } else { actual_completion_changed = false; } //Update the request date if (requested_completion_changed) { try { updated_close.UpdateRequestedReportCloseDate(report_close_id, updated_requested_completion_date, comments); } catch (Exception exe) { error_ind = true; //MessageBox.Show(exe.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); //logger.RecordMessage(exe, Log.MessageType.Error, parent.UserID); } } //Update the actual completion date if (actual_completion_changed) { try { updated_close.UpdateActualReportCloseDate(report_close_id, updated_actual_completion_date, comments); updated_close = new ReportCloseDateBO(); updated_close.FillByCloseDateID(report_close_id); //Now calculate the PERA position and put it in the pera position table. peraPosition = new PERAPositionBO(); peraPosition.InsertPERAPosition(updated_close.client_id, updated_close.report_dated); //offer to notify the PA via email if (pa_assigned) { int sendEmail = Convert.ToInt32(ConfigurationManager.AppSettings["SendEmail"]); if (sendEmail == 1) { string userName = User.Identity.Name.ToString(); string[] tokens = userName.Split('\\'); ApplicationUserBO current_user = new ApplicationUserBO(); //current_user.FillByUserID(parent.UserID); current_user.FillByUserID(7); string body = tokens[1].ToString() + " has completed " + client.client_name + "'s PE report for " + updated_close.report_dated.ToShortDateString(); string subject = client.client_name + " PE Report Completed"; string to = current_user.e_mail.ToString(); string from = "PERA@haifc.com"; Session.Add("from", from); Session.Add("to", to); Session.Add("subject", subject); Session.Add("body", body);
ScriptManager.RegisterStartupScript(this, this.GetType(), "mykey", "radconfirm('Would you like to notify " + client.client_name + "'s" + " PA?', confirmCallBackFn, 330, 100, null,'Send Message?');", true); //RadAjaxManager1.ResponseScripts.Add("radconfirm('Would you like to notify " + client.client_name + "'s" + " PA?', confirmCallBackFn, 330, 100, null,'Send Message?');"); //ClientScriptManager cs = Page.ClientScript; //cs.RegisterClientScriptBlock(this.GetType(), "popupScript", RadWindowManager1.ClientID + ".radconfirm('Would you like to notify " + client.client_name + "'s" + " PA?', confirmCallBackFn, 330, 100, null,'Send Message?');", true); //ClientScript.RegisterStartupScript(Page.GetType(), "popupScript", "radconfirm('Would you like to notify " + client.client_name + "'s" + " PA?', confirmCallBackFn, 330, 100, null,'Send Message?');", true); } } } catch (Exception exe) { error_ind = true; //MessageBox.Show(exe.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); //logger.RecordMessage(exe, Log.MessageType.Error, parent.UserID); } } } catch (Exception ex) { ReportGrid.Controls.Add(new LiteralControl("Unable to update. Reason: " + ex.Message)); //logger.RecordMessage(exe, Log.MessageType.Error, parent.UserID); e.Canceled = true; } } }The updateCommand works as I would expect, however there is no radconfirm following the update. Any help or thoughts would be most appreciated.
Regards,
Tom