Hola a todos...
Soy ALEXIS GÓMEZ y hoy les quiero hablar sobre la Escritura Dual.
1. Dual Write
La escritura dual (dual-write) en es una tecnología que facilita la sincronización de datos entre aplicaciones CRM y Finanzas y Operaciones. Permite la creación y actualización de datos en un sistema y que estos cambios se reflejen de manera casi en tiempo real en el otro sistema. Esto se traduce en una experiencia de usuario más integrada y coherente.
El propósito del documento es el de brindar un instructivo acerca de cómo implementar Dual-Write en un entorno de Dynamics, aprovisionando así una interacción casi en tiempo real entre las entidades de CRM y Finance & Operations. Por lo tanto, cada cambio que se haga en F&O impactará en Dataverse (donde esta alojada la base de datos de CRM) y viceversa.
Características principales de la escritura dual:
- Sincronización bidireccional:
La escritura dual permite que los datos fluyan en ambas direcciones entre las aplicaciones CRM y Finanzas y Operaciones.
- Casi en tiempo real:
La sincronización de datos es casi instantánea, lo que asegura que la información esté actualizada en ambos sistemas.
- Conexión estrechamente acoplada:
La escritura dual establece una conexión sólida entre las aplicaciones, garantizando la integridad de los datos.
- Extensibilidad:
La plataforma de escritura dual permite la creación de mapas personalizados para sincronizar datos entre aplicaciones.
- Beneficios:
La escritura dual facilita la gestión de datos para diversos departamentos, mejora la experiencia del usuario y proporciona una vista consistente de la información.
Ejemplos de uso:
- Integración de datos de ventas:
La creación de una oportunidad de venta en el CRM puede generar automáticamente una cotización en el sistema de finanzas.
- Sincronización de información de productos:
Los cambios en el catálogo de productos en Finanzas y Operaciones se reflejan automáticamente en el CRM.
- Gestión de recursos:
La información sobre empleados y proyectos puede sincronizarse entre CRM y Finanzas y Operaciones para una gestión de recursos más eficiente.
1.1 Abreviaturas y glosario de términos
A continuación, se incluye una serie de abreviaturas que pueden encontrarse en el presente documento:
D365 | Dynamics 365 |
f&o | Finance And Operations |
Tabla 1.- Abreviaturas y Glosario de términos
2. Configuración del Dual Write
Antes de implementar dual-write, hay que tener en cuenta dos puntos:
• Asegurarse que tanto F&O como CRM se encuentren en el mismo tenant.
• Dual-Write no funciona en conjunto con la solución “Prospect to Cash” por lo tanto, si la tenemos instalada, debemos ingresar a https://make.powerapps.com/ , apartado soluciones y realizar la desinstalación.
2.2 Implementar solución de Dual Write Core
Ingresar a https://make.powerapps.com/ y en el apartado de soluciones, hacer click en “Abrir Appsource” y buscar el componente “Dual Write Core”, acto seguido, hacer click en “Obtener Ahora”
Se abrirá el administrador de power apps, en donde debemos indicarle el entorno en el que deseemos instalar dicha solución.
Una vez hecho esto, solo debemos esperar a que instale.
2.3 Otorgar acceso de Dataverse a F&O
Desde F&O, ingresar a System Administration -> Setup -> Azure Active Directory Application
Desde esta opción, hacer click en “New” para agregar dos aplicaciones nuevas, con estos Client ID:
6f7d0213-62b1-43a8-b7f4-ff2bb8b7b452
2e49aa60-1bd3-43b6-8ab6-03ada3d9f08b
·
El nombre de estos client ID es indistinto, lo importante aquí es que el User ID corresponda a alguien
que tenga permisos de administrador.
Luego de esto, dirigirse a Workspaces -> Data Management -> Framework Parameters y hacer click
en “Refresh Entity list”.
2.4 Otorgar acceso de F&O a Dataverse
Desde https://admin.powerplatform.microsoft.com/, en el apartado de “entornos”, seleccionamos al que requerimos instalar dual write y hacemos click en Configuración -> Usuarios y permisos -> Usuarios de aplicación.
En esta sección, usar la opción “Nuevo usuario de aplicación” para añadir usuarios a esta estas dos
aplicaciones:
00000015-0000-0000-c000-000000000000
2e49aa60-1bd3-43b6-8ab6-03ada3d9f08b
En “Roles de Seguridad”, añadir el rol llamado “Dual-Write Runtime User”
2.5 Verificar que los plugins de dual write estén activos
e paso puede no ser requerido ya que al instalar la solución de “Dual-Write Core”, dichos plugins deberían de estar activos, pero por las dudas, se recomienda entrar a la herramienta “Plugin Registration Tool” y buscar los llamados “DualWriteRegistrationPlugins” y “DualWriteRuntimePlugins” y activarlos.
2.6 Enlazar entornos de F&O con CRM
Antes de enlazar los entornos, hay que tener en cuenta que debemos ingresar a F&O con un usuario que tenga acceso tanto a CRM como a F&O.
Desde F&O, ingresar a Workspaces -> Data Management -> Dual-Write y luego hacer click en:
“Nuevo vinculo a entorno”
En esta ventana, se debe indicar el entorno de dataverse al cual deseamos conectarnos:
Luego, hacemos click en el botón siguiente, donde se nos va a dar la opción de indicar cual es la entidad jurídica de F&O a utilizar. Por último, en el anteúltimo paso, se van a realizar chequeos de que toda la configuración se realizó correctamente y en caso de no ser así, se informa en que paso está el fallo.
Si todo salió bien, deberíamos de poder proseguir al último paso, donde se brinda un pequeño
resumen de la situación, por último, hacemos click en “Crear”
Con esto, ya tenemos una comunicación entre ambos entornos.
2.7 Instalar las soluciones adicionales de dual write
Este paso consiste en la instalación de las llamadas “Orchestration Solutions”, estas son una serie de paquetes que contienen integraciones preconfiguradas de dual-write para cubrir distintos escenarios. Por ejemplo, si se instala la solución de “Dual-Write Finance and Extended Solutions”, esta va a crear integraciones con las tablas de precios, inventario, entre otras.
Las soluciones deben instalarse en la siguiente secuencia ya que existen dependencias:
• Dual-write Application Core solution
• Dual-write Finance and Extended Solutions
• Dynamics 365 HR Common Tables
• Dual-write Dynamics 365 Human Resources
• Dual-write Supply Chain Extended Solution
• Dual-write Asset Management Solutions
• Dual-write party and global address book solution
2.8 Activación de mapeo de una tabla
Para el inicio de la activación de mapeos de tablas en el Dual Write, deben habilitarse las tablas que pertenecen a la solución “Core Solution”, es decir, las entidades principales, luego debe ejecutarse la sincronización inicial seleccionando como origen de los datos “Finance and Operations apps”.
Habilitar y ejecutar los siguientes mapeos:
A modo de ejemplo, vamos a comenzar a ejecutar la integración de divisas, para eso, seleccionamos la asignación de tablas correspondiente (En este caso, “Currencies”). Al hacer esto, podremos ver los mapeos de los campos de CRM con F&O. Si queremos agregar un mapeo, solo debemos hacer click en “Agregar Asignación”
Si queremos comenzar a integrar, debe hacerse click en “Ejecutar”, donde se mostrará una ventana
para indicar si queremos hacer una sincronización inicial.
Para esto, debemos tildar que deseamos hacer la sincronización e indicar cuál de los dos entornos tomamos como maestro (o sea, con cuál de las dos nos basamos inicialmente para la sincronización).
Una vez hecho esto, le damos a “Ejecutar” y esperamos a que la sincronización se lleve a cabo.
A partir de ahora cualquier cambio hecho en F&O impactará en CRM y viceversa.
Para verificar la correcta ejecución de la sincronización inicial, debe hacer click en la sección “Initial sync details”, luego hacer click en el link para ver el detalle de la ejecución de cada empresa configurada en F&O.
2.9 Aplicar una solución orquestada
Para habilitar las tablas que se encuentran en las distintas soluciones de Dual Write, se debe ir a la opción “Aplicar Soluciones”
Aquí se nos va a desplegar una lista con todas las soluciones que instalamos. Seleccionamos la que queremos aplicar.
Se recomienda aplicar las soluciones en modo secuencial para identificar fácilmente las tablas que deben ser habilitadas según se requiera en la integración:
· Dual Write applications core entity maps
· Dynamics 365 Finance extended entity maps
· Dynamics 365 Human Resources entity maps
· Dynamics 365 Supply Chain Management extended entity maps
· Dynamics 365 Asset Management entity maps
· Dynamics 365 GAB Dual Write Entity Maps
Después de unos instantes, se mostrarán tablas que forman parte de esta solución y que se pueden configurar el mapeo de Dual Write.
2.10 Issues presentados
Para identificar los errores en la sincronización inicial, debe hacer click en la sección “Initial sync details”, luego hacer click en el link para ver el detalle de la ejecución de cada empresa configurada en F&O.
2.10.1 FinOps export encountered an error
Para identificar el detalle del error, debe seleccionar el menú “Data Management”, y hacer click en el identificador del proceso de exportación de datos
Luego hacer click en el menú “Job History”
Para ver el detalle del error debe hacer click en la opción “View Execution Log”
2.10.2 Campo de CRM no disponible en el mapping
En los casos cuando el campo no está disponible para aplicar el mapeo, debe crearse un “Key” en la entidad del CRM con los campos necesarios para disponibilizar el campo en el mapping.
En este ejemplo, se indica en el Dual Write que el campo “msdyn_vendor.msdynvendoraccountnumber” no existe en el esquema, debemos crear un “key” en la entidad “Account”:
Introducir un nombre de la clave y nombre lógico, seleccionar los campos que forman parte del “Key”, en este caso, se seleccionaron los campos “Account Number”, “Compañía” y “Vendor”, luego se guardan los cambios y para finalizar se publican las personalizaciones en el CRM.
Luego de publicar, verificar las claves de integración:
Adicionalmente debe aplicar un “Refresh tables” en la tabla, para que se actualicen los campos disponibles.
Para las tablas Cuentas,Contactos y Vendors debe tener las siguientes claves:
Cuando se crean campos nuevos en F&O para usarlos en algún mapeo, debe actualizarse la lista de entidades en F&O en la siguiente ruta:
System Administration -> Data management -> Framework parameters -> Entity settings -> Refresh entity list
2.10.3 Permisos de lectura en la entidad sobre el equipo principal
Este error ocurre cuando faltan permisos de lectura sobre la entidad en el equipo asociado a la unidad de negocio principal del ambiente de CRM.
Al equipo asociado a la unidad de negocio principal, debe asignarse los roles de seguridad “dual-write app user” y “Dual-Write Runtime User”.
Buscar el rol de seguridad “dual-write app user” y asignar el permiso de lectura a nivel de “Organización” en la entidad con el issue, se recomienda agregar a la solución el rol actualizado para implementar los cambios en otro ambiente.