PREECHER COMBOBOX COM DADOS DA BD

SURI 25/04/2013 16:10:25
#422506
Olá vbmaníacos,
Tenho o seguinte código retornando erro:[Ô] Value cannot be nule
Parameter name: dataset

Presumo que seja devido ao facto de tentar buscar dados numa tabela vazia, mas, acontece que a tabela contem dados.
Ai vai o código que estou utilizando:
dim buscagp as new fbdataadapter
dim fb as new dataset

buscagp = New FbDataAdapter([Ô]select grupo.grupo from grupo order by grupo[Ô], fogo)


Try
buscagp.Fill(fb, [Ô]grupo[Ô])

If fb.Tables(0).Rows.Count > 0 Then
With cmbgrupo
.DataSource = fb.Tables([Ô]GRUPO[Ô])

End With

End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
OMAR2011 25/04/2013 18:46:19
#422521
Resposta escolhida

Try
buscagp.Fill(fb, [Ô]grupo[Ô])

If fb.Tables(0).Rows.Count > 0 Then
With cmbgrupo
.DataSource = fb.Tables([Ô]GRUPO[Ô])
[txt-color=#e80000].ValueMember = [Ô]grupo[Ô][/txt-color]
End With

End If
Catch ex As Exception
MsgBox(ex.Message)
End Try

Não deixe seu Banco aberto,feche depois de usar.
Abre e feche toda vez.
SURI 26/04/2013 10:24:54
#422541
OMAR2011,

Coloquei a linha : valumember e ainda assim continua retornando erro:

Value cannot be nule

Parameter name: dataset
OMAR2011 26/04/2013 11:48:28
#422552
Usei Imports System.Data.OleDb
a dll para conexão IBOLE.DLL

Private Sub Button5_Click(sender As System.Object, e As System.EventArgs) Handles Button5.Click
Dim buscagp As New OleDbDataAdapter
Dim fb As New DataSet
Dim fogo As New OleDbConnection([Ô]Provider=Ibole.provider.v4;Data Source=[Ô] & My.Application.Info.DirectoryPath & [Ô]\Delicias.fdb[Ô])
buscagp = New OleDbDataAdapter([Ô]select grupo.grupo from grupo order by grupo[Ô], fogo)
Try
buscagp.Fill(fb, [Ô]grupo[Ô])

If fb.Tables(0).Rows.Count > 0 Then
With cmbgrupo
.DataSource = fb.Tables([Ô]GRUPO[Ô])
.ValueMember = [Ô]grupo[Ô]
End With

End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
SURI 26/04/2013 12:57:25
#422561
Amigão não fiz a importação porque, primeiro estou achando que o provedor .net da firebird está com alguns bugs (se calhar estão fazendo melhorias. Depois procurarei ler alguma coisa sobre isso). Resolvi eliminar a tabela [Ô]grupo[Ô] e criei novamente mas com o campo nome_grupo. Aí funciona com o código (que você deu uma melhorada, mas com nomes diferentes no fbdataadapter e no objecto dataset. Ficou:


acesso = New FbDataAdapter([Ô]select grupo.nome_grupo from grupo order by nome_grupo[Ô], fogo)
fb = New DataSet
Try
acesso.Fill(fb, [Ô]grupo[Ô])

If fb.Tables(0).Rows.Count > 0 Then
With cmbgrupo
.DataSource = fb.Tables([Ô]GRUPO[Ô])
.ValueMember = [Ô]nome_grupo[Ô]
End With

End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
Tópico encerrado , respostas não são mais permitidas