RELACIONANDO ITENS DE VARIAS TABELAS
Citação::
:
Não é dr.NextResult
é dr.Read()
deu este erro
Já existe um DataReader aberto associado a este Command que deve ser fechado primeiro.
dei um close e fiz assim
Dim cs As String = My.Settings.EstoqueConnectionString1
Dim conect As New OleDb.OleDbConnection(cs)
Try
conect.Open()
Dim cmd As New OleDb.OleDbCommand([Ô]Select CodigoProduto, saldo from tb_itemkit where CodigoKit = [Ô] & txtcod.Text, conect)
[ô]conect.ConnectionString = cs
Dim dr As OleDbDataReader = cmd.ExecuteReader()
Do While dr.Read()
cmd.CommandText = ([Ô]update tb_estoque set saldo = saldo - [Ô] & CDbl(txtqt.Text) * dr([Ô]saldo[Ô]) & [Ô] Where cod_produto = [Ô] & dr([Ô]CodigoProduto[Ô]))
dr.Close()
If cmd.ExecuteNonQuery Then
MsgBox([Ô]![Ô])
End If
Loop
e deu o seguinte erro ([Ô][Ô][Ô][Ô]Tipo de dados imcompatÃvel na expressão de critério.
em qual linha?
Citação::
em qual linha?
If cmd.ExecuteNonQuery Then
aqui pula pro erro
Verifique:
txtqt.Text tem algum valor?
dr([Ô]CodigoProduto[Ô]) tem algum valor?
txtqt.Text tem algum valor?
dr([Ô]CodigoProduto[Ô]) tem algum valor?
Citação::
Verifique:
txtqt.Text tem algum valor?
dr([Ô]CodigoProduto[Ô]) tem algum valor?
resolvido, era o if selcom.executenonquery que estava dando erro
mas agora esta executando o comando, só que nao esta diminuindo a quantidade dos itens
Faça a depuração... verifique o que como fica o comando de update(já com os valores concatenados)...
Citação::
Faça a depuração... verifique o que como fica o comando de update(já com os valores concatenados)...
dentro do comand text deu isso
até ae ta certo creio eu
cmd.CommandText = [Ô]Select CodigoProduto, saldo from tb_itemkit where CodigoKit = 1[Ô]
CDbl(txtqt.Text) = 12.0
dr([Ô]saldo[Ô]) = [Ô]10[Ô] {String}
dr([Ô]CodigoProduto[Ô]) = [Ô]1[Ô] {String}
O que não está funcionando, é o update, não?? é ele que vc tem que ver
Citação::
O que não está funcionando, é o update, não?? é ele que vc tem que ver
sim eu dei um break point no update e dentro da comand do update aparece essa relação de itens quando passo o mause por cima de cada codigo
dr.Close()
Vai FORA do loop... amigo, acho melhor vc parar e começar com o básico...
Vai FORA do loop... amigo, acho melhor vc parar e começar com o básico...
Tópico encerrado , respostas não são mais permitidas