none
Colocando dois IF no código RRS feed

  • 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

    domingo, 9 de setembro de 2012 15:19

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 If

    End if



    http://malange-levi.blogspot.co.uk/

    • Marcado como Resposta Harley Araujo terça-feira, 11 de setembro de 2012 15:08
    domingo, 9 de setembro de 2012 20:39
    Moderador

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

    domingo, 9 de setembro de 2012 15:19
  • 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 If

    End if



    http://malange-levi.blogspot.co.uk/

    • Marcado como Resposta Harley Araujo terça-feira, 11 de setembro de 2012 15:08
    domingo, 9 de setembro de 2012 20:39
    Moderador