I am able to update and delete the rows from RadGrid but It gives me following exception on insert :-
Microsoft JScript runtime error: Sys.WebForms.PageRequestManagerServerErrorException: Cannot insert the value NULL into column 'Alert_Level_ID', table 'AlertEmailManagement.dbo.Alert_Level'; column does not allow nulls. INSERT fails.
The statement has been terminated.
The problem is it does insert the row in Database and I am sure that alert_level_id is not null.
eher is my code:-
Microsoft JScript runtime error: Sys.WebForms.PageRequestManagerServerErrorException: Cannot insert the value NULL into column 'Alert_Level_ID', table 'AlertEmailManagement.dbo.Alert_Level'; column does not allow nulls. INSERT fails.
The statement has been terminated.
The problem is it does insert the row in Database and I am sure that alert_level_id is not null.
eher is my code:-
<%@ Page Title="" Language="vb" AutoEventWireup="false" MasterPageFile="~/ITIMaster.Master" CodeBehind="AlertLevelAdmin.aspx.vb" Inherits="EmailAlertsMonitor.AlertLevelAdmin" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"head"
runat
=
"server"
>
</
asp:Content
>
<
asp:Content
ID
=
"Content2"
ContentPlaceHolderID
=
"ContentPlaceHolder1"
runat
=
"server"
>
<
telerik:RadGrid
ID
=
"gvAlertLevels"
runat
=
"server"
AutoGenerateColumns
=
"False"
CellSpacing
=
"0"
DataSourceID
=
"SqlDataSource1"
GridLines
=
"None"
Skin
=
"Outlook"
AllowAutomaticDeletes
=
"true"
AllowAutomaticUpdates
=
"true"
AllowAutomaticInserts
=
"true"
>
<
MasterTableView
DataSourceID
=
"SqlDataSource1"
DataKeyNames
=
"Alert_Level_ID"
CommandItemDisplay
=
"TopAndBottom"
>
<
CommandItemSettings
ExportToPdfText
=
"Export to PDF"
></
CommandItemSettings
>
<
RowIndicatorColumn
FilterControlAltText
=
"Filter RowIndicator column"
>
<
HeaderStyle
Width
=
"20px"
></
HeaderStyle
>
</
RowIndicatorColumn
>
<
ExpandCollapseColumn
FilterControlAltText
=
"Filter ExpandColumn column"
>
<
HeaderStyle
Width
=
"20px"
></
HeaderStyle
>
</
ExpandCollapseColumn
>
<
EditFormSettings
>
<
EditColumn
FilterControlAltText
=
"Filter EditCommandColumn column"
></
EditColumn
>
</
EditFormSettings
>
<
Columns
>
<
telerik:GridEditCommandColumn
ButtonType
=
"ImageButton"
UniqueName
=
"EditCommandColumn"
>
<
ItemStyle
CssClass
=
"MyImageButton"
/>
</
telerik:GridEditCommandColumn
>
<
telerik:GridButtonColumn
ConfirmText
=
"Are you sure you want to delete this alert?"
ConfirmDialogType
=
"RadWindow"
ConfirmTitle
=
"Delete"
ButtonType
=
"ImageButton"
CommandName
=
"Delete"
Text
=
"Delete"
UniqueName
=
"DeleteColumn"
>
<
ItemStyle
HorizontalAlign
=
"Center"
CssClass
=
"MyImageButton"
/>
</
telerik:GridButtonColumn
>
<
telerik:GridTemplateColumn
FilterControlAltText
=
"Filter TemplateColumn column"
UniqueName
=
"TemplateColumn"
HeaderText
=
"Alert Level ID"
>
<
ItemTemplate
>
<
asp:Label
ID
=
"lblAlertLevelID"
runat
=
"server"
Text ='<%#EVAL("Alert_Level_ID") %>'></
asp:Label
>
</
ItemTemplate
>
<
EditItemTemplate
>
<
asp:TextBox
ID
=
"txtAlertLevelID"
runat
=
"server"
Text ='<%#EVAL("Alert_Level_ID") %>'></
asp:TextBox
>
<
asp:CompareValidator
ID
=
"cvAlertLevelID"
runat
=
"server"
ControlToValidate
=
"txtAlertLevelID"
Operator
=
"DataTypeCheck"
Type
=
"Integer"
SetFocusOnError
=
"true"
ErrorMessage
=
"Alert Level ID must be numeric."
ForeColor
=
"Red"
ValidationGroup
=
"editData"
></
asp:CompareValidator
>
</
EditItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
FilterControlAltText
=
"Filter TemplateColumn column"
UniqueName
=
"TemplateColumn"
HeaderText
=
"Alert Level Description"
>
<
ItemTemplate
>
<
asp:Label
ID
=
"lblAlertLevel"
runat
=
"server"
Text ='<%#EVAL("Alert_Level") %>'></
asp:Label
>
</
ItemTemplate
>
<
EditItemTemplate
>
<
asp:TextBox
ID
=
"txtAlertLevel"
runat
=
"server"
Text ='<%#EVAL("Alert_Level") %>'></
asp:TextBox
>
<
asp:RequiredFieldValidator
ID
=
"rvAlertLevel"
runat
=
"server"
ControlToValidate
=
"txtAlertLevel"
SetFocusOnError
=
"true"
ErrorMessage
=
"Must enter Alert Level Description."
ForeColor
=
"Red"
ValidationGroup
=
"editData"
></
asp:RequiredFieldValidator
>
</
EditItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
FilterControlAltText
=
"Filter TemplateColumn column"
UniqueName
=
"TemplateColumn3"
HeaderText
=
"Alert Level Color Code"
>
<
ItemTemplate
>
<
asp:Label
ID
=
"lblAlertLevelColor"
runat
=
"server"
Text ='<%#EVAL("Alert_Level_Color_Code") %>'></
asp:Label
>
</
ItemTemplate
>
<
EditItemTemplate
>
<
telerik:RadColorPicker
ID
=
"RadColorPicker1"
runat
=
"server"
ShowIcon
=
"true"
OnColorChanged
=
"RadColorPicker1_ColorChanged"
Width
=
"250px"
Height
=
"400px"
>
</
telerik:RadColorPicker
>
</
EditItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
<
FilterMenu
EnableImageSprites
=
"False"
></
FilterMenu
>
<
HeaderContextMenu
CssClass
=
"GridContextMenu GridContextMenu_Default"
></
HeaderContextMenu
>
</
telerik:RadGrid
>
<
asp:SqlDataSource
ID
=
"SqlDataSource1"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:DBConnectionString %>"
SelectCommand="SELECT * FROM [Alert_Level]"
InsertCommand ="INSERT INTO [Alert_Level] VALUES(@alertLevelID,@alertLevel,@alertColorCode)"
UpdateCommand ="UPDATE [Alert_Level] SET alert_level=@alertLevel,alert_level_color_code=@alertColorCode WHERE alert_Level_ID=@alertLevelID"
DeleteCommand ="DELETE FROM [Alert_Level] WHERE alert_Level_ID=@alertLevelID" >
<
InsertParameters
>
<
asp:Parameter
Name
=
"AlertLevelID"
Type
=
"Int16"
/>
<
asp:Parameter
Name
=
"AlertLevel"
Type
=
"String"
/>
<
asp:Parameter
Name
=
"AlertColorCode"
Type
=
"String"
/>
</
InsertParameters
>
<
UpdateParameters
>
<
asp:Parameter
Name
=
"AlertLevelID"
Type
=
"Int16"
/>
<
asp:Parameter
Name
=
"AlertLevel"
Type
=
"String"
/>
<
asp:Parameter
Name
=
"AlertColorCode"
Type
=
"String"
/>
</
UpdateParameters
>
<
DeleteParameters
>
<
asp:Parameter
Name
=
"AlertLevelID"
Type
=
"Int16"
/>
</
DeleteParameters
>
</
asp:SqlDataSource
>
</
asp:Content
>
Imports Telerik.Web.UI
Imports System.Drawing
Public Class AlertLevelAdmin
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
End Sub
Public Sub RadColorPicker1_ColorChanged(ByVal sender As Object, ByVal e As EventArgs)
Dim RadColorPicker1 As RadColorPicker = CType(sender, RadColorPicker)
Dim gvItem As GridItem = DirectCast(RadColorPicker1.NamingContainer, GridItem)
gvItem.BackColor = RadColorPicker1.SelectedColor
End Sub
Private Sub gvAlertLevels_ItemDataBound(sender As Object, e As Telerik.Web.UI.GridItemEventArgs) Handles gvAlertLevels.ItemDataBound
If TypeOf e.Item Is GridDataItem Then
Dim item As GridDataItem = DirectCast(e.Item, GridDataItem)
item("TemplateColumn3").BackColor = ColorTranslator.FromHtml((DataBinder.Eval(e.Item.DataItem, ("Alert_Level_Color_Code").ToString)))
End If
Dim radColorPicker1 As RadColorPicker = DirectCast(e.Item.FindControl("RadColorPicker1"), RadColorPicker)
If Not IsNothing(radColorPicker1) Then
If Not IsDBNull(DataBinder.Eval(e.Item.DataItem, ("Alert_Level_Color_Code"))) Then
radColorPicker1.SelectedColor = ColorTranslator.FromHtml((DataBinder.Eval(e.Item.DataItem, ("Alert_Level_Color_Code").ToString)))
End If
End If
End Sub
Private Sub gvAlertLevels_ItemDeleted(sender As Object, e As Telerik.Web.UI.GridDeletedEventArgs) Handles gvAlertLevels.ItemDeleted
Try
Dim item As GridDataItem = DirectCast(e.Item, GridDataItem)
Dim alertLevelID As Integer = CInt(item.GetDataKeyValue("Alert_Level_ID").ToString)
SqlDataSource1.DeleteParameters("AlertLevelID").DefaultValue = alertLevelID
SqlDataSource1.Delete()
Catch ex As Exception
End Try
End Sub
Private Sub gvAlertLevels_ItemInserted(sender As Object, e As Telerik.Web.UI.GridInsertedEventArgs) Handles gvAlertLevels.ItemInserted
Try
Dim alertLevelID As Integer = DirectCast(e.Item.FindControl("txtAlertLevelID"), TextBox).Text
Dim alertLevel As String = DirectCast(e.Item.FindControl("txtAlertLevel"), TextBox).Text
Dim alertColorCode As String = ColorTranslator.ToHtml(DirectCast(e.Item.FindControl("RadColorPicker1"), RadColorPicker).SelectedColor)
SqlDataSource1.InsertParameters("AlertLevelID").DefaultValue = alertLevelID
SqlDataSource1.InsertParameters("AlertLevel").DefaultValue = alertLevel.ToUpper
SqlDataSource1.InsertParameters("AlertColorCode").DefaultValue = alertColorCode
SqlDataSource1.Insert()
Catch ex As Exception
End Try
End Sub
Private Sub gvAlertLevels_ItemUpdated(sender As Object, e As Telerik.Web.UI.GridUpdatedEventArgs) Handles gvAlertLevels.ItemUpdated
Try
Dim item As GridEditFormItem = DirectCast(e.Item, GridEditFormItem)
Dim alertLevelID As Integer = CInt(item.GetDataKeyValue("Alert_Level_ID").ToString)
Dim alertLevel As String = DirectCast(item.FindControl("txtAlertLevel"), TextBox).Text
Dim alertColorCode As String = ColorTranslator.ToHtml(DirectCast(item.FindControl("RadColorPicker1"), RadColorPicker).SelectedColor)
SqlDataSource1.UpdateParameters("AlertLevelID").DefaultValue = alertLevelID
SqlDataSource1.UpdateParameters("AlertLevel").DefaultValue = alertLevel.ToUpper
SqlDataSource1.UpdateParameters("AlertColorCode").DefaultValue = alertColorCode
SqlDataSource1.Update()
Catch ex As Exception
End Try
End Sub
End Class