Listar dados no datagrid com banco de dados firebird 3.0 embarcado.

18/06/2020

0

Boa tarde pessoal,
Sou novo no fórum, gostaria de uma ajuda se possível.
Estou criando um aplicativo em VB no visual studio 2017 usando banco de dados firebird embarcado.
A conexão e salvar registro está funcionando,estou com problema em fazer listar (carregar o data grid com registros).

Quando executo a aplicação dá "ERRO AO LISTAR O INDICE ESTAVA FORA DO INTERVALO.ELE DEVE SER NÃO NEGATIVO E MENOR QUE O TAMANHO DA COLEÇÃO. NOME DO PARAMETRO INDEX." .
Segue o código,caso alguém poder ajudar serei agradecido.
Agradeço desde já.


Private Sub btnSalvar_Click(sender As Object, e As EventArgs) Handles btnSalvar.Click
If txtApto.Text <> "" Then
Try

''''''''VERIFICAR SE O APTO JÁ ESTÁ CADASTRADO
Abrir()
Dim cmdPRO As FbCommand
Dim readerPRO As FbDataReader
Dim sqlPRO As String
sqlPRO = "SELECT * FROM CAD_APTOS where APTO = ''''''''" & txtApto.Text & "'''''''' "
cmdPRO = New FbCommand(sqlPRO, con)
readerPRO = cmdPRO.ExecuteReader()

If readerPRO.Read = True Then
readerPRO.Close()
MsgBox("Apto já cadastrado")
txtApto.Text = ""
txtApto.Focus()
Exit Sub

End If
readerPRO.Close()

Abrir()
Dim cmd As FbCommand
Dim sql As String
sql = "INSERT INTO CAD_APTOS (APTO) VALUES (''''''''" & txtApto.Text & "'''''''') "

cmd = New FbCommand(sql, con)
cmd.ExecuteNonQuery()
MsgBox("Salvo com Sucesso!!")

Listar()
DesabilitarCampos()



Limpar()
Catch ex As Exception
MsgBox("Erro ao Salvar!!" + ex.Message)
End Try
Else
MsgBox("Preencha os campos!!")
End If
End Sub


Sub Limpar()

txtApto.Text = ""

End Sub

Private Sub HabilitarCampos()
txtApto.Enabled = True

End Sub

Private Sub DesabilitarCampos()
txtApto.Enabled = False

End Sub

Sub InativarBotoes()
btnEditar.BackgroundImage = My.Resources.btnEditarInativo
btnSalvar.BackgroundImage = My.Resources.btnSalvarInativo
btnDeletar.BackgroundImage = My.Resources.btnDeletarUserInativo

btnEditar.Enabled = False
btnSalvar.Enabled = False
btnDeletar.Enabled = False

End Sub

Sub Listar()

Try
Abrir()
Dim ds As New DataSet
Dim da As FbDataAdapter
Dim sql As String = "Select * from CAD_APTOS"

da = New FbDataAdapter(sql, con)

da.Fill(ds)

dg.DataSource = ds



FormatarDG()

Catch ex As Exception

MsgBox("Erro ao listar" & vbCrLf & ex.Message)

End Try
End Sub

Private Sub FormatarDG()

dg.Columns(0).Visible = False
dg.Columns(0).HeaderText = "Id da Apto"

dg.Columns(1).HeaderText = "Apto"

End Sub
Samuel

Samuel

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar