0
In version 9 when transforming sales document into transport guide the error is triggered:
Automation Error
If using the same code for another document type that is not a guide works correctly.
Follows the code:
Public Shared Function transformaDocGrid(ByVal motorPrimavera As ErpBS, tipo As String, numdoc As Long, serie As String)
Dim docOrigem As GcpBEDocumentoVenda
Dim docDestino As GcpBEDocumentoVenda
docDestino = New GcpBEDocumentoVenda
Dim lngI As Long
Dim arrDocumentos(0) As Object
Dim i As Long
Dim strAvisos As String
docOrigem = motorPrimavera.Comercial.Vendas.Edita("000", tipo, serie, numdoc)
With docDestino
.Tipodoc = "GT"
.Serie = "2019"
.Entidade = docOrigem.Entidade
.TipoEntidade = docOrigem.TipoEntidade
.Morada = docOrigem.Morada
.Morada2 = docOrigem.Morada2
.Localidade = docOrigem.Localidade
.LocalidadeCodigoPostal = docOrigem.LocalidadeCodigoPostal
.CodigoPostal = docOrigem.CodigoPostal
.DataDoc = Now
.TipoEntidade = docOrigem.TipoEntidade
End With
motorPrimavera.Comercial.Vendas.PreencheDadosRelacionados(docDestino, PreencheDados.enuDadosTodos)
For i = 1 To docOrigem.Linhas.NumItens
docOrigem.Linhas(i).QuantReservada = 0
Next
motorPrimavera.Comercial.Vendas.Actualiza(docOrigem)
arrDocumentos(0) = docOrigem
motorPrimavera.Comercial.Vendas.TransformaDocumentoEX(arrDocumentos, docDestino, True, strAvisos)
docDestino = motorPrimavera.Comercial.Vendas.EditaID(docDestino.ID)
For i = 1 To docDestino.Linhas.NumItens
docDestino.Linhas(i).QuantReservada = docDestino.Linhas(i).Quantidade
Next
motorPrimavera.Comercial.Vendas.Actualiza(docDestino)
End Function
Hello André, usually this error happens when one of the dlls of Erp is not correctly registered, you can always try to verify this with an application that makes you clean of Registry. As for the code, I tested and works without problem.
– Daniel Vieira
I subscribe to @Daniel Vieira. I have received the same error that after a lot of searches and tests turned out to be a bad record of a DLL related to ERP.
– Nuno Gonçalves
It’s already solved!! Thank you
– André Alves