SISTEMA DE PRECIFICACAO
Boa Noite
Tenho um cliente que precifica os produtos na entrada utilizando uma media mental, rsrsrsrs ele não tem uma porcetangem de ganho nos produtos por sua ves cada item tem uma margem de ganho diferente.
estou desenvolvendo uma aplicação que carregue os items da nota no grid, no proprio grid ele altera os valores depois salva. o problema é que eu consigo listar os produtos no grid mas nao consigo devolver a alteração para o sql.
por favor me ajudem , segue codigo fonte,
eu sou novo no vb.net então favor relevar se tiver algo redundante.
Desde ja muinto obrigado a todos
Tenho um cliente que precifica os produtos na entrada utilizando uma media mental, rsrsrsrs ele não tem uma porcetangem de ganho nos produtos por sua ves cada item tem uma margem de ganho diferente.
estou desenvolvendo uma aplicação que carregue os items da nota no grid, no proprio grid ele altera os valores depois salva. o problema é que eu consigo listar os produtos no grid mas nao consigo devolver a alteração para o sql.
por favor me ajudem , segue codigo fonte,
eu sou novo no vb.net então favor relevar se tiver algo redundante.
Desde ja muinto obrigado a todos
Alguem ?
Meu codigo ate o momento esta bem pequeno, a parte de consulta ainda não esta pronta, mais dos males o menor segue meu codigo
Imports System.Data.SqlClient
Public Class Form1
Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged
End Sub
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
Dim da As SqlDataAdapter
Dim ds As DataSet
[ô] Texto de ligação à base de dados
Dim myConnectionString As String = [Ô]Server=notefernando\sqlexpress;Database=conemp_empresa_00;User Id=sa;Password=9632;[Ô]
[ô] Cria uma nova ligação à base de dados
Dim connection As New SqlConnection(myConnectionString)
[ô] Cria um novo SqlDataAdapter que servirá para actualizar o DataSet
Dim SQL As String = [Ô]SELECT [Código],[Barra],[Descrição],[Unidade],[Qtd Atual],[Peso Unitário]FROM [Conemp_Empresa_00].[dbo].[CadProdutos][Ô]
da = New SqlDataAdapter(SQL, connection)
[ô] Cria um DataSet, ou seja, uma representação em memória da informação
ds = New DataSet
[ô] Coloca a informação da tabela definida no DataSet
da.Fill(ds, [Ô]myTable[Ô])
[ô] Define que a fonte de dados da DataGridView é a nossa DataSet
[ô] criando automáticamente as colunas e linhas de dados
Me.DataGridView1.DataSource = ds.Tables([Ô]myTable[Ô])
[ô] Limpa a ligação à base de dados. Não é necessário fechar a ligação
[ô] porque esta não foi aberta através do comando .Open()
connection = Nothing
End Sub
Private Sub Button4_Click(sender As System.Object, e As System.EventArgs) Handles Button4.Click
End Sub
Private Sub Button5_Click(sender As System.Object, e As System.EventArgs) Handles Button5.Click
End Sub
End Class
Meu codigo ate o momento esta bem pequeno, a parte de consulta ainda não esta pronta, mais dos males o menor segue meu codigo
Imports System.Data.SqlClient
Public Class Form1
Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged
End Sub
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
Dim da As SqlDataAdapter
Dim ds As DataSet
[ô] Texto de ligação à base de dados
Dim myConnectionString As String = [Ô]Server=notefernando\sqlexpress;Database=conemp_empresa_00;User Id=sa;Password=9632;[Ô]
[ô] Cria uma nova ligação à base de dados
Dim connection As New SqlConnection(myConnectionString)
[ô] Cria um novo SqlDataAdapter que servirá para actualizar o DataSet
Dim SQL As String = [Ô]SELECT [Código],[Barra],[Descrição],[Unidade],[Qtd Atual],[Peso Unitário]FROM [Conemp_Empresa_00].[dbo].[CadProdutos][Ô]
da = New SqlDataAdapter(SQL, connection)
[ô] Cria um DataSet, ou seja, uma representação em memória da informação
ds = New DataSet
[ô] Coloca a informação da tabela definida no DataSet
da.Fill(ds, [Ô]myTable[Ô])
[ô] Define que a fonte de dados da DataGridView é a nossa DataSet
[ô] criando automáticamente as colunas e linhas de dados
Me.DataGridView1.DataSource = ds.Tables([Ô]myTable[Ô])
[ô] Limpa a ligação à base de dados. Não é necessário fechar a ligação
[ô] porque esta não foi aberta através do comando .Open()
connection = Nothing
End Sub
Private Sub Button4_Click(sender As System.Object, e As System.EventArgs) Handles Button4.Click
End Sub
Private Sub Button5_Click(sender As System.Object, e As System.EventArgs) Handles Button5.Click
End Sub
End Class
eu faço assim..
Dim cmd As OleDbCommand = connection.CreateCommand
try
with seudatagridview
if .Rows.Count =0 then
MsgBox [Ô]Não há itens![Ô]
else
for i=0 to .Rows.Count - 1
cmd.CommandText = [Ô]INSERT INTO CadProdutos (Código,Barra,Descrição,Unidade,Qtd,[ô]Peso Unitário[ô]) [Ô] & _
[Ô]VALUES ([ô][Ô] + .Rows(i).Cells(0).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(0).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(1).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(2).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(3).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(4).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(5).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(6).Value + [Ô][ô] [Ô]
cmd.ExecuteNonQuery()
next i
end if
end with
Catch erro As Exception
MsgBox([Ô]Erro [Ô] & vbCrLf & erro.ToString, MsgBoxStyle.Critical, [Ô]Erro ao Atualizar tabela de preços[Ô])
End Try
[ô]conciderando que os dados do grid estejam em ordem a consulta que voce ja fez,
[ô]fiz, aqui sem testar, depois voce me fala se deu certo.. estou um pouco ocupado e nao deu tempo de testar
ate+
Dim cmd As OleDbCommand = connection.CreateCommand
try
with seudatagridview
if .Rows.Count =0 then
MsgBox [Ô]Não há itens![Ô]
else
for i=0 to .Rows.Count - 1
cmd.CommandText = [Ô]INSERT INTO CadProdutos (Código,Barra,Descrição,Unidade,Qtd,[ô]Peso Unitário[ô]) [Ô] & _
[Ô]VALUES ([ô][Ô] + .Rows(i).Cells(0).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(0).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(1).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(2).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(3).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(4).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(5).Value + [Ô][ô], [Ô] & _
[Ô][ô][Ô] + .Rows(i).Cells(6).Value + [Ô][ô] [Ô]
cmd.ExecuteNonQuery()
next i
end if
end with
Catch erro As Exception
MsgBox([Ô]Erro [Ô] & vbCrLf & erro.ToString, MsgBoxStyle.Critical, [Ô]Erro ao Atualizar tabela de preços[Ô])
End Try
[ô]conciderando que os dados do grid estejam em ordem a consulta que voce ja fez,
[ô]fiz, aqui sem testar, depois voce me fala se deu certo.. estou um pouco ocupado e nao deu tempo de testar
ate+
Obrigado Pela Ajuda
agora esta dando a a seguinte mensagem de erro
o codigo ficou dessa maneira
Private Sub Button4_Click(sender As System.Object, e As System.EventArgs) Handles Button4.Click
Dim myConnectionString As String = [Ô]Server=notefernando\sqlexpress;Database=conemp_empresa_00;User Id=sa;Password=9632;[Ô]
[ô] Cria uma nova ligação à base de dados
Dim connection As New SqlConnection(myConnectionString)
Dim cmd As SqlCommand = connection.CreateCommand
Try
With DataGridView1
If .Rows.Count = 0 Then
MsgBox([Ô]Não há itens![Ô])
Else
For i = 0 To .Rows.Count - 1
cmd.CommandText = [Ô]UPDATE [Conemp_Empresa_00].[dbo].[CadProdutos] SET [Preço 1] = [ô][Ô] + .Rows(i).Cells(6).Value + [Ô][ô] WHERE [Código] = [ô][Ô] + .Rows(i).Cells(0).Value + [Ô][ô][ô][Ô]
cmd.ExecuteNonQuery()
Next i
End If
End With
Catch erro As Exception
MsgBox([Ô]Erro [Ô] & vbCrLf & erro.ToString, MsgBoxStyle.Critical, [Ô]Erro ao Atualizar tabela de preços[Ô])
End Try
End Sub
O que será ??
agora esta dando a a seguinte mensagem de erro
o codigo ficou dessa maneira
Private Sub Button4_Click(sender As System.Object, e As System.EventArgs) Handles Button4.Click
Dim myConnectionString As String = [Ô]Server=notefernando\sqlexpress;Database=conemp_empresa_00;User Id=sa;Password=9632;[Ô]
[ô] Cria uma nova ligação à base de dados
Dim connection As New SqlConnection(myConnectionString)
Dim cmd As SqlCommand = connection.CreateCommand
Try
With DataGridView1
If .Rows.Count = 0 Then
MsgBox([Ô]Não há itens![Ô])
Else
For i = 0 To .Rows.Count - 1
cmd.CommandText = [Ô]UPDATE [Conemp_Empresa_00].[dbo].[CadProdutos] SET [Preço 1] = [ô][Ô] + .Rows(i).Cells(6).Value + [Ô][ô] WHERE [Código] = [ô][Ô] + .Rows(i).Cells(0).Value + [Ô][ô][ô][Ô]
cmd.ExecuteNonQuery()
Next i
End If
End With
Catch erro As Exception
MsgBox([Ô]Erro [Ô] & vbCrLf & erro.ToString, MsgBoxStyle.Critical, [Ô]Erro ao Atualizar tabela de preços[Ô])
End Try
End Sub
O que será ??
Ops
link da imagem
http://upload.crazzy.com.br/show-image.php?id=d1a03dabc4a50b7f37599407dd93e253
Obrigado pela atenção
link da imagem
http://upload.crazzy.com.br/show-image.php?id=d1a03dabc4a50b7f37599407dd93e253
Obrigado pela atenção
Alguem pode me ajudar
O seu grid tem 7 colunas mesmo?
Bom Dia
Sim, meu grid esta com 7 colunas mesmo
somente esses dados que eu preciso para atualizar o preço de venda das mercadorias
Obrigado Pela ajuda
Sim, meu grid esta com 7 colunas mesmo
somente esses dados que eu preciso para atualizar o preço de venda das mercadorias
Obrigado Pela ajuda
Tente assim:
Dim myConnectionString As String = [Ô]Server=notefernando\sqlexpress;Database=conemp_empresa_00;User Id=sa;Password=9632;[Ô]
[ô] Cria uma nova ligação à base de dados
Dim connection As New SqlConnection(myConnectionString)
Dim cmd As SqlCommand = connection.CreateCommand
Try
With DataGridView1
If .Rows.Count = 0 Then
MsgBox([Ô]Não há itens![Ô])
Else
For i = 0 To .Rows.Count
cmd.CommandText = [Ô]UPDATE [Conemp_Empresa_00].[dbo].[CadProdutos] SET [Preço 1] = [ô][Ô] + .Rows(i).Cells(6).Value + [Ô][ô] WHERE [Código] = [ô][Ô] + .Rows(i).Cells(0).Value + [Ô][ô][ô][Ô]
cmd.ExecuteNonQuery()
Next i
End If
End With
Catch erro As Exception
MsgBox([Ô]Erro [Ô] & vbCrLf & erro.ToString, MsgBoxStyle.Critical, [Ô]Erro ao Atualizar tabela de preços[Ô])
End Try
Ainda não deu certo, o erro continua
Poste um print desse seu datagrid.
Tópico encerrado , respostas não são mais permitidas