PEGAR UM VALOR DE UM CAMPO NA TABELA

RICKSOUSA 03/06/2012 23:35:50
#403428
Boa Noite Galera!!!

Dim dataA As Date [ô]variavel que vai pegar o valor de um objeto
RS As Recordset [ô]declaro a tabela
sSQL As String [ô] faço o select no campo da tabela

[txt-color=#e80000] sSQL = Conexao.Execute [Ô]SELECT DataValidade FROM CadProd WHERE cod = [Ô] & cod.caption[/txt-color] não estou sabendo fazer essa consulta

dataA = CDate(objeto.text) [ô]essa variavel vai ser igual o valor dessa text que é no caso uma data

If dataA = CDate(RS!campotb) Then [ô]aqui compara o valor do objeto com o valor que esta no campo da tabela
MsgBox ([Ô]a data não pode ser igual a data de vencimento[Ô]), vbInformation [ô]se for igual traz a mensagem
Exit Sub [ô]volta para o codigo

então como eu faço para fazer essa consulta, para o CDate(RS!campotb) ????????????



FEDERHEN 04/06/2012 08:25:07
#403436
Dim dataA As Date
RS As Recordset
sSQL As String
sSQL = [Ô]SELECT DataValidade FROM CadProd WHERE cod = [Ô] & cod.caption
Set Rs = New ADODB.Recordset
Rs.Open sSQL, Conexao, adOpenForwardOnly, adLockReadOnly
If Rs.EOF Then
Rs.Close
MsgBox ([Ô]registro não encontrado para este código[Ô]), vbInformation
Exit Sub
Endif
dataA = CDate(objeto.text)
If dataA = CDate(Rs!DataValidade) Then
Rs.Close
MsgBox ([Ô]a data não pode ser igual a data de vencimento[Ô]), vbInformation
Exit Sub
Endif
Rs.Close

ROBIU 04/06/2012 08:34:44
#403438
Resposta escolhida
A variável sSql vai armazenar a string Select
    Dim Rs As ADODB.Recordset
Dim dataA As Date [ô]variavel que vai pegar o valor de um objeto
sSQL As String [ô] faço o select no campo da tabela
sSQL = [Ô]SELECT DataValidade FROM CadProd WHERE cod = [Ô] & cod.Caption

Aqui você tem duas formas de fazer:
Rs.Open Sql, Conexao, adOpenKeyset, adLockPessimistic

ou
Set Rs = Conexao.Execute(Sql)

e seu if pode ser

If dataA = CDate(RS(0) Then
[ô]ou
If dataA = CDate(RS([Ô] DataValidade[Ô]) Then




ERINALDO 04/06/2012 13:42:13
#403465
Veja esse exemplo!!!

Dim rstabela As New ADODB.Recordset

Adoteste(0).Recordset.MoveLast
[ô]preciso utilizar outro campo para pesquisa , devo repetir a instruçao abaixo com o nome do outro campo?
rsTabela.OPEN [Ô]select * from TABELA where codigo=[ô][Ô] & campo & [Ô][ô] and CAMPO2 = [Ô] & Woutrovalor

If rstabela.EOF = False Then

rotinas...

end if










Tópico encerrado , respostas não são mais permitidas