B1if : El framework para integrar todas tus aplicaciones en SAP Business One y otros sistemas

Una infraestructura que permite la comunicación e interacción entre aplicaciones de software como SAP Business One y sistemas que no son de SAP; ya sea aplicaciones en la nube o en físico.

SAP B1

¿Por qué es importante la integración en tu empresa?

El papel de la integración cada día juega un rol más importante dentro del mundo empresarial, debido a su impacto en todas las áreas clave del negocio. 

Por esta razón, es necesario analizar la integración dentro de tus sistemas y componentes de software para lograr la conexión e intercambio de datos, en estos tiempos de digitalización. 

 

Integration Framework (B1if)

Es un software de desarrollo para SAP B1, el cual cuenta con dos versiones dependiendo del desarrollo que se busque realizar:

  • V1.- para desarrollos dentro de la red local donde se encuentre SAP B1
  • V2.- desarrollos fuera de la red local de SAP B1

Cada versión tiene su propia interfaz y liga de acceso, ambas comparten las mismas credenciales para acceder, aunque pueden ser cambiadas en cualquier momento.

SAP B1 almacena toda su información en base de datos SQL de Microsoft, los cuales se pueden consultar mediante cualquier software que sea compatible con SQL, ya sea el mismo Management Tool de SQL o algún script escrito por el usuario para consumir queries de SQL.

El único inconveniente es que no se puede realizar queries que requieran escritura dentro de la base de datos, como lo son: “update” e “insert into”, así protegiendo los datos a usuarios externos de SAP B1.

Características y funcionalidades

Para V1, su principal uso es llenar datos de SAP B1 sin la necesidad de entrar al cliente mediante llamados de una URL que el mismo Integration Framework genera dependiendo de algunos parámetros a la hora de crear el paquete.

Es importante mencionar que no todas las empresas dentro de SAP pueden ser utilizadas dentro de IF, para ello se deben activar para ser utilizadas como B1 Server, y así, generar un System ID para que IF sea capaz de reconocerla de las demás compañías que existan dentro del mismo cliente.

Dentro de IF existen los “B1 Objects” que hacen referencia a las tablas de SAP y cada tabla tiene un objecto relacionado, de esta manera IF sabe como interactuar con la tabla y llenar los datos correctamente.

También, existen paquetes que conforman las especificaciones generales del desarrollo como es el nombre y su identificador dentro de IF, aunque mucho de estos lo llena automáticamente sin mucho problema. Dichos paquetes contienen “steps” que son los que se van a encargar de realizar la comunicación entre el web servicie y SAP B1, dicho step se debe configura hacia qué sistema se va a comunicar (empresa o db), el usuario y el object id (tabla).

SAP B1 if

Una vez configurado el step con su respectivo paquete asignado se activa mediante un Setup que analizará toda la configuración para no encontrar errores y designar un “sender” y un “receiver” para la comunicación tipo SOAP (dependiendo de la configuración del step) y una vez todo configurado IF genera un URL con el cual se podrá enviar paquetes XML y así mandar datos a SAP B1.

 

Acciones de IF y casos de uso

IF conoce todos las estructuras y funcionamiento de SAP B1, se pueden aplicar reglas predeterminadas de SAP para mandar los datos correctamente sin la necesidad de que el usuario realice más acciones. 

Esto no aplica a reglas, tablas o campos creados por el usuario, para dichos casos se necesitará realizar otro desarrollo para aplicar dichas reglas, dependiendo del caso que sea.

 

  • Para el caso de campos de usuarios creados en tablas de SAP, identificados por comenzar con el prefijo “U_”; IF podrá reconocer dichos campos y se podrá enviar dichos datos a través del XML, sin problema. El inconveniente será cuando alguna regla en el cual el campo intervenga no podrá ser aplicado o verificado, entonces IF devolverá un error con la respuesta de dicha regla, pero sin poder solucionarlo directamente por lo que se requería de hacerlo de forma externa o adaptando la regla para que no aplique en dicho usuario de IF.

 

  • Para tablas creadas por el usuario, estas pueden ser accedidas directamente desde queries de SQL, tanto acciones de lectura como de escritura, por lo que IF no es necesario para estos casos.

 

  • IF cuenta con una pestaña para checar logs de las ejecuciones de los steps, dentro de la opción de “Monitoring” y “Message Log” en el cual indicaremos diferentes parámetros de búsqueda de mensajes, por default buscará todas del día actual que se esté consultando, pero se puede filtrar por: paquetes, senders, steps, receivers, estado de ejecución, etc. Esto ayuda a identificar errores que la respuesta de SOAP no pueda resolver, ya que en estos podrás ver más detalles de la ejecución y probablemente con un mensaje de alguna regla.

 

B1if

Imagen: Estructura por bloques del funcionamiento de un step dentro de IF donde ‘Processing’ es el encargado de interpretar la información y mandarlo a SAP B1. 
  • Si no conoces el object id o la estructura del XML que debes enviar, puedes consultarlo en la pestaña de “Help” y “B1 Objects”, te permitirá enlistar los objetos ya sea por ID o por nombre. Te desplegará una lista con todos los objetos con sus respectivas características como el nombre, el id, la llave principal de la tabla y el nombre de la tabla. Y podrás abrir el objeto que te abrirá una ventana con un XML de lo que se puede enviar para consumir el SOAP.
Esta referencia será de gran importancia ya que los nombres que SAP le da a los campos de las tablas no es la misma que se encuentra en IF, por lo que se tiene que buscar dentro de esta plantilla de XML algún nombre que tenga que ver con el campo en cuestión.
  • Para campos creados por el usuario, no aparecerán dentro de esta plantilla, pero se puede enviar con el mismo nombre que aparece en la tabla de SAP (ej. “U_CampoUsuario”).

 

| Consulta más información sobre los elementos y herramientas que SAP B1 tiene para tu negocio, además de aprovechar la oportunidad de conectar toda tu empresa en un mismo lugar, con nuestros expertos.
B1if : El framework para integrar todas tus aplicaciones en SAP Business One y otros sistemas
Compartir con un amigo