AJUDA DATAGRIDVIEW

MRPESTOQUE 06/11/2013 10:34:57
#430785
olá

preciso de ajuda com um datagridview, tenho a seguinte situação:

em um formulário tenho uma datagridview que puxa os dados do banco de dados do access, necessito salvar esses dados para uma outra tabela mas tenho que acrecentar os dados de um textbox .
para salvar eu já tenho o código oque preciso e como juntar no datagridview os dados do banco e do textbox junto.

MADMAX 06/11/2013 11:53:52
#430792
MRPESTOQUE como você carrega os dados no Grid por um DataSource ??? coloca o codigo ai para ver se da para te ajudar .
MRPESTOQUE 06/11/2013 12:46:22
#430797
Private Sub exibeParcelasCliente(ByVal cod As Integer, Optional ByVal flag As Boolean = True)
Using con As OleDbConnection = GetConnection()
Try
con.Open()
Dim sql As String

sql = [Ô]SELECT coditem,maquina,seguencia,operação,tempo FROM Cadastro_roteiro WHERE coditem=[Ô] & txtcodigo.Text

Dim cmd As New OleDb.OleDbCommand(sql, con)


Dim da As OleDbDataAdapter = New OleDbDataAdapter(cmd)
Dim dt As DataTable = New DataTable
da.Fill(dt)
gdvParcelas.DataSource = dt
formataGridView()

Catch ex As Exception
Throw ex
Finally
con.Close()
End Try
End Using
End Sub
MADMAX 06/11/2013 13:52:11
#430799
MRPESTOQUE pode ate ter uma meio de fazer melhor mais você tem duas opções 1 colocar o campo na query ,

sql = [Ô]SELECT coditem,maquina,seguencia,operação,tempo, [ô][ô] as campo FROM Cadastro_roteiro WHERE coditem=[Ô] & txtcodigo.Text

ou adicionar no data table adicionando a coluna que você vai guardar os dados do text;
Dim col As DataColumn = New DataColumn()
col.ColumnName = [Ô]CAMPO[Ô]
col.DataType = TypeOf([Ô]string[Ô])
dt.Columns.Add(col)

depois você pode pegar fazer assim ,

[ô]Adiciona os dados do grid em um datatable
Dim dt As System.Data.DataTable = DataGridView1.DataSource
[ô]Percorre o Grid Adicionando Valor
For index As Integer = 0 To dt.Rows.Count
dt.BeginInit()
dt.Rows(index)([Ô]CAMPO[Ô]) = [Ô]TESTE[Ô]
dt.EndInit()
dt.AcceptChanges()
Next

Cara acho que isso te ajuda pode ter algum errinho ja que fiz de cabeça , porem na essencia a logica e essa.
MRPESTOQUE 06/11/2013 15:49:04
#430805
PREZADO MADMAX

desculpe mas estou começando em vb.net e não entendi tua colocação e não consegui fazer com o exemplo acima

tente assim

S.B.CAMPO

Mensagem interna




06/11/2013 13:57:05;MADMAX
MRPESTOQUE pode ate ter uma meio de fazer melhor mais você tem duas opções 1 colocar o campo na query ,

sql = [Ô]SELECT coditem,maquina,seguencia,operação,tempo, [ô][ô] as campo FROM Cadastro_roteiro WHERE coditem=[Ô] & txtcodigo.Text

mas deu erro na ([Ô]) esta faltando uma?


MADMAX 06/11/2013 16:53:02
#430812
Ali são dois apostrofos.

sql = [Ô]SELECT coditem,maquina,seguencia,operação,tempo, [ô] [ô] as campo FROM Cadastro_roteiro WHERE coditem=[Ô] & txtcodigo.Text

Segue o que acho que você quer ai ele vai pegar os dados no banco , depois adicionar uma nova coluna com nome de [Ô]CAMPO[Ô] , depois vai carregar os registros com os dados, por fim carrega tudo no grid.
ve se funciona pq fiz de cabeça

Private Sub exibeParcelasCliente(ByVal cod As Integer, Optional ByVal flag As Boolean = True)
Using con As OleDbConnection = GetConnection()
Try
con.Open()
Dim sql As String

sql = [Ô]SELECT coditem,maquina,seguencia,operação,tempo, [ô] [ô] as campo FROM Cadastro_roteiro WHERE coditem=[Ô] & txtcodigo.Text

Dim cmd As New OleDb.OleDbCommand(sql, con)


Dim da As OleDbDataAdapter = New OleDbDataAdapter(cmd)
Dim dt As DataTable = New DataTable
da.Fill(dt)


Dim col As DataColumn = New DataColumn()
col.ColumnName = [Ô]CAMPO[Ô]
col.DataType = TypeOf([Ô]string[Ô])
dt.Columns.Add(col)

For index As Integer = 0 To dt.Rows.Count -1
dt.BeginInit()
dt.Rows(index)([Ô]CAMPO[Ô]) = [Ô]COLOQUE TXT AQUI[Ô]
dt.EndInit()
dt.AcceptChanges()
Next

gdvParcelas.DataSource = dt
formataGridView()

Catch ex As Exception
Throw ex
Finally
con.Close()
End Try
End Using
End Sub
MRPESTOQUE 06/11/2013 17:26:45
#430815
deu erro na seguinte linha

col.DataType = TypeOf([Ô]string[Ô])


Is expected.
MADMAX 06/11/2013 17:37:24
#430816
Resposta escolhida
Ve agora , percebi alguns errinhos ...faz algum tempo que estou so programando C# , enferuujei um poco nos comandos do vb.net

Private Sub exibeParcelasCliente(ByVal cod As Integer, Optional ByVal flag As Boolean = True)
Using con As OleDbConnection = GetConnection()
Try
con.Open()
Dim sql As String

sql = [Ô]SELECT coditem,maquina,seguencia,operação,tempo, [ô] [ô] as campo FROM Cadastro_roteiro WHERE coditem=[Ô] & txtcodigo.Text

Dim cmd As New OleDb.OleDbCommand(sql, con)


Dim da As OleDbDataAdapter = New OleDbDataAdapter(cmd)
Dim dt As DataTable = New DataTable
da.Fill(dt)

For index As Integer = 0 To dt.Rows.Count -1
dt.BeginInit()
dt.Rows(index)([Ô]campo[Ô]) = [Ô]COLOQUE TXT AQUI[Ô]
dt.EndInit()
dt.AcceptChanges()
Next

gdvParcelas.DataSource = dt
formataGridView()

Catch ex As Exception
Throw ex
Finally
con.Close()
End Try
End Using
End Sub
MRPESTOQUE 07/11/2013 18:11:57
#430868
cara era isso mesmo, deu certo muito obrigado me ajudou muito mesmo



Tópico encerrado , respostas não são mais permitidas