Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Refiz n vezes todas as linhas e não consigo entender porque não está aceitando a entrada de dados. Ele tá pulando para a linha errselecao. Por favor me ajudem.
Private Sub TxtCodCliente_LostFocus()
Dim cnnComando As New ADODB.Command
Dim rsSelecao As New ADODB.Recordset
Dim vInclusao As Boolean
On Error GoTo errSelecao
'verifica se foi digitado codigo valido
If Val(TxtCodCliente.Text) = 0 Then
MsgBox "Não foi digitado um código válido, verifique.", vbExclamation + vbOKOnly + vbApplicationModal, "Erro"
Exit Sub
End If
Screen.MousePointer = vbHourglass
With cnnComando
.ActiveConnection = cnnCetecInfServiços
.CommandType = adCmdText
'monta o comando select para selecionar o registro na tabela.
.CommandText = "SELECT * FROM Clientes WHERE Codigo_Cliente = " & TxtCodCliente.Text & ";"
Set rsSelecao = .Execute
End With
With rsSelecao
If .EOF And .BOF Then
'se recorset estiver vazio nao retona registro com o codigo
LimparDados
'identifica a operaçao como inclusao
vInclusao = True
Else
'senao atribui ao campo os dados do registro
TxtNomeCliente.Text = !Nome
TxtTel.Text = !Telefone
TxtCidade.Text = !Cidade
TxtDataInicioServico.Text = !Data_Inicio_Servico
TxtHoraInicioServico.Text = !Hora_Inicio_Servico
TxtProduto.Text = !Produto
TxtMotivo.Text = !Motivo_Chamada
TxtObs.Text = Empty & !Obs
'identifica a operacao como alteracao:
vInclusao = False
'Habilita o botao excluir
Toolbarl.Buttons(3).Enabled = True
End If
End With
'desabilita a digitacao do campo codigo
TxtCodCliente.Enabled = False
Saida:
'elimina o comand e o recorset da memoria:
Set rsSelecao = Nothing
Set cnnComando = Nothing
Screen.MousePointer = vbDefault
Exit Sub
errSelecao:
With Err
If .Number <> 0 Then
MsgBox "Houve um erro na recuperacao do registro solicitado.", vbExclamation + vbOKOnly + vbApplicationModal, "Aviso"
.Number = 0
GoTo Saida
End If
End With
End Sub
Carregando comentários...