ola pessoal
tenho esse código de baixa de estoque
'Informa mensagem de Ordem
If MsgBox("Você esta prestes atualizar o estoque?", vbQuestion + vbYesNo, "Confirme") = vbYes Then
'Devol.Value = True
'''''''''Atualização - baixa no estoque dos produtos vendidos''''''''''''''''''''''''
DoCmd.RunCommand acCmdSaveRecord
Dim wk As DAO.Workspace
Dim db As DAO.Database
Dim rstEstoque As DAO.Recordset
Dim rstSubFrm As DAO.Recordset
Set wk = DBEngine.Workspaces(0)
Set db = CurrentDb
Set rstEstoque = db.OpenRecordset("tblProduto")
Set rstSubFrm = Me.frmItemVenda.Form.RecordsetClone
'Informa qual indice será utilzado pelo metodo seek no recordset de Estoque
rstEstoque.Index = "PrimaryKey"
'Posiciona o ponteiro do recordset do subfrm no primeiro registro
rstSubFrm.MoveFirst
'Inicia um loop no recordset do subfrm
Do While Not rstSubFrm.EOF
'Inicia a busca no recordset estoque usando como argumento de busca o conteudo do campo CodPeca do subfrm
rstEstoque.Seek "=", rstSubFrm!CodPro
'Se idêntico
If rstEstoque.NoMatch = False Then
rstEstoque.Edit 'Coloca o recordset em modo de edicao
rstEstoque("estoque") = rstEstoque("Estoque") - rstSubFrm("Quantia")
rstEstoque.Update 'Grava a alteracao efetuada!
End If
'avanca para o proximo registro do subfrm
rstSubFrm.MoveNext
Loop
'Encerra as variaveis
rstSubFrm.Close
rstEstoque.Close
db.Close
wk.Close
'Informa que foi dada baixa no estoque e imprime cupom de venda
MsgBox "Atualizando Estoque. " _
, vbInformation, "Atualizado com sucesso!!!"
'DoCmd.OpenForm "Barra", acNormal
If Forms!frmvenda!frmItemVenda.Locked = True Then
Forms!frmvenda!frmItemVenda.Locked = False
Else
Forms!frmvenda!frmItemVenda.Locked = True
End If
'Atualiza cupom para imprimir
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
'Dim stDocName As String
'stDocName = "rptordem"
'DoCmd.OpenReport stDocName, acPreview, "CodManutencao = " & Me.CodManutencao
Else
End If
quando uso no banco funciona ok
mas quando divido o banco na funciona
da erro onde esta em vermelho
tenho esse código de baixa de estoque
'Informa mensagem de Ordem
If MsgBox("Você esta prestes atualizar o estoque?", vbQuestion + vbYesNo, "Confirme") = vbYes Then
'Devol.Value = True
'''''''''Atualização - baixa no estoque dos produtos vendidos''''''''''''''''''''''''
DoCmd.RunCommand acCmdSaveRecord
Dim wk As DAO.Workspace
Dim db As DAO.Database
Dim rstEstoque As DAO.Recordset
Dim rstSubFrm As DAO.Recordset
Set wk = DBEngine.Workspaces(0)
Set db = CurrentDb
Set rstEstoque = db.OpenRecordset("tblProduto")
Set rstSubFrm = Me.frmItemVenda.Form.RecordsetClone
'Informa qual indice será utilzado pelo metodo seek no recordset de Estoque
rstEstoque.Index = "PrimaryKey"
'Posiciona o ponteiro do recordset do subfrm no primeiro registro
rstSubFrm.MoveFirst
'Inicia um loop no recordset do subfrm
Do While Not rstSubFrm.EOF
'Inicia a busca no recordset estoque usando como argumento de busca o conteudo do campo CodPeca do subfrm
rstEstoque.Seek "=", rstSubFrm!CodPro
'Se idêntico
If rstEstoque.NoMatch = False Then
rstEstoque.Edit 'Coloca o recordset em modo de edicao
rstEstoque("estoque") = rstEstoque("Estoque") - rstSubFrm("Quantia")
rstEstoque.Update 'Grava a alteracao efetuada!
End If
'avanca para o proximo registro do subfrm
rstSubFrm.MoveNext
Loop
'Encerra as variaveis
rstSubFrm.Close
rstEstoque.Close
db.Close
wk.Close
'Informa que foi dada baixa no estoque e imprime cupom de venda
MsgBox "Atualizando Estoque. " _
, vbInformation, "Atualizado com sucesso!!!"
'DoCmd.OpenForm "Barra", acNormal
If Forms!frmvenda!frmItemVenda.Locked = True Then
Forms!frmvenda!frmItemVenda.Locked = False
Else
Forms!frmvenda!frmItemVenda.Locked = True
End If
'Atualiza cupom para imprimir
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
'Dim stDocName As String
'stDocName = "rptordem"
'DoCmd.OpenReport stDocName, acPreview, "CodManutencao = " & Me.CodManutencao
Else
End If
quando uso no banco funciona ok
mas quando divido o banco na funciona
da erro onde esta em vermelho