Instruccions i solució de problemes per a les aplicacions de llenç incrustades

Nota

Vigent a partir del novembre de 2020:

  • S’ha canviat el nom del Common Data Service per Microsoft Dataverse. Més informació
  • S’han actualitzat alguns termes del Microsoft Dataverse. Per exemple, ara entitat s’anomena taula, i el camp ha passat a anomenar-se columna. Més informació

Aquest article s’actualitzarà pròximament per reflectir la terminologia més recent.

Guia sobre la incrustació d'aplicacions de llenç

En aquest article s'ofereix orientació sobre el treball amb aplicacions de llenç incrustades, així com consells útils per resoldre problemes als quals s'enfronta.

  • Les aplicacions de llenç incrustades només són compatibles amb aplicacions basades en models de la interfície unificada.
  • Només es poden habilitar tres aplicacions de llenç incrustades per a cada formulari amb web i una per als tipus de clients de tauletes i telèfons.
  • Es poden afegir diverses aplicacions de llenç incrustades al formulari, però només es poden habilitar tres alhora per al web i una a la vegada per als tipus de clients de tauletes i telèfons.
  • Si s'han habilitat més de tres aplicacions de llenç incrustades amb el tipus de client web en una aplicació basada en models del missatge d'error es mostrarà de la manera següent "Teniu més de tres aplicacions de llenç amb factor de forma web, el màxim és de tres per a aquest factor de forma. El nombre d'aplicacions del llenç es limita a tres per a la web i una per als factors de forma Tauleta i Telèfon."
  • Per activar o desactivar una aplicacions de llenç incrustades vegeu Habilitar aplicacions de llenç incrustades i Inhabilitar aplicacions de llenç incrustades.
  • Us recomanem que tingueu una única aplicació del llenç incrustada per a cada pestanya del formulari.
  • Quan afegiu una aplicació de llenç incrustada a un formulari basat en el model, utilitzeu sempre una columna obligatòria que garanteix tenir un valor. Si la columna no té cap valor, l'aplicació de llenç incrustat no s'actualitzarà en resposta als canvis en les dades del formulari basat en el model d'amfitrió.
  • Publicar un formulari basat en el model no significa publicar també l'aplicació de llenç incrustada.
    • Les aplicacions de llenç incrustades s'han de publicar independentment del formulari basat en models de l'amfitrió. Més informació: Publicar una aplicació.
  • Si no podeu obrir el Power Apps Studio per crear o editar una aplicació de llenç incrustada mitjançant el botó Personalitza a les propietats de control d'aplicació de llenç a causa d'un bloquejador d'elements emergents del navegador web, heu d'habilitar el lloc make.powerapps.com o desactivar temporalment el bloquejador d'elements emergents i després tornar a seleccionar Personalitza.
  • Les aplicacions de llenç incrustades no es mostren en crear una fila nova, ja que necessiten que se'ls passi un context de fila.
  • L'objecte ModelDrivenFormIntegration.Item és només de lectura.
    • Per recuperar les dades, heu d'utilitzar el Common Data Service connector. Més informació: Microsoft Dataverse
  • Les aplicacions de llenç només es poden crear a través del formulari basat en el model d'amfitrió.
  • Quan visualitzeu un formulari basat en models amb una aplicació de llenç incrustada, si un missatge d'error diu "Sembla que no teniu accés a aquesta aplicació", demaneu al seu propietari que el comparteixi amb vosaltres, assegureu-vos que l'autor ha compartit l'aplicació de llenç incrustada amb vosaltres. Més informació: Compartir una aplicació de llenç incrustada.
  • L'addició d'una aplicació de llenç al control de subquadrícula ja no està disponible.
    • A la versió de visualització prèvia, els creadors van poder afegir una aplicació de llenç en un control de subquadrícula. Amb l'aplicació de llenç incrustada a formularis basats en models ara disponibles de manera general, l'addició d'una aplicació de llenç incrustada en un formulari basat en models s'ha simplificat a la columna.
    • D'aquesta manera, és més fàcil pels creadors, ja que no han de decidir amb antelació si passen la fila actual (formulari principal) com a context de dades o una llista de files relacionades amb la fila actual (formulari principal).
    • Els fabricants sempre comencen amb una columna i poden accedir a la fila actual (formulari principal) o a una llista de files relacionades amb l'actual (formulari principal).
    • Per accedir a la llista de files relacionades a l'aplicació de llenç, els creadors poden utilitzar el connector Common Data Service y la funció de filtre amb la capacitat Millorar l'experiència de fonts de dades y visualitzacions de Dataverse habilitada a l'aplicació de llenç.
      Per exemple, per accedir a la visualització Contactes actius de la taula Contactes, els creadors poden utilitzar: Filter(Contacts, 'Contacts (Views)'.'Active Contacts').
    • Les aplicacions de llenç existents que utilitzen el control de subquadrícules continuaran funcionant. No obstant, us recomanem que migreu aquestes aplicacions per utilitzar una columna. Més informació: Migració d'aplicacions de llenç incrustades a formularis basats en models que utilitzen una llista de files relacionades amb la fila actual (formulari principal).

Habilitar una aplicació de llenç incrustada

  1. Seleccioneu la columna que estigui personalitzada per tal que es mostri com una aplicació de llenç incrustada.
  2. Al quadre de diàleg Propietats de columna, seleccioneu la pestanya Controls.
  3. A la llista de controls seleccioneu Aplicació de llenç i, a continuació, seleccioneu l'opció Web.
  4. Seleccioneu D'acord.

Inhabilitar una aplicació de llenç incrustada

  1. Seleccioneu la columna que estigui personalitzada per tal que es mostri com una aplicació de llenç incrustada.
  2. Al quadre de diàleg Propietats de columna, seleccioneu la pestanya Controls.
  3. A la llista de controls seleccioneu el control per defecte i, a continuació, seleccioneu l'opció Web.
  4. Seleccioneu D'acord.

Desar dades en una aplicació de llenç incrustada

  • Una incidència de desament feta des d'una aplicació basada en models, com ara seleccionar el botó Desa a la barra d'ordres del formulari principal, no desa els canvis fets a l'aplicació de llenç incrustada.
  • Per desar els canvis fets en una aplicació de llenç incrustada, utilitzeu el connector del Dataverse.
  • L'acció OnDataRefresh del control ModelDrivenFormIntegration només s'ha d'utilitzar per actualitzar les dades dins de l'aplicació de llenç incrustada. No recomanem que l'acció OnDataRefresh s'utilitzi per desar els canvis dins de l'aplicació canvas incrustada.

Problemes coneguts i limitacions amb les aplicacions de llenç incrustades

Limitacions

  • El control personalitzat de l'aplicació de llenç només s'admet per utilitzar-lo amb el tipus de client Web. Actualment, els tipus de client Telèfon i Tauleta no s'admeten.
  • El privilegi De l'aplicació Canvas d'una funció de seguretat no es pot utilitzar per concedir als usuaris de l'aplicació accés a una aplicació de llenç incrustada o independent. Per obtenir més informació sobre com compartir una aplicació de llenç incrustada, ves a: Comparteix una aplicació de llenç incrustada.
  • Si torneu a escriure les mateixes dades que es mostren al formulari basat en el model d'amfitrió, es continuaran mostrant les dades antigues fins que s'actualitzi el formulari. Una manera fàcil de fer-ho és utilitzar el mètode RefreshForm.

Per exemple, quan el control ModelDrivenFormIntegration està connectat a la taula de comptes, si utilitzeu ModelDrivenFormIntegration.Item.’Primary Contact’.’Full Name’ no tornarà un valor.

Per accedir a les columnes d'una taula relacionada, els creadors poden utilitzar qualsevol de les expressions que s'indiquen aquí: - LookUp(Accounts, Account = GUID(First(ModelDrivenFormIntegration.Data).ItemId)).'Primary Contact'.'Full Name'
- ItemId està buit al moment de la creació però tindrà un valor al moment de l'execució. - LookUp(Accounts, Account = ModelDrivenFormIntegration.Item.Account).'Primary Contact'.'Full Name' (aquesta expressió és més fàcil de llegir, però l'expressió anterior tindrà un rendiment una mica superior)

L'aplicació de llenç incrustada no es representa correctament

Pot ser que una aplicació de llenç incrustada no es representi correctament dins del camp al formulari de l'aplicació basada en model, i es pot mostrar un espai en blanc addicional o barres de desplaçament al voltant de l'aplicació de llenç. Aquest problema es pot produir quan un o tots dos elements següents són certs.

  • L'opció Ajusta-ho a la mida no està habilitada amb l'aplicació de llenç.
  • Falta el valor de la propietat Nom de l'aplicació o no s'ha definit correctament al control de l'aplicació de llenç incrustada. Això es pot produir quan l'aplicació basada en model i l'aplicació de llenç s'han importat com una solució en un altre entorn del Dataverse.

En lloc de crear aplicacions que s'escalin a l'espai disponible, podeu crear aplicacions que responguin a la factor de forma. Més informació sobre les aplicacions responsive

Habilitar Ajusta-ho a la mida

Per defecte, les aplicacions de llenç tenen l'opció Ajusta-ho a la mida habilitada.

  1. Obriu l'aplicació de llenç que esteu incrustant en un formulari d'aplicació basada en model per editar-la.
  2. Al Power Apps Studio, seleccioneu Fitxer > Configuració > Mida de la pantalla + orientació.
  3. A Configuració avançada, definiu Ajusta-ho a la mida en Activat. Configuració d'ajust a la mida de l'aplicació de llenç

Falta el valor de la propietat Nom de l'aplicació o no s'ha definit correctament

Per resoldre aquest problema, trieu l'opció correcta:

  • Solucions administrades: si la solució s'ha importat a un entorn com a solució administrada, seguiu aquests passos:

    1. Inicieu la sessió al Power Apps i aneu a l'entorn de desenvolupament on heu creat originalment l'aplicació de llenç incrustada. També és l'entorn on s'ha exportat la solució.

    2. Obriu la solució no administrada que inclou l'aplicació de llenç i, a continuació, cerqueu l'aplicació de llenç a la llista de components de la solució. Copieu el Nom de l'aplicació de llenç exactament quan apareix a la llista de components. Per exemple, contoso_flooringestimatesapp_624d7. Copiar el nom únic de l'aplicació de llenç.

    3. A la mateixa solució, editeu l'aplicació basada en model que té el control d'aplicació del llenç incrustada i, a continuació, definiu el Nom de l'aplicació com el control de l'aplicació de llenç incrustada utilitzant el valor del pas anterior. Més informació: Afegir una aplicació de llenç incrustada en un formulari basat en model

    4. Exporteu la solució des de l'entorn de desenvolupament i importeu la solució al vostre entorn de destinació.

  • Solucions no administrades: si la solució s'ha importat a un entorn com a solució no administrada, editeu l'aplicació basada en model, que té el control d'aplicació de llenç incrustada, i seguiu els passos semblants que es descriuen per a la solució administrada per definir la propietat Nom de l'aplicació.

El control de l'aplicació de llenç incrustat carrega l'aplicació de llenç des d'un entorn diferent

Quan una solució que conté una aplicació basada en model amb una aplicació de llenç incrustada s'importa en un entorn de destinació, el control carrega l'aplicació de llenç de l'entorn d'origen (on s'ha exportat la solució). El control hauria de carregar l'aplicació de llenç des de l'entorn de destinació (actual).

Aquest problema es produeix perquè l'usuari de l'aplicació no té accés de lectura a la taula Metadades ampliades de CanvasApp en l'entorn de destinació (actual). Per resoldre aquest problema, afegiu l'usuari a una funció de seguretat utilitzat per a l'aplicació que té accés de lectura a la taula Metadades addicionals de CanvasApp. Més informació: Atorgar privilegis de lectura per a la taula Metadades ampliades de CanvasApp

Missatge d'error: "No teniu privilegis de lectura per a l'entitat Aplicació de llenç. Poseu-vos en contacte amb l'administrador."

El missatge d'error es visualitza al formulari de l'aplicació basada en model on hauria d'aparèixer l'aplicació de llenç incrustada.

Aquest problema es produeix perquè l'usuari de l'aplicació no té accés de lectura a la taula Metadades ampliades de CanvasApp. Per resoldre aquest problema, afegiu l'usuari a una funció de seguretat utilitzat per a l'aplicació que té accés de lectura a la taula Metadades addicionals de CanvasApp.

Atorgar privilegis de lectura per a la taula Metadades ampliades de CanvasApp
  1. Al Power Apps, seleccioneu l'entorn i, a la subfinestra de navegació esquerra, seleccioneu Aplicacions.
  2. Seleccioneu l'aplicació que vulgueu, seleccioneu ... i, a continuació, seleccioneu Comparteix.
  3. A la subfinestra esquerra, seleccioneu l'aplicació i, a continuació, seleccioneu Administra les funcions de seguretat.
  4. Obriu la funció de seguretat assignada a l'aplicació, com ara la funció de seguretat Usuari bàsic.
  5. Seleccioneu la pestanya Entitats personalitzades i definiu els privilegis de lectura de l'àmbit de l'organització per a la taula Metadades ampliades de CanvasApp. Definir el privilegi de lectura de l'àmbit de l'organització a la taula Metadades ampliades de CanvasApp
  6. Seleccioneu Desa i tanca per tancar la finestra de la funció de seguretat.

Consulteu també

Incrustar una aplicació de llenç en un formulari basat en models
Afegir una aplicació de llenç incrustada en un formulari basat en el model
Editar una aplicació de llenç incrustada en un formulari basat en el model
Personalitzar la mida de la pantalla i l'orientació d'una aplicació de llenç incrustada en un formulari basat en el model
Dur a terme accions predefinides en el formulari d'amfitrió des d'una aplicació de llenç
Propietats i accions del control ModelDrivenFormIntegration
Compartir una aplicació de llenç incrustada
Migració d'aplicacions del llenç incrustades a formularis basats en el model creades amb la versió de visualització prèvia pública cap a la versió més recent