Conexion a sap 9.1 con di api

Hola a todos,

Tengo una duda con la conexión desde el Visual Studio con el DI-API, desde mi laptop no me logro conectar, pero si paso el .exe al server si funciona.

¿Qué podría ser?

private void Conectar() {
            try {
                Company Empresa = new Company();
                Empresa.Server = "SERVERSAPBO";
                Empresa.DbServerType = BoDataServerTypes.dst_MSSQL2012;
                Empresa.UseTrusted = true;
                Empresa.DbUserName = "sa";
                Empresa.DbPassword = "SAPB1Admin@@";
                Empresa.CompanyDB = "PRUEBAS_06052021";
                Empresa.UserName = "manager";
                Empresa.Password = "170205";
                Empresa.language = BoSuppLangs.ln_Spanish;
                Empresa.AddonIdentifier = string.Empty;
                Empresa.LicenseServer = "SERVERSAPBO:30000";

                int EstadoConexion = Empresa.Connect();
                if (EstadoConexion != 0) {
                    Empresa.GetLastError(out ErrorCode, out ErrorMsg);
                } else {
                    MessageBox.Show("Ok");
                }
            } catch (Exception Ex) {
                MessageBox.Show(Ex.Message);
            }
        }

Adjunto error que me muestra cuando ejecuto el proyecto desde mi laptop.
image

Prueba reemplazando el valor de Server por la IP de tu servidor SAP. Lo mismo para LicenseServer

No avanza, se cae en la instancia.

Si el error te marca en la instancia, deberias verificar la version de tu addon, x86 o 64.

Revisa si corriendo tu app en modo administrador.

Tu LAPTOP y SERVER tienen las mismas características?

Misma version de SQL?
Misma version de SAP?
Mismas credenciales?

Un error común es cuando instalas en tu LAPTOP la instancia de SQL, lo dejan como NOMBREINSTANCIA\SQLEXPRESS y esto muchas veces hace ruido con la DI API, o no espeficas correctamente en tu código.

Otro error es no tener configurado la instancia de SQL para que escuche IP y NAME

Revisa tambien que tu configuración de DI API no tenga Localhost

saludos

Solo tengo instalado Sap de 64bits, instalé el di api de 64. Por el salo del Sql, solo tengo en management 18

Creo que tuve el mismo error hace mucho, y sino me falla la memoria, era reinstalar el SAP_HANA_CLIENT, creo que el error lo que intenta decir es que no está la librería correcta.

El esta usando SQL. Asi que no creo por ahi vaya el error

Puedes probar usando solo 32 bits, creo que por ahi viene la mano. Instala SAP 32 bits, y utiliza esas librerías.

Intenta tener instalado un cliente SAP en tu máquina y trata iniciar sesión desde allí (la primera vez como administrador para que, en caso de ser necesario se reconfiguren los archivos de configuración del cliente SAP), si puedes hacerlo sin problemas, verifica lo siguiente:

  • Asegúrate de la configuración de tu proyecto esté en la misma plataforma que tu instancia cliente SAP (x86 ó x64).
  • Asegúrate de tener instalado el SDK y que sea la misma plataforma en la que estas desarrollando tu aplicación.

Existen actualmente 2 APIs de SAP.

  1. SAP Business One DI API (xx-bit) (o simplemente DI-API)
  2. SAP Business One Sofware Developer KIT (o simplemente SDK)

Si bien puedes trabajar directamente desde DI-API, te recomiendo que uses el SDK ya que este implementa una capa de abstracción sobre DI-API (por tanto, al igual que el SDK, la DI-API también debe estar instalada en tu equipo).
La abstracción te sirve para que, cuando migres tu sistema SAP de una versión a otra (por ejemplo, de la 9.1 a 9.2) no tengas que cambiar la versión de tu DI-API en tu proyecto, por tanto, tu sistema será perfectamente compatible con estas versiones (incluso con la 9.3).

Suerte,
Gustavo

Este tema se cerró automáticamente 30 días después de la última publicación. No se permiten nuevas respuestas.