B1 Integration Framework o API REST

Buenos días, tardes o noches.

Un área de la empresa donde trabajo esta requiriendo consumir la base de datos de SAP en Json, se me asigno buscar la mejor forma en que puedan hacerlo y lo que me sugirieron fue el B1 Integration Framework, del cual no he encontrado mucha información, aún no se bien como funciona (Ya lo tengo instalado y puedo acceder desde el servidor), la otra opción que vi es crear una API RESTful, usando Entity Framework para el modelado, entra otras cosas de programación, mi duda es: ¿Que es mas conveniente utilizar?
Cabe mencionar que los usuarios tendrán que loguearse, al utilizar esto.
¿hay algún limite con respecto a las licencias?
¿En caso de que me convenga utilizar B1iF, que guía o manual me recomiendan?
La versión de SAP B1 es la 9.2.

Muchas gracias de antemano.

-Me considero novato tanto en SAP como en la programación, aunque ya he hecho unas cosillas con el SDK, que de hecho tengo aun muchas dudas. :slightly_smiling_face:

B1If es un mundo aparte, aun hay poca gente con conocimiento de esta herramienta, la experiencia actual solo es sobre escenarios que ya vienen pre-configurados, hay un curso completo en opnesap sobre B1If, creo que es de 4 semanas (es un curso que tengo pendiente).
Si lo que te piden es algo rápido y no muy elaborado, y nada edición de objetos SAP, me iria por un API RESTful,

1 me gusta

En este momento no están pidiendo algo muy elaborado, pero mas adelante al parecer se estima que serían entre 50 y 100 usuarios consumiéndola. Estoy investigando tanto sobre las apis como sobre B1IF (esta se me dificulta por la poca información que hay en español), seguiré esperando a ver si alguien puede guiarme un poco sobre eso, pero gracias por tu respuesta. :grin:

Algo que debes tomar muy en cuenta es el requerimiento que tienes. Ya que de ello dependerá sobre qué tecnología irte para desarrollar.

Muchas veces puedes resolver con la DI API y/o UI API, otras veces con la API REST…pero yo en lo particular lo enfoco a la dimensión del requerimiento. Lo nuevo ahorita es usar la API Rest pero siento que es para cuando necesitas un tema de alta transaccionabilidad o portabilidad.

Ahora si tu tema es menos complicado lo resuelves con la DI API y/o UI API

De B1if sinceramente no conozco mucho, pero si quieres que te hable fríamente, yo no me aventurario mucho por ahi, ya que es algo sensible ese framework (Mi opiniÓn personal).

1 me gusta

En cuanto B1iF, hay un curso en openSAP que te puede servir, pero tal como mencionas, hay muy poca información y en español mucho menos.

Particularmente creo que sería mejor que lo veas con una programación con Web API RESTful.

Con respecto a las licencias, si lo que vas a hacer es sólo consultas, o sea, ejecutar un SELECT a la base de datos y convertirlo a JSON con una Web API, entonces no necesitarías licencias adicionales, pues para conectarse a la base de datos ya realizar SELECT, no se requieren licencias de SAP.

1 me gusta

En mi caso yo lo resolví de una forma híbrida. Las consultas de lectura las hago por ado directo. Dapper y ado para el acceso a datos. Para las escrituras uso di api ,son pocas.

Uso el framework servicestack que para montar webservice tiene un rendimiento muy bueno. Además con la misma implementación estás montando webservice Json, XML, soap, e incluso txt, jsv.

Y si las consultas se repiten es fácil montar un sistema de caché, para reducir los accesos a base datos.

Probablemente para las escrituras hubiese utilizado actualmente rabbitmq. Tenemos varias empresas en países diferentes con saps diferentes.

Además te permite tener un sistema alternativo de usuarios/roles.

1 me gusta

si tienes hana, puedes instalar el servicelayer, y ya viene toda la capa de datos expuesta en formato JSON, mucho mas rápido que DIAPI

No es Hana, es SAP B1 si he visto que para Hana hay mas variedad de cosas, por el momento creo que me ire por crear una API RESTful aunque no descartaré el B1if.

aun asi, en SQL ya existe SERVICE LAYER. Para mi en lo personal es la mejor via.

1 me gusta

no sabia que ya estaba disponible en SQL, estaba buscado información parece que es muy reciente soportado para la Versión 10 PL01

Desde 9.3 PL13 esta disponible en SQL. Y claro en la versión 10 PL02

1 me gusta

@juliancab Y cual es la diferencia de usar el service layer a crear una API desde cero usando Entity Framework?

Hola @Fernando7
Un punto importante es el performance, donde el service layer te ofrece mayor rendimiento y escalabilidad para tus desarrollos.

3 Me gusta

@andresramirez Orale es que ni sabía que existía ese, solo contemplaba las opciones de una API y el B1if, donde podría encontrar la documentación del Service Layer, se tiene que instalar o como se accede a el? Usamos SAP Business One 9.2

es un servicio que se instala con SAP, se tiene que configurar. Documentacion solo hay en ingles, inclusive en YOUTUBE puedes encontrar videos.

1 me gusta

Hola compañero, yo también soy nueva en la parte de Integration Framework, te dejo un enlace h_tps://open.sap.com/courses/ifb1 (solo tienes que registrarte, es gratuito), es un curso donde te explica el entorno de B1 IF, la desventaja es que todo está en inglés, la ventaja es que puedes irte guiando con los vídeos que muestran y sus presentaciones.
También he estado practicando con actividades que encontré por Internet, son PDFs que te van guiando cómo inserta, obtener, actualizar, datos de artículos, órdenes de compra, ocios de negocio etc.

1 me gusta

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