♥ 0 | Estou a começar a criar aplicações conectadas com o Primavera ERP v9.0… Criei a seguinte aplicação de teste em C#: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Interop.ErpBS900; using Interop.StdPlatBS900; using Interop.StdBE900; using Interop.GcpBE900; using Interop.IGcpBS900; namespace PrimTest { class Program { static void Main(string[] args) { Console.WriteLine(Caller.PrimaveraIsActive() ? "Activo" : "Inactivo"); } } class Caller { public static StdPlatBS Plataforma { get; set; } /// <summary> /// Returns the engine that allows acess to the modules. /// </summary> public static ErpBS Engine { get; set; } public static bool PrimaveraIsActive() { Plataforma = new StdPlatBS(); return Plataforma.Inicializada; } } } Só consegui compilar depois de adicionar as referências às livrarias Interop.* no ficheiro *.csproj (Visual Studio). No entanto continuo com erros: O programa dá erro quando utiliza o módulo Interop.* : erro ‘80040154 Classe não registada (0x80040154 (REGDB_E_CLASSNOTREG))’… Então tentei usar o utilitário do Windows regsvr32 para cada um dos módulos Interop.* utilizados, por exemplo, fiz regsvr32 Interop.ErpBS900.dll na directoria do Primavera… No entanto deu erro : não encontra ponto de entrada DllRegisterServer… Que é que devo fazer? Marcado como spam |
Resposta privada Bom dia Antes de mais tens de entender a logica de funcionamento do ERP. Existe um conjunto minimo de DLLs que tens de referenciar para que um projeto funcione. Assim:
Depois disto em versões anteriores a V10 tens de referenciar os interops, e estes apontam para a DLL´s concretas nos modulos de acordo com o que está no registo do windows. Assim tens de ter atensão à plataforma com que estás a complilar o projeto porque X86 e x64 vão locais diferentes do registo procurar as DLL's.
Este é o teu problema, esta configuração. Marcado como spam Comentários Muito obrigado pelas informações e pelo manual. | |
Resposta privada Boa tarde João, Além do que o Sereno referiu, se estas a dar os primeiros passos com os motores da V9, existe documentação no Primavera Knowledge Base (PKB) que pode ajudar-te. Embora os exemplos sejam em VB, facilmente convertes em C#, espero que ajude ;-) Marcado como spam |