Table of Contents | ||
---|---|---|
|
Info |
---|
Disponible desde Release 6.0.0 |
Introducción
En esta release se ponen a disposición del usuario una batería de plantillas para que las utilicen en sus diagramas para realizar operaciones contra una instancia de Plataforma.
A continuación se van a analizar en detalle con algunos ejemplos las plantillas disponibles.
¿Cómo funciona?
ha creado un conector para el BPM Engine de Plataforma, que permitirá interactuar con el resto de elementos de plataforma, permitiendo:
Hacer consultas sobre Entidades
Realizar inserciones sobre Entidades
Invocar APIs publicadas en el API Manager
Invocar Dataflows
¿Cómo funciona?
El conector se basa en los Templates de Camunda, que nos permite usarlos en un diagrama BPMN de Camunda. A continuación se explica el funcionamiento de las plantillas.
A la hora de crear un diagrama de Camunda, al seleccionar un elemento aparecerá una opción en el menú lateral Template.
...
Al seleccionar el botón + Select aparecerá un listado con los templates disponibles para ese tipo de elemento, en este listado aparecerán los distintos conectores con plataforma ,que nos permiten:
Hacer consultas sobre Entidades
Realizar inserccionesLanzar Apis del inserciones sobre Entidades
Invocar APIs publicadas en el API Manager
Lanzar Invocar Dataflows….
...
Una vez seleccionado el template correspondiente, se cargarán automáticamente las propiedades que necesita ese elemento para conectar con Plataforma y que el usuario tendrá que rellenar para el correcto funcionamiento:
...
¿Cómo consultar datos de una Entidad?
Info |
---|
Previamente se habrá tenido que crear la Entidad que se quiere consultar y haberla asociado a un Digital Client de la Plataforma para poder obtener un token con el cual acceder a los datos. |
...
Los datos de la consulta a la Entidad aparecen en la variable platformInstances en formato JSON
La cláusula where creada dinámicamente almacenada en la variable where
Al inspeccionar la variable platformInstances podemos comprobar que efectivamente se ha traido el dato que concuerda con la clausula where
Se ha evaluado el JSON y el proceso está parado en over 18, lo que concuerda con los datos obtenidos de la entidad.
A continuación dejamos el BPMN del ejemplo:
View file | ||
---|---|---|
|
¿Cómo insertar datos en una Entidad?
Info |
---|
Previamente se habrá tenido que crear la Entidad que se quiere consultar y haberla asociado a un Digital Client de la Plataforma para poder obtener un token con el cual acceder a los datos. |
Para insertar datos de una Entidad tenemos que seleccionar la plantilla Onesait Platform Insert
...
Vamos a ver el funcionamiento de esta plantilla con el siguiente ejemplo:
...
getData: Service Task de tipo Java class que construye de manera dinámica los datos que se quieren insertar en la entidad en formato JSON y los almacena en la variable data.
...
insertTask: Service Task que implementa el template Onesait Platform Insert y realiza la insercción de los datos en la entidad deseada. Hay que observar varias cosas en la configuración:
Cómo se recoje la variable data en el campo Data de manera parametrizada, lo que permite lanzar insercciones dinámicas. En el caso de querer una inserción de datos estáticos basta con meter el JSON sin mas en este campo.
El campo Platform enviornment es opcional, en el caso de no especificarlo se utilizará el endpoint del entorno en el que se haya desplegado el proceso.
El resultado de la insercción se almacena en la variable platformIds, donde tendremos los IDs de las instancias insertadas.
...
doSomething: User Task que se queda esperando una acción del usuario.
Visualizar la ejecución del proceso
Una vez desplegado el proceso en el BPM Engine, podemos lanzarlo y veremos lo siguiente:
...
Los datos de la inserción en la Entidad aparecen en la variable platformIds en formato JSON
los datos creados dinámicamente almacenada en la variable data
A continuación dejamos el BPMN del ejemplo:
View file | ||
---|---|---|
|
¿Cómo lanzar un Dataflow?
Info |
---|
Previamente se habrá tenido que crear el dataflow que se quiere lanzar |
Para lanzar un dataflow tenemos que seleccionar la plantilla Onesait Platform Dataflow
...
Vamos a ver el funcionamiento de esta plantilla con el siguiente ejemplo:
...
launchDataflow: Service Task que implementa el template Onesait Platform Dataflow y lanza el Dataflow deseado. Hay que observar varias cosas en la configuración:
El campo Platform enviornment es opcional, en el caso de no especificarlo se utilizará el endpoint del entorno en el que se haya desplegado el proceso.
El campo parameters es opcional, en el caso de que el dataflow que se quiera lanzar requiera de algún parámetro se le podrá indicar al BPM en este campo en formato JSON. También puede parametrizarse con la nomenclatura ${parameters} si queremos que los datos se monten dinámicamente.
El resultado de la ejecución del dataflow se almacena en la variable dataflowResponse.
...
doSomething: User Task que se queda esperando una acción del usuario.
Visualizar la ejecución del proceso
Una vez desplegado el proceso en el BPM Engine, podemos lanzarlo y veremos lo siguiente:
...
El resultado de la ejecución del dataflow se almacena en la variable dataflowResponse en formato JSON
Si inspeccionamos la varibale dataflowResponse vemos que el dataflow se ha arrancado correctamente
A continuación dejamos el BPMN del ejemplo:
View file | ||
---|---|---|
|
¿Cómo invocar un API de Plataforma?
Info |
---|
Previamente se habrá tenido que crear el API que se quiere lanzar |
Para lanzar un API tenemos que seleccionar la plantilla Onesait Platform API
...
Vamos a ver el funcionamiento de esta plantilla con el siguiente ejemplo:
...
launchAPI: Service Task que implementa el template Onesait Platform API y lanza el APIdeseado. Hay que observar varias cosas en la configuración:
El campo Platform enviornment es opcional, en el caso de no especificarlo se utilizará el endpoint del entorno en el que se haya desplegado el proceso.
El campo API Path tiene que seguir la siguiente nomenclatura /<version>/<api_identification>/<operation_path> en el ejemplo vemos como parte del path está parametrizado con la expresión ${name}
El campo Body es opcional, en el caso de que se quiera lanzar una operación con un body se le podrá indicar al BPM en este campo en formato JSON. También puede parametrizarse con la nomenclatura ${body} si queremos que los datos se monten dinámicamente.
El resultado de la ejecución del dataflow se almacena en la variable apiResponse.
...
doSomething: User Task que se queda esperando una acción del usuario.
Visualizar la ejecución del proceso
Una vez desplegado el proceso en el BPM Engine, podemos lanzarlo y veremos lo siguiente:
El resultado de la ejecución del dataflow se almacena en la variable apiResponse en formato JSON
A continuación dejamos el BPMN del ejemplo:
View file | ||
---|---|---|
|