Usuário com melhor resposta
Colocando dois IF no código

Pergunta
-
Não sei come colocar o segundo.
Preciso de aplicar condições diferentes depois de executar a pesquisa, em que quando é executado o select e devolve os valores para caixa, mas quando uma das caixa tiver o valor 2 ele tem de executar outra condição.
Mas precisando de ele fazer a leitura a base dados com o comando If rs.Read() Then eu não sei onde devo colocar If caixaXYZ ="2" Then executa outra condição.
Tenho este código:
Protected Sub Bt_pesquisar_Click(sender As Object, e As EventArgs) Handles Bt_pesquisar.Click
strConnection = ConnectionStrings("GescomercialConnectionString"). ConnectionString
dbConn = New SqlClient.SqlConnection(strConnection)
dbConn.Open()
strSQL = "SELECT * FROM tbl_clientes WHERE nif='" & caixapesquisanif.Text & "'"
dCmd = New SqlCommand(strSQL, dbConn)
Dim rs As SqlDataReader = dCmd.ExecuteReader
If rs.Read() Then
'existem valores??
caixapesquisanif.Text = ""
caixanif.Text = rs("nif")
caixanome.Text = rs("nome")
caixaresponsavel.Text = rs("responsavel")
caixalocalidade.Text = rs("localidade")
caixacontato.Text = rs("contato")
droptipocliente.Text = rs("tipo_cliente")
droptipocliente.BackColor = Drawing.Color.Beige
caixanif.BackColor = Drawing.Color.Beige
caixanome.BackColor = Drawing.Color.Beige
caixacontato.BackColor = Drawing.Color.Beige
caixalocalidade.BackColor = Drawing.Color.Beige
caixaresponsavel.BackColor = Drawing.Color.Beige
caixanif.Enabled = False
caixanome.Enabled = True
caixacontato.Enabled = True
caixalocalidade.Enabled = True
caixaresponsavel.Enabled = True
droptipocliente.Enabled = True
bt_atualizar.Enabled = True
bt_Eliminar.Enabled = True
bt_gravar.Enabled = False
bt_cancelar.Enabled = False
bt_novo2.Enabled = True
bt_editar2.Enabled = True
bt_eliminar2.Enabled = True
bt_gravar2.Enabled = True
bt_cancelar2.Enabled = True
Else
MessageBox("Cliente não encontrado")
caixapesquisanif.Text = ""
End If
End Sub
Respostas
-
Voce pode colocar este if depois do else:
else
if estado_negocio = "Perdido" then
//faz o quequeres
Else
MessageBox("Cliente não encontrado")
caixapesquisanif.Text = ""
End IfEnd if
http://malange-levi.blogspot.co.uk/
- Marcado como Resposta Harley Araujo terça-feira, 11 de setembro de 2012 15:08
Todas as Respostas
-
Já tentei com If (rs.Read() And estado_negocio = "Perdido") Then , mas indica Nid não encontrado, quando eu sei que o Nif em questão existe.
O estado_negocio = "Perdido" é o que está a impedir a pesquisa, porque colocando desta forma: If rs.Read() Then, é devolvido o Nif em questão.
Contudo eu preciso que ao ler a tabela e quando encontra os valores, se o estado_negocio = "Perdido" vou ter de execuar o segundo if neste caso talvez um elseif.
Verifiquei também que ao colocar If (rs.Read() And estado_negocio = "Perdido") Then tenho de declarar o estado_negocio e então declaro assim:
Protected Sub Bt_pesquisar_Click(sender As Object, e As EventArgs) Handles Bt_pesquisar.Click
Dim estado_negocio As String
Antes das ligação a base dados.Verifico que estado_negocio, fica sublinhado a vermelho com a indicação do seguinte erro " Warning Variable 'estado_negocio' is used before it has been assigned a value. A null reference exception could result at runtime.
Podem ajudar-me?
Obrigado -
Voce pode colocar este if depois do else:
else
if estado_negocio = "Perdido" then
//faz o quequeres
Else
MessageBox("Cliente não encontrado")
caixapesquisanif.Text = ""
End IfEnd if
http://malange-levi.blogspot.co.uk/
- Marcado como Resposta Harley Araujo terça-feira, 11 de setembro de 2012 15:08