Como crear un formulario de creación rápida en Power Platform y D365 CRM

En esta entrada vamos a ver como crear un formulario de creación rápida (o Quick Forms en ingles). Lo que vamos a ver es valido para las aplicaciones basadas en modelo, por lo tanto, servirá para una Model Driven de Power Platform o para Dynamics 365 CE (aka CRM).

Los formularios de creación rápida (como su nombre indica) son un formulario básico que nos permite crear un registro de una entidad determinada. Por ejemplo, en la siguiente imagen se puede ver como se ven los formularios de creación rápida, con datos obligatorios de la entidad, y donde podemos trabajar sin necesidad de navegar a otra pantalla.

Imagen donde se muestra como se ven un formulario de creación rápida. El formulario aparece a la derecha de la pantalla, sin necesidad de navegar a otro formulario.
Sigue leyendo Como crear un formulario de creación rápida en Power Platform y D365 CRM

Dataverse elastic tables

Por fin velocidad en Dataverse gracias a Dataverse elastic tables.

Si has trabajado con Dataverse, ya sea con Power Platform o con Dynamics 365 te habrás dado cuenta que ofrece muchas cosas buenas, pero que la velocidad no sería una de ellas. Sobre todo si lo comparas con otras bases de datos. Vale, no es exactamente lo mismo, Dataverse es mas que simplemente persistir datos, pero a veces necesitas un poco de «chicha». En la operativa diaria de la aplicación no se nota tanto, pero cuando tenemos que hacer cargas de datos o trabajar con una volumetría alta donde has de responder en tiempos bajos, las velocidades que ofrece Dataverse nos hace sufrir como desarrolladores.

Sigue leyendo Dataverse elastic tables

Pasar el contexto de formulario y XRM de Dynamics 365 a un WebResource

Dynamics 365 CE permite muchas formas distintas para poder extender su funcionalidad y adaptarla a tus necesidades. Una de ellas es poder añadir un recurso web y mostrarlo en un formulario. Esto nos va a permitir crear nuestro propio HTML que se mostrará dentro de Dynamics.

En estos casos nos puede pasar que necesitemos mostrar en nuestro recurso web algún dato que se recupere del propio Dynamics.

Cuando estamos en el lado de cliente, Dynamics nos ofrece el objeto XRM y el FormContext para poder realizar acciones sobre los objetos del propio Dynamics y por lo tanto si tenemos que acceder a cualquier dato del formulario, podemos hacer algo tan sencillo como lo siguiente:

function displayName(executionContext)
{
    var formContext = executionContext.getFormContext(); // get formContext

    // use formContext instead of Xrm.Page  
    var firstName = formContext.getAttribute("firstname").getValue(); 
    var lastName = formContext.getAttribute("lastname").getValue();
    console.log(firstName + " " + lastName);
}

¿Pero que pasa cuando estamos en el contexto de nuestro recurso web? Pues que no tendremos dicho contexto y que por lo tanto, en este caso, no podemos acceder a estos datos. Pero es muy sencillo solucionar esto, vamos a ver como podemos pasar este contexto a nuestro recurso web para poder accederlo.

Sigue leyendo Pasar el contexto de formulario y XRM de Dynamics 365 a un WebResource

Aventuras de un arquitecto: Por que decidí crear una capa de API Rest delante de un D365 Field Service

Hola, el otro día estaba leyendo el libro de Satya Nadella (Pulsa refrescar, lo recomiendo mucho, esta regalado en Amazon) en el que habla de cómo ha liderado el cambio tanto tecnológico como cultural en Microsoft. Una de las cosas que dice es que a él lo que le funciona es la empatía, el ponerse en el lugar de los otros. Así que he reflexionado un poco sobre el tema y he pensado que tal vez, desde la parte tecnológica, a veces no se explica lo suficiente el porqué de ciertas decisiones que tomamos y, por lo tanto, no se están entendiendo desde áreas no técnicas. A veces es por nuestro ego (hablo por mí, por supuesto), el orgullo, la falta de empatía o el hecho de que tal vez no se nos escucha como se debería desde las áreas no tecnológicas. Tal vez la suma de todo.

He pensado que tal vez, explicando algunos casos de decisiones que he tomado con más detalle, sin hablar en idioma puramente técnico. Por lo tanto, voy a iniciar una serie de entradas en el blog en las que hablare de algunas decisiones que he tomado y el por que de estas. Tal vez tenga suerte y consiga un debate interesante.

Sigue leyendo Aventuras de un arquitecto: Por que decidí crear una capa de API Rest delante de un D365 Field Service

7 cosas a tener en cuenta al hacer integraciones con volúmenes altos de datos en Dynamics 365 CE (aka CRM)

En la mayoría de los proyectos en los que he participado y que Dynamics 365 CE (aka CRM) estaba involucrado, en mayor o menor medida, hemos tenido que integrarnos con otros sistemas para cruzar datos entre ambos. Estas son algunas cosas que he ido aprendiendo y que me han ido enseñando (gente que sabe mucho mas de D365CE que yo) a lo largo de estos proyectos. Si estas leyendo esto y tienes algún tip mas, no dudes en ponerlo en los comentarios, !siempre será bienvenido!

Sigue leyendo 7 cosas a tener en cuenta al hacer integraciones con volúmenes altos de datos en Dynamics 365 CE (aka CRM)

Como activar las trazas de log de plug-in en Dynamics 365 Customer Engagement (CRM)

Por temas de trabajo, últimamente tengo que estar tocando mucho temas de Dynamics 365 CRM y tengo que ver temas de integraciones, desarrollo de plug-in, Power Platform, etc., por lo que seguramente escriba unas cuantas entradas al respecto con cosas que tengo que usar en mi día a día o temas que voy aprendiendo. Una de las formas que tengo para asimilar conocimientos es ver si soy capaz de explicarlos en una entrada del blog.

La cosa es que estoy desarrollando un plug-in para CRM 365 y una herramienta poderosa para ver como va todo por detrás son las trazas (si… así es…).

Vamos a ver como activarlas para poder verlas.

Sigue leyendo Como activar las trazas de log de plug-in en Dynamics 365 Customer Engagement (CRM)