Resumen
Los servicios parametricos son una nueva funcionalidad incorporada en el API Ceibo ( o API Tarjeta habientes ) .
Esta funcionalidad permite crear nuevos servicios dentro del API de Ceibo tan solo configurando datos en tablas parametricas.
La esencia de esta funcionalidad es poder agilizar los procesos de desarrollo, automatizando la comunicacion entre el consumidor de un servicio (Ej: Frontend) y la base de datos (Ceibo), sin la necesidad de tener que programar por cada nuevo procedure un nuevo servicio que lo invoque.
En resumen, esta funcionalidad permite convertir un Procedimientos Almacenados en Servicios RESTFul que retornen JSON y que pueden ser invocados por cualquier programa.
Restricciones y Limitaciones
El uso de esta funcionalidad tiene unas de restricciones y limitaciones las cuales detallaremos a continuación.
Plataforma de los Servicios Paramétricos
Diagrama
Los servicios paramétricos son consumidos desde un servicio principal que recibe los parámetros de acceso (ruta o path del Servicio) y los datos de entrada (de enviarse) , busca los datos parametrizados para el servicio, y luego ejecuta el SP configurado, retornando la respuesta.
API Ceibo / API Tarjeta Habientes
Todos los servicios habilitados o ha habilitarse serán invocados a través de un servicio principal o raíz que se encuentra en el API. Este servicio se encarga de las validaciones, verificaciones, configuración, ejecución y retorno de la respuesta de la ejecución del procedimiento almacenado que fue configurado
Base de Datos
Todas las configuraciones para los Servicios paramétricos se hacen en la base de datos BAPY CEIBO
Paquete PL/SQL
Tablas de Configuracion
Configuración de Servicios
Configurando Nuevos Servicios
Según lo expuesto mas arriba para agregar nuevos servicios se debe:
- Contar con un Procedimiento Almacenado (en BAPY/OLPY, parámetros de entrada, luego salida, etc.)
- Configurar el mismo en las tablas de configuraciones
- Grupo Servicio en el Path
- Versión del Servicio en el Path
- Nombre Servicio en el Path
- Base de Datos
- Esquema
- Nombre del SP
- Parámetros de Entrada.
- Parámetros de Salida.
Supongamos que hemos agregado una nueva configuración, con sus parámetros de entrada y salida
id_api_sp | 9999 |
---|---|
categoria | Datos Genéricos |
descripcion | Obtener la Lista de Departamentos y Ciudades |
api_path_group | datosGenericos |
api_path_version | v1 |
api_path_name | getLocalidades |
procedure_database | BAPY |
procedure_schema | creditopy |
procedure_name | pkg_dimo_ceibo.sp_ciudades |
simplificar_response_s_n | S |
Consumir Servicios Configurados
Para consumir el servicio tomamos de base el path raíz que mencionamos mas arriba reemplazando el valor por los valores configurados.
Tomando como base
http://host/ws-tarjetahabiente/prmservices/v1/sprunner/prmGroup/prmVersion/prmServicio
El servicio será:
http://host/ws-tarjetahabiente/prmservices/v1/sprunner/datosGenericos/v1/getLocalidades
Y ya nada mas queda realizar una prueba vía postman. (En este caso el SP no recibe ningún parámetro de entrada)