Saltear al contenido principal
902 88 57 66 prysmatic@prysma.es

Conector CDS (Current Environment) de Power Automate

Desde hace algún tiempo, tenemos disponible el conector del Common Data Service (Current Environment) el cual tiene unas diferencias con respecto al conector normal de CDS.

El requisito principal para tener visible este conector, es que el flujo debe ser creado desde una solución, ya que si no, este no estará disponible.

En lo que a triggers se refiere, este conector tiene una diferencia importante, y es que solo tenemos un único desencadenador en el que vamos a poder controlar si se dispara en la creación, actualización, eliminación o cualquier combinación entre ellos mediante el trigger condition.

Con el conector normal de CDS, teníamos que hacer un flujo por cada tipo de mensaje (actualización, creación, eliminación) con lo que este nuevo conector nos facilita bastante el trabajo.

Ilustración 1: CDS Trigger
Ilustración 2: CDS Condición del trigger

Conviene recordar que el conector antiguo de Dynamics 365 está deprecado, por lo que se debería usar en su lugar el Common Data Service. Y para poder usar estas nuevas características hay que usar el Common Data Service (Current Environment) que solo está disponible a través de soluciones. Como su propio nombre indica, en este conector no necesitamos seleccionar el entorno ya que será el entorno predeterminado en el que nos encontremos (Current Environment)

Respecto a las acciones, en ese sentido también hay diferencias importantes los cuales los vamos a ver a continuación:

Ilustración 3: Acciones CDS vs CDS (Current environment)

Acciones

List Record (Enumerar registros)

En esta caso, tanto en el conector CDS como en este, usa sintaxis OData para los Filter, Order By, Select and Expand y además nos permite usar una query de tipo FetchXML.

Ilustración 4: List Records

En el momento en el que se hace una consulta tipo fetchxml, los atributos que se recuperan son los de la propia query y no los que se establezcan en el Select Query. Además de eso, permite recuperar atributos de entidades relacionadas.

Ilustración 5: FetchXML en List Recods

Update records

En la acción de actualizar un registro, hay que tener en cuenta cualquier campo pasado para actualizar, activará la auditoria y activará cualquier flujo incluso si el valor no cambia. Por lo que debemos de ser muy cuidadosos ya que podemos crear un bucle si tenemos trigger de tipo Update y actualizamos esa misma entidad.

Si el identificador del registro es un GUID generado, hará una creación.

Si queremos limpiar algun valor, usaremos null.

Ilustración 6: Para limpiar valores null

Relate & Unrelate records

Con relate, nos permite asociar registros a través de una relación. Así como eliminar esa relacion con unrelate.

Como se puede ver en la imagen, se crea un registro en cuenta, otro en contacto, y con relate se asocia el contacto a la cuenta.

Ilustración 7: Relate y Unrelate

Batch

A pesar de que el conector de CDS está muy optimizado, si tenemos una acción de tipo creación dentro de un bucle, por cada elemento dentro de ese array lo que va a hacer es una petición a la API por cada elemento de la matriz. Con Batch, lo que nos permite es hacer una única llamada a la API, con todas las inserciones, lo que nos permite mejorar mucho el rendimiento ya que se limita el número de llamadas.

Ilustración 8: Batch

Change Sets

La acción chageset, nos permite lanzar operaciones en una única transacción y solo tendremos disponible las acciones de creación, actualización y eliminación dentro de ella.

Además podremos usar changeset dentro de un Batch

Ilustración 9: ChangeSets

Bound y Unbound Actions

Por último y no por eso menos importante 🙂 tenemos la posibilidad de llamar a bound y unbound actions de nuestro Dynamics 365.

La diferencia entre bound y unbound, es que las bound están vinculadas a una entidad, mientras que las unbound actions no.

A través de estas acciones podremos, no solo llamar a Actions estandard, si no que podemos hacer lo mismo con nuestras custom actions.

Hasta la próxima

Volver arriba