Una de las novedades de la nueva versión de NAV es la
integración nativa con Dynamics CRM.

En las versiones anteriores (desde NAV 2009 R2 hasta NAV
2015) teníamos que usar el “Connector for Microsoft Dynamics”, que tenía una
serie de limitaciones, y que estaba fundamentalmente concebido para la
sincronización de datos entre tablas de NAV y entidades de CRM.

Ahora, la integración se hace de forma muy rápida y con un
elevado grado de automatización.

Los 4 pasos para integrar NAV con CRM son los siguientes:

  1. Configurar Dynamics CRM.
  2. Configurar la conexión desde Dynamics NAV a
    Dynamics CRM.
  3. Validar la configuración de sincronización de
    datos.
  4. Hacer el “mapeo” o emparejar los registros
    entre Dynamics NAV y Dynamics CRM.


1.       Configuración de Microsoft Dynamics CRM:

Lo primero es configurar los usuarios de Microsoft Dynamics
CRM para la conexión y sincronización de Microsoft Dynamics CRM. Opcionalmente,
se puede instalar la Solución de Integración de Microsoft Dynamics NAV que
permite ver las estadísticas de los clientes de Microsoft Dynamics NAV y la
navegación a los clientes a partir directamente de las cuentas de Microsoft
Dynamics CRM, contactos, usuarios y productos.

 Alta de usuario en
CRM

Vamos a comenzar con la creación del usuario en CRM. La
recomendación es dar de alta un usuario nuevo, con privilegios de escritura,
lectura, modificación y eliminación de datos en las entidades que serán
integradas con Dynamics NAV.

               IMPORTANTE: No se debe utilizar esta
cuenta para iniciar sesión en Microsoft Dynamics CRM para modificar los
registros de entidades que se integran con Microsoft Dynamics NAV porque los
cambios serán ignorados por los trabajos de sincronización de integración de
Microsoft Dynamics NAV.

Si estamos haciendo la integración con CRM Online, el alta
debemos hacerla desde dentro del portal de Administración de Office 365, al que
le asignaremos el rol de “usuario”.

Posteriormente, dentro de Dynamics CRM Online, en el apartado de “Configuración”, vamos a “Seguridad”
y en el apartado de “Usuarios” lo
seleccionamos:

Una vez en la ficha del usuario, en la pestaña de “Administración” os recomiendo
asignarle el Modo de acceso de “No
interactivo”

OPCIONAL: Instalación
de la Solución de Integración de Microsoft Dynamics NAV:

Microsoft Dynamics
NAV incluye una solución que
permite a los usuarios acceder a los
registros asociados en Microsoft Dynamics NAV, como clientes y artículos, de los registros
en Microsoft Dynamics CRM,
como las cuentas y productos. La
solución agrega un enlace en
las páginas de
registro de Microsoft Dynamics CRM
que abre el registro de Microsoft
Dynamics NAV asociado. La solución también se utiliza para mostrar información de Microsoft Dynamics NAV en una parte de ciertos registros de
entidad en Microsoft Dynamics CRM, como las cuentas. La instalación
de esta solución es opcional, no
es un requisito para la integración… pero mola 🙂

Para realizar la instalación, lo primero es localizar el
fichero “DynamicsNAVIntegrationSolution.zip”,
que está ubicado en el DVD de instalación de NAV 2016, dentro de la carpeta “CrmCustomization”.

Con las opciones que nos ofrece por defecto, continuamos
hasta que se completa el proceso, quedándonos tal que así:

Esto añade 2 roles de seguridad adicionales, uno de
Administrador y otro de Usuario de integración (para usar la funcionalidad):

Y, por supuesto, se generan las nuevas entidades  “Conexión
a Dynamics NAV
” y “Estadísticas de
cuentas de Dynamics NAV
”.

Podemos hacer que se muestren modificando las propiedades de
la entidad, dentro de “Configuración” -> “Personalización” ->
Personalizar el sistema”:

En este sentido, se puede mostrar la entidad en
“Configuración”, de forma que el usuario que tenga el rol de “Admin” pueda
personalizar la entidad:

Lo siguiente que debemos hacer ahora es asignar los nuevos
roles, de tal forma que asociaremos el rol “Dynamics NAV Integration Administrator” al usuario que conectará
con NAV, y el rol “Dynamics NAV
Integration User”
a todos nuestros usuarios de CRM que requieran hacer uso
de las características de la solución de integración instalada.

               IMPORTANTE: Si instalamos la solución de
integración después de haber configurado la conexión con Dynamics CRM desde
Dynamics NAV, tendremos que modificar la configuración de la conexión para que
apunte a la URL del cliente Web de Dynamics NAV.

2.       Configurar la conexión desde Dynamics NAV a
Dynamics CRM

Para realizar la configuración en Dynamics NAV,
necesitaremos al menos 2 cosas: la URL del servidor de Microsoft Dynamics CRM,
que normalmente será HTTPS o HTTP y el FQDN (esquema URI), y un usuario (si es
dedicado para la integración mejor).

Para una conexión como la de este ejemplo, donde nuestro
servidor está basado en Dynamics CRM Online, la conexión será del tipo https://mi-organizacion.crm4.dynamics.com.

Para comenzar con la configuración, dentro de Dynamics NAV, debemos
ir a “Departamentos” ->
“Administración” ->“Administración de IT” ->“Servicios”. Una vez aquí vamos a “Configuración de conexión de Microsoft
Dynamics CRM
”:

Esto nos abre la página de configuración, donde debemos
especificar los datos comentados con anterioridad: la URL de Dynamics CRM y el
usuario y password:

Lo siguiente que haremos será darle a “Probar conexión”, que nos dará un mensaje diciendo si es correcta
o no. Normalmente, si no consigue
conectar, el informe de error es lo suficientemente descriptivo como para que
nos oriente sobre cómo solucionarlo 🙂

               NOTA: Lo más normal es que salte un aviso
advirtiendo sobre el cifrado de datos, ya que no lo hemos configurado. No es
necesario configurarlo para que funcione, y lo podemos configurar cuando
queramos desde la sección de “Cifrado”,
en
Administración del cifrado”

Lo siguiente que haremos será marcar el checkbox de “Activado”:

Este checkbox podemos marcarlo o desmarcarlo a demanda, en
cualquier momento. Evidentemente, mientras que no esté marcado como “Activado”
no funcionará la sincronización.

Cuando marcamos este checkbox la primera vez, si no tenemos
una configuración previa de la conexión, NAV nos preguntará si queremos usar la
configuración de sincronización “por defecto”.

Nuevamente, si por el motivo que sea no hacemos esto,
tenemos la opción de “regenerar” la configuración a sus valores predeterminados
desde la pestaña de “Acciones”,
haciendo click en “Usar configuración de
sincronización predeterminada”
.

Con esto, podríamos decir que podríamos comenzar a trabajar
con datos de Dynamics CRM en Dynamics NAV 🙂

Tenemos otra serie de campos que aparecen ahora, en las
pestañan que se habilitan cuando está activada la sincronización:

  • Solución
    de integración de Dynamics NAV importada:
    básicamente se marca como “Sí” si
    hemos realizado el paso opcional de importar la solución del paso anterior
    dentro de Dynamics CRM.
  •  URL del
    cliente web de Dynamics NAV:
    es la URL de acceso al cliente Web. Es
    necesaria para que funcione la solución de integración.
  •  Versión: responde
    a la versión de Dynamics CRM.

Luego tenemos 2 campos interesantes:

Si hacemos click en “No” en cualquiera de ellos, el sistema
lo cambiará a “Sí” ejecutando la acción correspondiente:

  • El
    usuario de conexión de Dynamics CRM es el usuario de integración:
    si
    marcamos esto como “Sí” nos pedirá las credenciales de administrador de
    Dynamics CRM y modificará la configuración del usuario en CRM, convirtiéndolo
    en “No interactivo”.

  • Integración
    del pedido de venta habilitado
    : esto permite que los pedidos de venta
    generados en Dynamics CRM sean importados en NAV.

  • Los
    usuarios de Dynamics NAV deben asignar a los usuarios de Dynamics CRM:
    esto
    implica que todo usuario de NAV debe tener en su cuenta un “mapeo” entre el
    email de autenticación de Office 365 de su cuenta de usuario de Dynamics NAV,
    con la dirección de correo principal de Dynamics CRM. Si desmarcamos esto, lo
    que entiende el sistema es que cualquier usuario de NAV puede acceder a los
    datos de integración, y es el “usuario de integración” el que interactúa con
    los datos en su nombre.

En este ejemplo, dado que en la cuenta de mi usuario
no está habilitado, nos aparece como resultado “No” en el campo “El usuario
de Dynamics NAV actual está asignado a un usuario de Dynamics CRM”
.

Podemos comprobar el estado de la conexión desde “Conexiones de servicio”, que podemos
encontrar dentro de “Administración de
IT
” -> “Servicios”

Llegados a este punto ya tenemos nuestra
integración funcionando.

 
 Nota
importante sobre el proceso de sincronización:

Mientras que la sincronización está activa,
cuando generamos nuevos registros (clientes, contactos, etc.) se les asigna
automáticamente un “Id. de integración”,
pero… ¿qué ocurre si los doy de alta con la sincronización deshabilitada?

 Pues sencillamente tendremos que lanzar un
proceso de forma manual, que encontramos dentro de la pestaña “Acciones”, en el grupo “General” -> “Generar id. de integración”:

Con esto hacemos la tarea de rellenar manualmente los
Identificadores de integración que han quedado “huérfanos” en el período que ha
estado la sincronización desactivada.

3.       Validar la configuración de sincronización
de datos

Ya que hemos realizado una parametrización con los valores
predeterminados, deberíamos al menos verificar que los mapeos son correctos.

Esto podemos hacerlo desde “Asignación” ->
“Lista de asignaciones de tablas de
integración”
:

Esto nos abre la siguiente ventana:

Básicamente podemos ver la equivalencia entre tablas de
Dynamics NAV y entidades de CRM, así como sus diferentes filtros aplicados.

Por supuesto, estas asignaciones son las predeterminadas,
pero el sistema está totalmente abierto a conectar otras tablas adicionales,
incluso si pertenecen a algún desarrollo o personalización propia, siempre que
tengamos bien definida su equivalencia en Dynamics CRM.

Cabe destacar las 3 últimas columnas:

  • Código
    de plantilla de config. de tabla:
    Especifica
    una plantilla de configuración que se utilizará para crear registros nuevos en
    la tabla de Dynamics NAV (que especifica el campo Id. tabla) durante la
    sincronización. Cuando accedemos para su edición, podemos ver cuáles son los
    valores predeterminados:

  • Código de
    plantilla de config. de tab. int.:
    Especifica una plantilla de
    configuración que se utilizará para crear nuevos registros en la tabla de base
    de datos externa, como Microsoft Dynamics CRM. Lo que vemos es algo así.

  • Sincronizar
    solo reg. Emparejados:
    Especifica cómo administrar los registros
    desacoplados en entidades de Microsoft Dynamics CRM y tablas de Microsoft
    Dynamics NAV cuando la sincronización la realizada un proyecto de
    sincronización de integración.
    • Si selecciona esta casilla, solo se
      sincronizarán los registros de Microsoft Dynamics CRM y Microsoft Dynamics NAV
      que están acoplados. Ésta es la configuración predeterminada.
    • Si desactiva esta casilla, para cualquier
      registro del origen que no está acoplado a un registro en el destino, se creará
      automáticamente un registro nuevo que se acoplará en el destino. Por ejemplo,
      al sincronizar datos desde los clientes de Microsoft Dynamics NAV a cuentas de
      Microsoft Dynamics CRM, si un cliente no está acoplado a una cuenta, se creará
      automáticamente una cuenta nueva en Microsoft Dynamics CRM que se acoplará al
      cliente. Por otro lado, al sincronizar datos desde clientes de Microsoft
      Dynamics CRM a clientes de Microsoft Dynamics NAV, si una cuenta no está
      acoplada a un cliente, se creará un cliente nuevo en Microsoft Dynamics NAV que
      se acoplará a la cuenta.

Por otro lado, tenemos que verificar los trabajos
“programados” de sincronización. Esto lo tenemos en el grupo de “Sincronización” de la pestaña “General”:

Esto básicamente son movimientos
de la cola de proyectos
, que tenemos disponible en el estándar de NAV para
las tareas programadas.

Desde aquí podemos poner en espera, reiniciar, ver los
movimientos de registro, etc. Si damos a editar cualquiera de los movimientos, tenemos
esta pantalla:

Como se observa, aquí especificamos si queremos ejecutar un “Codeunit” (módulo) o un informe, se le pueden pasar parámetros
en la ejecución, establecerle un calendario de ejecución, periodicidad, etc.

Vale, pero… ¿cómo
funciona el proceso de sincronización?:

Cada movimiento de cola de proyectos de sincronización
utiliza una asignación de tabla de integración concreta que especifica qué
tabla de Microsoft Dynamics NAV y entidad de Microsoft Dynamics CRM se deben
sincronizar. Las asignaciones de tabla también incluyen configuraciones que
controlan qué registros de la tabla de Microsoft Dynamics NAV y de la entidad
de Microsoft Dynamics CRM se deben sincronizar.

Para sincronizar datos, los registros de entidad de
Microsoft Dynamics CRM deben emparejarse o “acoplarse” a los registros de
Microsoft Dynamics NAV. Por ejemplo, un cliente de Microsoft Dynamics NAV debe
acoplarse a una cuenta de Microsoft Dynamics CRM. Puede configurar los
acoplamientos manualmente, antes de ejecutar los proyectos de sincronización o
permitir que los proyectos de sincronización configuren acoplamientos
automáticamente.

La lista siguiente describe cómo los datos se sincronizan
entre Microsoft Dynamics CRM y Microsoft Dynamics NAV cuando se utilizan los
movimientos de la cola de proyectos de sincronización:

  • De manera predeterminada, solo se sincronizan
    los registros de Microsoft Dynamics NAV que están acoplados a registros de
    Microsoft Dynamics CRM. Se puede cambiar la asignación de tabla entre una
    entidad de Microsoft Dynamics CRM y una tabla de Microsoft Dynamics NAV, de
    manera que los proyectos de sincronización de integración creen los registros
    nuevos en la base de datos de destino para cada registro de la base de datos de
    origen que no esté acoplado. Los registros nuevos también se acoplan a los
    registros correspondientes en el origen. Por ejemplo, al sincronizar los
    clientes con cuentas de Microsoft Dynamics CRM, se crea un registro de cuenta
    nuevo para cada cliente en Microsoft Dynamics NAV. Las cuentas nuevas se
    acoplan automáticamente a clientes en Microsoft Dynamics NAV. Como la
    sincronización en este caso es bidireccional, se crea un cliente nuevo y se
    acopla para cada cuenta de Microsoft Dynamics CRM que aún no está acoplada.
  • Cuando se crean registros nuevos en Microsoft
    Dynamics NAV, los registros utilizan la plantilla que se define para la
    asignación de tabla de integración o la plantilla predeterminada que está
    disponible para el tipo de registro. Los campos se rellenan con datos de
    Microsoft Dynamics NAV o Microsoft Dynamics CRM según la dirección de
    sincronización.
  • En las sincronizaciones posteriores, solo se
    actualizarán los registros que se hayan modificado o agregado después de la
    última sincronización correcta. En el caso de los registros nuevos de
    Microsoft Dynamics CRM, los registros se agregan en Microsoft Dynamics NAV. Si
    los datos de los campos de los registros de Microsoft Dynamics CRM se han
    modificado, los datos se copian en el campo correspondiente de Microsoft
    Dynamics NAV.
  • Con la sincronización bidireccional, el proyecto
    se sincroniza de Microsoft Dynamics NAV a Microsoft Dynamics CRM y, a
    continuación, de Microsoft Dynamics CRM a Microsoft Dynamics NAV.

4.       Hacer el “mapeo” o emparejar los registros
entre Dynamics NAV y Dynamics CRM

 

Ya lo último que nos falta es ver cómo podemos emparejar los
registros y sincronizarlos manualmente.

Para acoplar un
registro específico
, nos vamos por ejemplo a un cliente cualquiera, y en la
pestaña “Navegar”, dentro del grupo “Dynamics CRM”, elegimos “Acoplamiento” ->
“Configurar acoplamiento”
:

Esto nos abre la siguiente ventana, donde podemos ver el
acople con la entidad de nuestro Dynamics CRM:

(En este caso, puesto que aún no he lanzado una
“sincronización completa”, la cuenta de Dynamics CRM está sin datos).

Para Sincronizar un
registro específico
, nos vamos por ejemplo a un cliente cualquiera, y en la
pestaña “Navegar”, dentro del grupo “Dynamics CRM”, elegimos “Sincronizar ahora”:

Por último, para
sincronizar múltiples registros
, debemos irnos a la lista, seleccionar los
registros que queremos sincronizar, y desde la pestaña “Navegar”, en el grupo “Dynamics
CRM”
-> “Sincronizar ahora”.

Para hacer la
sincronización inicial:

Nos tenemos que ir a la “Configuración
de conexión de Microsoft Dynamics CRM”
, en la pestaña “Acciones” ->
“Ejecutar sincronización completa”

Esto nos muestra la siguiente ventana:

Nos advierte de que los vendedores deben estar emparejados
con los usuarios de Dynamics CRM, ya que de no ser así tendremos errores en la
sincronización.

Si aceptamos, comienza el proceso:

Y concluye transcurridos unos minutos:

Aceptamos, y podemos comprobar el resultado, navegando desde
“Lista de asignaciones de tablas de
integración”
:

Veremos que existen errores, puesto que no hemos realizado
el emparejamiento entre vendedores y usuarios de Dynamics CRM (en el caso de
que hayamos realizado el ejemplo con los datos por defecto de Dynamics CRM y
los datos de la empresa “Cronus” de Dynamics NAV).

Por tanto, debemos dar de alta los usuarios en Office 365,
irnos a Dynamics CRM y asignarle los roles pertinentes… y para concluir,
establecer manualmente el emparejamiento entre “vendedor” de Dynamics NAV y
“usuario” de Dynamics CRM:

Y hacemos la asignación:

Tras esto tan sólo debemos volver a ejecutar el proceso de “Ejecutar sincronización completa” que
había mencionado al inicio.

Una vez concluido… LISTO!! Ya tenemos terminado nuestro
proceso.

Podemos comprobarlo desde cualquier registro:

Espero que os haya servido!!

Un saludo! Miguel Llorca.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.