Información general sobre la creación y personalización de la aplicación

Se aplica a PowerApps y Dynamics 365 (en línea), versión 9.x

La forma en que funciona su organización es única. Algunas organizaciones tienen procesos de negocio bien definidos que aplican con una aplicación. Otras no se sienten satisfechas con sus procesos de negocio actuales y usan una aplicación personalizada o Dynamics 365 para aplicar los nuevos datos y procesos a su negocio. Cualquier situación en la que encuentre, encontrará muchas funciones de personalización y diseño de aplicaciones en PowerApps para que pueda funcionar para su organización.

Por supuesto que está impaciente por empezar, pero dedique unos minutos a leer el contenido en esta sección. Muestra términos importantes, proporciona un segundo plano acerca de por qué las acciones se hacen de una forma determinada y ayuda a evitar posibles problemas en el futuro.

¿Qué son los metadatos y por qué debe tenerlos en cuenta?

En el pasado, puede que haya personalizado aplicaciones de negocio editando el código fuente. Esto suponía complicaciones porque cada organización tenía cambios únicos y era muy difícil, o extremadamente costoso, realizar la actualización. Después, los desarrolladores de aplicaciones comenzaron a exponer las interfaces de programación de aplicaciones (API) de manera que otros desarrolladores pudieran interactuar con la aplicación y agregar su propia lógica sin tocar el código fuente. Esto era levemente mejor porque los desarrolladores podían ampliar la aplicación sin cambiarla. Pero sigue requiriendo que un programador escriba el código.

Hoy, las aplicaciones empresariales modernas usan una arquitectura controlada por metadatos para que la gente pueda personalizar la aplicación sin escribir código. Metadatos significa "datos acerca de datos" y define la estructura de los datos almacenados en el sistema. Con estos metadatos, una aplicación sabe los cambios en la estructura de datos, lo que habilita la aplicación para adaptarse a los cambios en la estructura de datos. Al saber los metadatos, se pueden incluir capacidades adicionales vinculadas a los metadatos.

Al personalizar una aplicación con PowerApps mediante las herramientas de personalización, se agregan o actualizan los metadatos o los datos que usan las características que dependen de los metadatos. Puesto que conocemos tipos de datos que se usan para personalizar el sistema, podemos tener esto en cuenta y agregar nuevas características a la aplicación sin interrumpir la plataforma subyacente.

¿Personalizar o configurar?
Los suscriptores a Dynamics 365 afirman que desea personalizar la aplicación, por lo que usa la palabra "personalizar" para describir el cambio del sistema para hacerlo trabajar de la manera que desea. Algunos usuarios prefieren usar la palabra "configurar" porque sugiere que no se ha requerido ningún código para realizar cambios. Denomínela como desee, solo deseamos clarificar que no es necesario ser programador para crear aplicaciones de PowerApps o personalizar Dynamics 365.

PowerApps proporciona un conjunto de servicios web y API que permiten a los desarrolladores escribir código. Cuando el código se escribe mediante métodos compatibles puede esperar que siga funcionando cuando se actualiza la organización.

¿Qué tipos de personalizaciones son compatibles con Dynamics 365 Customer Engagement?

Contamos con que puede realizar la mayoría de la personalización con las herramientas de la aplicación. Todo lo que hace al usar estas herramientas es compatible con Microsoft porque aplican los cambios en los metadatos o con datos que dependen de metadatos.

Si las herramientas de personalización no satisfacen sus necesidades, puede instalar una solución de un tercero o contratar a un desarrollador para la codificación de las personalizaciones. De cualquier modo, es adecuado comprender las personalizaciones compatibles. Si necesita invertir en una solución que requiere código, debe asegurarse de que el código se escribió con solo API admitidas. Esto ayuda a proteger su inversión en ambos Dynamics 365 y cualquier solución que obtenga.

Los programadores que extiendan Dynamics 365 tienen la responsabilidad de seguir las reglas y recomendaciones documentadas en el SDK: Prácticas recomendadas para desarrollar con Dynamics 365 Customer Engagement. El SDK documenta las API disponibles para los desarrolladores y proporciona instrucciones sobre cómo usarlas mejor. Microsoft admite solo las API y prácticas documentadas en el SDK. Puede encontrar algo en Internet que describa cómo puede resolver un problema, pero si no usa las API documentadas en el SDK, no es compatible con Microsoft. Antes de que haga que un desarrollador aplique un cambio debe comprobar si usa métodos compatibles.

Si los programadores usan API y recomendaciones descritas en el SDK podemos estar seguros de comprobar si los cambios que realizamos en Dynamics 365 tienen potencial para cancelar las personalizaciones existentes. Nuestro objetivo es que las personalizaciones de código escritas con métodos compatibles continuarán funcionando cuando las nuevas versiones o actualizaciones de Dynamics 365 se publiquen. Es beneficioso porque puede actualizar a las nuevas versiones con las características mejoradas sin contar con programadores que cambien el código cada vez.

Si detectamos que un cambio en una nueva versión de Dynamics 365 provocará que una personalización compatible se cancele, documentaremos cómo afecta e indicaremos cómo cambiar el código para corregirlo.

¿Qué tipos de personalizaciones no son compatibles con Dynamics 365 Customer Engagement?

Sol que determinadas API y prácticas de programación no sean compatibles con Microsoft no significa que no funcionen. "No admitidas por Microsoft" significa exactamente lo que se indica: no puede obtener soporte técnico sobre estas API o prácticas de programación de Microsoft. No las probamos y no sabemos si algún cambio que hagamos puede cancelarlas. No podemos predecir qué sucederá si alguien cambia el código de su aplicación.

El programador que usa API y prácticas de programación no admitidas asume la responsabilidad para admitir su código. Deberán probar el código para asegurarse de que funciona.

Si elige usar personalizaciones no compatibles en la implementación de Dynamics 365 debe asegurarse de documentar lo que hace y de tener una estrategia para quitar las personalizaciones antes ponerse en contacto con el soporte técnico de Dynamics 365. Si necesita ayuda con personalizaciones no admitidas, póngase en contacto con el programador o la organización que las preparó.

Prácticas de personalización comunes no admitidas

La siguiente es una lista de prácticas de personalización habituales que no son compatibles. No se trata de una lista completa. Más información: Extensiones compatibles para Dynamics 365: Personalizaciones no admitidas.

Interactuar con los elementos de Document Object Model (DOM) de la aplicación web mediante JavaScript
Cualquier biblioteca de JavaScript usada en cualquier lugar de la aplicación solo debe interactuar con API documentadas. Cuando los desarrolladores de JavaScript trabajan con aplicaciones que acceden con frecuencia a elementos DOM mediante nombres específicos. Puesto que Dynamics 365 es una aplicación web, estas técnicas funcionan, pero es probable que se cancelen durante una actualización porque los nombres de los elementos a los que hacen referencia están sujetos a modificaciones en cualquier momento. Nos reservamos la derecha de realizar los cambios necesarios en la aplicación, lo que frecuentemente implica cambiar cómo se genera a la página. Agregar cualquier cambio que dependa de la estructura actual de la página significa que deberá invertir en probar y quizás en cambiar el código personalizado en estos scripts cada vez que aplique una actualización a la aplicación.

jQuery es una biblioteca muy común usada por los desarrolladores de JavaScript. El mayor beneficio de usar jQuery es que facilita a los desarrolladores el acceso y la creación de elementos DOM, que es exactamente lo que no se admite en las páginas de la aplicación Dynamics 365. jQuery se recomienda cuando los desarrolladores están creando interfaces de usuario personalizadas con recursos web HTML, pero en las páginas de la aplicación Dynamics 365, las API admitidas no requieren el uso de jQuery.

Usar objetos internos no documentados o métodos mediante JavaScript
Dynamics 365 usa muchos objetos de JavaScript dentro de las páginas. Un desarrollador de JavaScript puede descubrir estos objetos depurando una página y luego acceder y reutilizar estos objetos. Nos reservamos el derecho de realizar los cambios necesarios en estos objetos, incluido eliminarlos o cambiar los nombres de los métodos. Si un script hace referencia a estos objetos, el script se interrumpirá si no se encuentran.

Combinar las capacidades de personalización

Cada uno de los temas en esta guía describe las capacidades de personalización individuales en profundidad. Pero es importante tener presente que las soluciones para satisfacer sus requisitos empresariales con frecuencia usarán una de las capacidades junto con una o varias otras funciones.

Elegir la característica de personalización correcta para el trabajo

Las ley del instrumento dice "Si solo tienes un martillo, todo parece un clavo". Con todas las diferentes funciones de personalización disponibles en PowerApps es fácil familiarizarse con una de ellas e intentar utilizarla para resolver cada problema. Al evaluar los problemas empresariales que desee resolver, piense en el resultado final que desea lograr y revise el procedimiento para ver cómo puede conseguirlo.

Cambios que afectan al rendimiento de la organización de Dynamics 365

La importación de soluciones y la aplicación de personalizaciones que cambian metadatos puede afectar al rendimiento de la organización de Dynamics 365. Las acciones que pueden interferir en el funcionamiento normal del sistema incluyen:

  • Agregar, eliminar, o cambiar entidades, claves alternativas, atributos, o relaciones.

  • Importar soluciones

  • Publicando personalizaciones

Si está aplicando estos cambios a un sistema de producción, se recomienda programar estas operaciones cuando sea menos posible perturbador para los usuarios.

Vea también

Introducción a la creación y la personalización de aplicaciones