Agregar una aplicación de lienzo incrustada en un formulario basado en modelos

En este artículo se explica cómo insertar una aplicación de lienzo en un formulario basado en modelos. Las aplicaciones de lienzo se pueden conectar a una amplia gama de orígenes de datos y ofrecen a los diseñadores un control significativo de la experiencia del usuario general.

En este artículo se describen dos métodos de integración. Primero, usando la experiencia moderna Interfaz unificada, y segundo, usando la experiencia clásica.

Nota

Existe un tercer método, más reciente, para insertar aplicaciones de lienzo dentro de una aplicación moderna, que utiliza páginas personalizadas para una mejor integración con la aplicación de lienzo. Información general de páginas personalizadas en las aplicaciones basadas en modelos.

Ejemplo de una aplicación de lienzo insertada en un formulario principal de la aplicación basada en modelo.

Incrustar una aplicación de lienzo con la experiencia moderna

Para insertar una aplicación de lienzo en el formulario principal de una aplicación basada en modelo, como el formulario principal de la tabla Cuentas, siga estos pasos:

  1. Inicie sesión en Power Apps.

  2. Elija el entorno y, a continuación, seleccione Soluciones en el panel de navegación a la izquierda. Si el elemento no se encuentra en el panel lateral, seleccione …Más y, a continuación, el elemento que desee.

  3. Abra la solución que tiene la tabla donde quiere agregar a una aplicación de lienzo a un formulario principal.

  4. Abra la tabla, seleccione Formularios y, a continuación, abra el formulario principal que desee.

    Sugerencia

    De forma predeterminada, la etiqueta del componente de lienzo de la aplicación es Nueva aplicación de lienzo. Quizá le convenga cambiar la etiqueta de la aplicación de lienzo por otra más significativa, como el nombre de la aplicación de lienzo o una breve descripción de la aplicación de lienzo que está insertando en el formulario.

  5. Seleccione el área del formulario donde desea que se muestre la aplicación de lienzo o cree una nueva pestaña para mostrar la aplicación de lienzo.

  6. En el panel de navegación izquierdo, seleccione Componentes, expanda Pantalla y, a continuación, seleccione el componente Aplicación de lienzo.

  7. Se pueden configurar las siguientes propiedades para el control.

    • El área Nombre de la entidad le permite especificar las siguientes propiedades:

      • Enlazar a columna de tabla: cuando se selecciona Enlazar a columna de tabla, la propiedad Valor estático cambia para permitirle seleccionar a qué columna de la tabla enlazar. Cuando elige enlazar a una columna de tabla, la columna se definirá por el valor de columna de la tabla. Por ejemplo, cuando se selecciona Enlazar a columna de tabla para el Nombre de entidad, en el tiempo de ejecución de la aplicación, el valor del nombre de la tabla toma el valor de la columna de tabla especificada.

      • Valor estático: Use este para agregar un nombre para hacer referencia a la aplicación de lienzo. Tenga en cuenta que este valor no tiene ningún efecto en la aplicación de lienzo insertada. Está previsto que solo sirva como punto de referencia.

    • El área Nombre de la aplicación especifica el nombre único de la aplicación de lienzo.

      • Enlazar a columna de tabla: cuando se selecciona Enlazar a columna de tabla, la propiedad Valor estático cambia para permitirle seleccionar a qué columna de la tabla enlazar. Cuando elige enlazar a una columna de tabla, la columna se definirá por el valor de columna de la tabla. Por ejemplo, cuando selecciona Enlazar a columna de tabla para el Nombre de la aplicación, en tiempo de ejecución de la aplicación, el valor del nombre de la aplicación toma el valor de la columna de tabla, como el valor de una columna de texto personalizada.

      • Valor estático: Especifica el nombre único de la aplicación de lienzo para insertar. Introduzca el nombre único de la aplicación de lienzo ya existente. Más información: Cómo encontrar el nombre único y el ID de aplicación para una aplicación de lienzo

    • El área obligatoria Id. de la aplicación especifica el id. de la aplicación de lienzo.

      • Enlazar a columna de tabla: Cuando selecciona Enlazar a columna de tabla, la lista cambia para permitirle seleccionar a qué columna de la tabla enlazar. Cuando elige enlazar a una columna de tabla, la columna se definirá por el valor de columna de la tabla. Por ejemplo, cuando selecciona Enlazar a columna de tabla para el Nombre de la aplicación, en tiempo de ejecución de la aplicación, el valor del nombre de la aplicación toma el valor de la columna, como el valor de una columna de texto personalizada.

      Importante

      Para la mayoría de situaciones, no recomendamos utilizar la opción Enlazar a columna de tabla para el identificador de aplicación, ya que esto requeriría que se muestre el identificador de la aplicación correcta en un campo dentro del registro.

    • Mostrar el componente en. Especifica el tipo de cliente para mostrar la aplicación de lienzo insertada. Elija entre Web, Móvil y Tablet. Agregar el control de aplicación de lienzo a una columna de la tabla.

  8. Seleccione Listo. Luego, para publicar su aplicación y ponerla a disposición de los usuarios, seleccione Publicar.

Tras publicar una aplicación incrustada de lienzo al formulario controlado por modelos, comparta la aplicación incrustada de lienzo con otros usuarios. Más información: Compartir una aplicación incrustada de lienzo.

Cuando los usuarios abren una aplicación controlada por modelos que incluya el formulario que ha modificado ven la aplicación incrustada de lienzo en el formulario. Cambiar el registro mostrado en el formulario principal cambia el contexto de datos que se pasa al formulario y la aplicación incrustada se actualiza para mostrar los datos relevantes.

Este artículo le ha mostrado cómo empezar a insertar una aplicación de lienzo en un formulario controlado por modelos. Puede personalizar la aplicación incrustada de lienzo aún más para conectar datos e incorporarlos desde diversos orígenes de datos. Use las funciones de filtro, Buscar y búsqueda y el contexto pasados desde el formulario controlado por modelos de host para filtrar o para encontrar registros específicos en esos orígenes de datos. Use el editor de aplicaciones de lienzo WYSIWYG para diseñar fácilmente la interfaz para que cumpla los requisitos.

Cómo encontrar el nombre único y el ID de aplicación para una aplicación de lienzo

El control de la aplicación de lienzo busca primero la aplicación de lienzo usando el nombre único que se encuentra en el campo Nombre de la aplicación. Si no se puede encontrar una aplicación de lienzo con ese nombre único en el entorno, el control canvas app usará a continuacioń el valor especificado en el campo Id. de aplicación para cargar la aplicación de lienzo. Aunque debe ingresar valores en los campos Nombre de la aplicación e ID de la aplicación, solo uno de los valores debe ser preciso para que la aplicación de lienzo incrustada se cargue en el control. Tenga en cuenta que la aplicación de lienzo debe estar en el entorno actual.

  • El campo Nombre de la aplicación es el nombre único de la aplicación de lienzo. Para encontrar el nombre único, agregue la aplicación de lienzo a una solución. El nombre exclusivo de la aplicación de lienzo se muestra en la columna Nombre y tiene el formato solutionpublisherprefix_appnamenospaces_appendix. Por ejemplo, contoso_canvasappwithsharepointlist_5ee16. El nombre exclusivo de una aplicación de lienzo se muestra en el área Soluciones
  • La propiedad Identificador de la aplicación especifica el identificador de la aplicación incrustada de lienzo. Introduzca el identificador de aplicación para una aplicación de lienzo existente. El id. de la aplicación de lienzo se puede encontrar en Power Apps,vaya a Aplicaciones, seleccione la aplicación de lienzo y luego seleccione Detalles en la barra de comandos.

Incrustar una aplicación de lienzo con la experiencia clásica

  1. Inicie sesión en Power Apps.

  2. Creación o edición del formulario principal de una tabla, tabla Cuentas en nuestro ejemplo.

  3. En la barra de comandos, seleccione Cambiar a clásico para abrir el formulario en el diseñador de formularios clásico.

  4. En el diseñador de formularios clásicos, seleccione la sección del formulario donde desea que aparezca la aplicación incrustada de lienzo.

  5. Usando el panel de columna, agregue una columna obligatoria, como Nombre de cuenta.

    Importante

    Use siempre una columna obligatoria que siempre tiene garantizado un valor. Si la columna no tiene un valor, su aplicación incrustada de lienzo no se actualizará como respuesta a cualquier cambio en los datos del formulario controlado por modelos de host.

  6. Con esta columna seleccionada, en la pestaña Inicio, en el grupo Editar, haga clic en Cambiar propiedades.

  7. En el cuadro de diálogo Propiedades de columna , seleccione la pestaña Controles .

  8. En la pestaña Controles seleccione Agregar control.

  9. En el cuadro de diálogo Agregar control , en la lista de controles disponibles, seleccione Aplicación de lienzo y después seleccione Agregar.

  10. En el cuadro de diálogo Propiedades de columna, en la lista de controles seleccione Aplicación de lienzo y seleccione la opción Web.

  11. En la sección debajo de la lista de controles, se muestran las listas de propiedades disponibles para el control de aplicaciones de lienzo.

    • La propiedad Nombre de tabla especifica la tabla que proporcionará los datos a la aplicación incrustada de lienzo. Se establecerá en la tabla que contiene la columna que se agregó en un paso anterior.
      • Tenga en cuenta que, aunque esta propiedad parece cambiable, cambiarla no tendrá ningún efecto en la aplicación incrustada de lienzo. Está previsto que solo sirva como referencia para usted.
    • La propiedad Nombre de la aplicación especifica el nombre de la aplicación de lienzo a incrustar. El formulario controlado por modelo busca la aplicación de lienzo con el nombre especificado en el entorno actual. Si no se puede encontrar una aplicación de lienzo con ese nombre en el entorno, el control canvas app usará el id. de la aplicación para cargar la aplicación de lienzo. Ingrese el nombre de la aplicación para una aplicación de lienzo existente.
    • La propiedad Identificador de la aplicación especifica el identificador de la aplicación incrustada de lienzo. Puede introducir un id. de aplicación para una aplicación de lienzo existente o bien se generará un id. de aplicación y se completará automáticamente cuando cree o edite una aplicación de lienzo seleccionando Personalizar. El id. de la aplicación de lienzo se puede encontrar en Power Apps,vaya a Aplicaciones, seleccione la aplicación de lienzo y luego seleccione Detalles en la barra de comandos.

    Nota

    Tenga en cuenta que, los cambios efectuados en el valor Identificador de la aplicación rompen el vínculo entre el formulario controlado por modelos y la aplicación incrustada de lienzo.

    Si ni el nombre de la aplicación ni el id. de la aplicación coinciden con una aplicación de lienzo existente, el formulario muestra el mensaje "Lo sentimos, no hemos conseguido encontrar esa aplicación".

  12. Vaya al paso 20 si está agregando una aplicación de lienzo completa. Si está creando una aplicación de lienzo nueva o editando una existente, continúe con estos pasos. Seleccione Personalizar para crear o editar una aplicación de lienzo. Esto abre Power Apps Studio en una nueva pestaña.

    Nota

    Si abrir Power Apps Studio está bloqueado debido a un bloqueador de elementos emergentes de explorador web, debe habilitar el sitio de make.powerapps.com o temporalmente deshabilitar el bloqueador de elementos emergentes y después seleccionar Personalizar de nuevo.

  13. Observe lo siguiente:

    • En Power Apps Studio, observe que hay un control ModelDrivenFormIntegration especial en el panel izquierdo. Este control es responsable de llevar datos contextuales del formulario controlado por modelos del host a la aplicación incrustada de lienzo.
    • Observe que un control de formulario de la aplicación de lienzo se agregó automáticamente a la aplicación de lienzo incrustada y muestra los datos que se le pasan desde el formulario basado en modelos de host mediante el control de ModelDrivenFormIntegration.
    • Seleccione la pestaña Vista y, a continuación seleccione Orígenes de datos. Observe que un origen de datos para la tabla principal del formulario basado en modelos host, Cuentas en este caso, se agregó automáticamente a la aplicación de lienzo incrustada. - Seleccione el control Form1 y observe que la propiedad DataSource está establecida en Cuentas.
    • Con el control Form1 aún seleccionado, observe que la propiedad Item está establecida en ModelDrivenFormIntegration.Item.

    Nota

    La aplicación de lienzo incrustada tiene acceso total para leer el formulario basado en modelos host mediante ModelDrivenFormIntegration.Item. Por ejemplo, para obtener el valor de una columna con el nombre accountnumber y el nombre para mostrar Número de cuenta, puede usar ModelDrivenFormIntegration.Item.accountnumber o ModelDrivenFormIntegration.Item.'Número de cuenta'.

  14. En el panel de propiedades en la derecha, junto a Columnas, seleccione Editar columnas.

  15. Seleccione +Agregar columna para agregar otra columna al formulario de aplicación de lienzo o para reorganizar las columnas existentes mediante arrastrar y colocar. Cierre el panel de datos cuando termine de agregar y reorganizar columnas.

  16. Seleccione la pestaña Archivo y, a continuación, seleccione Guardar.

  17. Seleccione la pestaña La nube. Proporcione un nombre único para la aplicación y después seleccione Guardar en la parte inferior derecha. Observe el siguiente comportamiento:

    • Guardar una aplicación por primera vez publica automáticamente la aplicación.
    • En las operaciones de guardar posteriores, seleccione Publicar y después seleccione Publicar esta versión para que los cambios pasen a estar disponibles.
  18. En el menú, seleccione Atrás.

  19. Seleccione la pestaña del explorador que tiene el diseñador de formularios clásico abierto. Observe que se rellena automáticamente el valor de las propiedades Identificador de la aplicación y Nombre de la aplicación del control de aplicación de lienzo.

    Importante

    • El diseñador de formularios tiene un vínculo directo con Power Apps Studio que se abrió en otra pestaña del explorador en un paso anterior.
    • Asegúrese de que el nombre de la aplicación tenga un valor similar al de la captura de pantalla siguiente. La propiedad Nombre de la aplicación especifica el nombre único que se usará para hacer referencia a la aplicación de lienzo en tiempo de ejecución. Si no se establece este nombre, se usará la propiedad Identificador de la aplicación para hacer referencia a la aplicación de lienzo, lo que puede causar problemas al importar la aplicación de lienzo como parte de una solución. Le recomendamos que establezca este nombre para garantizar una referencia adecuada a la aplicación de lienzo entre entornos. Para configurarlo, vuelva al paso 12 y siga los pasos para crear la aplicación de lienzo que se va a insertar.
    App name and App Id properties
  20. En el cuadro de diálogo Propiedades de columna , seleccione la pestaña Mostrar.

  21. Desactive Mostrar etiqueta en el formulario y seleccione Aceptar.

  22. En la pestaña Inicio, seleccione Guardar y, después, seleccione Publicar.

Consultar también

Editar una aplicación de lienzo incrustada en un formulario basado en modelos
Realice acciones predefinidas en el formulario de host desde una aplicación de lienzo insertada
Propiedades y acciones del control ModelDrivenFormIntegration
Directrices acerca de cómo trabajar con aplicaciones de lienzo incrustadas