¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Problemas de espaço de memória ao baixar OBServer.dll: Causas e soluções

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 0 Vistas
0
Cargando...

Olá a todos,

Temos enfrentado problemas ocasionais com o espaço de memória ao baixar o OBServer.dll durante a execução do nosso complemento.

Como é desencadeado o download do OBServer.dll? Ele é baixado toda vez ou algo o ativa? Podemos evitar o download?

Muito obrigado,

Damian

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

3 Respuestas

0
Cargando...

Damian,

O download do OBServerDLL.dll é acionado pelo Company.Connect(). No entanto, não é baixado a cada conexão, apenas se o OBServerDll.dll não estiver disponível ou estiver desatualizado na pasta temporária, então o último OBServerDll.dll será baixado na pasta temporária.

Quantos suplementos com conexão DI estão sendo executados no mesmo cliente? ou

Quantas sessões de suplementos com conexão DI existem no mesmo cliente?

Você tentou a seguinte solução com várias conexões DI?

1. Múltiplas conexões de suplementos fornecidas desde SDK 2007:

SboGuiApi = New SAPbouiCOM.SboGuiApi
'// conectar a uma aplicação SBO em execução
If connectionString = "" Then
If Environment.GetCommandLineArgs().Length = 1 Then
sConnectionString = "0030002C0030002C00530041005000420044005F00440061007400650076002C0050004C006F006D0056004900490056"
Else
sConnectionString = Environment.GetCommandLineArgs.GetValue(1)
End If
Else
 ''a cadeia de conexão foi preenchida anteriormente
End If
  SboGuiApi.Connect(sConnectionString)
'// obter um objeto de aplicação inicializado
SBO_Application = SboGuiApi.GetApplication()

Dim oCompany As SAPbobsCOM.Company

'// obter a empresa DI através de vários suplementos (através da UI)
oCompany = SBO_Application.Company.GetDICompany()

'// não é necessário conectar através de vários suplementos

2. Se for um aplicativo da web com conexão de usuário B1, você pode considerar uma conexão DI compartilhada por um usuário B1 fixo.

Atenciosamente, Yatsea

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Andrew,

Não tenho certeza do que poderia estar causando isso. Geralmente, a pasta SM_OBS_DLL não deve ser atualizada toda vez que você se conecta, embora isso possa ser o que está acontecendo. Quando perceber o erro, se você for para Iniciar->Executar->%temp%->SM_OBS_DLL, a data/hora de criação do arquivo OBServerDLL.dll está próxima do momento em que o erro ocorreu?

Uma sugestão poderia ser usar a API do Windows para excluir a pasta SM_OBS_DLL toda vez antes de se conectar para ver se isso tem algum efeito.

Saudações,

Niall

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Yatsea,

Estou trabalhando com Damian no mesmo projeto. Aqui tens mais informações:

A conexão com a DI-API não é feita dentro de um complemento do SAP (como no UI-API), mas sim dentro de um procedimento armazenado CLR no MSSQL 2005. Nosso problema é que após algumas execuções deste CLR SP, começa a mostrar 'Erro ao extrair OBServer.dll do arquivo CAB'. Uma vez que cada CLR SP é autossuficiente e contém o código para fazer algo específico (como carregar um diário), cada vez que é acionado, estabelece uma conexão com a DI-API, executa a lógica e fecha tudo assim que termina.

O estranho é que esses erros começam a aparecer após o SAPBobsCom retornar erros relacionados aos dados (por exemplo, código de BP incorreto em uma entrada de diário). A partir desse momento, ele se recusa a aceitar mais conexões. Alguma ideia?

Obrigado,

Andrew

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?