#HowToPCF | ¿Cómo crear mi primer componente personalizado? – Capítulo 1

Destacado

En los últimos meses he notado un interés creciente en el desarrollo de componentes personalizados (PCFs) para Power Apps, algunos miembros de la comunidad se han acercado con dudas acerca de como iniciar en el desarrollo de PCFs.

Es por eso que he decidido crear y poner a disposición de la comunidad esta serie de videos sencillos donde pretendo presentarles (desde mi punto de vista) ¿ Como comenzar en desarrollo de PCFs haciendo uso del Power Apps Component Framework:

Me encantaría saber que te pareció este primer video (omitiendo el fallo en el audio. Sí, me di cuenta) así también que me compartas que componentes personalizados estas creando 😁

Algunos links importantes, te recomiendo añadirlos a tus favoritos:

Software necesario:

Cursos relacionados (Recomendable tomarlos para aprender los fundamentos)

#PowerPlatformWT – La magia de las comunidades.

Destacado

El día de ayer 24 de Octubre del 2019 finalizó el Power Platform World Tour. Un evento del cual tuve la oportunidad de ser parte gracias a una invitación por parte de Pablo Peralta, uno de los MPVs de Microsoft que mas ha influido en mi carrera como profesional de Dynamics CRM (Ahora Dynamics 365/PowerApps).

Mi historia participando en comunidades se remonta al año 2013, justo cuando me encontraba en la necesidad de buscar “Practicas profesionales” en una empresa, pues en mi universidad el ultimo periodo es obligatorio cursarlo 100% inmerso en el ambiente laboral.

Ingrese a un Partner de Microsoft en mi natal Tlaxcala, México. Las primeras semanas me asignaron para ayudar a depurar algunos archivos de Excel necesarios para realizar carga de datos en un sistema llamado “Microsoft Dynamics CRM”. He de confesar que al cabo de las primeras semanas yo mismo recuerdo haber pensado: “Esto no es para mí”.

Tal vez fue el hecho de que aun no conocía el mundo maravilloso de las Business Aplications de Microsoft y mucho menos las comunidades o grupos de usuarios. Justo cuando estaba por buscar nuevas oportunidades, llego un reto: “El cliente quiere visualizar la información de sus sucursales dentro de un mapa”. Eso ya representaba un reto interesante, pues definitivamente aunque para muchos puede parecer fácil, no tenía idea de como lograrlo.

Fue ahí cuando me di a la tarea de investigar como cumplir con este requerimiento. Para esto he de confesar que como programador entusiasta que soy, tengo la idea de que “todo es posible, con código”. Tenía un poco de experiencia jugando con la API de Google Maps, pero definitivamente no sabía como “embeber” un mapa dentro de Dynamics CRM y mucho menos como consumir los datos para mostrarlos en el Mapa.

Después de unos días “Googleando” me encontre con una pagina web llamada “comunidacrm.comuna comunidad de usuarios y expertos de Dynamics CRM donde el objetivo era: Aprender, compartir y ayudar a resolver problemas o dudas sobre este producto de Microsoft… ¡MARAVILLOSO!

Una captura de la primer mesa de expertos sobre Dynamics CRM 2013

Fue en ese momento que quede fascinado: “Que maravilla, un lugar donde aprender y conectar con otros profesionales. SIN COSTO“. Me registre en un curso de Desarrollo sobre Dynamics CRM 2011 impartido por Demian Rashkovan otro MVP que también considero, mas ha aportado a mi carrera en temas de desarrollo sobre Dynamics CRM:

Atención al consejo de Demian.

A partir de ese momento debo que decir que soñé con algún día poder aportar algo a esa comunidad para regresar al menos un poco de lo mucho que ya me estaba dando. Cosa que pospuse quizá por un par de años. Un buen día coincidimos Pablo y yo en un evento de lanzamiento de Dynamics 365 en la ciudad de México. Pablo me saludo con una naturalidad y calidez que me cautivo, no tenía idea de que siquiera él supiera de mi existencia. Me invito a compartir con la comunidad en un formato Online y realice algunas participaciones:

Este año 2019, me propuse enfocarme mas los eventos presenciales, pues considero. Representan una gran oportunidad no solo de aprender pero también de conocer a gente extraordinaria y que tiene pasión por compartir sus conocimientos con la comunidad…

Es por eso que este año he participado en 2 eventos (D365 Saturday Monterrey y el PowerPlarform World Tour) que me han hecho aprender mucho y disfrutar el doble. Me encantan las historias de algunos de los MVPs mas “viejos” aquellos que han demostrado año tras año porque están donde están. Ha sido un honor ser parte de estos eventos.

Hasta ahora, todo ha sido una experiencia maravillosa. Hay algo muy bonito en el hecho de compartir conocimiento, ayudar a otros profesionales que tienen los mismos problemas que tu y que sin duda este tipo de eventos unen mas a esta hermosa comunidad.

Si tu alguna vez has tenido la inquietud de participar en estos eventos, debo decirte que no requieres mas que las ganas de hacerlo. Nadie nace sabiendo todo. Si tienes el interés puedes acercarte con cualquiera de los MVPs de Microsoft. Estoy seguro que te ayudaran con todo el gusto del mundo. ¡Te aseguro que lo vas a disfrutar, atrevete!

Hoy puedo decir que gane muchos amigos y eso… No tiene precio.

¡Finalmente, #PCF para PowerApps es una realidad!

Destacado

Finalmente Microsoft anunció el día de hoy que el Powerapps Component Framework (PCF) a pasado de ‘Public Preview’, lo cual significaba que podíamos usarlo para pruebas de concepto PERO no para ambientes productivos; a ‘General Available’ dando la oportunidad a todos los desarrolladores comenzar a trabajar y publicar componentes personalizados con la confianza de poder usarlos en ambientes productivos.

Recordemos que con la llegada de la Unified Interface, tenemos muchas mejoras de la UI de PowerApps/Dynamics365 y es importante conocer a que nos referimos con ‘Componente personalizado’ para entender donde usar PCF.

PowerApps screen with custom components

Imagina que estas diseñando una aplicación y deseas mostrar de manera GRÁFICA las oportunidades abiertas para cierta Cuenta dentro de Dynamics 365 (Model-driven app). Una forma creativa sería desarrollar un componente personalizado con PCF que te muestre las oportunidades abiertas Y SU FASE en el proceso de negocio:

En este ejemplo, básicamente podríamos reemplazar un subgrid con un PCF que nos de como resultado una mejor experiencia del usuario y una mayor comodidad para visualizar gráficamente la información.

De momento PCF solo esta liberado para su uso en Aplicaciones basadas en modelos (Model-Driven) y próximamente se liberara también para las aplicaciones de lienzo (Canvas apps). Sin embargo en algún punto no habrá distinción entre canvas apps y Model-driven apps.

Conociendo PCF y Powerapps CLI

Con la llegada de PCF, también ha llegado PowerApps CLI, una herramienta de mucha importancia y valor. Esta ‘Command-line’ ayuda a los desarrolladores a través de comandos en el ciclo completo de desarrollo, desde la creación hasta el deploy en powerapps.

Si quieres leer mas acerca de estas nuevas herramientas, te dejo algunos links importantes:

#MSFlow: Consultar SQL Server On-premise con Microsoft FLOW

Destacado

Bienvenidos nuevamente a #HowToDyn365, el día de hoy les comparto este experimento que hice, con la idea de automatizar una tarea sencilla de monitoreo. Específicamente la ejecución de campañas de Marketing en Dynamics CRM On-premise.

En un post anterior les mostré como instalar el Data Gateway, mismo que nos ofrece la posibilidad de conectar con orígenes de datos y aplicaciones instaladas de manera local.

En este post, vamos a utilizar uno de los mas de 300 conectores disponibles para Microsoft Flow: SQL Server

Es importante mencionar, que este conector como ya podrás imaginar, nos da la opción de interactuar desde la PowerPlatform con bases de datos corriendo sobre SQL server con las siguentes opciones:

Acciones disponibles

Eliminar un registroElimina un registro de una tabla
Ejecutar un QueryEjecuta un query en la BD
Ejecutar un procedimiento almacenadoEjecuta un procedimiento almacenado
Obtener un registroObtener un registro de una tabla
Obtener registrosObtener registros de una tabla
Obtener tablasObtener las tablas de una Base de datos
Insertar registroInsertar un registro en una tabla
Transformar datos usando PowerQueryTransformar datos con PowerQuer
Actualizar un registroActualizar un registro existente en una tabla

Disparadores disponibles

Cuando un registro es creadoDispara la ejecucion de un flujo cuando un registro es creado
Cuando un registro es modificadoDispara la ejecucion de un flujo cuando un registro es modificado

Así mismo tiene algunas limitaciones, las cuales te invito a consultar a detalle directamente en la pagina de la documentación de este conector.

El flujo que pienso crear, será a petición y muy sencillo. Solo necesito ejecutar un procedimiento almacenado (previamente creado) el cual me regresa la información sobre el estatus de las campañas de Marketing lanzadas en Dynamics CRM On-Premise así como la información de registros creados:

#MSFlow: Conectar entornos On-premise con Microsoft FLOW

Bienvenidos nuevamente a #HowToDyn365, el día de hoy les comparto como conectar orígenes de datos y aplicaciones On-premise con Microsoft Flow.

Hoy en día, las posibilidades que nos ofrece en su conjunto la #PowerPlatform de Microsoft son muy variadas, desde crear aplicaciones sin código que nos permitan controlar y automatizar procesos en la organización con #PowerApps. Hasta realizar de manera sencilla, flujos de automatización con la posibilidad de conectar con otras aplicaciones Online u On premise (actualmente hay mas de 300 conectores).

En las empresas, es normal tener varias aplicaciones para realizar tareas especificas. Desde el uso de MailChimp para tareas de marketing, hasta tener servidores propios web o de bases de datos para alojar aplicaciones locamente.

¿Se imaginan la posibilidad de automatizar tareas o procesos con la opción de conectar entre las aplicaciones que usas. Sencillo y sin necesidad de código? Pues eso es Microsoft Flow.

Afortunadamente, podemos acceder a nuestros servicios On-Premises haciendo uso del data gateway de Microsoft. El cual nos permite conectar con los siguientes servicios:

  • Apache Impala
  • Custom connectors that you create
  • DB2
  • File System
  • Http with Azure AD
  • Informix
  • MySQL
  • Oracle Database
  • PostgreSQL
  • SharePoint
  • SQL Server
  • Teradata (Preview)

Antes de la instalación, debemos cumplir ciertos requerimientos mínimos para poder instalar este componente. El cual nos permitirá acceder a entornos locales para ocuparlos en nuestros experimentos de la #PowerPlatform:

  • Usuario y contraseña con el que accedemos a Microsoft Flow.
  • Permisos administrativos en el servidor que ocuparemos para instalar nuestro data Gateway.
  • Una licencia que nos permita el uso de este componente, para mas información consulta la pagina de licenciamiento en el apartado de conectividad.

Una vez que cumplimos con los requerimientos, podemos proceder a la instalación.

Como pueden ver, la instalación es bastante sencilla, y con esto ya podemos acceder a origenes de datos locales. En el siguiente Post veremos como usar este origen de datos para utilizarlo en Microsoft Flow.

Te invito a realizar la instalación de este componente y comenzar a experimentar con todas sus posibilidades y cuéntame como te fue.