PROGRAMA VB.NET COM MYSQL COM ERROS
para deletar e para editar eu uso isso:
e para atualizar o form esta assim:
ai na hora do celldoubleclick do datagrid do outro form, eu tentei usar: frm_Clientes.atualizarform() q é a mesma sub q eu uso no load do form e depois de adicionar e excluir.. mas n funcionou..
Mas tbm depois de excluir e adicionar eu uso o comando para mudar a posicao: CManager.Position += 1..
Agora eu n sei oq fazer..
con.Open()
With cmd
.CommandType = System.Data.CommandType.Text
.CommandText = [Ô]SELECT * FROM cliente WHERE cod_cliente = [Ô] & lbl_cod.Text & [Ô][Ô]
End With
reader = cmd.ExecuteReader
If reader.Read() Then
codcliente = reader([Ô]cod_Cliente[Ô])
codEndereco = reader([Ô]cod_Endereco[Ô])
codTelefone = reader([Ô]cod_Telefone[Ô])
codPF = reader([Ô]cod_pf[Ô])
End If
reader.Close()
con.Close()
e para atualizar o form esta assim:
Private Sub LiberaControles()
Tabela.clear()
lbl_cod.DataBindings.Clear()
txt_Nome.DataBindings.Clear()
txt_Contato.DataBindings.Clear()
txt_obs.DataBindings.Clear()
lbl_cadastroText.DataBindings.Clear()
cmb_Pessoa.DataBindings.Clear()
txt_Endereco.DataBindings.Clear()
txt_numero.DataBindings.Clear()
txt_complemento.DataBindings.Clear()
txt_cep.DataBindings.Clear()
txt_bairro.DataBindings.Clear()
txt_cidade.DataBindings.Clear()
txt_uf.DataBindings.Clear()
txt_pais.DataBindings.Clear()
txt_Residencial.DataBindings.Clear()
txt_Celular.DataBindings.Clear()
txt_fax.DataBindings.Clear()
txt_rg.DataBindings.Clear()
txt_cpf.DataBindings.Clear()
txt_Datanasci.DataBindings.Clear()
cmb_Sexo.DataBindings.Clear()
txt_Email.DataBindings.Clear()
lbl_Registros.DataBindings.Clear()
End Sub
Sub atualizarform()
LiberaControles()
Dim con As New MySqlConnection([Ô]server=localhost;user Id=root;password=admin;database=workshopmanager[Ô])
con.Open()
Dim cmd = New MySqlCommand([Ô]SELECT cliente.*, endereco.*, pf.*, telefone.* FROM cliente INNER JOIN endereco ON (cliente.cod_Endereco=endereco.cod_Endereco) INNER JOIN telefone ON (cliente.cod_Telefone=telefone.cod_Telefone) INNER JOIN pf ON (cliente.cod_PF=pf.cod_PF)[Ô], con)
Dim da = New MySqlDataAdapter()
da.SelectCommand = cmd
da.Fill(Tabela)
lbl_cod.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]cod_Cliente[Ô])
txt_Nome.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]nome_Cliente[Ô])
txt_Contato.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]contato_Cliente[Ô])
txt_obs.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]observacoes_Cliente[Ô])
lbl_cadastroText.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]horadata_Cliente[Ô])
cmb_Pessoa.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]tipo_Cliente[Ô])
txt_Endereco.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]nome_Endereco[Ô])
txt_numero.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]numero_Endereco[Ô])
txt_complemento.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]complemento_Endereco[Ô])
txt_cep.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]cep_Endereco[Ô])
txt_bairro.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]bairro_Endereco[Ô])
txt_cidade.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]cidade_Endereco[Ô])
txt_uf.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]uf_Endereco[Ô])
txt_pais.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]pais_Endereco[Ô])
txt_Residencial.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]residencial_Telefone[Ô])
txt_Celular.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]celular_Telefone[Ô])
txt_fax.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]fax_Telefone[Ô])
txt_rg.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]rg_PF[Ô])
txt_cpf.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]cpf_PF[Ô])
txt_Datanasci.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]dataNascimento_PF[Ô])
cmb_Sexo.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]sexo_PF[Ô])
txt_Email.DataBindings.Add([Ô]Text[Ô], Tabela, [Ô]email_PF[Ô])
lbl_Registros.Text = (CManager.Position + 1) & [Ô] de [Ô] & CManager.Count
con.Close()
End Sub
ai na hora do celldoubleclick do datagrid do outro form, eu tentei usar: frm_Clientes.atualizarform() q é a mesma sub q eu uso no load do form e depois de adicionar e excluir.. mas n funcionou..
Mas tbm depois de excluir e adicionar eu uso o comando para mudar a posicao: CManager.Position += 1..
Agora eu n sei oq fazer..
Já conseguiu resolver.
Fiz uma mudança e obtive sucesso.
Inté
Fiz uma mudança e obtive sucesso.
Inté
Ainda n consegui resolver..
Vc conseguiu arrumar ??
Vc conseguiu arrumar ??
Eu usei o Frm_Procurar para excluir o registro com o DataGridView1_Click.
Basta fazer esta mudança ai você verá
Basta fazer esta mudança ai você verá
O excluir esta funcionando..
Quando eu jogo os dados nas textboxs ai eu posso excluir ou editar...
OMAR2011 acho que vc n entendeu a minha duvida.. mas oq eu tava querendo era arrumar o form e as setas depois de jogar os dados do datagrid para as textboxs.. que nem acontece no load, quando adicionar um novo e quando exclui... q o form é atualizado..
Este codigo esta no frm_Procurar e mando os dados para o frm_Clientes... Atraves desse codigo preciso arrumar as setas e o form frm_Clientes
Quando eu jogo os dados nas textboxs ai eu posso excluir ou editar...
OMAR2011 acho que vc n entendeu a minha duvida.. mas oq eu tava querendo era arrumar o form e as setas depois de jogar os dados do datagrid para as textboxs.. que nem acontece no load, quando adicionar um novo e quando exclui... q o form é atualizado..
Este codigo esta no frm_Procurar e mando os dados para o frm_Clientes... Atraves desse codigo preciso arrumar as setas e o form frm_Clientes
Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
codcliente = DataGridView1.Item(0, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.lbl_cod.Text = codcliente
frm_Clientes.txt_Nome.Text = DataGridView1.Item(1, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_Contato.Text = DataGridView1.Item(2, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_obs.Text = DataGridView1.Item(3, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.lbl_cadastroText.Text = DataGridView1.Item(4, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.cmb_Pessoa.Text = DataGridView1.Item(5, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_Endereco.Text = DataGridView1.Item(10, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_numero.Text = DataGridView1.Item(11, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_complemento.Text = DataGridView1.Item(12, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_cep.Text = DataGridView1.Item(13, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_bairro.Text = DataGridView1.Item(14, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_cidade.Text = DataGridView1.Item(15, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_uf.Text = DataGridView1.Item(16, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_pais.Text = DataGridView1.Item(17, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_rg.Text = DataGridView1.Item(19, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_cpf.Text = DataGridView1.Item(20, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_Datanasci.Text = DataGridView1.Item(21, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.cmb_Sexo.Text = DataGridView1.Item(22, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_Email.Text = DataGridView1.Item(23, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_Residencial.Text = DataGridView1.Item(25, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_Celular.Text = DataGridView1.Item(26, DataGridView1.CurrentCell.RowIndex).Value.ToString()
frm_Clientes.txt_fax.Text = DataGridView1.Item(27, DataGridView1.CurrentCell.RowIndex).Value.ToString()
Me.Close()
end sub
Então vamos ver se peguei sua idéia.
Na pesquisa do seu form Frm_Procurar,após fazer sua pesquisa ele e preenchido ai da um double click num item e ele joga
nas caixas de textos do Frm_Clientes.
é isto.
Na pesquisa do seu form Frm_Procurar,após fazer sua pesquisa ele e preenchido ai da um double click num item e ele joga
nas caixas de textos do Frm_Clientes.
é isto.
siim, isso mesmo
eu coloquei isso:
frm_Clientes.LiberaControles()
frm_Clientes.atualizarform()
frm_Clientes.btn_prox_Click(Nothing, Nothing)
O form fica certo as setas tbm... Mas nao importa em qual registro eu clique do datagrid, depois de jogar os dados no form sempre fica no registro 2...
frm_Clientes.LiberaControles()
frm_Clientes.atualizarform()
frm_Clientes.btn_prox_Click(Nothing, Nothing)
O form fica certo as setas tbm... Mas nao importa em qual registro eu clique do datagrid, depois de jogar os dados no form sempre fica no registro 2...
Não sei pq mas nunca gostei de ter botão de navegação de registro em cadastros, pq fica zoado mesmo...
Eu faço uma aba de consulta no cadastro com vários filtros e carrego no DataSource do Grid alguns campos como Código, Nome, CPF..
Se o Cliente quiser ver o cadastro inteiro do Cliente, clica com o botão direito do mouse sobre o Row do Grid e carrega os text.....
Eu faço uma aba de consulta no cadastro com vários filtros e carrego no DataSource do Grid alguns campos como Código, Nome, CPF..
Se o Cliente quiser ver o cadastro inteiro do Cliente, clica com o botão direito do mouse sobre o Row do Grid e carrega os text.....
Minha tabela está com 4 registro.Vou para frm_Procurar ,faço a busca e clico no último item da pesquisa
e jogo no frm_Clientes aparece meu último registro que é de número 13.
Ai adicionei um botão e coloquei este código só para fazer o teste.
Funciona normal.Quando aciono o Button1_Click vai para o registro de número 11.
Os meus registros da tabela são 9,11,12 e 13.Os outro excluir fazendo teste.
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
LiberaControles()
AtualizaForm()
btn_prox_Click(Nothing, Nothing)
End Sub
Quantos registro tem na sua tabela.
Pode resto de código.Oregistro numero 2 corresponde
ao mesmo da tabela.
Verifique.
e jogo no frm_Clientes aparece meu último registro que é de número 13.
Ai adicionei um botão e coloquei este código só para fazer o teste.
Funciona normal.Quando aciono o Button1_Click vai para o registro de número 11.
Os meus registros da tabela são 9,11,12 e 13.Os outro excluir fazendo teste.
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
LiberaControles()
AtualizaForm()
btn_prox_Click(Nothing, Nothing)
End Sub
Quantos registro tem na sua tabela.
Pode resto de código.Oregistro numero 2 corresponde
ao mesmo da tabela.
Verifique.
Tópico encerrado , respostas não são mais permitidas