ATRIBUIR RESULTADO DE UM DATAREADER A UMA VARIAVEL
Saudaçoes,
to com uma duvida chata aqui, eu tenho que fazer uma validação na hora de gravar,contando as linha da tabela de um registro especifico e fazer a comparaçao.
entao eu fiz o select count ,ate ai tranquilo o meu problema esta sendo para atribuir o valor desse select que esta como um datareader para uma variavel no codigo para que eu possa entao compara-la com o outro valor que eu tenho.
veja um exemplo que esta dando erro:
Public Function VerificaQtde(ByVal pedido As Integer) As SqlClient.SqlDataReader
Dim strQuery As New StringBuilder
strQuery.Append([Ô]Select COUNT(PEDSERIE_PEDIDO) as Qtde [Ô])
strQuery.Append([Ô]From [Ô])
strQuery.Append([Ô]Cad_NumSerieItemPed [Ô])
strQuery.Append([Ô]Where PEDSERIE_PEDIDO = [Ô] & pedido & [Ô] [Ô])
Dim cldBancoDados As New cldBancoDados()
Return cldBancoDados.RetornaDataReader(strQuery.ToString)
End Function
Dim resultado As System.Data.SqlClient.SqlDataReader
nropedido = CUInt(txtpedido.Text)
qtde = CUInt(lblqtde.Text)
resultado = cldpedserie.VerificaQtde(nropedido)
lblresultado.Text = (resultado([Ô]Qtde[Ô]))
If qtde <= CUInt(lblresultado.Text) Then
to com uma duvida chata aqui, eu tenho que fazer uma validação na hora de gravar,contando as linha da tabela de um registro especifico e fazer a comparaçao.
entao eu fiz o select count ,ate ai tranquilo o meu problema esta sendo para atribuir o valor desse select que esta como um datareader para uma variavel no codigo para que eu possa entao compara-la com o outro valor que eu tenho.
veja um exemplo que esta dando erro:
Public Function VerificaQtde(ByVal pedido As Integer) As SqlClient.SqlDataReader
Dim strQuery As New StringBuilder
strQuery.Append([Ô]Select COUNT(PEDSERIE_PEDIDO) as Qtde [Ô])
strQuery.Append([Ô]From [Ô])
strQuery.Append([Ô]Cad_NumSerieItemPed [Ô])
strQuery.Append([Ô]Where PEDSERIE_PEDIDO = [Ô] & pedido & [Ô] [Ô])
Dim cldBancoDados As New cldBancoDados()
Return cldBancoDados.RetornaDataReader(strQuery.ToString)
End Function
Dim resultado As System.Data.SqlClient.SqlDataReader
nropedido = CUInt(txtpedido.Text)
qtde = CUInt(lblqtde.Text)
resultado = cldpedserie.VerificaQtde(nropedido)
lblresultado.Text = (resultado([Ô]Qtde[Ô]))
If qtde <= CUInt(lblresultado.Text) Then
Não seria melhor retornar a quantidade ao invés do datareader?
consegui,na verdade na hora de atribuir o resultado a label eu tenho que fazer assim:
If resultado.HasRows Then
resultado.Read()
lblresultado.Text = (resultado([Ô]Qtde[Ô]))
resultado.Close()
End If
If resultado.HasRows Then
resultado.Read()
lblresultado.Text = (resultado([Ô]Qtde[Ô]))
resultado.Close()
End If
Tópico encerrado , respostas não são mais permitidas