♥ 0 | Boa tarde
ao criar um documento via motores na v9 com a data de sistema da máquina em 2023 dá o erro Object reference not set to an instance of an object.
se for por VBA via BSO cria sem problemas com 2023 ou 2022 se for por VBA via Motor dá erro
Sub vendas() Dim Motor As ErpBS900.ErpBS Dim DocumentoVenda As GcpBEDocumentoVenda Set Motor = New ErpBS900.ErpBS Motor.AbreEmpresaTrabalho tpProfissional, “DEMORGPD”, “USER”, “PASS” Motor.Comercial.vendas.PreencheDadosRelacionados DocumentoVenda, vdDadosTodos Set DocumentoVenda = Nothing Marked as spam |
Comments Boa noite
Estou exactamente com o mesmo problema!
Versão BAS 09.1510.1233
Versão GCP 09.1510.2358
A aplicação externa que utiliza o motor esteve a funcionar normalmente até 2022-12-31 23:52:11 a gerar documentos de venda (data/hora do último documento)
A partir do momento que a data alterou para 2023 passou a devolver o erro indicado "Object reference not set to an instance of an object"
Até ao momento não consegui encontrar a solução para o problema! Bom dia, Estou exactamente com o mesmo problema! Bom dia, também estamos com o mesmo problema. Boa tarde,
Penso que o problema terá a ver com a dll Primavera.TaxCV Adicionei a seguinte linha de codigo:
motor.TaxAuthorityPortugalManager.Platform = plataforma; Já funcionou. Com essa linha efetivamente resolve o problema, sem ter que se atualizar o ERP.
Obrigado. Pois eu queria actualizando o ERP não ter de colocar a linha, já vi que não é possível, pelo menos por enquanto segundo o suporte olá, Não consegui adicionar a linha motor.TaxAuthorityPortugalManager.Platform = plataforma; Diz que TaxAuthorityPortugalManager is not a member de ErpBS. Podem exemplificar como fizeram? Foi apos AbreEmpresaTrabalho Talvez seja útil...
Adicionar a ref StdPlatBS900 e o código em baixo, pode ser depois do AbreEmpresaTrabalho Dim plataforma As StdPlatBS
Dim objConfApl As StdBSConfApl
Dim objTrans As StdBETransaccao
Dim eTipo As EnumTipoPlataforma Set plataforma = New StdPlatBS
Set objConfApl = New StdBSConfApl
Set objTrans = New StdBETransaccao objConfApl.AbvtApl = "ERP"
objConfApl.Instancia = "DEFAULT"
objConfApl.LicVersaoMinima = "9.00"
eTipo = tpEmpresarial
plataforma.AbrePlataformaEmpresa "DEMO", objTrans, objConfApl, eTipo, vbNullString
oMotor.TaxAuthorityPortugalManager.Platform = plataforma |
Private answer Adicionei a seguinte linha de codigo: motor.TaxAuthorityPortugalManager.Platform = plataforma; Já funcionou. Marked as spam Comments A minha versão de Primavera.TaxCV.dll é 9.1510.0000.0326
Não tenho atualizações do erp disponiveis.
Como é que conseguiram a versão 0341? Confirmo que resolveu o problema.
Muito obrigado! | |
Private answer Qual a Localização da Empresa, qual a sede fiscal? Marked as spam Comments Portugal continental Já configurou a comunicação de Séries? No nosso caso, até para documentos internos, como, por exemplo, encomendas, temos este problema. Está a tentar via VBA ou via C# .NET??? Penso que como estou a testar é indiferente. a si não lhe dá erro? | |
Private answer Este é um Exemplo de Teste de Criação de Documentos de Venda, usando c#
Err_ = String.Empty; string Result = ""; if (!bso.Contexto.EmpresaAberta) LigarMotorEmpresa(Empresa, out Err_); Interop.GcpBE900.GcpBEDocumentoVenda doc_ = null; try { //for (int x = 1; x < 5001; x++) //{ doc_ = new Interop.GcpBE900.GcpBEDocumentoVenda(); doc_.set_TipoEntidade("C"); doc_.set_Cambio(1); doc_.set_Tipodoc("ECL"); doc_.set_Moeda("AKZ"); doc_.set_CondPag("1"); doc_.set_Serie(bso.Comercial.Series.DaSerieDefeito("V", "ECL")); doc_.set_NumDoc(bso.Comercial.Series.ProximoNumero("V", doc_.get_Tipodoc(), doc_.get_Serie(), true)); doc_.set_Filial("000"); doc_.set_Entidade(Entidade); doc_.set_DataDoc(DateTime.Now); doc_.set_DataVenc(DateTime.Now); //for (int i = 1; i < 5; i++) //{ bso.Comercial.Vendas.AdicionaLinha(doc_, Artigo, Quantidade, bso.Comercial.Armazens.DevolvePrimeiroArmazem(), bso.Comercial.Armazens.DevolvePrimeiroArmazem(), Preco, 0); //} bso.Comercial.Vendas.PreencheDadosRelacionados(doc_); bso.Comercial.Vendas.Actualiza(doc_, Err_); Result += doc_.get_Tipodoc() + " " + doc_.get_Serie() + "/" + doc_.get_NumDoc(); //} } catch (Exception ex) { Err_ += GetType().Name + Environment.NewLine + System.Reflection.MethodBase.GetCurrentMethod().Name + Environment.NewLine +Environment.NewLine + ex.Message + Environment.NewLine; wLog.WriteLog("WCF Service", Environment.MachineName, "Erro ERP v9: " + ex.Message, GetType().Name, System.Reflection.MethodBase.GetCurrentMethod().Name, Cnf._Log, Cnf._SQLSrv, "APP", Cnf._SQLUser, Cnf._SQLPass, "LogAPP"); } finally { if (doc_ != null) Marshal.ReleaseComObject(doc_); doc_ = null; } return Result;
Marked as spam | |
Private answer Alguém teve o mesmo problema na v10? Estou com o mesmo erro na série 2023. Não encontrei nada relativamente à solução da v9 "motor.TaxAuthorityPortugalManager.Platform = plataforma;" na v10. Alguém consegue ajudar?
Obrigado! Marked as spam Comments resolvido. Eram algumas variáveis das linhascompras que agora não podem ir a null. |