Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Robinho

Campos prenchidos atraves de Combo

Recommended Posts

tou precisando d ajuda no seguinte...como se faz para q ao seleccionar um nome na combo, outros campos no form sejam logo preenchidos automaticamente vindos da bd ?ou seja selecciona "Nome" e aparece nos dois texts em baixo, a minha idade e o meu e-mailcomo se faz ??abraços :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Utiliza o evento Click da Combo. Daí você realizar a busca no BD com o text da Combo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Private Sub combo_Click()    Dim rs As New Recordset    rs.Open "SELECT ID FROM Funcionarios WHERE nome = " & combo.Text, conexao, adOpenDynamic, adLockBatchOptimisticm, adCmdText    txt_id.Text = rs.Fields("ID")    rs.CloseEnd Sub

Esta dando erro em :

 

rs.Open "SELECT ID FROM Funcionarios WHERE nome = " & combo.Text, conexao, adOpenDynamic, adLockBatchOptimisticm, adCmdText

"Os argumentos sao do tipo incorrecto, estao fora do intervalo aceitavel ou estao em conflito uns com os outros"

 

q se passa ???

 

brigado

 

[[[ ]]]

 

http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

num existe "adLockBatchOptimisticm" o certo é "adLockBatchOptimistic"isto é .. tire o "m" do final da palavra ....tb num entendi pq você colocou adcmdText no final ... tira isso tb ....

Compartilhar este post


Link para o post
Compartilhar em outros sites

errei ao escrever... http://forum.imasters.com.br/public/style_emoticons/default/blush.gif

 

 

mas mesmo corrigindo isso ta dando erro...

 

Private Sub combo_Click()   Dim rs As New Recordset   rs.Open "SELECT ID FROM Funcionarios WHERE nome = " & combo.Text, conexao, adOpenDynamic, adLockBatchOptimistic   txt_id.Text = rs.Fields("ID")   rs.CloseEnd Sub

Run-time error...

 

Line 1: Incorrect syntax near 'Rodrigo'.

 

pq ta dando erro?

 

:wacko:

 

[[[ ]]]

Compartilhar este post


Link para o post
Compartilhar em outros sites

em vez de rs.Open "SELECT ID FROM Funcionarios WHERE nome = " & combo.Text, conexao, adOpenDynamic, adLockBatchOptimisticpõe rs.Open "SELECT ID FROM Funcionarios WHERE nome = " & combo.Text & ", conexao, adOpenDynamic, adLockBatchOptimisticbele..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora tou com outro problema http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Tenho a tabela Funcionarios onde tenho o Id e o Nome do FuncionarioTenho tb a tabela Estado onde guarda dos funcionarios... nessa tabela tenho os campos Id e nome_estadoagora gostava de saber como faço para q ao escolher o nome do funcionario na combo, apareca tb o estado desse funcionario...

rs.Open "SELECT nome_estado FROM Estado WHERE Estado.ID = Funcionario.ID AND Funcionario.nome = '" & nome & "'", conn, adOpenDynamic, adLockOptimistictxt_estado.Text = rs.Fields("nome_estado")rs.Close

estarei fazendo da melhor maneira ??[[[ ]]]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Private Sub confirma_Click()    Dim a As Integer    Dim b As Integer    Dim t  As Integer    Dim s As Integer    a = txt_saldo.Text    b = txt_montante.Text    t = a + b    s = t   nome = combo1.text    c = MsgBox("Tem a certeza que deseja modificar ? ", vbYesNo, "Autenticação")       If c = vbYes Then           Dim rs As New Recordset            rs.Open "SELECT Saldo FROM Conta, Funcionario WHERE Conta.ID = Funcionario.ID AND Funcionario.Nome = '" & nome & "'", conexao, adOpenDynamic, adLockOptimistic           txt_saldofinal.Text = s           rs.Update           MsgBox "Saldo Actualizado !!!", vbInformation           rs.Close        Else           Exit Sub       End IfEnd Sub

esta dando erro no 'rs.Update' ...

 

"BOF ou EOF é verdadeiro ou o registo actual foi eliminado; a operação pedida necessita de um registo actual"

 

n percebo como da este erro qd tenho imensos campos na bd

 

[[[ ]]]

 

http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

num entendi o pq desse rs.update .....você está utilizando isso pra atualizar qual registro sendo que eu num to vendo você colocar nenhum valor novo pro RecordSet ????..você naum está atualizando nada ..somente realizando uma consulta ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

você ta tentando efetuar a mudança de um registro pra isso é usado outro comando SQL:

Update tabela set campo1=valor, campo2=valor2 where (condição)

Mas cuidado com essa condição você pode acabar mudando a tabela inteira :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que parece ali você quer modificaro saldo de um funcionário certo?

Seria assim:

update conta set saldo=novo_salto where conta.id = (select id from funcionarios where nome = '" & nome & "')"

Mas lembre se de uma coisa, como você es´ta fazendo as consultas pelo nome, ~você ñ vai poder deixar serem cadastrados nomes iguais, señ daí da rolo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Private Sub confirma_Click()   Dim a As Integer   Dim b As Integer   Dim t  As Integer   Dim s As Integer   a = txt_saldo.Text   b = txt_montante.Text   t = a + b   s = t   txt_saldot.Text = s   newsaldo = txt_saldot.Text   c = MsgBox("Tem a certeza que deseja modificar ? ", vbYesNo, "Autenticação")      If c = vbYes Then          Dim rs As New Recordset          rs.Open "UPDATE Conta SET Saldo = " & newsaldo, conexao, adOpenDynamic, adLockOptimistic          rs.Update          MsgBox "Saldo Actualizado !!!", vbInformation          rs.Close       Else          Exit Sub      End IfEnd Sub

 

da novamente erro no 'rs.update'

 

Diz q a operaçao n eh permitida se o objecto estiver fechado ....

 

pq ??

 

[[[ ]]]

 

http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas executando a o update via SQL você ñ precisa desse rs.update, isso só seria usado se você estivesse no DAO e desse edit or addnew antes. E olha que aí você ta sem condição, vai alterar todos os registros da tabela.

 

E caso você esteja com um adodb.connection já aberto fica mais viavel você fazer qdo for usar delete, intert into e update assim:

connection.execute (sql)
Pois esses três ao contrário do Select ñ voltam resultado eles só modificam a tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Private Sub confirma_Click() Dim a As Integer Dim b As Integer Dim t As Integer Dim s As Integer a = txt_saldo.Text b = txt_montante.Text t = a + b s = t txt_saldot.Text = s newsaldo = txt_saldot.Text c = MsgBox("Tem a certeza que deseja modificar ? ", vbYesNo, "Autenticação") If c = vbYes Then Dim rs As New Recordset rs.Open "UPDATE Conta SET Saldo = " & newsaldo, conexao, adOpenDynamic, adLockOptimistic MsgBox "Saldo Actualizado !!!", vbInformation rs.Close Else Exit Sub End IfEnd Subestupidez...ja tirei o rs.update e ele grava, so q da erro no rs.closediz q a operaçao n eh permitida se o objecto estiver fechado...esta gravando e n tou percebendo pq da erro no close[[[ ]]]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Também não precisa disso, pois o update ñ volta resultado igual ao select, então ele não preenche o recordset.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.