Boa noite Amigos
Tenho o código abaixo para repetir dados de um formulário e subformulário para outro documento.
O código funciona bem quando a BD não está dividida em Front e back.
Acontece que estou a tentar usa-lo numa BD dividida Front e back end , e ao executar o código dá erro 3219 Operação inválida e dica a amarelo a linha marcada a vermelho.
Alguma ideia.
Obrigado
'-----------------------------------------
Dim dbOrc As Database, rs1, rs2, rs3 As DAO.Recordset
If MsgBox("Deseja Passa este Documento para o Fornecedor " & Cliente1 & "", vbYesNo + vbQuestion, "Repatição") = vbYes Then
Set dbOrc = CurrentDb
Set rs1 = dbOrc.OpenRecordset("Encomenda", dbOpenTable)
With rs1
.AddNew
![LN] = DMax("ln", "Encomenda") + 1
![Cliente] = Me.Cliente1
.Update
End With
Set rs2 = dbOrc.OpenRecordset("SELECT * FROM Detalhesartigos WHERE lnd=" & Me.LN)
Set rs3 = dbOrc.OpenRecordset("DetalhesArtigos", dbOpenTable)
While (Not rs2.EOF)
With rs3
.AddNew
![LND] = DMax("ln", "Encomenda")
![Ref] = rs2![Ref]
![Tipo] = rs2![Tipo]
![Descrição] = rs2![Descrição]
![Quant] = rs2![Quant]
![Preço] = rs2![Preço]
![PreçoCusto] = rs2![PreçoCusto]
![SYS] = rs2![SYS]
.Update
rs2.MoveNext
End With
Wend
rs1.Close
Set rs1 = Nothing
rs2.Close
Set rs2 = Nothing
rs3.Close
Set rs3 = Nothing
Set dbOrc = Nothing
MsgBox "Documento Repetido Criado com Sucesso. ", vbInformation, "Terminado"
DoCmd.Close acForm, "EncomendasAlterar"
Else
DoCmd.CancelEvent
End If
Tenho o código abaixo para repetir dados de um formulário e subformulário para outro documento.
O código funciona bem quando a BD não está dividida em Front e back.
Acontece que estou a tentar usa-lo numa BD dividida Front e back end , e ao executar o código dá erro 3219 Operação inválida e dica a amarelo a linha marcada a vermelho.
Alguma ideia.
Obrigado
'-----------------------------------------
Dim dbOrc As Database, rs1, rs2, rs3 As DAO.Recordset
If MsgBox("Deseja Passa este Documento para o Fornecedor " & Cliente1 & "", vbYesNo + vbQuestion, "Repatição") = vbYes Then
Set dbOrc = CurrentDb
Set rs1 = dbOrc.OpenRecordset("Encomenda", dbOpenTable)
With rs1
.AddNew
![LN] = DMax("ln", "Encomenda") + 1
![Cliente] = Me.Cliente1
.Update
End With
Set rs2 = dbOrc.OpenRecordset("SELECT * FROM Detalhesartigos WHERE lnd=" & Me.LN)
Set rs3 = dbOrc.OpenRecordset("DetalhesArtigos", dbOpenTable)
While (Not rs2.EOF)
With rs3
.AddNew
![LND] = DMax("ln", "Encomenda")
![Ref] = rs2![Ref]
![Tipo] = rs2![Tipo]
![Descrição] = rs2![Descrição]
![Quant] = rs2![Quant]
![Preço] = rs2![Preço]
![PreçoCusto] = rs2![PreçoCusto]
![SYS] = rs2![SYS]
.Update
rs2.MoveNext
End With
Wend
rs1.Close
Set rs1 = Nothing
rs2.Close
Set rs2 = Nothing
rs3.Close
Set rs3 = Nothing
Set dbOrc = Nothing
MsgBox "Documento Repetido Criado com Sucesso. ", vbInformation, "Terminado"
DoCmd.Close acForm, "EncomendasAlterar"
Else
DoCmd.CancelEvent
End If