Vamos a aclarar algunas dudas que me habéis comentado alguna vez que otra sobre como yo, hago el despliegue entre entornos de Dynamics CRM Portals. Si bien es probable que con el nuevo Power Portals esto se pueda hacer de otra forma, yo sigo utilizando un método desde hace 2 años que me ofrece buenos resultados, y mucha fiabilidad, al menos hasta el día de hoy.
La elección de la herramienta
Existe en el CRM SDK una herramienta destinada para este fin. El día que me toco hacer el primer despliegue entre desarrollo y pre-producción, me encontré con que esta me daba más problemas que soluciones. Fue entonces cundo descubrí el Plugin Portals Records Mover que podéis encontrar en el XRM Toolbox.
Esta herramienta es muy sencilla e intuitiva, la utilizo también para hacer copias de seguridad periódicas, que posteriormente voy almacenando en mi control de código fuente, para tener versiones que me permitan revertir cambios de forma sencilla.
Mover registros entre entornos
Para mover las personalizaciones de un entorno a otro seguiremos los siguientes pasos:
- Nos conectamos al entorno de origen en XRM Toolbox y abrimos el plugin Portal Records Mover.
- Pulsamos el botón Load Items
- Se despliegan las entidades de Portals, podremos seleccionar las que deseemos, en nuestro caso todas ya que la migración es completa. Pulsaremos el botón Retrieve Records
- Una vez que ya hemos recuperado todos los registros pulsamos el botón Export Records. Esto abrirá un cuadro de diálogo donde nos aparecerá la opción de darle un nombre al fichero, lo introducimos y pulsamos Save.
- Llegados a este punto, ya estamos en disposición de importar los registros en la entidad de destino. Como consejo se deben de cerrar todas las tabs en XRM Toolbox, reconectar a la instancia de Dynamics de Destino y abrir de nuevo el plugin Portal Records Mover.
- Pulsamos el botón Portal Records Import, que nos abrirá un cuadro de dialogo para seleccionar el fichero previamente exportado. El proceso se alarga unos minutos, una vez finalizado, nos dará opción de ver el log, además de mostrarnos los registros que se han importado bien y los que lo han hecho con errores.
Haciendo actualizaciones
En el paso anterior, hemos visto como hacer una migración completa, ahora bien, podemos por ejemplo seleccionar solo los registros modificados a partir de una fecha. Esto nos permitirá solo importar lo necesario en el despliegue de una nueva funcionalidad.
El selector va más allá, podemos también por ejemplo exportar una sola página, snippet, plantilla…. Esto nos puede ser útil en determinadas situaciones como un hot fix. El modo de proceder sería similar, pero en la pestaña de registros, solo seleccionando lo que necesitamos.
Nueva funcionalidad, Transfer records
Recientemente se ha incorporado la opción transfer records, que nos permite hacer una migración directa entre entornos. Es sencillo ya que basta con seleccionar que queremos mover, pulsamos este botón, seleccionamos la organización de destino, y a funcionar.
Es como digo una funcionalidad reciente y que todavía tengo en pruebas para ver si funciona de forma correcta y nos aporta los resultados esperados. Aunque seguramente así sea, ya que lo que hace es ahorrarnos unos cuantos pasos.
Personalmente seguiré utilizando el método anterior, ya que así puedo mantener un histórico de incrementales, que me permitan por ejemplo recuperar una instancia hasta un cierto punto en el tiempo.