Aos trancos e barrancos, vou eu conseguindo estudar VB.Net.
Mas, novamente me esbarrei aqui.
Seguinte:
Obs.: Só consigo fazer uma operação por vez no dataset. Eu não consigo por exemplo, gravar uma novo registro e depois navegar a té uns trez ou quatro registros atraz e altera-lo que da erro.
No caso , estou tendo que fechar o form e abrir ele de novo. Nem mesmo gravar dois registros na sequencia não da.
tenho a função que me retorna um dataset:
Public Function ExecuteDS(ByVal sql As String, ByRef tabela As String) As DataSet
Dim ds As New DataSet
Dim da As MySqlDataAdapter = New MySqlDataAdapter()
Try
OpenConnection()
cmd.CommandType = CommandType.Text
cmd.CommandText = sql
cmd.Connection = Conexao
da.SelectCommand = cmd
da.Fill(ds, tabela)
da.Dispose()
Return ds
Catch ex As Exception
MsgBox(ex.Message)
End Try
Return ds
End Function
Bom, no form tenho o botão novo com o código
Private Sub Novo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Novo.Click
If Novo.Text = "Novo" Then
For Each c As Control In Me.grpClientes.Controls
If TypeOf c Is TextBox Then
c.Text = ""
End If
Next
Atualizar.Enabled = False
Eliminar.Enabled = False
Encerrar.Text = "Cancela"
Novo.Text = "Incluir"
Nome.Focus()
habilita()
Codigo.Enabled = False
ElseIf Novo.Text = "Incluir" Then
Dim dr As DataRow = dt.NewRow
incluirRegistro(dr)
Novo.Text = "Novo"
Encerrar.Text = "Encerrar"
Atualizar.Enabled = True
Eliminar.Enabled = True
desabilita()
End If
End Sub
Que chama a função abaixo
Private Sub incluirRegistro(ByVal dr As DataRow)
Dim sqlinsere As String = "INSERT INTO " & tabela & " (Nome,Endereco,Email)VALUES ('" & Nome.Text & "','" & Endereco.Text & "','" & Email.Text & "')"
atribuirDados(dr)
ds = accDb.ExecuteDS(sqlinsere, tabela)
dt = ds.Tables(tabela)
Try
MessageBox.Show("registro de Usuário incluido com sucesso.")
'accDb.CloseConnection()
'accDb.OpenConnection()
Catch ex As Exception
MessageBox.Show("Erro ao efetuar a conexão com a base de dados : " + ex.Message)
End Try
End Sub
O problema é que quando eu cliko no botão novo e insiro um novo registro, ele não mostra o código autoincrement gerado.
Então, quando eu recebo do script o aviso "Cadastro feito com sucesso", depois volta na mesma tela de cadastro, e, ai se eu tentar incluir um novo registro, ai da erro.
Parece que depois do aviso, tenho que fechar e abrir a conexão novamente como tentei(esta comentado no código).
Pergunta
Carlos Rocha
Ola pessoal.
Aos trancos e barrancos, vou eu conseguindo estudar VB.Net.
Mas, novamente me esbarrei aqui.
Seguinte:
Obs.: Só consigo fazer uma operação por vez no dataset. Eu não consigo por exemplo, gravar uma novo registro e depois navegar a té uns trez ou quatro registros atraz e altera-lo que da erro.
No caso , estou tendo que fechar o form e abrir ele de novo. Nem mesmo gravar dois registros na sequencia não da.
tenho a função que me retorna um dataset:
Bom, no form tenho o botão novo com o código Que chama a função abaixoO problema é que quando eu cliko no botão novo e insiro um novo registro, ele não mostra o código autoincrement gerado.
Então, quando eu recebo do script o aviso "Cadastro feito com sucesso", depois volta na mesma tela de cadastro, e, ai se eu tentar incluir um novo registro, ai da erro.
Parece que depois do aviso, tenho que fechar e abrir a conexão novamente como tentei(esta comentado no código).
É isso mesmo, o que eu faço?
Editado por Carlos RochaLink para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.