I have a stored procedure that returns a message if there is a difference between two tables: There are errors in the Spreadsheet 12345-75, 56789-00, 77777-80
In my web application I would like to output that message to the user on button click so they can go and change the errors, this is what I have so far but is not working.
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
Try
Dim cn As New SqlConnection("Server=NAME ;Database=NAME;User Id=user;Password=password")
AddHandler cn.InfoMessage, AddressOf cn_InfoMessage
cn.Open()
Dim cmd As New SqlCommand("SP_AR_ERROR")
cmd.CommandType = CommandType.StoredProcedure
cmd.Connection = cn
cmd.Parameters.Add(New SqlParameter("@Error", SqlDbType.VarChar, 255))
Label1.Text = cmd.Parameters("@Error").Value
Dim myReader As SqlDataReader = cmd.ExecuteReader()
Dim RecordCount As Integer = 0
Do
Do While myReader.Read()
Debug.WriteLine("Foun " & myReader(0))
Loop
Loop While myReader.NextResult()
myReader.Close()
Catch SqlEx As SqlException
Dim myError As SqlError
Debug.WriteLine("Errors Count:" & SqlEx.Errors.Count)
For Each myError In SqlEx.Errors
Debug.WriteLine(myError.Number & " - " & myError.Message)
Next
End Try
End Sub
Public Sub cn_InfoMessage(ByVal sender As Object, ByVal e As System.Data.SqlClient.SqlInfoMessageEventArgs)
Debug.WriteLine("info message event: " & e.Message)
End Sub
End Class
I am using Visual Studio2010 and server 2008R coding in vb
In my web application I would like to output that message to the user on button click so they can go and change the errors, this is what I have so far but is not working.
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
Try
Dim cn As New SqlConnection("Server=NAME ;Database=NAME;User Id=user;Password=password")
AddHandler cn.InfoMessage, AddressOf cn_InfoMessage
cn.Open()
Dim cmd As New SqlCommand("SP_AR_ERROR")
cmd.CommandType = CommandType.StoredProcedure
cmd.Connection = cn
cmd.Parameters.Add(New SqlParameter("@Error", SqlDbType.VarChar, 255))
Label1.Text = cmd.Parameters("@Error").Value
Dim myReader As SqlDataReader = cmd.ExecuteReader()
Dim RecordCount As Integer = 0
Do
Do While myReader.Read()
Debug.WriteLine("Foun " & myReader(0))
Loop
Loop While myReader.NextResult()
myReader.Close()
Catch SqlEx As SqlException
Dim myError As SqlError
Debug.WriteLine("Errors Count:" & SqlEx.Errors.Count)
For Each myError In SqlEx.Errors
Debug.WriteLine(myError.Number & " - " & myError.Message)
Next
End Try
End Sub
Public Sub cn_InfoMessage(ByVal sender As Object, ByVal e As System.Data.SqlClient.SqlInfoMessageEventArgs)
Debug.WriteLine("info message event: " & e.Message)
End Sub
End Class
I am using Visual Studio2010 and server 2008R coding in vb