CONFIGURAR BOTAO ALTERAR
Bom Dia,
Estou desenvolvendo um programinha em Visual Basic 2010 e náo consigo terminar o botáo de alterar... funciona da seguinte maneira:
tenho um form4 que é a consulta... digito o codigo e aparece para Eu todos os dados que preciso e os campos textbox todos Enabled = False (para ninguem alterar), ai quando clico no botão alterar ele executa Enabled=True (para alterar os dados)... ate ai tudo bem... Eu altero os dados e quando clico em salvar ele apenas salva o nome que Eu alterei os outros dados não, ja no botão salvar no form de cadastro ele salva todos os dados, mais como existe um ELSE no botão salvar acredito que seja nesta parte que estou errando e como Eu ainda sou leigo no VB preciso da ajuda de vocês... segue abaixo o codigo do botão consultar e botão salvar...
Desde já Muito Obrigado.
CONSULTA
Private Sub btnconsulta_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnconsulta.Click
tabela = New ADODB.Recordset
Dim consulta As String
If txtcodbus.Text <> [Ô][Ô] Then
consulta = [Ô]Select * from movel where codigo= [Ô] & txtcodbus.Text & [Ô][Ô]
ElseIf mskcelbus.Text <> [Ô][Ô] Then
consulta = [Ô]Select * from movel where celular= [ô][Ô] & mskcelbus.Text & [Ô][ô][Ô]
Else
consulta = [Ô][Ô]
MsgBox([Ô]Digite alguma forma de consulta.[Ô] & vbNewLine & [Ô]Codigo ou Nº de Cel.[Ô], MsgBoxStyle.Critical)
Exit Sub
End If
tabela.Open(consulta, conecta, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
If tabela.EOF = False Then
With consulta
txtcod.Text = tabela.Fields([Ô]codigo[Ô]).Value()
mskcel.Text = tabela.Fields([Ô]celular[Ô]).Value()
txtnome.Text = tabela.Fields([Ô]nome[Ô]).Value()
txtfunc.Text = tabela.Fields([Ô]funcao[Ô]).Value()
mskrg.Text = tabela.Fields([Ô]rg[Ô]).Value()
mskcpf.Text = tabela.Fields([Ô]cpf[Ô]).Value()
mskimei.Text = tabela.Fields([Ô]imei[Ô]).Value()
msksimcard.Text = tabela.Fields([Ô]simcard[Ô]).Value()
txtmarca.Text = tabela.Fields([Ô]marca[Ô]).Value()
txtmod.Text = tabela.Fields([Ô]modelo[Ô]).Value()
txtaces.Text = tabela.Fields([Ô]acessorios[Ô]).Value()
txtop.Text = tabela.Fields([Ô]operadora[Ô]).Value()
txtdeb.Text = tabela.Fields([Ô]valordebito[Ô]).Value()
If Not IsDBNull(tabela.Fields([Ô]troca[Ô]).Value()) Then
txttroca.Text = tabela.Fields([Ô]troca[Ô]).Value()
End If
mskdata.Text = tabela.Fields([Ô]data[Ô]).Value()
End With
txtcodbus.Text = [Ô][Ô]
Else
MsgBox([Ô]Registro não Encontrado[Ô])
End If
txtcod.Enabled = False
txtnome.Enabled = False
txtcod.Enabled = False
mskcel.Enabled = False
txtfunc.Enabled = False
mskrg.Enabled = False
mskcpf.Enabled = False
mskimei.Enabled = False
msksimcard.Enabled = False
txtmarca.Enabled = False
txtmod.Enabled = False
txtaces.Enabled = False
txtop.Enabled = False
txtdeb.Enabled = False
mskdata.Enabled = False
txttroca.Enabled = False
End Sub
SALVAR
Private Sub btnsalva_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsalva.Click
Dim strsql As String
If status = True Then
strsql = [Ô]insert into movel (codigo, celular, nome, funcao, rg, cpf, imei, simcard, marca, modelo, acessorios, operadora, valordebito, troca, data)[Ô] & [Ô]values ([Ô] & txtcod.Text & [Ô], [ô][Ô] & mskcel.Text & [Ô][ô], [ô][Ô] & txtnome.Text & [Ô][ô], [ô][Ô] & txtfunc.Text & [Ô][ô], [ô][Ô] & mskrg.Text & [Ô][ô], [ô][Ô] & mskcpf.Text & [Ô][ô], [ô][Ô] & mskimei.Text & [Ô][ô], [ô][Ô] & msksimcard.Text & [Ô][ô], [ô][Ô] & txtmarca.Text & [Ô][ô], [ô][Ô] & txtmod.Text & [Ô][ô], [ô][Ô] & txtaces.Text & [Ô][ô], [ô][Ô] & txtop.Text & [Ô][ô], [ô][Ô] & txtdeb.Text & [Ô][ô], [ô][Ô] & txttroca.Text & [Ô][ô], [ô][Ô] & mskdata.Text & [Ô][ô])[Ô]
conecta.Execute(strsql)
MsgBox([Ô]Seus dados foram incluÃdos com sucesso[Ô], MsgBoxStyle.Information, [Ô]Dados Gravados[Ô])
ElseIf status = False Then
strsql = [Ô]update movel set nome=[ô][Ô] & txtnome.Text & [Ô][ô] where codigo=[Ô] & txtcod.Text & [Ô][Ô]
conecta.Execute(strsql)
MsgBox([Ô]Registros atualizados com sucesso[Ô], MsgBoxStyle.Information, [Ô]Atualiza[Ô])
End If
limpa()
End Sub
Estou desenvolvendo um programinha em Visual Basic 2010 e náo consigo terminar o botáo de alterar... funciona da seguinte maneira:
tenho um form4 que é a consulta... digito o codigo e aparece para Eu todos os dados que preciso e os campos textbox todos Enabled = False (para ninguem alterar), ai quando clico no botão alterar ele executa Enabled=True (para alterar os dados)... ate ai tudo bem... Eu altero os dados e quando clico em salvar ele apenas salva o nome que Eu alterei os outros dados não, ja no botão salvar no form de cadastro ele salva todos os dados, mais como existe um ELSE no botão salvar acredito que seja nesta parte que estou errando e como Eu ainda sou leigo no VB preciso da ajuda de vocês... segue abaixo o codigo do botão consultar e botão salvar...
Desde já Muito Obrigado.
CONSULTA
Private Sub btnconsulta_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnconsulta.Click
tabela = New ADODB.Recordset
Dim consulta As String
If txtcodbus.Text <> [Ô][Ô] Then
consulta = [Ô]Select * from movel where codigo= [Ô] & txtcodbus.Text & [Ô][Ô]
ElseIf mskcelbus.Text <> [Ô][Ô] Then
consulta = [Ô]Select * from movel where celular= [ô][Ô] & mskcelbus.Text & [Ô][ô][Ô]
Else
consulta = [Ô][Ô]
MsgBox([Ô]Digite alguma forma de consulta.[Ô] & vbNewLine & [Ô]Codigo ou Nº de Cel.[Ô], MsgBoxStyle.Critical)
Exit Sub
End If
tabela.Open(consulta, conecta, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
If tabela.EOF = False Then
With consulta
txtcod.Text = tabela.Fields([Ô]codigo[Ô]).Value()
mskcel.Text = tabela.Fields([Ô]celular[Ô]).Value()
txtnome.Text = tabela.Fields([Ô]nome[Ô]).Value()
txtfunc.Text = tabela.Fields([Ô]funcao[Ô]).Value()
mskrg.Text = tabela.Fields([Ô]rg[Ô]).Value()
mskcpf.Text = tabela.Fields([Ô]cpf[Ô]).Value()
mskimei.Text = tabela.Fields([Ô]imei[Ô]).Value()
msksimcard.Text = tabela.Fields([Ô]simcard[Ô]).Value()
txtmarca.Text = tabela.Fields([Ô]marca[Ô]).Value()
txtmod.Text = tabela.Fields([Ô]modelo[Ô]).Value()
txtaces.Text = tabela.Fields([Ô]acessorios[Ô]).Value()
txtop.Text = tabela.Fields([Ô]operadora[Ô]).Value()
txtdeb.Text = tabela.Fields([Ô]valordebito[Ô]).Value()
If Not IsDBNull(tabela.Fields([Ô]troca[Ô]).Value()) Then
txttroca.Text = tabela.Fields([Ô]troca[Ô]).Value()
End If
mskdata.Text = tabela.Fields([Ô]data[Ô]).Value()
End With
txtcodbus.Text = [Ô][Ô]
Else
MsgBox([Ô]Registro não Encontrado[Ô])
End If
txtcod.Enabled = False
txtnome.Enabled = False
txtcod.Enabled = False
mskcel.Enabled = False
txtfunc.Enabled = False
mskrg.Enabled = False
mskcpf.Enabled = False
mskimei.Enabled = False
msksimcard.Enabled = False
txtmarca.Enabled = False
txtmod.Enabled = False
txtaces.Enabled = False
txtop.Enabled = False
txtdeb.Enabled = False
mskdata.Enabled = False
txttroca.Enabled = False
End Sub
SALVAR
Private Sub btnsalva_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsalva.Click
Dim strsql As String
If status = True Then
strsql = [Ô]insert into movel (codigo, celular, nome, funcao, rg, cpf, imei, simcard, marca, modelo, acessorios, operadora, valordebito, troca, data)[Ô] & [Ô]values ([Ô] & txtcod.Text & [Ô], [ô][Ô] & mskcel.Text & [Ô][ô], [ô][Ô] & txtnome.Text & [Ô][ô], [ô][Ô] & txtfunc.Text & [Ô][ô], [ô][Ô] & mskrg.Text & [Ô][ô], [ô][Ô] & mskcpf.Text & [Ô][ô], [ô][Ô] & mskimei.Text & [Ô][ô], [ô][Ô] & msksimcard.Text & [Ô][ô], [ô][Ô] & txtmarca.Text & [Ô][ô], [ô][Ô] & txtmod.Text & [Ô][ô], [ô][Ô] & txtaces.Text & [Ô][ô], [ô][Ô] & txtop.Text & [Ô][ô], [ô][Ô] & txtdeb.Text & [Ô][ô], [ô][Ô] & txttroca.Text & [Ô][ô], [ô][Ô] & mskdata.Text & [Ô][ô])[Ô]
conecta.Execute(strsql)
MsgBox([Ô]Seus dados foram incluÃdos com sucesso[Ô], MsgBoxStyle.Information, [Ô]Dados Gravados[Ô])
ElseIf status = False Then
strsql = [Ô]update movel set nome=[ô][Ô] & txtnome.Text & [Ô][ô] where codigo=[Ô] & txtcod.Text & [Ô][Ô]
conecta.Execute(strsql)
MsgBox([Ô]Registros atualizados com sucesso[Ô], MsgBoxStyle.Information, [Ô]Atualiza[Ô])
End If
limpa()
End Sub
Pelo o que entendi você quer dar um Update em todos os campos do referido registro.Então tem que ser assim.
Private Sub btnsalva_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsalva.Click
Dim strsql As String
If status = True Then
strsql = [Ô]insert into movel (codigo, celular, nome, funcao, rg, cpf, imei, simcard, marca, modelo, acessorios, operadora, valordebito, troca, data)[Ô] & [Ô]values ([Ô] & txtcod.Text & [Ô], [ô][Ô] & mskcel.Text & [Ô][ô], [ô][Ô] & txtnome.Text & [Ô][ô], [ô][Ô] & txtfunc.Text & [Ô][ô], [ô][Ô] & mskrg.Text & [Ô][ô], [ô][Ô] & mskcpf.Text & [Ô][ô], [ô][Ô] & mskimei.Text & [Ô][ô], [ô][Ô] & msksimcard.Text & [Ô][ô], [ô][Ô] & txtmarca.Text & [Ô][ô], [ô][Ô] & txtmod.Text & [Ô][ô], [ô][Ô] & txtaces.Text & [Ô][ô], [ô][Ô] & txtop.Text & [Ô][ô], [ô][Ô] & txtdeb.Text & [Ô][ô], [ô][Ô] & txttroca.Text & [Ô][ô], [ô][Ô] & mskdata.Text & [Ô][ô])[Ô]
conecta.Execute(strsql)
MsgBox([Ô]Seus dados foram incluÃdos com sucesso[Ô], MsgBoxStyle.Information, [Ô]Dados Gravados[Ô])
ElseIf status = False Then
strsql = [Ô]update movel Set codigo=[Ô] & txtcod.Text & [Ô], celular=[ô][Ô] & mskcel.Text & [Ô][ô], nome=[ô][Ô] & txtNome.Text & [Ô][ô], funcao=[ô][Ô] & txtfunc.Text & [Ô][ô], rg=[ô][Ô] & mskrg.Text & [Ô][ô], cpf=[ô][Ô] & mskcpf.Text & [Ô][ô], imei=[ô][Ô] & mskimei.Text & [Ô][ô], simcard=[ô][Ô] & msksimcard.Text & [Ô][ô], marca=[ô][Ô] & txtmarca.Text & [Ô][ô], modelo=[ô][Ô] & txtmod.Text & [Ô][ô], acessorios=[ô][Ô] & txtaces.Text & [Ô][ô], operadora=[ô][Ô] & txtop.Text & [Ô][ô], valordebito=[ô][Ô] & txtdeb.Text & [Ô][ô], troca=[ô][Ô] & txttroca.Text & [Ô][ô], data=[ô][Ô] & mskdata.Text & [Ô][ô] Where Codigo=codigo=[Ô] & txtcod.Text
conecta.Execute(strsql)
MsgBox([Ô]Registros atualizados com sucesso[Ô], MsgBoxStyle.Information, [Ô]Atualiza[Ô])
End If
limpa()
End Sub
Private Sub btnsalva_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsalva.Click
Dim strsql As String
If status = True Then
strsql = [Ô]insert into movel (codigo, celular, nome, funcao, rg, cpf, imei, simcard, marca, modelo, acessorios, operadora, valordebito, troca, data)[Ô] & [Ô]values ([Ô] & txtcod.Text & [Ô], [ô][Ô] & mskcel.Text & [Ô][ô], [ô][Ô] & txtnome.Text & [Ô][ô], [ô][Ô] & txtfunc.Text & [Ô][ô], [ô][Ô] & mskrg.Text & [Ô][ô], [ô][Ô] & mskcpf.Text & [Ô][ô], [ô][Ô] & mskimei.Text & [Ô][ô], [ô][Ô] & msksimcard.Text & [Ô][ô], [ô][Ô] & txtmarca.Text & [Ô][ô], [ô][Ô] & txtmod.Text & [Ô][ô], [ô][Ô] & txtaces.Text & [Ô][ô], [ô][Ô] & txtop.Text & [Ô][ô], [ô][Ô] & txtdeb.Text & [Ô][ô], [ô][Ô] & txttroca.Text & [Ô][ô], [ô][Ô] & mskdata.Text & [Ô][ô])[Ô]
conecta.Execute(strsql)
MsgBox([Ô]Seus dados foram incluÃdos com sucesso[Ô], MsgBoxStyle.Information, [Ô]Dados Gravados[Ô])
ElseIf status = False Then
strsql = [Ô]update movel Set codigo=[Ô] & txtcod.Text & [Ô], celular=[ô][Ô] & mskcel.Text & [Ô][ô], nome=[ô][Ô] & txtNome.Text & [Ô][ô], funcao=[ô][Ô] & txtfunc.Text & [Ô][ô], rg=[ô][Ô] & mskrg.Text & [Ô][ô], cpf=[ô][Ô] & mskcpf.Text & [Ô][ô], imei=[ô][Ô] & mskimei.Text & [Ô][ô], simcard=[ô][Ô] & msksimcard.Text & [Ô][ô], marca=[ô][Ô] & txtmarca.Text & [Ô][ô], modelo=[ô][Ô] & txtmod.Text & [Ô][ô], acessorios=[ô][Ô] & txtaces.Text & [Ô][ô], operadora=[ô][Ô] & txtop.Text & [Ô][ô], valordebito=[ô][Ô] & txtdeb.Text & [Ô][ô], troca=[ô][Ô] & txttroca.Text & [Ô][ô], data=[ô][Ô] & mskdata.Text & [Ô][ô] Where Codigo=codigo=[Ô] & txtcod.Text
conecta.Execute(strsql)
MsgBox([Ô]Registros atualizados com sucesso[Ô], MsgBoxStyle.Information, [Ô]Atualiza[Ô])
End If
limpa()
End Sub
Saiu errado.
Private Sub btnsalva_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsalva.Click
Dim strsql As String
If status = True Then
strsql = [Ô]insert into movel (codigo, celular, nome, funcao, rg, cpf, imei, simcard, marca, modelo, acessorios, operadora, valordebito, troca, data)[Ô] & [Ô]values ([Ô] & txtcod.Text & [Ô], [ô][Ô] & mskcel.Text & [Ô][ô], [ô][Ô] & txtnome.Text & [Ô][ô], [ô][Ô] & txtfunc.Text & [Ô][ô], [ô][Ô] & mskrg.Text & [Ô][ô], [ô][Ô] & mskcpf.Text & [Ô][ô], [ô][Ô] & mskimei.Text & [Ô][ô], [ô][Ô] & msksimcard.Text & [Ô][ô], [ô][Ô] & txtmarca.Text & [Ô][ô], [ô][Ô] & txtmod.Text & [Ô][ô], [ô][Ô] & txtaces.Text & [Ô][ô], [ô][Ô] & txtop.Text & [Ô][ô], [ô][Ô] & txtdeb.Text & [Ô][ô], [ô][Ô] & txttroca.Text & [Ô][ô], [ô][Ô] & mskdata.Text & [Ô][ô])[Ô]
conecta.Execute(strsql)
MsgBox([Ô]Seus dados foram incluÃdos com sucesso[Ô], MsgBoxStyle.Information, [Ô]Dados Gravados[Ô])
ElseIf status = False Then
strsql = [Ô]update movel Set codigo=[Ô] & txtcod.Text & [Ô], celular=[ô][Ô] & mskcel.Text & [Ô][ô], nome=[ô][Ô] & txtNome.Text & [Ô][ô], funcao=[ô][Ô] & txtfunc.Text & [Ô][ô], rg=[ô][Ô] & mskrg.Text & [Ô][ô], cpf=[ô][Ô] & mskcpf.Text & [Ô][ô], imei=[ô][Ô] & mskimei.Text & [Ô][ô], simcard=[ô][Ô] & msksimcard.Text & [Ô][ô], marca=[ô][Ô] & txtmarca.Text & [Ô][ô], modelo=[ô][Ô] & txtmod.Text & [Ô][ô], acessorios=[ô][Ô] & txtaces.Text & [Ô][ô], operadora=[ô][Ô] & txtop.Text & [Ô][ô], valordebito=[ô][Ô] & txtdeb.Text & [Ô][ô], troca=[ô][Ô] & txttroca.Text & [Ô][ô], data=[ô][Ô] & mskdata.Text & [Ô][ô] Where codigo=[Ô] & txtcod.Text
conecta.Execute(strsql)
MsgBox([Ô]Registros atualizados com sucesso[Ô], MsgBoxStyle.Information, [Ô]Atualiza[Ô])
End If
limpa()
End Sub
Private Sub btnsalva_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsalva.Click
Dim strsql As String
If status = True Then
strsql = [Ô]insert into movel (codigo, celular, nome, funcao, rg, cpf, imei, simcard, marca, modelo, acessorios, operadora, valordebito, troca, data)[Ô] & [Ô]values ([Ô] & txtcod.Text & [Ô], [ô][Ô] & mskcel.Text & [Ô][ô], [ô][Ô] & txtnome.Text & [Ô][ô], [ô][Ô] & txtfunc.Text & [Ô][ô], [ô][Ô] & mskrg.Text & [Ô][ô], [ô][Ô] & mskcpf.Text & [Ô][ô], [ô][Ô] & mskimei.Text & [Ô][ô], [ô][Ô] & msksimcard.Text & [Ô][ô], [ô][Ô] & txtmarca.Text & [Ô][ô], [ô][Ô] & txtmod.Text & [Ô][ô], [ô][Ô] & txtaces.Text & [Ô][ô], [ô][Ô] & txtop.Text & [Ô][ô], [ô][Ô] & txtdeb.Text & [Ô][ô], [ô][Ô] & txttroca.Text & [Ô][ô], [ô][Ô] & mskdata.Text & [Ô][ô])[Ô]
conecta.Execute(strsql)
MsgBox([Ô]Seus dados foram incluÃdos com sucesso[Ô], MsgBoxStyle.Information, [Ô]Dados Gravados[Ô])
ElseIf status = False Then
strsql = [Ô]update movel Set codigo=[Ô] & txtcod.Text & [Ô], celular=[ô][Ô] & mskcel.Text & [Ô][ô], nome=[ô][Ô] & txtNome.Text & [Ô][ô], funcao=[ô][Ô] & txtfunc.Text & [Ô][ô], rg=[ô][Ô] & mskrg.Text & [Ô][ô], cpf=[ô][Ô] & mskcpf.Text & [Ô][ô], imei=[ô][Ô] & mskimei.Text & [Ô][ô], simcard=[ô][Ô] & msksimcard.Text & [Ô][ô], marca=[ô][Ô] & txtmarca.Text & [Ô][ô], modelo=[ô][Ô] & txtmod.Text & [Ô][ô], acessorios=[ô][Ô] & txtaces.Text & [Ô][ô], operadora=[ô][Ô] & txtop.Text & [Ô][ô], valordebito=[ô][Ô] & txtdeb.Text & [Ô][ô], troca=[ô][Ô] & txttroca.Text & [Ô][ô], data=[ô][Ô] & mskdata.Text & [Ô][ô] Where codigo=[Ô] & txtcod.Text
conecta.Execute(strsql)
MsgBox([Ô]Registros atualizados com sucesso[Ô], MsgBoxStyle.Information, [Ô]Atualiza[Ô])
End If
limpa()
End Sub
OMAR2011 - Muito Obrigadooooo... resolveu meu problema, Parabéns!!!
Só para aproveitar... Eu uso a base de dados com uma tabela do Access... Eu instalei o PHPMyAdmin e ele tem Mysql dentro... entao acredito que de para utilizar ele ao inves do Access, já criei a tabela... você sabe como faz isso?
Grato.
Só para aproveitar... Eu uso a base de dados com uma tabela do Access... Eu instalei o PHPMyAdmin e ele tem Mysql dentro... entao acredito que de para utilizar ele ao inves do Access, já criei a tabela... você sabe como faz isso?
Grato.
Eu uso ACCESS só para testes.Quanto ao MySql do mesmo jeito,e para criar tabelas e outras uso [txt-color=#007100]SQL Manager Lite for MySQL 4.6.01[/txt-color].Banco que gosto de usar
[txt-color=#e80000]FIREBIRD E ORACLE 10G[/txt-color].
[txt-color=#e80000]FIREBIRD E ORACLE 10G[/txt-color].
Ok,
um erro ainda persiste quanto ao assunto anterior... quando estou alterando um usuário e clico para salvar as alterações aparece esse erro:
as alterações solicitadas para a tabela não foram bem-sucedidas, já que criariam valores duplicados de Ãndice, chave primária ou relação. Altere os dados no campo ou nos campos que contêm dados duplicados, remova o Ãndice, ou redefina-o para permitir entradas duplicadas, e tente novamente
em anexo esta o print da tela, se puder me ajudar agredeço.
Desde já Obrigado.
um erro ainda persiste quanto ao assunto anterior... quando estou alterando um usuário e clico para salvar as alterações aparece esse erro:
as alterações solicitadas para a tabela não foram bem-sucedidas, já que criariam valores duplicados de Ãndice, chave primária ou relação. Altere os dados no campo ou nos campos que contêm dados duplicados, remova o Ãndice, ou redefina-o para permitir entradas duplicadas, e tente novamente
em anexo esta o print da tela, se puder me ajudar agredeço.
Desde já Obrigado.
Tópico encerrado , respostas não são mais permitidas